一杯清酒邀明月
天下本无事,庸人扰之而烦耳。

有时候我们需要在程序中显示一个小十字架,比如在定位跟踪的时候,而OpenCV中并没有现成的函数,因此需要自己写一个,其实也很简单,就是两条相互垂直的直线罢了。

以下给出一个简单的实现方法:

 1 /**
 2   * 绘制十字
 3   * @param[in] img 目标图像
 4   * @param[in] point 十字中心点
 5   * @param[in] color 颜色
 6   * @param[in] size 十字尺寸
 7   * @param[in] thickness 粗细
 8 */
 9 void drawCross(cv::Mat img, cv::Point2d point, cv::Scalar color,int size,int thickness)
10 {
11     //绘制横线
12     cv::line(img,cv::Point2d(point.x-size/2,point.y),cv::Point2d(point.x+size/2,point.y),color,thickness,cv::LINE_AA,0);
13     //绘制竖线
14     cv::line(img,cv::Point2d(point.x,point.y-size/2),cv::Point2d(point.x,point.y+size/2),color,thickness,cv::LINE_AA,0);
15 
16     return;
17 }

 

posted on 2022-02-23 14:40  一杯清酒邀明月  阅读(1063)  评论(0编辑  收藏  举报