VC++中使用OpenCV绘制直线、矩形、圆和文字

VC++中使用OpenCV绘制直线、矩形、圆和文字

在VC++中使用OpenCV绘制直线、矩形、圆和文字非常简单,分别使用OpenCV中的line、rectangle、circle、putText这四个函数即可。具体可以参考OpenCV官方文档:https://docs.opencv.org/4.x/index.html

下面的代码展示了在VC++中如何使用OpenCV绘制直线、矩形、圆和文字

cpp 复制代码
#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;


int main()
{
	cv::Mat img = cv::Mat(512, 512, CV_8UC3, cv::Scalar(0, 0, 0));	// 高度512,宽度512,2^8即256色,3通道,颜色为黑色
	int height = img.rows;
	int width = img.cols;

	// 在图像左上角原点(0,0)到右下角画一条绿色的直线,线条厚度为3
	cv::line(img, cv::Point(0, 0), cv::Point(height, width), cv::Scalar(0, 255, 0), 3);
	// 在左上角顶点(0,0)和右下角(250,350)处绘制一个红色矩形,边界线条厚度为2
	cv::rectangle(img, cv::Point(0, 0), cv::Point(250, 350), cv::Scalar(0, 0, 255), 2);
	// 以(400,50)为中心,绘制半径为30的圆,颜色为青色(绿+蓝=青(Cyan))
	cv::circle(img, cv::Point(400, 50), 30, cv::Scalar(255, 255, 0), 2);
	// 在(350,300)处绘制文字,字体为FONT_HERSHEY_COMPLEX,比例为1,颜色为黄色,厚度为2
	cv::putText(img, "OpenCV", cv::Point(350, 300), cv::FONT_HERSHEY_COMPLEX, 1, cv::Scalar(0, 255, 255), 2);

	cv::imshow("image", img);	// 显示图像


	cv::waitKey(0);	// 永久等待用户输入,直到用户按下按键结束
	cv::destroyAllWindows();	// 销毁所有窗口

	return 0;
}

Visual Studio运行结果如下图所示:

参考资料

相关推荐
AA陈超24 分钟前
虚幻引擎UE5专用服务器游戏开发-20 添加基础能力类与连招能力
c++·游戏·ue5·游戏引擎·虚幻
mit6.8241 小时前
[Meetily后端框架] AI摘要结构化 | `SummaryResponse`模型 | Pydantic库 | vs marshmallow库
c++·人工智能·后端
screenCui1 小时前
macOS运行python程序遇libiomp5.dylib库冲突错误解决方案
开发语言·python·macos
R-G-B1 小时前
【02】MFC入门到精通——MFC 手动添加创建新的对话框模板
c++·mfc·mfc 手动添加创建新的对话框
linux kernel1 小时前
第七讲:C++中的string类
开发语言·c++
Tipriest_1 小时前
[数据结构与算法] 优先队列 | 最小堆 C++
c++·优先队列·数据结构与算法·最小堆
玩代码1 小时前
Java线程池原理概述
java·开发语言·线程池
宛西南浪漫戈命2 小时前
Centos 7下使用C++使用Rdkafka库实现生产者消费者
c++·centos·linq
泰勒疯狂展开2 小时前
Java研学-MongoDB(三)
java·开发语言·mongodb
zzywxc7872 小时前
AI技术通过提示词工程(Prompt Engineering)正在深度重塑职场生态和行业格局,这种变革不仅体现在效率提升,更在重构人机协作模式。
java·大数据·开发语言·人工智能·spring·重构·prompt