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