From f2327d66d762a2279bf7b725a818a17a213e9e0b Mon Sep 17 00:00:00 2001
From: pans <pans@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 09 八月 2017 14:57:48 +0800
Subject: [PATCH] add RemoteMethod.capnp etc.
---
FaceServer/STFaceCache.h | 42 ++++++++++++++++++++++++++++++++----------
1 files changed, 32 insertions(+), 10 deletions(-)
diff --git a/FaceServer/STFaceCache.h b/FaceServer/STFaceCache.h
index 2c37ca0..44fb677 100644
--- a/FaceServer/STFaceCache.h
+++ b/FaceServer/STFaceCache.h
@@ -4,15 +4,21 @@
#include <string>
#include "face_daemon_proto.h"
-struct STFaceImage
+#define FDP_FDR_INVALID FDP_FaceDetectResult(STFS_DBID_INVALID, 0, 0)
+#define ENABLE_AUTO_CREATE_STFACEDB
+#define ENABLE_DETECT_IN_NEGATIVE_DBID
+//#define ENABLE_ADD_TO_TEMPDB_WHEN_NOT_DETECT
+#define RESULT_CONFIDENCE 0.70
+#define TEMPDB_FACE_COUNT_MAX 10
+
+enum STFSpecialDBID
{
- int32_t db_id;
- int16_t mb_type; // MB_Frame::MBFType
- int16_t width;
- int16_t height;
- uint32_t size;
- const uint8_t* buff;
+ STFS_DBID_INVALID = 0,
+ STFS_DBID_VISITOR_1 = -1,
+ STFS_DBID_TEMPDB_1 = -1000
};
+
+struct STFaceImage;
class STFaceCache
{
@@ -20,14 +26,30 @@
STFaceCache(const std::string& _stfacedbPath);
~STFaceCache();
- bool load_dbs();
- FDP_FaceDetectResult detect(const STFaceImage& img);
- FDP_FaceDetectResult save(const STFaceImage& img);
+ bool init();
+ void finit();
+ bool load_dbs();
+ void close_dbs();
+ FDP_FaceDetectResult detect(const STFaceImage& img);
+ FDP_FaceDetectResult add(const STFaceImage& img);
+ void search(const STFaceImage& img, fdr_vec_t& topResult);
+ FDP_FaceDetectResult compare(const STFaceImage& img1, const STFaceImage& img2);
+ void delete_db(int dbid);
+
+ //#todo need a delete img, if business not linked faceid and its personid
+ // they can delete it and save/find again!
+
+private:
+ FDP_FaceDetectResult detect_neg(const STFaceImage& img);
+
private:
const std::string stfacedbPath;
const std::string stfaceModels;
+ void* _dbContext;
void* _cacheContext;
+
+ int tempdbFaceCount;
};
#endif
--
Gitblit v1.8.0