You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.4 KiB
67 lines
2.4 KiB
|
7 months ago
|
/**
|
||
|
|
********************************************************************************
|
||
|
|
* Copyright (C) 2022 NEXTCHIP Inc. All rights reserved.
|
||
|
|
* This software is the confidential and proprietary information of
|
||
|
|
* NEXTCHIP, Inc. ("Confidential Information"). You shall not disclose such
|
||
|
|
* Confidential Information and shall use it only in accordance with
|
||
|
|
* the terms of the license agreement you entered into with NEXTCHIP.
|
||
|
|
********************************************************************************
|
||
|
|
*/
|
||
|
|
/**
|
||
|
|
********************************************************************************
|
||
|
|
* @file : nc_bytetrack_wrapper.h
|
||
|
|
*
|
||
|
|
* @brief : nc_bytetrack_wrapper header
|
||
|
|
*
|
||
|
|
* @author : SoC SW team. NextChip Inc.
|
||
|
|
*
|
||
|
|
* @date : 2022.05.27.
|
||
|
|
*
|
||
|
|
* @version : 1.0.0
|
||
|
|
********************************************************************************
|
||
|
|
* @note
|
||
|
|
* 2022.05.27 / 1.0.0 / Initial released.
|
||
|
|
*
|
||
|
|
********************************************************************************
|
||
|
|
*/
|
||
|
|
|
||
|
|
#ifndef BYTETRACK_WRAPPER_H
|
||
|
|
#define BYTETRACK_WRAPPER_H
|
||
|
|
|
||
|
|
#include <unistd.h>
|
||
|
|
#include <stdio.h>
|
||
|
|
#include <stdlib.h>
|
||
|
|
#include <stdint.h>
|
||
|
|
#include "nc_cnn_common.h"
|
||
|
|
|
||
|
|
typedef struct {
|
||
|
|
int class_id; // unique class id
|
||
|
|
float x;
|
||
|
|
float y;
|
||
|
|
float w;
|
||
|
|
float h;
|
||
|
|
float prob;
|
||
|
|
} stCnnDetectedObjInfo;
|
||
|
|
|
||
|
|
// typedef struct {
|
||
|
|
// int track_id; // tracked id by BYTETRACK
|
||
|
|
// float x;
|
||
|
|
// float y;
|
||
|
|
// float w;
|
||
|
|
// float h;
|
||
|
|
// } stByteTrackedObjInfo;
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
extern "C" int nc_init_bytetracker(int fps, int track_buffer, uint16_t *class_ids_arr, int class_ids_cnt, int cam_ch);
|
||
|
|
extern "C" void nc_destroy_byettracker(int cam_ch);
|
||
|
|
extern "C" void nc_set_bytetracker_thresh_values(uint16_t class_id, float track_thresh, float high_thresh, float match_thresh, int cam_ch);
|
||
|
|
extern "C" int nc_update_bytetracked_objs_per_frame(uint16_t class_id, stCnnDetectedObjInfo *in_bboxes, uint32_t in_bbox_cnt, stObjInfo *out_bboxes, uint32_t *out_bbox_cnt, int cam_ch);
|
||
|
|
#else
|
||
|
|
extern int nc_init_bytetracker(int fps, int track_buffer, uint16_t *class_ids_arr, int class_ids_cnt, int cam_ch);
|
||
|
|
extern void nc_destroy_byettracker(int cam_ch);
|
||
|
|
extern void nc_set_bytetracker_thresh_values(uint16_t class_id, float track_thresh, float high_thresh, float match_thresh, int cam_ch);
|
||
|
|
extern int nc_update_bytetracked_objs_per_frame(uint16_t class_id, stCnnDetectedObjInfo *in_bboxes, uint32_t in_bbox_cnt, stObjInfo *out_bboxes, uint32_t *out_bbox_cnt, int cam_ch);
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#endif // #ifndef BYTETRACK_WRAPPER_H
|