开源虹膜识别算法OSIRIS是在Linux下运行的,为了介绍给众多windows平台下的开发者,这里简述一下如何把它移植到windows。
开发平台Windows XP + Visual Studio 2008 + OpenCV2.3.1。
开发平台Windows XP + Visual Studio 2008 + OpenCV2.3.1。
1.新建一个对话框工程,将OSIRIS源码中的如下文件拷贝过去并添加到工程:
OsiCircle.cpp/.h
OsiEye.cpp/.h
OsiManager.cpp/.h
OsiProcessings.cpp/.h
OsiStringUtils.h
2.在上述源码中,只需要对OsiManager.cpp/.h做少量修改即可使用了:
OsiManager.cpp#include <fstream>
#include <iterator>
#include <stdexcept>
#include "OsiManager.h"
#include "OsiStringUtils.h"
using namespace std ;
namespace osiris
{
OsiManager::OsiManager ( )
{
initConfiguration() ;
loadGaborFilters() ;
loadApplicationPoints() ;
}
OsiManager::~OsiManager ( )
{
if ( mpApplicationPoints )
{
cvReleaseMat(&mpApplicationPoints) ;
}
for ( int f = 0 ; f < mGaborFilters.size() ; f++ )
{
cvReleaseMat(&mGaborFilters[f]) ;
}
}
void OsiManager::initConfiguration ( )
{
// Options of processing
mProcessSegmentation = false ;
mProcessNormalization = false ;
mProcessEncoding = false ;
mProcessMatching = false ;
mUseMask = true ;
// Inputs
mListOfImages.clear() ;
mFilenameListOfImages = "" ;
mInputDirOriginalImages = "./SourceImage/" ;
mInputDirMasks = "" ;
mInputDirParameters = "" ;
mInputDirNormalizedImages = "" ;
mInputDirNormalizedMasks = "./NormalizedMasks/" ;
mInputDirIrisCodes