03 2020 档案
摘要:1. 基本梯度 基本梯度 = 膨胀 腐蚀 2. 内梯度 内梯度 = 原图 腐蚀 3. 外梯度 外梯度 = 膨胀 原图 示范: 原图: 基本梯度: 内梯度: 外梯度: 本节代码地址: https://github.com/cyssmile/openCV_learning_notes/blob/mast
阅读全文
摘要:开操作可以和结构元素结构一起使用,提取想要的东西。 1. 提取横线 原图: 先用Canny 提取边缘 结构元素,提取横线 这种提取直线比霍夫直线检测稍微好点,可以降低噪声的干扰 2. 提取竖线 操作相同,更改结构元素 本节示范代码: include include include using nam
阅读全文
摘要:操作主要用于填充闭合区域 闭操作 = 膨胀 + 腐蚀 实验效果: Size(3,3) Size(6,6) 这时候明显内环消失 Size(11,11) Size(22,22) 黑帽 黑帽: 原图 闭操作 可以提取封闭区域细节部分 参数为:MORPH_BLACKHAT 本节示例代码地址: https:/
阅读全文
摘要:图片的开操作 开 = 腐蚀 + 膨胀 用于保留原结构, 去除干扰块 opencv中有相关的API 当op参数为 MORPH_OPEN 就是一次开操作 我自定义了一次:erode dilate Mat tophat; morphologyEx(src, tophat, MORPH_TOPHAT, ke
阅读全文
摘要:本节原理在《数字图像处理第三版》P404 本节涉及两个API 腐蚀 $$ \texttt{dst}(x,y)=\min _{(x',y'):\,\texttt{element}(x',y')\ne0}\texttt{src}(x+x',y+y') $$ / @brief Erodes an imag
阅读全文
摘要:opencv中相关API 实验效果: 示例代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_034/opencv_034.cpp
阅读全文
摘要:实验原理:http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm OPENCV 中主要有两个API CV_EXPORTS_W void HoughLines( InputArray image, OutputArray lines, double rho,
阅读全文
摘要:轮廓逼近 本节相关API 实验效果: 椭圆拟合 相关API 实验效果: 本节代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_032/opencv_032.cpp
阅读全文
摘要:在ubuntu的下配置C++环境很简单。但是课程作业又必须得做。 1、首先装VSCode 2、安装gcc 然后开始配置环境 先创建工作文件夹,然后用VSCode打开 打开VScode中的控制台 这里可以在图形化界面创建测试代码,也可以像我这样写入,这里我增加了一个变量a,为了方便调试的时候查看 调试
阅读全文
摘要:CV中有通过几何距和Hu距的来进行的轮廓匹配. 我感受了下,效果不是很好。 首先了解下,一个轮廓给定后,不管放大缩小Hu距不会改变。 处理思路是: 1、 先将两张图片二值化(注意二值化后,背景要为黑色) 2、 提取两幅图的轮廓,一张图是全图轮廓,另一张只是提取最大的轮廓 3, 将提取轮廓分别计算几何
阅读全文
摘要:实验效果: 代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_030/main.cpp include include using namespace std; using na
阅读全文
摘要:今天闲着无聊,做了一下DFT变换。 原理在《数字图像处理(第3版)》P125 在opencv中处理过程为: 以灰度图像的方式读入一张图片 将灰度图片由 CV_8UC1 变换成 CV_32FC1 ,并且对图片进行填充 构建图片的复数形式 (包括添加I部分全零) 调用DFT进行变换 计算欧拉距离,作为|
阅读全文
摘要:本节涉及到两个API: 轮廓发现 CV_EXPORTS_W void findContours( InputArray image, OutputArrayOfArrays contours, OutputArray hierarchy, int mode, int method, Point of
阅读全文
摘要:本节涉及两个API connectedComponentsWithStats() connectedComponents() (略微简单不做介绍) 处理思路: 1.彩色图片 灰度化 2. 灰度图片 二值化 3. BBDT (基于块和决策表的统计) 示范代码:https://github.com/cy
阅读全文
摘要:二值化的几种方式,很简单。自己有兴趣,就去了解。 示范代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_024/opencv_024.cpp
阅读全文
摘要:今天闲着无聊,实现了下《数字图像处理(第三版)》P209页的,自适应中值滤波器。 原理书上都有,我自己实现的代码可能有点复杂。对图片的边缘处理有些粗糙。有兴趣可以自己改进下。 看下实验效果吧! 左边第一幅图片是原始图片 中间的是对全图 加上了0.25 比例的椒盐噪声,可以看出来,几乎已经看不出来原始
阅读全文
摘要:原图: 添加高斯噪声: 中值模糊处理: 利用高斯模糊处理: 代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_020/opencv_020.cpp include include
阅读全文
摘要:原图: 添加椒盐噪声后: 中值模糊处理后: 高斯模糊后: 本段代码:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_020/opencv_020.cpp
阅读全文
摘要:原图: 椒盐噪声 添加椒盐噪声图片: 高斯噪声 添加高斯噪声图片: 本段示范代码:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_019/opencv_019.cpp
阅读全文
摘要:USM锐化原理: 原图: 高斯模糊: laplacian 提取细节: USM锐化: 本段代码地址:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_018/opencv_018.cpp
阅读全文
摘要:在opencv 有专用拉普拉斯api:Laplacian() 上次原图: 调用CV中的Laplacian()得到图像: 采用拉普拉斯锐化算子 $\begin 0 & -1 &0 \ -1& 5 &-1 \ 0& -1 &0 \end$ 处理后结果: 这张月球表面细节本来已经很明显,而拉普拉斯对噪声敏
阅读全文
摘要:Robot算子 | | | | | | | 1 | 0 | | 0 | 1 | $Gx$ | | | | | | | 0 | 1 | | 1 |0 | $Gy$ $\left | G \right |=\sqrt{Gx^{2}+Gy^{2}}$ 原图: Robot_x处理后: Robot_y处理后:
阅读全文
摘要:今天闲着无聊,做了一下用拉普拉斯算子锐化图片。 网上找了一副月球面的图片。 居然这和 某教材上的实例图片一样,这就是人家锐化后的图片。 所以我先对这张图片进行了高斯模糊。 这样细节就是不是很明显了。 现在就用拉普拉斯算子提取细节。我采用的算子有以下两个 (0,1,0,1, 4,1,0,1,0) 和
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_012_hist_compare/opencv_012_hist_compare.cpp 3*3 均值模糊 包括两种方式 : 1. 手撸代
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_012_hist_compare/opencv_012_hist_compare.cpp 包含 applyColorMap() LUT()
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_012_hist_compare/opencv_012_hist_compare.cpp
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_008/opencv_008.cpp 包括calcHist() normalize() 相关api, 以及将像素信息用折线图的方式展现
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_008/opencv_008.cpp 本段实例代码展示截取某张图片中 一个长方形区域的数据
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_008/opencv_008.cpp 包括split() merge() 相关api
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_008/opencv_008.cpp
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_006/opencv_006.cpp 相关的api为minMaxLoc() meanStdDev()
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_006/opencv_006.cpp 包括bitwise_not() bitwise_and() bitwise_or() 等相关api操
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_004/opencv_004.cpp 包括 add() subtract() multiply() divide() addWeighte
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_004/opencv_004.cpp
阅读全文
摘要:这段代码注释有问题,这是基于数组的方式访问的。 https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_004/opencv_004.cpp
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/opencv_test/opencv_003/opencv003.cpp
阅读全文
摘要:https://github.com/cyssmile/openCV_learning_notes/blob/master/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.md
阅读全文

浙公网安备 33010602011771号