36 Star 88 Fork 15

Gavin / FaceSDK

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
This repository doesn't specify license. Please pay attention to the specific project description and its upstream code dependency when using it.
Clone or Download
README.md 4.30 KB
Copy Edit Raw Blame History
Gavin authored 2014-12-10 17:13 . Update README.md

#FaceSDK 人脸识别SDK 采用C++编写,支持两张照片进行比对1:1,以及1:N 人脸搜索,SDK内部自己维护人脸特征数据,支持增、删、查找等操作,上层应用程序只需要关注自己的业务逻辑即可

#支持库下载地址: http://git.oschina.net/facesdk/FaceSDK/attach_files

#提供一个人脸识别的demo软件,下载地址: http://url.cn/eJoZ8G

#SDK API List

CComFaceSDK(void);

//Summary: 比较两张照片的相似度
//Parameters:
//       imgPath1:照片1路径.
//       imgPath2:照片2路径.
//Return : 相似度
float Compare2Image(char* imgPath1, char* imgPath2);

//Summary: 比较两张照片的相似度
//Parameters:
//       imgBuffer1:照片1内存区.
//       imgBuffer1Length:照片1内存区长度.
//       imgBuffer2:照片2内存区.
//       imgBuffer2Length:照片2内存区长度.
//Return : 相似度
float Compare2Image(unsigned char* imgBuffer1,int imgBuffer1Length, unsigned char* imgBuffer2,int imgBuffer2Length);

//Summary: 比较两个人脸的相似度
//Parameters:
//       uid1:照片1编号.
//       uid2:照片2编号.
//Return : 相似度
float Compare2Uid(unsigned int uid1, unsigned int uid2);


//Summary: 注册人脸
//Parameters:
//       uid:人脸uid,这个需要在sdk外部自己定义.
//       imgPath:照片路径.
//Return : 0 表示成功,其他表示失败
int Data_Insert(unsigned int uid, char* imgPath);

//Summary: 注册人脸
//Parameters:
//       uid:人脸uid,这个需要在sdk外部自己定义.
//       imgBuffer:照片内存区.
//       imgBufferLength:照片内存区长度.
//Return : 0 表示成功,其他表示失败
int Data_Insert(unsigned int uid, unsigned char* imgBuffer,int imgBufferLength);


//Summary: 搜索相似脸
//Parameters:
//       imgPath:照片路径.
//       matchNode: 最相似结果.
//Return : 0 表示成功,其他表示失败
int Face_Search(char* imgPath, MatchNode &matchNode);

//Summary: 搜索相似脸
//Parameters:
//       uid:人脸uid,这个需要在sdk外部自己定义
//       matchNode: 最相似结果.
//Return : 0 表示成功,其他表示失败
int Face_Search(unsigned int uid, MatchNode &matchNode);

//Summary: 搜索相似脸
//Parameters:
//       imgPath:照片路径.
//       matchNodeArray:返回最相似的人脸结果数组,即top retNum.
//       retNum:按照相似度降序排序,返回最相似的人脸个数.
//Return : 0 表示成功,其他表示失败
int Face_Search(char* imgPath, MatchNode* matchNodeArray, int retNum);


//Summary: 搜索相似脸
//Parameters:
//       uid:人脸编号.
//       matchNodeArray:返回最相似的人脸结果数组,即top retNum.
//       retNum:按照相似度降序排序,返回最相似的人脸个数.
//Return : 0 表示成功,其他表示失败
int Face_Search(unsigned int uid, MatchNode* matchNodeArray, int retNum);


//Summary: 比较两张照片的相似度
//Parameters:
//       imgBuffer:照片内存区.
//       imgBufferLength:照片内存区长度.
//       matchNodeArray:返回最相似的人脸结果数组,即top retNum.
//       retNum:按照相似度降序排序,返回最相似的人脸个数.
//Return : 0 表示成功,其他表示失败
int Face_Search(unsigned char* imgBuffer,int imgBufferLength, MatchNode* matchNodeArray, int retNum);


//Summary: 查找uid是否在人脸库中出现过
//Parameters:
//       uid:注册人脸时的uid.
//Return : 0 表示成功,其他表示失败
int Data_Search(unsigned int uid);

//Summary:删除uid的人脸数据
//Parameters:
//       uid:注册人脸时的uid.
//Return : 0 表示成功,其他表示失败
int Data_Delete(unsigned int uid);

//Summary: 清空所有注册的人脸数据
//Parameters:
//Return : void
int Data_Clear();

//Summary: 获取目前已经注册的人脸特征个数
//Parameters:
//Return : 人脸特征个数
int Data_GetSize();

#比对两张脸照片的相似度

CComFaceSDK* FaceAPI = new CComFaceSDK();//初始化

char imgPath1[] = "1.jpg";
char imgPath2[] = "2.jpg";

//比较两张照片的相似度
float score = FaceAPI->Compare2Image(imgPath1,imgPath2);
printf("similar=%f\n", score);
C++
1
https://gitee.com/facesdk/FaceSDK.git
git@gitee.com:facesdk/FaceSDK.git
facesdk
FaceSDK
FaceSDK
master

Search