羽隔已就之图像处理之膨胀腐蚀

小y越来越忙,感觉事情也越来越多。虽然去杭州6年了,但是正儿八经在杭州不到3年,基本在出差。

人生就像十字坡,怎么走?走错了瘦的要被填河,胖的的要做成黄牛包子。也有可能走好了当官,也有可能走错了成了梁山好汉。

图像处理也不能停,今天写出来图像的膨胀和腐蚀。膨胀在matlab中定义是这样的

首先创建个单位举证,因为好观察。使用命令是eye

这是个6X6的矩阵,其中对角线为1。

图像也是两边黑中间白。可以使用imshow()查看

首先理解膨胀 ,通俗的说,膨胀就是把1行1变成多行1。

举个例子,来个1,1的2X1的矩阵,通过imdilate函数来处理图像。

运行此函数先查看结果再反推过程,再实验证明。

结果是在对角线上面又加了1层1。那我如果试试这个数组呢。

还是按之前结果运行,结果会不会是

请看实验。看来不是这样的。

如果是[1;1]的参数呢?

往下一了一列。

如果是[1;1;1]呢?

不是很好推测,在查阅资料后看到结构元素,matlab定义如下

小y确实很久没认真看数学了,不会计算了,但是可以从已知的实验中得出,膨胀是针对二值图中的1做处理,及黑变白。

那么对0怎么做处理呢,这必须需要用到腐蚀了。

还是使用之前的方案,先搞个单位矩阵实验下,别问我为啥这么爱用单位矩阵,因为特殊。在matlab中腐蚀是imerode,使用的腐蚀的结构元素为[1,1]腐蚀完成的结果是它。看不懂怎么来的就看看matlab的介绍

matlab这样说

还是没办法解释,通过操作可以得到腐蚀是针对二值图中的0做处理,即白变黑。

最后使用randi创建个1000X1000的随机矩阵,矩阵取值0 or 1。

使用imshow读出此举证。
腐蚀看下效果

膨胀在看下效果

膨胀和腐蚀参数都是

matlab 复制代码
strel('disk', 1)

其中strel长成这样。

不过说实话,不是很好用。这玩意还需要自己手搓。

把这个图先膨胀后腐蚀,和先腐蚀后膨胀都演示下。

看的有点害怕,然后试试先腐蚀后膨胀。

确实不好用。

相关推荐
PaLu-LI3 小时前
ORB-SLAM2源码学习:Initializer.cc:Initializer::CheckFundamental地图初始化——检查基础矩阵F并评分
c++·opencv·学习·线性代数·ubuntu·计算机视觉·矩阵
猪猪虾的业余生活14 小时前
matlab实现,数据曲线毛刺光滑
开发语言·matlab
码到成龚15 小时前
《数字图像处理基础》学习06-图像几何变换之最邻近插值法缩小图像
图像处理·学习
MATLAB代码顾问18 小时前
MATLAB实现多种群遗传算法(multiple population GA,MPGA)
开发语言·matlab
记录无知岁月21 小时前
【MATLAB】续行符号对字符串失效
matlab·字符串·技巧·续行
慕容复之巅21 小时前
基于Matlab的图像去噪算法仿真(二)
图像处理·算法·matlab
慕容复之巅21 小时前
基于Matlab的图像去噪算法仿真
图像处理·算法·matlab
CChuaizhi21 小时前
数学建模_基于对数和傅里叶变换的多通道图像增强模型(处理模糊)Matlab代码包教会使用,直接替换数据即可
开发语言·数学建模·matlab
只怕自己不够好1 天前
深入解析 Canny 边缘检测:原理、步骤与实践应用全攻略
图像处理·opencv
搞笑症患者1 天前
LeetCode Hot100 - 矩阵篇
算法·leetcode·矩阵