43 lines
1.0 KiB
C
43 lines
1.0 KiB
C
|
#ifndef _upbot_vision_POSTPROCESS_H_
|
||
|
#define _upbot_vision_POSTPROCESS_H_
|
||
|
|
||
|
#include <stdint.h>
|
||
|
#include <vector>
|
||
|
|
||
|
#define OBJ_NAME_MAX_SIZE 16
|
||
|
#define OBJ_NUMB_MAX_SIZE 64
|
||
|
#define OBJ_CLASS_NUM 80
|
||
|
#define NMS_THRESH 0.45
|
||
|
#define BOX_THRESH 0.25
|
||
|
#define PROP_BOX_SIZE (5 + OBJ_CLASS_NUM)
|
||
|
|
||
|
typedef struct _BOX_RECT
|
||
|
{
|
||
|
int left;
|
||
|
int right;
|
||
|
int top;
|
||
|
int bottom;
|
||
|
} BOX_RECT;
|
||
|
|
||
|
typedef struct __detect_result_t
|
||
|
{
|
||
|
char name[OBJ_NAME_MAX_SIZE];
|
||
|
BOX_RECT box;
|
||
|
float prop;
|
||
|
} detect_result_t;
|
||
|
|
||
|
typedef struct _detect_result_group_t
|
||
|
{
|
||
|
int id;
|
||
|
int count;
|
||
|
detect_result_t results[OBJ_NUMB_MAX_SIZE];
|
||
|
} detect_result_group_t;
|
||
|
|
||
|
int post_process(int8_t *input0, int8_t *input1, int8_t *input2, int model_in_h, int model_in_w,
|
||
|
float conf_threshold, float nms_threshold, BOX_RECT pads, float scale_w, float scale_h,
|
||
|
std::vector<int32_t> &qnt_zps, std::vector<float> &qnt_scales,
|
||
|
detect_result_group_t *group);
|
||
|
|
||
|
void deinitPostProcess();
|
||
|
#endif //_upbot_vision_POSTPROCESS_H_
|