Qt-OpenCV学习笔记(初级)
Qt-OpenCV学习笔记,查阅官方文档,并检索CSDN,附带完整测试代码,快速验证函数功能。
搞机械的假程序猿
这个作者很懒,什么都没留下…
展开
-
Qt-OpenCV学习笔记--基础知识和基本操作--总结
Qt-OpenCV学习笔记--基础知识和基本操作--总结原创 2022-11-12 16:38:51 · 1240 阅读 · 0 评论 -
Qt-OpenCV学习笔记--透视变换--warpPerspective()
这个函数用来对图像进行。原创 2022-11-12 15:05:47 · 333 阅读 · 1 评论 -
Qt-OpenCV学习笔记--仿射变换--warpAffine()
将图像进行仿射变换。原创 2022-11-12 14:20:47 · 377 阅读 · 0 评论 -
Qt-OpenCV学习笔记--调整图像大小--resize()
这个函数的作用是调整图像大小。原创 2022-11-11 17:07:40 · 1323 阅读 · 0 评论 -
Qt-OpenCV学习笔记--高级形态转换--morphologyEx()
OpenCV提供了一个综合的形态转换工具,集成了腐蚀运算、膨胀运算、开运算、闭运算、梯度运算、顶帽运算、黑帽运算。原创 2022-11-11 10:58:30 · 729 阅读 · 0 评论 -
Qt-OpenCV学习笔记--图像的膨胀--dilate()
通过一个特定的结构元素一个图像。原创 2022-11-10 19:03:49 · 587 阅读 · 0 评论 -
Qt-OpenCV学习笔记--图像的腐蚀--erode()
通过一个特定的结构元素腐蚀一个图像。原创 2022-11-10 18:37:07 · 978 阅读 · 0 评论 -
Qt-OpenCV学习笔记--获取结构元素--getStructuringElement()
构造一个特定大小和形状的结构元素,用于图像形态学处理。原创 2022-11-10 17:19:14 · 299 阅读 · 0 评论 -
Qt-OpenCV学习笔记--边缘检测--Laplacian()
Laplacian(拉普拉斯)算子是一种二阶导数算子,其具有旋转不变性,可以满足不同方向的图像边缘锐化(边缘检测)的要求。通常情况下,其算子的系数之和需要为零。例 如,一个3×3大小的Laplacian算子如图所示。Laplacian算子比Sobel算子、Scharr算子语法更为简单,不需要在x,y两个方向分别进行检测,检测效果与Sobel算子、Scharr算子相差不大。 src 源图像 dst 输出图像 ddepth 输出原创 2022-11-09 18:07:03 · 356 阅读 · 0 评论 -
Qt-OpenCV学习笔记--边缘检测--Canny()
Canny边缘检测算子是John.F.Canny与1986年开发出来的一个多级边缘检测算法;边缘检测是计算机视觉中一个非常古老的问题,它涉及到检测图像中的边缘来确定目标的边界,从而分离感兴趣的目标。最流行的边缘检测技术之一是Canny边缘检测。原创 2022-11-09 17:32:24 · 1171 阅读 · 0 评论 -
Qt-OpenCV学习笔记--边缘检测--Scharr()
【代码】Qt-OpenCV学习笔记--边缘检测--Scharr()原创 2022-11-09 16:13:10 · 309 阅读 · 0 评论 -
Qt-OpenCV学习笔记--双边滤波--bilateralFilter()
如图所示,比较好的保留了图像的轮廓,但是“雀斑”淡化了许多。原创 2022-11-09 14:47:33 · 668 阅读 · 0 评论 -
Qt-OpenCV学习笔记--高斯滤波--GaussianBlur()
这个函数用来对图像进行。原创 2022-11-09 11:36:59 · 713 阅读 · 0 评论 -
Qt-OpenCV学习笔记--中值滤波--medianBlur()
这个函数用来对图像进行中值滤波。这个函数用法比较简单,但在消除噪音方面,效果比好很多。原创 2022-11-09 11:07:12 · 602 阅读 · 0 评论 -
Qt-OpenCV学习笔记--均值滤波--blur()
这个函数的作用是对源图像进行均值滤波,然后输出。原创 2022-11-09 09:32:28 · 566 阅读 · 0 评论 -
Qt-OpenCV学习笔记--图像边界处理--copyMakeBorder()
这个函数的作用是在图像的周边加上边框。但这个函数更多是用于 卷积核 操作前的边缘处理。图像进行卷积操作时,图像的边界像素并不能被卷积操作到,原因在于边界像素没有完全跟 kernel 重叠,例如当3*3滤波时有1个像素的边缘没有被处理,5*5滤波时有2个像素的边缘没有被处理。在卷积操作开始之前,先增加边缘像素,比如3*3滤波时,在图像四周各填充1个像素的边缘,这样就确保图像的边缘能被处理,在卷积处理之后再去掉这些边缘。原创 2022-11-08 17:19:37 · 802 阅读 · 0 评论 -
Qt-OpenCV学习笔记--自适应阈值--adaptiveThreshold()
adaptiveThreshold是threshold的进阶版本。threshold只是简单的把图像像素根据阈值区分,这样的二值区分比较粗糙。可能会导致图像的信息与特征完全无法提取,或者漏掉一些关键的信息。原创 2022-11-08 15:47:52 · 573 阅读 · 0 评论 -
Qt-OpenCV学习笔记--图像二值化--threshold()
图像的二值化就是将图像上的像素点的灰度值设置为0或255,这样将使整个图像呈现出明显的黑白效果。在数字图像处理中,二值图像占有非常重要的地位,图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓。原创 2022-11-08 14:07:29 · 687 阅读 · 0 评论 -
Qt-OpenCV学习笔记--保存视频--VideoWriter()
这个函数是将连续的视频帧编码并保存到磁盘。函数的用法比较简单,但有一些问题点需要注意。原创 2022-11-07 17:06:36 · 3350 阅读 · 0 评论 -
Qt-OpenCV学习笔记--读取视频--VideoCapture()
这个函数用来从本地文件或摄像头设备中读取视频。原创 2022-11-06 15:30:48 · 2907 阅读 · 0 评论 -
Qt-OpenCV学习笔记--保存图像--imwrite()
这个函数将图像保存到指定的文件。原创 2022-11-05 17:01:29 · 1897 阅读 · 0 评论 -
Qt-OpenCV学习笔记--加载图像--imread()
这个函数用来从文件加载图像。函数imread从指定文件加载图像并返回。如果无法读取图像(因为缺少文件、权限不正确、格式不受支持或无效),函数将返回空矩阵(Mat::data==NULL)。原创 2022-11-05 16:08:45 · 672 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制文本--getTextSize()和putText()
在OpenCV中绘制文本,需要用到getTextSize()和putText()。原创 2022-11-04 16:55:00 · 630 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制填充多边形--polylines()
这函数用来绘制一个多边形,可以设置封闭,但不填充。原创 2022-11-04 14:07:58 · 290 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制填充多边形--fillConvexPoly ()
fillConvexPoly绘制一个填充的凸多边形。这个函数比fillPoly函数快得多。它不仅可以填充凸多边形,也可以填充任何无自交点的单调多边形。原创 2022-11-03 20:55:47 · 270 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制填充多边形--fillPoly()
这个函数用于绘制一个填充的多边形。原创 2022-11-03 19:44:27 · 809 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制椭圆--ellipse()
这个函数就是画一个椭圆。但是有两种重载。原创 2022-11-03 15:08:33 · 384 阅读 · 0 评论 -
Qt-OpenCV学习笔记--绘制矩形--rectangle()
这个函数就是画一个矩形。原创 2022-11-03 14:20:33 · 552 阅读 · 0 评论 -
Qt-OpenCV学习笔记--画直线--line()
这个函数就是画一条直线。原创 2022-11-03 13:50:08 · 414 阅读 · 0 评论 -
Qt-OpenCV学习笔记--画圆--circle()
这个函数其实就是画圆。原创 2022-11-03 13:30:19 · 317 阅读 · 0 评论 -
Qt-OpenCV学习笔记--随机数--randu()和randn()
用于生成随机数。原创 2022-11-03 11:48:14 · 929 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--mixChannels(图像通道自定义合并)
mixChannels()是图像通道处理有关的一个函数,能够实现复杂通道的组合。原创 2022-11-03 09:58:59 · 287 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--cv::merge(图像通道合并)
另外,cv::merge()用于实现图像通道的合并,是split的逆向操作。在OpenCV中,cv::split()用于实现图像通道的分离。在图像处理中,有时需要对各个通道进行分离,分别处理。原创 2022-11-02 19:50:06 · 1462 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--cv::split(图像通道分离)
在图像处理中,有时需要对各个通道进行分离,分别处理。在OpenCV中,cv::split()用于实现图像通道的分离。另外,cv::merge()用于实现图像通道的合并,是split的逆向操作。原创 2022-11-02 18:34:28 · 682 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--cv::minMaxIdx(求矩阵中的最大值和最小值)
计算矩阵Mat中最大值、最小值、返回最大最小的索引。原创 2022-11-02 15:43:31 · 840 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--flip(图像的翻转)
flip()函数翻转一个二维的矩阵,包含垂直翻转,水平翻转,以及垂直水平翻转。原创 2022-11-02 14:04:20 · 583 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--cvtColor
使用cvtColor()函数对图像进行色彩空间的转换。原创 2022-11-02 13:46:18 · 614 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--cv::convertTo(图像类型转换)
不是所有格式的Mat型数据都能被使用。目前OpenCV主要只支持单通道和3通道的图像,并且此时要求其深度为8bit和16bit无符号(即CV_16U),所以其他一些数据类型是不支持的,比如说float型等。如果Mat类型数据的深度和通道数不满足上面的要求,则需要使用convertTo()函数和cvtColor()函数来进行转换。convertTo()函数负责转换数据类型不同的Mat,即可以将类似float型的Mat转换到imwrite()函数能够接受的类型。原创 2022-11-02 11:23:41 · 2893 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--convertScaleAbs(图像增强)
【代码】Qt-OpenCV学习笔记--基本函数操作--convertScaleAbs(图像增强)原创 2022-11-02 10:21:12 · 1115 阅读 · 0 评论 -
Qt-OpenCV学习笔记--基本函数操作--compare
主要用于两个图像之间进行逐像素的比较,并输出比较的结果。可以用于静止背景下移动物体的检测等应用。原创 2022-11-02 09:42:46 · 688 阅读 · 0 评论