From 332d18eb6733a5400a2cfd3a3faa2e056bd2a02c Mon Sep 17 00:00:00 2001
From: pans <pans@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 04 一月 2017 19:07:05 +0800
Subject: [PATCH]
---
RtspFace/demo/src/run.sh | 2
RtspFace/demo/src/tools.h | 4 +-
RtspFace/demo/src/test.cpp | 7 ++-
RtspFace/demo/src/DBuntil.cpp | 30 ++++++++------
RtspFace/demo/src/DBuntil.h | 11 ++---
RtspFace/demo/src/tools.cpp | 45 ++++++++++++----------
6 files changed, 55 insertions(+), 44 deletions(-)
diff --git a/RtspFace/demo/src/DBuntil.cpp b/RtspFace/demo/src/DBuntil.cpp
index 27a2c76..3fe23c9 100644
--- a/RtspFace/demo/src/DBuntil.cpp
+++ b/RtspFace/demo/src/DBuntil.cpp
@@ -8,7 +8,7 @@
MYSQL_RES *result;
MYSQL_ROW sql_row;
-DBuntil::DBuntil(){}
+DBuntil::DBuntil() {}
DBuntil::DBuntil(my_db mydb)
{
@@ -35,18 +35,21 @@
mysql_close(&myCont);
}
-*person DBuntil::db_rearch(int f_id)
+bool DBuntil::db_search(person* per)
{
- person p= {0,""};
- db_select(f_id,&p);
- //瀵圭粨鏋勪綋璧嬪��
- return &p;
+ std::cout<<"db_search start"<<std::endl;
+ if(db_select(per))
+ {
+
+ return true;
+ }
+ return false;
}
-bool DBuntil::db_select(int f_id,person* per)
+bool DBuntil::db_select(person* per)
{
-
- sprintf( sql, "select a.p_id,b.`name`,b.img from face_person a,user_info b where a.face_id = %d AND a.p_id = b.pid " , f_id );
+ std::cout<<"db_select start"<<std::endl;
+ sprintf( sql, "select a.p_id,b.`name`,b.img from face_person a,user_info b where a.face_id = %d AND a.p_id = b.pid " ,per->f_id );
mysql_query(&myCont, "SET NAMES utf8"); //璁剧疆缂栫爜鏍煎紡
res = mysql_query(&myCont,sql);//鏌ヨ
@@ -71,14 +74,14 @@
return true;
}
-bool DBuntil::db_add(int f_id,person *per)
+bool DBuntil::db_add(person *per)
{
//
sprintf( sql, "INSERT INTO user_info(NAME, img) VALUES('%s', NULL)" , per->name );
res = mysql_query(&myCont,sql);
if(!res)
{
- sprintf( sql, "INSERT INTO face_person(p_id, face_id) VALUES (LAST_INSERT_ID(), %d)" , f_id );
+ sprintf( sql, "INSERT INTO face_person(p_id, face_id) VALUES (LAST_INSERT_ID(), %d)" , per->f_id );
res = mysql_query(&myCont,sql);
if(!res)
{
@@ -88,9 +91,10 @@
return false;
}
-bool DBuntil::db_register(int f_id,person *per)
+bool DBuntil::db_register(person *per)
{
- if(db_add(f_id,per)){
+ if(db_add(per))
+ {
return true;
}
return false;
diff --git a/RtspFace/demo/src/DBuntil.h b/RtspFace/demo/src/DBuntil.h
index 5b18ce6..badd0b3 100644
--- a/RtspFace/demo/src/DBuntil.h
+++ b/RtspFace/demo/src/DBuntil.h
@@ -23,19 +23,18 @@
DBuntil();
DBuntil(my_db mydb);
~DBuntil();
- *person db_rearch(int f_id);
-
- bool db_register(int f_id,person *p);
+
+ bool db_search(person *p);
+ bool db_register(person *p);
private:
- bool db_add(int f_id,person *per);
+ bool db_add(person *per);
int db_update();
- bool db_select(int f_id,person *per);
+ bool db_select(person *per);
char sql[1024];
int res;
};
-
#endif
\ No newline at end of file
diff --git a/RtspFace/demo/src/run.sh b/RtspFace/demo/src/run.sh
index 1c45db9..66cf2b1 100644
--- a/RtspFace/demo/src/run.sh
+++ b/RtspFace/demo/src/run.sh
@@ -1,2 +1,2 @@
#!/bin/bash
-LD_LIBRARY_PATH=../libs/lib_dummy ./demo
\ No newline at end of file
+LD_LIBRARY_PATH=../libs/lib_dummy ./demo ../test_img/face_01.jpg
\ No newline at end of file
diff --git a/RtspFace/demo/src/test.cpp b/RtspFace/demo/src/test.cpp
index 135b3a8..aa09274 100644
--- a/RtspFace/demo/src/test.cpp
+++ b/RtspFace/demo/src/test.cpp
@@ -27,8 +27,11 @@
int idx = -11;
tools tool=tools();
- idx=tool->reg(bgr_image,p);
- cout<<"idx="<<idx<<endl;
+ //idx=tool.reg(bgr_image,&p);
+ tool.search(bgr_image,&p);
+ cout<<"p_id="<<p.p_id<<endl;
+ cout<<"name="<<p.name<<endl;
+ cout<<"f_id="<<p.f_id<<endl;
return 0;
diff --git a/RtspFace/demo/src/tools.cpp b/RtspFace/demo/src/tools.cpp
index ac85d55..1cce90d 100644
--- a/RtspFace/demo/src/tools.cpp
+++ b/RtspFace/demo/src/tools.cpp
@@ -1,8 +1,9 @@
#include "tools.h"
-tools::tools() {
- my_db mydb={"root","Basic@2017","localhost","demo",3306};
-
+tools::tools()
+{
+ my_db mydb= {"root","Basic@2017","localhost","demo",3306};
+
dbu = DBuntil(mydb);
}
@@ -10,11 +11,11 @@
int tools::search(cv::Mat image,person *p)
{
- idx = f_api.do_reasch(image);
- if(idx<0)
+ p={};
+ p->f_id = f_api.do_reasch(image);
+ if(p->f_id < 0)
{
- p = dbu.db_rearch(idx);
- if(p != NULL)
+ if(do_search(p) == 0)
{
return 0;
}
@@ -24,11 +25,11 @@
int tools::search(char* s_feature,person *p)
{
- idx = f_api.do_reasch(s_feature);
- if(idx<0)
+ p={};
+ p->f_id = f_api.do_reasch(s_feature);
+ if(p->f_id < 0)
{
- p = dbu.db_rearch(idx);
- if(p != NULL)
+ if(do_search(p) == 0)
{
return 0;
}
@@ -38,26 +39,30 @@
int tools::reg(cv::Mat image,person *p)
{
- if(do_register(image,p) == 0){
+ if(do_register(image,p) == 0)
+ {
return 0;
}
return -1;
}
-person tools::do_search(int idx)
+int tools::do_search(person *p)
{
- person p;
- p = dbu.db_rearch(idx);
- return p;
+ dbu.db_search(p);
+ if(p->p_id != NULL)
+ {
+ return 0;
+ }
+ return -1;
}
int tools::do_register(cv::Mat image,person *p)
{
- idx = f_api.do_register(image);
- if(idx<0)
+ p={};
+ p->f_id = f_api.do_register(image);
+ if(p->f_id < 0)
{
- p->f_id = idx;
- if(dbu.db_register(idx,p))
+ if(dbu.db_register(p))
{
return 0;
}
diff --git a/RtspFace/demo/src/tools.h b/RtspFace/demo/src/tools.h
index 6b76ae1..de24907 100644
--- a/RtspFace/demo/src/tools.h
+++ b/RtspFace/demo/src/tools.h
@@ -14,8 +14,8 @@
int reg(cv::Mat image,person *p);
private:
int do_register(cv::Mat image,person *p);
- person do_search(int idx);
- int idx;
+ int do_search(person *p);
+ person per;
DBuntil dbu;
faceAPI f_api;
};
--
Gitblit v1.8.0