chenke
2017-08-09 2a12817d4ae31a591f788f3fbb82916e385e9e2d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#ifndef _FACE_DAEMON_PROTO_H_
#define _FACE_DAEMON_PROTO_H_
 
#include <stddef.h>
#include <stdint.h>
#include "ev_proto.h"
 
#include <vector>
 
#pragma pack(1)
 
struct FaceDaemonCommand
{
    enum FDC
    {
        FDC__FIRST,
        FDC_SENSETIMEFACEDETECT = EVPCommand::EVPC_USER_DEFINE + 1, // 129
        FDC_SENSETIMEFACEDETECT_RESULT,
        FDC_SENSETIMEFACEDETECT_PB,
        FDC_SENSETIMEFACEDETECT_RESULT_JSON,
        FDC_SENSETIMEFACEDETECT_SAVE,
        FDC_SENSETIMEFACEDETECT_COMPARE,
        FDC_SENSETIMEFACEDETECT_SEARCH,
        FDC__LAST,
    };
};
 
struct FDP_Image
{
    int32_t db_id;
    int16_t mb_type; // MB_Frame::MBFType
    int16_t width;
    int16_t height;
    int16_t size;
    uint8_t buff[0];
    
    void hton();
    void ntoh();
};
//sizeof(FDP_Image)=10
 
struct FDP_FaceDetectPB
{
    int32_t db_id;
    int16_t camera_id;
    
    FDP_FaceDetectPB(int32_t _db_id, int16_t _camera_id) : db_id(_db_id), camera_id(_camera_id)
    {}
    
    void hton();
    void ntoh();
};
 
struct FDP_FaceDetectResult
{
    int32_t db_id;
    int32_t st_id; // sensetime id
    int16_t confidence; // 1000 times of float confidence, less than zero means error
    
    int16_t camera_id;
    int32_t st_track_id;
    
    FDP_FaceDetectResult(int32_t _db_id, int32_t _st_id, int _confidence) : 
        db_id(_db_id), st_id(_st_id), confidence(_confidence), camera_id(0), st_track_id(0)
    {}
    
    void hton();
    void ntoh();
};
 
#pragma pack()
 
typedef std::vector<FDP_FaceDetectResult> fdr_vec_t;
 
#endif