| | |
| | | }; |
| | | |
| | | |
| | | #ifdef OPENCV |
| | | #ifdef TRACK_OPTFLOW |
| | | |
| | | #if defined(TRACK_OPTFLOW) && defined(OPENCV) |
| | | |
| | | #include <opencv2/cudaoptflow.hpp> |
| | | #include <opencv2/cudaimgproc.hpp> |
| | |
| | | float moved_y = cur_key_pt.y - prev_key_pt.y; |
| | | |
| | | if (abs(moved_x) < 100 && abs(moved_y) < 100 && good_bbox_vec_flags[i]) |
| | | if (err_cpu.at<float>(0, i) < flow_error && status_cpu.at<unsigned char>(0, i) != 0) |
| | | if (err_cpu.at<float>(0, i) < flow_error && status_cpu.at<unsigned char>(0, i) != 0 && |
| | | ((float)cur_bbox_vec[i].x + moved_x) > 0 && ((float)cur_bbox_vec[i].y + moved_y) > 0) |
| | | { |
| | | cur_bbox_vec[i].x += moved_x + 0.5; |
| | | cur_bbox_vec[i].y += moved_y + 0.5; |
| | |
| | | |
| | | class Tracker_optflow {}; |
| | | |
| | | #endif // TRACK_OPTFLOW |
| | | #endif // defined(TRACK_OPTFLOW) && defined(OPENCV) |
| | | |
| | | |
| | | #ifdef OPENCV |
| | | |
| | | cv::Scalar obj_id_to_color(int obj_id) { |
| | | int const colors[6][3] = { { 1,0,1 },{ 0,0,1 },{ 0,1,1 },{ 0,1,0 },{ 1,1,0 },{ 1,0,0 } }; |
| | | int const offset = obj_id * 123457 % 6; |
| | |
| | | } |
| | | }; |
| | | #endif // OPENCV |
| | | |