Newer
Older
CasicIrisIdentify / casic / iris / CasicIrisRec.h
TAN YUE on 15 Nov 2023 975 bytes 20231115 识别调试
#ifndef CASIC_IRIS_REC
#define CASIC_IRIS_REC

#define NORM_WIDTH 512
#define NORM_HEIGHT 64
#define M_PI 3.1415926535897323846

#include <opencv2/opencv.hpp>

namespace iristrt
{

class CasicIrisRec
{

public:
    CasicIrisRec();

    CasicIrisRec(const char * gaborFilterFileName,const char * applicationPointsFileName);

    ~CasicIrisRec();

    cv::Mat normalize(cv::Mat image, int iris_x, int iris_y, int iris_r,int pupil_x, int pupil_y, int pupil_r);

    cv::Mat encodeToImage(cv::Mat normalizedImage);

    float matchImage(cv::Mat code1, cv::Mat code2, cv::Mat normalizedMask1, cv::Mat normalizedMask2);

private:

    std::vector<cv::Mat> gaborFilters;

    cv::Mat applicationPoints;

    std::vector<cv::Mat> loadGaborFilters(const char * gaborFilterFileName);

    cv::Mat loadApplicationPoints(const char * applicationPointsFileName);

    cv::Mat addBorders(cv::Mat pSrc, int width);

}; // end of class CasicIrisRec

} // end of namespace iristrt

#endif