Minos

飞搜C++ SDK入门与使用
yuzhipeng 发表于 1年前  API使用问题

飞搜人脸C++ sdk现在分别提供Windows和Linux的动态库支持,可以调用飞搜函数来搭建人脸服务了。

人脸检测:

face_rects是人脸检测的矩形框数组,count是返回图片中人脸的数量

faceall_rect_t *face_rects;
unsigned int count;
faceall_handle_t handle = faceall_facesdk_detect_get_instance();
faceall_facesdk_detect(handle, image1, &face_rects, &count);

人脸landmark检测:

landmark需要人脸检测的结果作为输入

faceall_landmark_t landmark;
handle = faceall_facesdk_landmark5_get_instance();
faceall_facesdk_landmark5(handle, image, face_rect,  &landmark);

人脸特征提取:

特征提取需要landmark的结果作为输入

float *features;
handle = faceall_facesdk_feature_get_instance();
faceall_facesdk_feature(handle, image, landmark,  &features);

人脸比对:

对比两张人脸的相似程度,需要特征提取的结果作为输入

handle = faceall_facesdk_compare_get_instance();
faceall_facesdk_compare(handle, (const float*)features_1, (const float*)features_2, &score);

Faceset:

Faceset是人脸集合,便于大规模的人脸身份搜索和比对,可以大幅度提高性能,而且使用方便。

构建faceset需要图片数量feature_num,图片特征指针数组features和图片序号ids三个参数

注意:ids是faceset中图片对应的身份标识如{1,2,3,4,5,6,7,8,9},搜索结果会直接返回相应的图片序号)

int feature_num;
float **features = (float**)malloc(feature_num*sizeof(float*));
int *ids = (int *)malloc(feature_num*sizeof(int));

初始化faceset

faceall_handle_t faceset_handle = faceall_facesdk_search_get_instance((const float**)features, (const int*)ids, (unsigned int)num);

增加和减少特征faceset中的图片,features_toadd是要加进来的图片特征,delete_num是要删除的图片数量,ids_todelete是要删除的图片序号数组,add_num是要增加的图片数量,ids_toadd是新加进来图片的序号数组(注意:新加图片序号不可以和faceset原有图片序号有重复)

faceall_facesdk_search_add(faceset_handle, (const float**)(features_toadd), (const int*)(ids_toadd), add_num);
faceall_facesdk_search_delete(faceset_handle, (const int*)(ids_todelete), delete_num);

最后在faceset中进行搜索操作,其中target_feature是搜索的目标人脸特征,topnum是返回搜索结果的数目(按相似度排序),results是返回的相似度数值

faceall_facesdk_search(handle, target_feature, top_num, &results);


P.s.

1.所有的函数调用完成之后请注意及时调用相应的destroy和release_result函数,以防内存泄露

2.有关人脸属性和dense landmark的功能在sdk上也已经完成,并可以调用,大家可以直接参看飞搜sdk的头文件及相关文档或者联系飞搜的技术支持人员。


分享到:

还没有人评论,你不要顶一下楼主么?

登录以后才可以发表评论~ 点击注册 点击登录

yuzhipeng

太懒,没有留下任何个人说明

微信扫描分享 ×