pans
2016-12-30 1e7e2ba704be9ba78f1c50ecc637212414706b82


git-svn-id: http://192.168.1.226/svn/proxy@54 454eff88-639b-444f-9e54-f578c98de674
1个文件已修改
39 ■■■■■ 已修改文件
RtspFace/demo/src/faceAPI.cpp 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RtspFace/demo/src/faceAPI.cpp
@@ -2,40 +2,44 @@
#include "faceDB.h"
faceDB *fdb;
faceAPI::faceAPI(){
faceAPI::faceAPI()
{
    //创建静态人脸识别句柄,同时创建状态标量
    cv_result_t cv_result = 0;
    //faceDB* f_db = faceDB.GetInstance();
    fdb=new faceDB();
}
faceAPI::~faceAPI(){
faceAPI::~faceAPI()
{
}
int faceAPI::do_reasch(cv::Mat image){
int faceAPI::do_reasch(cv::Mat image)
{
    if (!image.data) {
        fprintf(stderr, "fail to read img\n");
        return -1;
    }else
    } else
        fprintf(stderr, "read img\n");
    p_f = fdb->extract_feature(image);
    fprintf(stderr, "fdb->extract_feature(image)\n");
    if (!p_f)
    {
    if (!p_f) {
        fprintf(stderr, "p_f is null\n");
        return -2;
    }
    return p_img_search(p_f);
    return p_img_search(p_f);
}
int faceAPI::do_reasch(char* s_feature){
int faceAPI::do_reasch(char* s_feature)
{
    get_feature(s_feature,p_f);
    return p_img_search(p_f);
}
int faceAPI::do_register(cv::Mat image){
int faceAPI::do_register(cv::Mat image)
{
    p_f = fdb->extract_feature(image);
    //db add
    int indx = 1;
@@ -43,16 +47,18 @@
}
int faceAPI::p_img_search(cv_feature_t *p_feature){
int faceAPI::p_img_search(cv_feature_t *p_feature)
{
    std::cout<<"p img search"<<std::endl;
    return fdb->search_db(p_feature);
}
//@brief 特征值转换为字符串
//@param 特征值
//@return 字符串格式的特征值
int faceAPI::get_char(cv_feature_t *p_feature,char* feature_str){
int faceAPI::get_char(cv_feature_t *p_feature,char* feature_str)
{
    return cv_verify_serialize_feature(p_feature,feature_str);
}
@@ -60,11 +66,12 @@
//@brief 字符串转换为特征值
//@param 字符串格式的特征值
//@return 特征值
int faceAPI::get_feature(char *feature_str,cv_feature_t *p_feature){
int faceAPI::get_feature(char *feature_str,cv_feature_t *p_feature)
{
    p_feature = cv_verify_deserialize_feature(feature_str);
    if(p_feature != NULL){
    if(p_feature != NULL) {
        return 0;
    }else
    } else
        return -1;
}