前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++ OpenCV标记函数drawMarker的使用

C++ OpenCV标记函数drawMarker的使用

作者头像
Vaccae
发布2020-11-09 14:52:11
2.4K0
发布2020-11-09 14:52:11
举报
文章被收录于专栏:微卡智享微卡智享微卡智享

OpenCV基础函数

drawmarker就是画标记的函数,使用也非常简单,以前一般要图像上做标记可能直接就画的点,而drawmarker函数中,可多个不同的标记可以自己选择,用了它就可以在图像上做标记会更方便一些。

drawMarker函数介绍

微卡智享

drawMarker

void cv::drawMarker  (  InputOutputArray   img,  --源图像
                        Point   position,  --要画的坐标点
                        const Scalar &   color, --颜色
                        int   markerType = MARKER_CROSS, --标记类型
                        int   markerSize = 20,  --标记大小
                        int   thickness = 1,   --线条粗细
                        int   line_type = 8 )  

上面函数中的参数也非常简直,已经写了对应的说明,需要注意的一个就是markerType的参数,这里的参数有多个,如下:

参数值

参数名称

MarkerTypes::MARKER_CROSS

十字

MarkerTypes::MARKER_DIAMOND

钻石

MarkerTypes::MARKER_SQUARE

正方形

MarkerTypes::MARKER_STAR

星形

MarkerTypes::MARKER_TILTED_CROSS

叉叉

MarkerTypes::MARKER_TRIANGLE_DOWN

向下箭头

MarkerTypes::MARKER_TRIANGLE_UP

向上箭头

代码演示

微卡智享

新建一个opencvdrawmarker的项目,配置OpenCV的属性《VS2017配置OpenCV通用属性

main的代码

#include<iostream>
#include<opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(int argc, char** argv) {
  //创建一个的空Mat
  Mat src = Mat::zeros(240, 120, CV_8UC3);

  //画蓝色十字
  drawMarker(src, Point(60, 30), Scalar(255, 0, 0), MarkerTypes::MARKER_CROSS, 20, 3, 8);
  //画绿色钻石
  drawMarker(src, Point(60, 60), Scalar(0, 255, 0), MarkerTypes::MARKER_DIAMOND, 20, 3, 8);
  //画红色正方形
  drawMarker(src, Point(60, 90), Scalar(0, 0, 255), MarkerTypes::MARKER_SQUARE, 20, 3, 8);
  //画紫色星形
  drawMarker(src, Point(60, 120), Scalar(255, 0, 255), MarkerTypes::MARKER_STAR, 20, 3, 8);
  //画浅蓝色叉
  drawMarker(src, Point(60, 150), Scalar(255, 255, 0), MarkerTypes::MARKER_TILTED_CROSS, 20, 3, 8);
  //画黄色向下箭头
  drawMarker(src, Point(60, 180), Scalar(0, 255, 255), MarkerTypes::MARKER_TRIANGLE_DOWN, 20, 3, 8);
  //画白色向上箭头
  drawMarker(src, Point(60, 210), Scalar(255, 255, 255), MarkerTypes::MARKER_TRIANGLE_UP, 20, 3, 8);

  //显示图像
  imshow("src", src);
  waitKey(0);
  return 0;
}

实现效果

drawMarker的函数就是这么的简单。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 微卡智享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • drawMarker
  • main的代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档