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/sample_face_search.h | 41 +++++++++++++++++++++++++++++++++++++----
1 files changed, 37 insertions(+), 4 deletions(-)
diff --git a/FaceServer/sample_face_search.h b/FaceServer/sample_face_search.h
index fb37ee7..e121b16 100644
--- a/FaceServer/sample_face_search.h
+++ b/FaceServer/sample_face_search.h
@@ -1,32 +1,63 @@
#ifndef _SAMPLE_FACE_SEARCH_H_
#define _SAMPLE_FACE_SEARCH_H_
+#include <stdint.h>
+#include <vector>
+
typedef void* cv_handle_t;
struct cv_feature_t;
struct stface_handles
{
cv_handle_t handle_verify;
- cv_handle_t handle_db;
cv_handle_t handle_detect;
+ cv_handle_t handle_db;
- stface_handles() : handle_verify(nullptr), handle_db(nullptr), handle_detect(nullptr)
+ stface_handles() : handle_verify(nullptr), handle_detect(nullptr), handle_db(nullptr)
{}
};
+struct STFaceImage
+{
+ int32_t db_id;
+ int16_t mb_type; // MB_Frame::MBFType
+ int16_t width;
+ int16_t height;
+ uint32_t size;
+ const uint8_t* buff;
+};
+
+struct TopIdxScore
+{
+ int idx;
+ float score;
+
+ TopIdxScore(int _idx, float _score) : idx(_idx), score(_score)
+ {}
+};
+
+typedef std::vector<TopIdxScore> top_idx_score_vect_t;
+
cv_feature_t *stface_extract_feature(stface_handles& handles, const char *image_path);
+cv_feature_t *stface_extract_feature(stface_handles& handles, const STFaceImage& image);
+
+float stface_compare(stface_handles& handles, const STFaceImage& image1, const STFaceImage& image2);
int stface_db_add(stface_handles& handles, const char *image_path);
+int stface_db_add(stface_handles& handles, const STFaceImage& image);
bool stface_db_del(stface_handles& handles, int idx);
-bool stface_db_save(stface_handles& handles, char *db_path);
+bool stface_db_save(stface_handles& handles, const char *db_path);
-bool stface_db_load(stface_handles& handles, char *db_path);
+bool stface_db_load(stface_handles& handles, const char *db_path);
+
+bool stface_db_create(stface_handles& handles, const char *db_path);
bool stface_db_gen(stface_handles& handles, char *image_list, char *output_db_path);
bool stface_search_db(stface_handles& handles, char *image_path);
+bool stface_search_db(stface_handles& handles, const STFaceImage& image, top_idx_score_vect_t& result);
bool stface_search_list(stface_handles& handles, char *image_path, char *list_path);
@@ -34,4 +65,6 @@
int stface_main(int argc, char *argv[]);
+int stface_init_license(const char* lic_path);
+
#endif
--
Gitblit v1.8.0