AlexeyAB
2018-04-30 a0e288f0dca328b8b12592cc19da9bb7c29646f4
src/box.h
@@ -1,6 +1,20 @@
#ifndef BOX_H
#define BOX_H
#ifdef YOLODLL_EXPORTS
#if defined(_MSC_VER)
#define YOLODLL_API __declspec(dllexport)
#else
#define YOLODLL_API __attribute__((visibility("default")))
#endif
#else
#if defined(_MSC_VER)
#define YOLODLL_API
#else
#define YOLODLL_API
#endif
#endif
typedef struct{
    float x, y, w, h;
} box;
@@ -9,10 +23,23 @@
    float dx, dy, dw, dh;
} dbox;
typedef struct detection {
   box bbox;
   int classes;
   float *prob;
   float *mask;
   float objectness;
   int sort_class;
} detection;
box float_to_box(float *f);
float box_iou(box a, box b);
float box_rmse(box a, box b);
dbox diou(box a, box b);
void do_nms(box *boxes, float **probs, int total, int classes, float thresh);
void do_nms_sort_v2(box *boxes, float **probs, int total, int classes, float thresh);
YOLODLL_API void do_nms_sort(detection *dets, int total, int classes, float thresh);
YOLODLL_API void do_nms_obj(detection *dets, int total, int classes, float thresh);
box decode_box(box b, box anchor);
box encode_box(box b, box anchor);