From ddeb839383bec08e0bf956ea06151bd32f8e5bb1 Mon Sep 17 00:00:00 2001 From: pans <pans@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 13 二月 2017 16:43:06 +0800 Subject: [PATCH] --- RtspFace/SensetimeFaceAPIWrapper/src/tools.cpp | 3 ++- RtspFace/SensetimeFaceAPIWrapper/src/test.cpp | 9 ++++++--- RtspFace/SensetimeFaceAPIWrapper/src/faceAPI.cpp | 9 ++++++++- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/RtspFace/SensetimeFaceAPIWrapper/src/faceAPI.cpp b/RtspFace/SensetimeFaceAPIWrapper/src/faceAPI.cpp index e45806d..23e5868 100644 --- a/RtspFace/SensetimeFaceAPIWrapper/src/faceAPI.cpp +++ b/RtspFace/SensetimeFaceAPIWrapper/src/faceAPI.cpp @@ -60,7 +60,11 @@ p_f = fdb->extract_feature(image); int indx = fdb->db_add(p_f); if(fdb->finally()) + { + fprintf(stderr, "fdb->finally()%d\n",indx); return indx; + } + return -2; } @@ -142,6 +146,7 @@ { if(db_save()) { + return true; } @@ -180,7 +185,9 @@ { fprintf(stderr, "save done!\n"); } + cv_verify_destroy_db(handle_db); + fprintf(stderr, "db_save end!\n"); return true; } @@ -241,7 +248,7 @@ fprintf(stderr, "cv_verify_search_face failed, error code %d\n", cv_result); } std::cout<<"this is hits"<<std::endl; - if (top_scores[0] != 0) + if (top_scores[0] >= 0.7) { indx=top_idxs[0]; std::cout<<"indx="<<indx<<std::endl; diff --git a/RtspFace/SensetimeFaceAPIWrapper/src/test.cpp b/RtspFace/SensetimeFaceAPIWrapper/src/test.cpp index 64a17e5..8ae3ba2 100644 --- a/RtspFace/SensetimeFaceAPIWrapper/src/test.cpp +++ b/RtspFace/SensetimeFaceAPIWrapper/src/test.cpp @@ -16,7 +16,7 @@ char *image_list = "../test_image/imglist"; my_db mydb= {"root","Basic@2017","localhost","demo",3306}; - person p={0,"axsdcc",1}; + person p= {0,"axsdcc",1}; cv::Mat bgr_image = cv::imread(image_path); if(bgr_image.data != NULL) @@ -36,8 +36,11 @@ tools tool=tools(); tool.init(mydb,db_path); cout<<"======tools init ==========="<<endl; - //idx=tool.reg(bgr_image,&p); - tool.search(bgr_image,&p); + if(tool.search(bgr_image,&p)) + { + idx=tool.reg(bgr_image,&p); + } + cout<<"id="<<idx<<endl; cout<<"============================================"<<endl; cout<<"p_id="<<p.p_id<<endl; diff --git a/RtspFace/SensetimeFaceAPIWrapper/src/tools.cpp b/RtspFace/SensetimeFaceAPIWrapper/src/tools.cpp index 5534570..a8be726 100644 --- a/RtspFace/SensetimeFaceAPIWrapper/src/tools.cpp +++ b/RtspFace/SensetimeFaceAPIWrapper/src/tools.cpp @@ -74,10 +74,11 @@ int tools::do_register(cv::Mat image,person *p) { - p= {}; + //p= {}; p->f_id = f_api.do_register(image); if(p->f_id > 0) { + fprintf(stderr, " tools::do_register %d\n",p->f_id); if(dbu.db_register(p)) { return 0; -- Gitblit v1.8.0