?? imagemanip.h
字號:
/*############################################################################# * 文件名:imagemanip.h * 功能: 實現了主要的圖像處理操作 * modified by PRTsinghua@hotmail.com#############################################################################*/#if !defined FVS__IMAGEMANIP_HEADER__INCLUDED__#define FVS__IMAGEMANIP_HEADER__INCLUDED__/* 包含基本的圖像操作函數 */#include "img_base.h"#include "floatfield.h"/****************************************************************************** * 功能:計算指紋圖像脊線的方向。 該算法在許多論文中都有描述,如果圖像做了歸一化,并且對比度較高, 則最后的處理效果也較好。 方向的值在-PI/2和PI/2之間,弧度和脊并不相同。 選取的塊越大,分析的效果也越好,但所需的處理計算時間也越長。 由于指紋圖像中脊線方向的變化比較緩慢,所以低通濾波器可以較好的 過慮掉方向中的噪聲和錯誤。 * 參數:image 指向圖像對象的指針 * field 指向浮點域對象的指針,保存結果 * nBlockSize 塊大小 * nFilterSize 濾波器大小 * 返回:錯誤編號******************************************************************************/FvsError_t FingerprintGetDirection(const FvsImage_t image, FvsFloatField_t field, const FvsInt_t nBlockSize, const FvsInt_t nFilterSize);/****************************************************************************** * 功能:獲取脊線頻率 * 參數:image 指紋圖像,由之提取方向頻率 * direction 脊線方向 * frequency 脊線頻率 * 返回:錯誤編號******************************************************************************/FvsError_t FingerprintGetFrequency(const FvsImage_t image, const FvsFloatField_t direction, FvsFloatField_t frequency);/****************************************************************************** * 功能:獲取指紋圖像的有效區域,以進行進一步的處理。 * 如果某個區域不可用用,則掩碼置為0,包括如下區域: * 邊界,背景點,圖像質量很差的區域。 * 有效區域的掩碼置為255。 * 參數:image 指紋圖像 * direction 脊線方向 * frequency 脊線頻率 * mask 輸出的掩碼 * 返回:錯誤編號******************************************************************************/FvsError_t FingerprintGetMask(const FvsImage_t image, const FvsFloatField_t direction, const FvsFloatField_t frequency, FvsImage_t mask);/****************************************************************************** * 功能:細化指紋圖像 * 圖像必須是二值化過的(只包含0x00或oxFF) * 該算法基于領域的判斷,決定某個象素該移去還是保留 * 參數:image 指紋圖像 * 返回:錯誤編號******************************************************************************/FvsError_t ImageThinConnectivity(FvsImage_t image);/****************************************************************************** * 功能:細化指紋圖像,使用“Hit and Miss”結構元素。 * 圖像必須是二值化過的(只包含0x00或oxFF) * 該算法的缺點是產生很多偽造的線條(偽特征), * 必須由另外的算法來消除,后處理非常必要。 * 參數:image 指紋圖像 * 返回:錯誤編號******************************************************************************/FvsError_t ImageThinHitMiss(FvsImage_t image);/****************************************************************************** * 功能:圖像縮放操作 * 參數:image 指紋圖像 * size 縮放的圖像塊大小 * tolerance 消去直方圖的邊界 * 返回:錯誤編號******************************************************************************/FvsError_t ImageLocalStretch(FvsImage_t image, const FvsInt_t size, const FvsInt_t tolerance);/****************************************************************************** * 功能:圖像膨脹算法 * 參數:image 指紋圖像 * 返回:錯誤編號******************************************************************************/FvsError_t ImageDilate(FvsImage_t image);/****************************************************************************** * 功能:圖像腐蝕算法 * 參數:image 指紋圖像 * 返回:錯誤編號******************************************************************************/FvsError_t ImageErode(FvsImage_t image);/****************************************************************************** * 功能:指紋圖像增強算法 * 該算法描述起來比較復雜,其后處理的部分是基于Gabor濾波器的, 參數動態計算。圖像處理時參數依次改變,所以要做一個原圖的備份。 * 參數:image 指紋圖像 * direction 脊線方向,需要事先計算 * frequency 脊線頻率,需要事先計算 * mask 指示指紋的有效區域 * radius 濾波器半徑,大多數情況下,4.0即可。 值越大,噪聲可以受到更大抑制,但會產生更多的偽特征。 * 返回:錯誤編號******************************************************************************/FvsError_t ImageEnhanceGabor(FvsImage_t image, const FvsFloatField_t direction, const FvsFloatField_t frequency, const FvsImage_t mask, const FvsFloat_t radius);#endif /* FVS__IMAGEMANIP_HEADER__INCLUDED__ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -