| 105 | } |
| 106 | |
| 107 | static void draw_panel(cv::Mat& img, cv::Rect r, const char* title, cv::Scalar accent) |
| 108 | { |
| 109 | const cv::Rect clip = r & cv::Rect(0, 0, img.cols, img.rows); |
| 110 | if (clip.width <= 0 || clip.height <= 0) return; |
| 111 | fill_rect(img, clip, kClrHudBg, 0.82); |
| 112 | cv::rectangle(img, clip, accent, 1, cv::LINE_AA); |
| 113 | if (title && title[0]) |
| 114 | cv::putText(img, title, cv::Point(clip.x + 6, clip.y + 14), |
| 115 | kFont, 0.40, accent, 1, cv::LINE_AA); |
| 116 | } |
| 117 | |
| 118 | static void draw_tag(cv::Mat& img, cv::Point anchor, const char* label, cv::Scalar color) |
| 119 | { |
no test coverage detected