📄 fgscore.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 + -