19 #define UNTRACKED_OBJECT_ID 0xFFFFFFFFFFFFFFFF
21 #define NVDS_OBJ_VISIBILITY 20
22 #define NVDS_OBJ_IMAGE_FOOT_LOCATION 21
23 #define NVDS_TRACKER_PAST_FRAME_META 15
29 char bbox_file[1024] = {0};
30 FILE *bbox_params_dump_file = NULL;
32 for (data.
initiateIterator(frame_itr); !frame_itr->done(); frame_itr->next()) {
33 uint stream_id = (*frame_itr)->padIndex();
34 snprintf(bbox_file,
sizeof(bbox_file) - 1,
"%s/%03u_%06lu.txt",
35 output_dir.c_str(), stream_id,
36 (ulong)(*frame_itr)->frameNum());
37 bbox_params_dump_file = fopen(bbox_file,
"w");
38 if (!bbox_params_dump_file)
continue;
43 for (frame_meta.
initiateIterator(obj_itr); !obj_itr->done(); obj_itr->next()) {
52 fprintf(bbox_params_dump_file,
53 "%s 0.0 0 0.0 %f %f %f %f 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %f\n",
54 object_meta.
label().c_str(), left, top, right, bottom, confidence);
56 fprintf(bbox_params_dump_file,
57 "%s %lu 0.0 0 0.0 %f %f %f %f 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %f\n",
58 object_meta.
label().c_str(), object_meta.
objectId(), left, top, right, bottom,
62 fclose(bbox_params_dump_file);
67 char bbox_file[1024] = {0};
68 FILE *bbox_params_dump_file = NULL;
70 for (data.
initiateIterator(frame_itr); !frame_itr->done(); frame_itr->next()) {
71 uint stream_id = (*frame_itr)->padIndex();
72 snprintf(bbox_file,
sizeof(bbox_file) - 1,
"%s/%03u_%06lu.txt",
73 output_dir.c_str(), stream_id,
74 (ulong)(*frame_itr)->frameNum());
75 bbox_params_dump_file = fopen(bbox_file,
"w");
76 if (!bbox_params_dump_file)
continue;
81 for (frame_meta.
initiateIterator(obj_itr); !obj_itr->done(); obj_itr->next()) {
84 uint64_t
id = object_meta.
objectId();
85 bool write_proj_info =
false;
86 float visibility = -1.0, x_img_foot = -1.0, y_img_foot = -1.0;
96 write_proj_info =
true;
99 object_meta.
iterate([&x_img_foot, &y_img_foot, &write_proj_info](
const UserMetadata& user_meta) {
103 write_proj_info =
true;
109 fprintf (bbox_params_dump_file,
110 "%s %lu 0.0 0 0.0 %f %f %f %f 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %f %f %f %f\n",
111 object_meta.
label().c_str(),
id, left, top, right, bottom, confidence, visibility, x_img_foot, y_img_foot);
115 fprintf (bbox_params_dump_file,
116 "%s %lu 0.0 0 0.0 %f %f %f %f 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %f\n",
117 object_meta.
label().c_str(),
id, left, top, right, bottom, confidence);
120 fclose(bbox_params_dump_file);
129 if (!pPastFrameObjBatch) {
133 for (uint si = 0; si < pPastFrameObjBatch->
numFilled; si++) {
135 uint stream_id = (uint) (objStream->
streamID);
136 for (uint li = 0; li < objStream->
numFilled; li++) {
138 for (uint oi = 0; oi < objList->
numObj; oi++) {
141 char bbox_file[1024] = { 0 };
142 snprintf(bbox_file,
sizeof(bbox_file) - 1,
"%s/%03u_%06lu.txt",
143 output_dir.c_str(), stream_id, (ulong)obj->
frameNum);
152 FILE *bbox_params_dump_file = fopen(bbox_file,
"a");
153 if (!bbox_params_dump_file) {
157 fprintf(bbox_params_dump_file,
158 "%s %lu 0.0 0 0.0 %f %f %f %f 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %f\n",
161 fclose(bbox_params_dump_file);
170 std::string output_dir =
"/tmp/kitti/";
173 bool tracker_kitti_output =
false;
174 probe.
getProperty(
"tracker-kitti-output", tracker_kitti_output);
176 if (tracker_kitti_output) {