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

小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长成这样。

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

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

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

确实不好用。

相关推荐
2zcode1 小时前
项目文档:基于MATLAB语音信号变声算法设计与实现
算法·matlab·语音识别
昇腾CANN1 小时前
【cann-samples系列】GroupedMatmul MX量化矩阵乘的深度性能优化实践
线性代数·性能优化·矩阵·昇腾·cann
青山木2 小时前
Hot 100 --- 矩阵置零
线性代数·算法·leetcode·矩阵·哈希算法
Jasmine_llq2 小时前
《B4264 [GESP202503 四级] 二阶矩阵》
线性代数·算法·矩阵·二维矩阵遍历枚举所有2×2矩阵·交叉乘积等式条件判断·输入输出快读加速·长整型防溢出计数统计
天疆说2 小时前
在 Ubuntu 24.04 上安装 MATLAB R2021b
数据库·ubuntu·matlab
guygg882 小时前
二维弹塑性有限元分析(von Mises 等向硬化)— MATLAB 实现
开发语言·人工智能·matlab
天疆说2 小时前
在 Ubuntu 的 VSCode 中配置 MATLAB
vscode·ubuntu·matlab
foundbug99914 小时前
直流电机 PID 速度控制 MATLAB 仿真程序
开发语言·matlab
yuan1999716 小时前
欧拉梁静力与屈曲计算的 MATLAB 实现(有限差分法 + 解析解)
开发语言·算法·matlab
wearegogog12318 小时前
基于光流算法的运动物体检测与光流场分析(MATLAB实现)
开发语言·算法·matlab