📄 quad_dis.h
字号:
// quad_dis.h
// Miscellaneous constants from 1994 version
/*
** Copyright (C) 1994, 2003 Tyler C. Folsom
**
** Permission to use, copy, modify, and distribute this software and its
** documentation for any purpose and without fee is hereby granted, provided
** that the above copyright notice appear in all copies and that both that
** copyright notice and this permission notice appear in supporting
** documentation. This software is provided "as is" without express or
** implied warranty.
*/
#define FL_ABS(x) ((x)>(float)0.0?(x):-(x))
#define PI 3.1415926536
#define PI_HALF 1.570796327
#define PI_1 ((float)3.141592654)
#define PI8TH (PI_1/8)
#define PI_2 ((float)6.283185307)
#define PI_3 9.424777961
#define EPSILON ((float)1.0e-6)
#define ROOT_2 ((float)1.414213562)
#define ROOT_3 ((float)1.732050808)
#define MAX_ITER 30
// Debug flag to write stuff to trace.txt
// #define TRACE_ME 1
/* Number of orientations for odd filters (4 or 2) */
const ODD_ANGLES = 2;
/* Default value for m_subSampleDiam. Use this to control whether subsampling happens */
const DEFAULT_SUBSAMPLE_DIAM = 200;
/* PRE_THRESH has no effect if it is 1.0.
When less than 1, it provides a lower threshold for features on the first pass.
Features that fail the threshold initially may pass with help from lateral facilitation.
*/
const float PRE_THRESH = 0.25;
/* Default value for m_lateralFactor. 0 for no lateral antagonism, 1.0 for max */
const float DEFAULT_LATERAL = 0.5;
/* A corner is characterized by a step in the dominant orientation and
a bar or edge perpendicular to this. Typically, the bar strength is half as
strong as the step. Classify a feature as a corner if the ratio of the
squared magnitudes exceeds this threshold.
*/
#define CORNER_THRESH ((float)0.16)
/* A blob consists of bars of the same color in both the dominant and
perpendicular directions. These should have similar magnitudes.
Clssify a blob if this (squared) threshold is passed.
*/
#define BLOB_THRESH ((float)0.36)
/* specifies range over which bump function is non-zero */
#define LIM_SQ ((float) 0.203636)
/* specifies effective range for even and odd filters */
#define EFF_LIM ((float) 0.35)
/* discard a signal if it has rolled off by more than this */
#define MIN_ROLL_OFF ((float) 0.02)
#define STRENGTH_SCALE ((float) 15.03)
typedef unsigned char PIXEL;
/* color for an edge */
#define GRID_COLOR ((COLORREF) 0x00FF00) // green
#define EDGE_COLOR ((COLORREF) 0x0000FF) // red
#define DARK_BAR_COLOR ((COLORREF) 0xFF0000) // blue
#define LIGHT_BAR_COLOR ((COLORREF) 0x00FFFF) // yellow
#define CORNER_COLOR ((COLORREF) 0x00AFFF) // orange
#define CURVE_COLOR ((COLORREF) 0xFFFF00) // magenta
#define MAX_PIXEL 255
#define MIN_PIXEL 0
//#define FULL_BLACK MIN_PIXEL
//#define FULL_WHITE MAX_PIXEL
#define MEDIUM_GRAY ((MAX_PIXEL + MIN_PIXEL) / 2)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -