⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fp_preprocess.h

📁 基于块方向的图像无损压缩代码
💻 H
字号:
// FP_PreProcess.h
// header file for fingerprint preprocess algorithm. 
// data definetion part of old preprocess.h.
// 99. 1. 8.

#ifndef IMAGE_SIZE
#define IMAGE_SIZE  544
#endif 

#define PI		3.14159265 


#define BLOCK_SIZE	16  //use BLOCK_SIZE as 16 in wide.c ,DirectionBlock
#define BLOCK_NO	32  //must modify wide.c before modify this constant
                           
#define SEG_BLOCK_SIZE	16//LATTICE_INTERVAL

#define SEG_BLOCK_NO	32//LATTICE_NO //(IMAGE_SIZE / BLOCK_SIZE - 2)

#define DIR_IMAGE_SIZE 512  //(BLOCK_SIZE * BLOCK_NO)

#define SOURCE_IMAGE_SIZE  640  //resource image width(height)

#define START_POINT	16 //SEG_START_POINT    //18

#define VAGUE   255
#define REJECT  127

#define BACK_THRES 8000//2100
#define PEAK_LMT 130//23
#define DIF_LMT 100//16 
#define VAR_LMT 7500//200

#define CORE_BLOCK_SIZE 4
#define CORE_BLOCK_NO	128

#define X_CLUSTER_THRES  4.2
#define Y_CLUSTER_THRES  4.2

#define CLS_BLOCK_NO 64
#define CLS_BLOCK_SIZE 8
#define CLS_BI_DIM 192      //3*CLS_BLOCK_NO
                                     

#define DETECT_FINE_DELTA_REGION_SIZE 26
#define DETECT_FINE_CORE_REGION_SIZE 26
							//determine 26,should think of  starting bx and by
 	  						//in function InitCoreDelta and R7 and size of 
 	  						//small direction block(5 or 3 in this program) 
 	  						//26+7+5/2 <= (init)bx*8+4                                    



typedef struct {
				float x;
				float y;
				short num; 
				BYTE type;
				BYTE confidence;
				}CLUSTER;

typedef struct {
				short x;
				short y;   
				BOOL Wonder;
				BYTE type;  /*0:whorl,1:core,2:delta*/  //0:convex,1:concave,2:delta
				BYTE confidence;
				BYTE AngleConfidence; 
				}CORE;  

typedef struct {
				float weight0;
				float weight1;
				float weight2;
				}WEIGHT;

typedef struct {
				unsigned long Direction[8];
                } DWEIGHT;

typedef struct {
				short x;
				short y;
				short uNum;
				short dNum;
				}COREPOINT;
typedef struct {
				short x;
				short y;
				BYTE confidence; 
				float direction; 
				}FINEDELTA;
typedef struct {
				short x;
				short y;       //pSrc's coordinate(500*500)
				BYTE confidence;
				BYTE type;
				float direction;
				}FINECORE;  //0:convex,1:concave

typedef struct {
   				BYTE ClassResult;  //0:whorl, 1:left loop, 2:right loop, 3:arch, 4:杂类 ?
   				BYTE ClassConfidence;
   			   }FINECLASS;

typedef struct {
    //short LineNum;
	//double LineInterval;
	//short PointNum;
	//double PointInterval;
	//short DifPointNum;
	//short Wmax;
	//short Rmin;
	//double Scale;
	//double SmoothShift;
	//short SmoothSelect;
	short PeakLmt;
	short DifLmt;
	short VarLmt;
	//long BackThres;
	short MaxSecondLmt;
	short MaxNeighborLmt; 
	short CoreDeltaVarLmt;
	//float GrayScale;
	short DisFromCore;
	short CoreBlockLen;
	short lHalfWide;
	short sHalfWide;
	short RadiusCore;
	short RepeatTime;
	long ClassPeakLmt;
	long ClassDifLmt;
	long ClassVarLmt;
	long ClassBackThres;
	//double FiltLineInterval;
    double FiltPointInterval;
}  PREPROCESSPARAMETER;   //99.3.16

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -