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

📄 fgscore.h

📁 指纹分析源码
💻 H
字号:




#if !defined(__FGS_CORE_H_INCLUDED)
#define __FGS_CORE_H_INCLUDED


// The following ifdef block is the standard way of creating macros which make exporting 
// from a DLL simpler. All files within this DLL are compiled with the FGSCORE_EXPORTS
// symbol defined on the command line. this symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files include this file see 
// FGSCORE_API functions as being imported from a DLL, wheras this DLL sees symbols
// defined with this macro as being exported.
#ifdef FGSCORE_EXPORTS
#define FGSCORE_API __declspec(dllexport)
#else
#define FGSCORE_API __declspec(dllimport)
#endif



#include "fgstypes.h"

FGSCORE_API  const FgsString   FgsGetVersion();

//image related functions
FGSCORE_API FgsImage    FgsImageCreate(void);
FGSCORE_API FgsImage    FgsImageCreateEx(FgsInt width, FgsInt height, const FgsByte *data);
FGSCORE_API FgsError    FgsImageFloodEx(FgsImage image, const FgsByte *data);
FGSCORE_API void    FgsImageDestroy(FgsImage image);
FGSCORE_API FgsError    FgsImageSetSize(FgsImage image, const FgsInt width, const FgsInt height);
FGSCORE_API FgsError    FgsImageCopy(FgsImage dest, const FgsImage src);
FGSCORE_API FgsError    FgsImageClear(FgsImage image);
FGSCORE_API FgsError    FgsImageFlood(FgsImage image, const FgsByte value);
FGSCORE_API void    FgsImageSetPixel(FgsImage image, const FgsInt x, const FgsInt y, const FgsByte val);
FGSCORE_API FgsByte    FgsImageGetPixel(const FgsImage image, const FgsInt x, const FgsInt y);
FGSCORE_API const FgsByte*    FgsImageGetBuffer(FgsImage image);
FGSCORE_API FgsInt    FgsImageGetWidth(const FgsImage image);
FGSCORE_API FgsInt    FgsImageGetHeight(const FgsImage image);
FGSCORE_API FgsInt    FgsImageGetPitch(const FgsImage image);
FGSCORE_API FgsInt    FgsImageGetSize(const FgsImage image);
FGSCORE_API FgsBool    FgsImageCompareSize(const FgsImage first, const FgsImage second);
FGSCORE_API FgsError    FgsImageSetDPI(FgsImage image, const FgsInt dpi);
FGSCORE_API FgsInt    FgsImageGetDPI(const FgsImage image);

//field related function
FGSCORE_API  FgsField   FgsFieldCreate(FgsFieldType type);
FGSCORE_API  FgsField   FgsFieldCreateEx(FgsFieldType type, FgsInt width, FgsInt height);
FGSCORE_API  void   FgsFieldDestroy(FgsField field);
FGSCORE_API  FgsError   FgsFieldSetSize(FgsField field, FgsInt width, FgsInt height);


//key functions
FGSCORE_API   void   FgsNormalize(FgsImage image, FgsField norm);
FGSCORE_API void FgsRetrieveMask(const FgsField imgNorm,
				                 const FgsField oriMap,
				                 FgsField mask, 				                  
				                 FgsFloat thres, 
								 FgsHeap buffer);

FGSCORE_API FgsFloat FgsMeasureMedianWave(const FgsField norm,  const FgsField oriMap, 
						FgsField freqMap,  FgsHeap buffer);

FGSCORE_API FgsError  FgsRetrieveOriMap(const FgsField  norm, FgsField  oriMap, FgsField    relyMap, FgsFloat  relyThres, FgsFloat*   buffer);
FGSCORE_API FgsFloat  FgsMeasureMedianFreq(const FgsField norm, const FgsField oriMap, FgsFloat *meadianFreq, FgsHeap buffer);

FGSCORE_API FgsError  FgsEnhanceByGabor(FgsField norm, const FgsField oriMap,  const FgsField mask, FgsFloat frequency, const FgsGaborBank gaborBank, FgsHeap buffer);

FGSCORE_API FgsError FgsEnhanceByGaborEx(FgsField imgNorm, const FgsField mask,
						  const FgsField oriMap, const FgsField freqMap, 
						  const FgsGaborBank gaborBank, FgsHeap buffer);

FGSCORE_API void  FgsBinarize(FgsField norm, FgsImage imgBin);

FGSCORE_API FgsError  FgsSlenderize(FgsImage image, FgsInt spurLen, const FgsField oriMap);
FGSCORE_API FgsError  FgsExtractMinutia( FgsMinutiaSet  minuSet, 
										const FgsImage imgBin, 
										const FgsField oriMap,
										FgsField   mask,
										const FgsField   relyMap );

FGSCORE_API FgsInt  FgsCompareMinutiaSets( FgsMinutiaSet minuSet1,  FgsMinutiaSet minuSet2, 	FgsInt thresMatch, FgsHeap buffer);


//minutia 
FGSCORE_API FgsMinutiaSet  FgsMinutiaSetCreate (const FgsInt size);
FGSCORE_API void  FgsMinutiaSetDestroy(FgsMinutiaSet minutia);

FGSCORE_API FgsInt  FgsMinutiaSetGetSize(const FgsMinutiaSet minutia);
FGSCORE_API FgsInt  FgsMinutiaSetGetCount(const FgsMinutiaSet minutia);
FGSCORE_API FgsError  FgsMinutiaSetEmpty(FgsMinutiaSet minutia);
FGSCORE_API FgsMinutia  FgsMinutiaSetGetItem(FgsMinutiaSet minuSet, FgsInt index);
FGSCORE_API  FgsMinutia  FgsMinutiaSetGetSpecific(FgsMinutiaSet minuSet, FgsInt x, FgsInt y);


FGSCORE_API FgsPoint  FgsStarGetOriginal(FgsStar star);
FGSCORE_API FgsPoint  FgsStarGetNeighbor(FgsStar star, FgsInt index);

//match attributes
FGSCORE_API FgsMinutia FgsStarGetOrigin(const FgsStar star);
FGSCORE_API FgsMinutia FgsStarGetNeighborItem(const FgsStar star, FgsInt index);
FGSCORE_API FgsInt FgsStarGetNeighborCount(const FgsStar star);
FGSCORE_API FgsInt FgsStarDiffNeighborDistance(const FgsStar target, FgsInt tarIndex, const FgsStar templet, FgsInt tempIndex );
FGSCORE_API FgsFloat FgsStarDiffNeighborDeltaAngle(const FgsStar target, FgsInt tarIndex, const FgsStar templet, FgsInt tempIndex );
FGSCORE_API FgsFloat FgsStarDiffNeighborThetaAngle(const FgsStar target, FgsInt tarIndex, const FgsStar templet, FgsInt tempIndex );


//miscellaneous functions
FGSCORE_API  FgsError  FgsShrinkMask(FgsField mask);
FGSCORE_API FgsRefMask  FgsRefMaskCreate(FgsInt angle, FgsInt radius);
FGSCORE_API  void  FgsRefMaskDestroy(FgsRefMask refMask);
FGSCORE_API  FgsPoint  FgsLocateRefPoint(FgsRefMask refMask, FgsField oriMap, FgsField relyMap, FgsField mask, FgsFloat thresRef,FgsFloat *buffer);

FGSCORE_API FgsGaborBank  FgsGaborBankCreate();FGSCORE_API void  FgsGaborBankDestroy( FgsGaborBank gaborBank);

FGSCORE_API FgsStar FgsGenerateStar(const FgsMinutiaSet minuSet, const FgsMinutia origin);
FGSCORE_API void    FgsDestroyStar(FgsStar star);


//quality evaluation
FGSCORE_API FgsFloat  FgsAssessMask(const FgsField mask);
FGSCORE_API FgsFloat  FgsAssessRelyMap(const FgsField relyMap, const FgsField mask);

FGSCORE_API FgsPoint FgsMinutiaGetPosition(const FgsMinutia minu);
FGSCORE_API FgsFloat FgsMinutiaGetDirection(const FgsMinutia minu);



#endif

⌨️ 快捷键说明

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