10分钟学会C++OpenCV图像处理

目录

1.读取视频数据和摄像头数据

1.1读取视频数据

1.2读取摄像头数据

 2.图像的预处理(灰度转换、高斯模糊、边缘检测、形态学操作)

 3.图像缩放、ROI区域选取

4.图像中画圆、矩形、线段以及添加文字

 5.透视变换——将歪曲的图像纠正

 6.创建trackbar滑动改变阈值

 7.轮廓检测

7.1检测出图中所有物体的轮廓

 7.2 图像中含有小的噪声的轮廓也被检测出来,需要进行剔除

7.3利用矩形圈出目标

7.4根据角点的个数识别出是什么形状

7.5人脸检测


1.读取视频数据和摄像头数据

1.1读取视频数据

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

using namespace cv;
using namespace std;

/*
	读取视频数据
*/
void main()
{
	string path = "F:/testImage/Megamind.avi";
	VideoCapture cap(path);
	Mat img;
	while (true)
	{
		cap.read(img);
		imshow("Image", img);
		waitKey(20);  
	}
}

1.2读取摄像头数据

#include<iostream>
#include<opencv2/highgui.hpp>
#include<o
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
C++ OpenCV是一种常用的图像处理库,可以用来进行图像的加载、修改和保存等操作。通过使用OpenCV的函数和方法,可以实现对图像的掩膜操作、对比度调整、均衡化以及形态学操作等。 例如,可以使用imread函数加载图像,如下所示: ```cpp Mat src = imread("C:\\Users\\td\\Desktop\\he.jpeg"); ``` 然后,可以使用cvtColor函数将图像转换为指定的色彩空间,例如将BGR色彩空间转换为BGR555色彩空间: ```cpp Mat output; cvtColor(src, output,CV_BGR2BGR555); ``` 接下来,可以使用imwrite函数保存修改后的图像: ```cpp imwrite("D:/zhubajie.png", output); ``` 除了图像加载和保存,还可以进行其他图像处理操作。例如,可以使用equalizeHist函数对图像进行均衡化处理: ```cpp cvtColor(src, src, CV_BGR2GRAY); Mat dst; equalizeHist(src, dst); ``` 还可以使用morphologyEx函数进行形态学操作,如开操作、闭操作、梯度操作等。例如,可以使用getStructuringElement函数创建结构元素,并通过morphologyEx函数对图像进行黑帽操作: ```cpp Mat kernel = getStructuringElement(MORPH_RECT, Size(11, 11), Point(-1, -1)); morphologyEx(src, dst, CV_MOP_BLACKHAT, kernel); ``` 以上是C++ OpenCV图像处理的一些基本操作,根据实际需求可以使用不同的函数和方法来完成不同的图像处理任务。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI炮灰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值