OPenCV

基本数据类型

cv::Point  

用于表示图像中的一个二维点。它通常包含两个整数类型的成员变量,分别对应于点的横坐标(x)和纵坐标(y)。在图像处理和计算机视觉任务中,cv::Point经常被用来表示图像上的位置或者形状的角点


cv::Mat

cv::Mat是OpenCV库中的一个基础类,用于存储和操作图像或矩阵。cv::Mat代表了一个n维的密集数值单一类型数组。它可以用来存储实际的图像数据(彩色或灰度)、视频帧、实数或复数的矩阵等。这个类提供了一系列的方法和操作符,使得图像处理和计算机视觉任务变得更加简单和高效。

直接构造:可以直接使用构造函数来创建cv::Mat对象,指定其尺寸、类型等

cv::Mat img(480, 640, CV_8UC3); // 创建一个480x640的三通道图像
cv::Mat line_connect_image = cv::Mat::zeros(road_line_mat.size(), CV_8UC1);
//新建一个与路线图相同大小的黑白图像


开闭运算

闭运算是先膨胀再腐蚀的过程,可以用来清除小黑点

开运算同理

开运算是先腐蚀再膨胀的过程,可以清除一些小两点和毛刺


闭运算和开运算使用不同大小的结构元素是因为它们的目标不同。

闭运算的目标是尽量消除小黑点,保持较大的连通区域。因此,使用一个较大的9x9矩形结构元素可以更好地覆盖和融合周围的黑色像素,从而填充和扩展小黑点,使其更容易被腐蚀。

开运算的目标是尽量消除小两点和毛刺,保持较小的连通区域。较小的3x3矩形结构元素适合于去除小的噪点和孤立的像素,腐蚀操作可以将小两点连接在一起,而膨胀操作可以填充和扩展小的连通区域。


轮廓抽取

 定义了一个名为contours的二维向量,用于存储轮廓的点集。每个轮廓是一个由cv::Point构成的向量,其中一维向量表示不同的轮廓,二维向量表示轮廓上的点

定义了一个名为 hierarchy 的一维向量,用于存储轮廓的层级关系信息。每个元素是一个 cv::Vec4i 类型的四元组,其中包含当前轮廓的父、下一个兄弟、第一个子轮廓和前一个兄弟的索引 


  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值