OpenCV基础与图形图像处理Python实现
文章平均质量分 94
OpenCV与图像图形处理OpenCV与图像图形处理OpenCV与图像图形处理OpenCV与图像图形处理
四果汤多加陈皮才酸爽
此博客主要用于总结自己平时所学和与广大网友交流分享。如果博客内容无意中侵犯了他人知识成果,请告知,谢谢!
展开
-
OpenCV_12 图像分割:全阈值分割+自适应阈值分割+Otsu 阈值(大津法)+分水岭算法+GraphCut+GrabCut
图像分割方法基于阈值的,基于边缘的,基于区域的,基于图论的等阈值分割全阈值分割:指将灰度值大于thresh(阈值)的像素设为一种颜色,小于或等于阈值的像素设为另外一种颜色自适应阈值分割:根据像素的邻域块的像素值分布来确定该像素位置上的阈值大津法:遍历不同的阈值,计算不同阈值下对应的背景和前景之间的类内方差,当类内方差取得极大值时,此时对应的阈值就是大津法分水岭算法。转载 2022-11-25 12:25:04 · 2622 阅读 · 1 评论 -
OpenCV_11 轮廓检测:图像的轮廓+绘制轮廓+轮廓近似+边界矩形+椭圆拟合+直线拟合
图像的轮廓轮廓是图像目标的外部特征,是具有相同的颜色或者灰度的连续点连成的曲线。查找轮廓:cv.findContours()注意:轮廓的检索方式,近似方式以及轮廓的层次;绘制轮廓:cv.drawContours()轮廓的特征面积:ContourArea()周长:ArcLength()轮廓近似:approxPolyDP() 逼近图像的多边形曲线凸包:ConvexHull()边界矩形:BoundingRect()和MinAreaRect()转载 2022-11-23 17:11:05 · 1929 阅读 · 0 评论 -
OpenCV_10 傅里叶变换:频域滤波+CV的应用
傅里叶变换是信号的分析方法,目的就是要简化问题,而不是将其变复杂,傅里叶选择了正弦波,而没有选择其他波形,是因为正弦波有任何其他波形不具有的特点:正弦波输入至任何线性系统中,不会产生新的频率成分,输出的仍是正弦波,改变的仅仅是幅值和相位。用单位幅值的不同频率的正弦波输入至某线性系统,记录其输出正弦波的幅值和频率的关系,就得到该系统的幅频特性,记录输出正弦波的相位和频率的关系,就得到该系统的相频特性。从该频谱图中可以清楚的看到,主要包括3,5,7,9次谐波,我们就可以对原信号进行描述。转载 2022-11-19 00:07:32 · 911 阅读 · 0 评论 -
OpenCV_09 模版匹配和霍夫变换:霍夫线检测+霍夫圆检测
模板匹配原理:在给定的图片中查找和模板最相似的区域API:利用cv.matchTemplate()进行模板匹配,然后使用cv.minMaxLoc()搜索最匹配的位置。霍夫线检测原理:将要检测的内容转换到霍夫空间中,利用累加器统计最优解,将检测结果表示处理注意:该方法输入是的二值化图像,在进行检测前要将图像进行二值化处理霍夫圆检测方法:霍夫梯度法版权声明:本文为CSDN博主「LiBiGo」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。转载 2022-11-18 23:19:38 · 309 阅读 · 0 评论 -
OpenCV_08 边缘检测:Sobel检测算子+Laplacian算子+Canny边缘检测
边缘检测的原理基于搜索:利用一阶导数的最大值获取边界基于零穿越:利用二阶导数为0获取边界Sobel算子基于搜索的方法获取边界cv.sobel()Laplacian算子基于零穿越获取边界Canny算法流程:噪声去除:高斯滤波计算图像梯度:sobel算子,计算梯度大小和方向非极大值抑制:利用梯度方向像素来判断当前像素是否为边界点滞后阈值:设置两个阈值,确定最终的边界5 算子比较。转载 2022-11-18 15:58:20 · 232 阅读 · 0 评论 -
OpenCV_07 直方图:灰度直方图+直方图均衡化
直方图是图像中像素强度分布的图形表达方式。它统计了每一个强度值所具有的像素个数。不同的图像的直方图可能是相同的。掩膜创建蒙版,透过mask进行传递,可获取感兴趣区域的直方图直方图均衡化:增强图像对比度的一种方法cv.equalizeHist(): 输入是灰度图像,输出是直方图均衡图像自适应的直方图均衡将整幅图像分成很多小块,然后再对每一个小块分别进行直方图均衡化,最后进行拼接。转载 2022-11-17 16:21:25 · 461 阅读 · 0 评论 -
OpenCV_06 图像平滑:图像噪声+图像平滑+滤波
由于图像采集、处理、传输等过程不可避免的会受到噪声的污染,妨碍人们对图像理解及分析处理。常见的图像噪声有高斯噪声、椒盐噪声等。椒盐噪声也称为脉冲噪声,是图像中经常见到的一种噪声,它是一种随机出现的白点或者黑点,可能是亮的区域有黑色像素或是在暗的区域有白色像素(或是两者皆有)。椒盐噪声的成因可能是影像讯号受到突如其来的强烈干扰而产生、类比数位转换器或位元传输错误等。例如失效的感应器导致像素值为最小值,饱和的感应器导致像素值为最大值。椒盐噪声的概率密度函数为:高斯噪声是指噪声密度函数服从高斯分布的一类噪声。由原创 2022-11-16 20:26:32 · 1159 阅读 · 0 评论 -
OpenCV_05 形态学操作:连通性+腐蚀和膨胀+开闭运算+礼帽和黑帽
邻域4邻域,8邻域和D邻域邻接4邻接,8邻接,m邻接形态学操作腐蚀和膨胀:腐蚀:求局部最大值膨胀:求局部最小值开闭运算:开:先腐蚀后膨胀闭:先膨胀后腐蚀礼帽和黑帽:礼帽:原图像与开运算之差黑帽:闭运算与原图像之差转自:https://v9999.blog.csdn.net/article/details/121938906。转载 2022-11-16 10:09:46 · 214 阅读 · 0 评论 -
OpenCV_04 几何变换:图像缩放+图像平移+图像旋转+仿射变换+透射变换+图像金字塔
缩放是对图像的大小进行调整,即使图像放大或缩小。代码:结果:图像平移将图像按照指定方向和距离,移动到相应的位置。一种仿射变换。示例:结果:图像旋转是指图像按照某个位置转动一定角度的过程,旋转中图像仍保持这原始尺寸。图像旋转后图像的水平对称轴、垂直对称轴及中心坐标原点都可能会发生变换,因此需要对图像旋转中的坐标进行相应转换。那图像是怎么进行旋转的呢?如下图所示:假设图像逆时针旋转θ,则根据坐标转换可得旋转转换为:{x′=rcos(α−θ)y′=rsin(α−θ)\begin{cases转载 2022-11-14 20:33:07 · 592 阅读 · 0 评论 -
OpenCV_03 图像的算数操作:图像的加法+图像的混合
图像加法:将两幅图像加载一起cv.add()图像的混合:将两幅图像按照不同的比例进行混合注意:这里都要求两幅图像是相同大小的。转载自:https://v9999.blog.csdn.net/article/details/121931485。转载 2022-11-10 16:18:12 · 219 阅读 · 0 评论 -
OpenCV_02 图像的基本操作:图像IO+绘制图形+像素点+属性+图像通道+色彩空间的改变
我们通过加载灰度图像,显示图像,如果按’s’并退出则保存图像,或者按ESC键直接退出而不保存。转载 2022-11-09 16:49:29 · 130 阅读 · 0 评论 -
OpenCV_01 简介+无版权安装+模块分析
OpenCV是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,并且正在日益扩展。编程语言OpenCV基于C++实现,同时提供python, Ruby, Matlab等语言的接口。OpenCV-Python是OpenCV的Python API,结合了OpenCV C++ API和Python语言的最佳特性。跨平台可以在不同的系统平台上使用,包括Windows,Linux,OS X,Android和iOS。转载 2022-11-09 11:22:15 · 562 阅读 · 0 评论 -
OpenCV各版本差异与演化,从1.x到4.0
这些年来,计算机视觉领域的新技术新方法不断涌现,指令集、编程语言和并行化技术越发先进,OpenCV也在紧跟时代的脚步,不断吸收完善自身。本文仅对OpenCV的演化过程仅总结了部分要点,详细可参见 OpenCV 在 github上的ChangeLog。版权声明:本文为CSDN博主「LiBiGo」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。转载 2022-11-08 00:43:02 · 1220 阅读 · 0 评论