【OpenCV在图片上绘制点、圆(C++)】

这篇具有很好参考价值的文章主要介绍了【OpenCV在图片上绘制点、圆(C++)】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

也没啥前言好说的,就是做项目时候要绘制点和圆,自己学会了就在这记录一下(其实是好久以前了,一直在草稿箱,人太懒)。请根据自己的实际情况做修改。这是C++版本的,Python其实也差不太多,随缘以后整理。


一、引入头文件

#include<iostream>//取决于你的实际需要
#include<opencv2/opencv.hpp>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>//这个头文件是与图像处理有关的必须的
/*以下是我对命名空间的习惯*/
using namespace std;
using namespace cv;

开始时候我就忘了这句,#include<opencv2/imgproc/imgproc.hpp>,结果提示opencv没circle这个函数,这就有点扯了,头文件还是得认真。

二、在图像上绘制圆、点

1.关键函数

circle(image2, points2, 3, Scalar(255, 0, 120), 30);//画圆,空心的
circle(image1, points1, 3, Scalar(0, 255, 120), -1);//画点,其实就是实心圆

circle(画布,圆心点坐标,尺寸,颜色,半径-1是实心圆)。发挥空间很大,根据实际需要修改。

2.举个例子

不能直接用!!!,照前面的改就好了,下面仅仅是个例子,是个大意,跑不出来的!!!
代码如下:

#include<iostream>//取决于你的实际需要
#include<vector>
#include<opencv2/opencv.hpp>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>//这个头文件是与图像处理有关的必须的
/*以下是我对命名空间的习惯*/
using namespace std;
using namespace cv;
int main(){
	Mat image1 = imread("./1.png", 1);//路径根据自己的改
	vector<Point2f> points1;
	/*我的图是640*480的,所以以下生成点注意一下数据范围
	.......
	生成点懒得写了,我用的时候是keypoint转的,要自己造的话,参考这句
	points1.push_back(Point2f(2, 3));  
	*/
	for(i = 0; i < points1.size(); i++){
		circle(image1, points1[i], 3, Scalar(0, 255, 120), -1);//画点,其实就是实心圆
	}
	imshow("PointsinImage", image1);
	waitKey(0);//敲键盘关图片,别直接×
	return 0;
}

实心的画完就是这样式的:
【OpenCV在图片上绘制点、圆(C++)】


总结

没啥总结的,散会,跑出来了bug在评论区提一下。文章来源地址https://www.toymoban.com/news/detail-507227.html

到了这里,关于【OpenCV在图片上绘制点、圆(C++)】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • c++ 使用opencv来绘制各种图形(持续更新)

     OpenCV中并没有现成的函数,因此可以通过绘制两条相互垂直的直线来实现十字丝的绘制。

    2024年02月13日
    浏览(84)
  • [C++] opencv - drawContours(绘制轮廓)函数介绍和使用场景

    OpenCV中的drawContours函数用于在图像上绘制轮廓。其函数原型如下: 比较复制插入新建 参数说明: image: 输出图像,即绘制轮廓后的图像。 contours: 轮廓集合,每个轮廓由一系列点组成。 contourIdx: 轮廓索引数组,指定要绘制哪些轮廓。如果为NULL,则绘制所有轮廓。 contourC

    2024年01月19日
    浏览(51)
  • Opencv(C++)笔记--绘制直线、矩形、椭圆、圆、填充多边形、绘制字体和随机产生坐标点

    目录 1--cv::line()绘制直线 2--cv::Rect()绘制矩形 3--cv::ellipse()绘制椭圆 4--cv::circle()绘制圆 5--cv::fillPoly()填充多边形 6--cv::putText()绘制字体 6--cv::RNG随机产生坐标点 使用 cv::Point p1 定义坐标点; 使用 cv::line() 绘制直线,传入的参数依次为:背景图、两个点的坐标、直线的颜色、直线

    2024年02月14日
    浏览(55)
  • 基于C++ 的OpenCV绘制多边形,多边形多条边用不用的颜色绘制

    使用基于C++的OpenCV库来绘制多边形,并且为多边形的不同边使用不同的颜色,可以按照以下步骤进行操作: 首先,确保你已经安装了OpenCV库并配置好了你的开发环境。 导入必要的头文件: 创建一个空白的图像,然后绘制多边形,并为每条边选择不同的颜色: 在这个示例中,

    2024年02月13日
    浏览(52)
  • 【OpenCV • c++】直方图计算 | 绘制 H-S 直方图 | 绘制一维直方图 | 绘制 RGB 三色直方图

      直方图广泛应用于很多计算机视觉处理当中。通过标记帧与帧之间显著的边缘和颜色的变化,可以检测视频中的场景变化。在每个兴趣点设置一个有相似特征的直方图所构成的“标签”,可以用来标记各种不同的事情,比如图像的色彩分布,物体边缘梯度模板等等。是计

    2024年02月09日
    浏览(52)
  • openCV上图片显示中文c++

    准备材料: 1、中文汉字库 2、中文显示扩展类 cvxFont.h cvxFont.cpp 编译脚本: CmakeLists.txt 测试代码: main.cpp

    2024年02月16日
    浏览(33)
  • C++ 结合 opencv读取图片与视频

    2024年02月06日
    浏览(41)
  • opencv C++ 输出图片中红点的坐标

    2024年02月11日
    浏览(29)
  • C# &OpenCV 从零开发(0):前言

    由于我想换个机器视觉+运动控制的工作,我就开始了自学机器视觉方向的技术。但是Halcon毕竟是商业化的库,国内用盗版还是怕被告。所以期望使用OpenCV。 OpenCV目前已知的方法的有两个版本 Python:用起来挺简单的,就是Python的语言不适合管理,感觉以后必定会出现问题,不适

    2024年01月18日
    浏览(58)
  • 【C++】C++学习前言

    C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(objectoriented programming:面向对象)思想,支持面向对象的程序设计语言应运而生。

    2024年03月12日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包