本文主要是介绍【Matlab学习笔记】【数学形态学】数字图像处理(MATLAB版)冈萨雷斯第九章学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.形态学源于生物学,最初用于处理动植物的形状和结构。用于提取区域的形状(边界,骨骼或凸壳)。形态学图像处理主要用于图像预处理和后处理,包括形态学滤波、细化和裁剪等。
2.图像的形态学处理,由二值图像开始,逐步扩展到灰度图像、彩色图像,由简单到复杂。最简单的形态学操作是膨胀和腐蚀,由这两者可以组合出更加复杂的形态学操作。
3.形态学的基本操作由数学中的集合概念发展而来,包括并集、交集,补集和差集。除了这些基本的操作之外,形态学操作还有另外两个特别的运算符。集合的映像和平移:
B的映像记为:
点Z=(z1,z2),对于集合A的平移记为(A)z,定义为:
4.二值图像中的运算和集合运算的关系:
5.对于结构元素可以自己根据自己的需要定义比如:[0 1 0;1 1 1; 0 1 0],也可以使用strel来定义,而且用strel定义的结构元素,系统自动的进行分解,以提高系统的运算速度。
6.在实际的应用中,一副图像往往要经过相同或者不同的结构元素进行数次的膨胀、腐蚀操作,最常用的膨胀和腐蚀操作的组合有:开运算、闭运算、击中或击不中变换。开运算等效于先腐蚀再膨胀,闭运算等效于先膨胀再腐蚀。
A开B等于B在A内所有完全匹配的平移的并集。
A闭B等于所有不与A重叠的B的平移的并集。
7.形态学开运算完全删除不能包含结构元素的对象区域,平滑了对象的轮廓,断开了狭窄的连接,去掉了细小的突出部分。与开运算不同的是,闭运算一般会将狭窄的缺口连接形成细长的弯口,并填充比结构元素小的洞。
8.击中或击不中变换用于识别像素的特定形状是很有用的,例如孤立的前景像素或者线段的端点像素。击中或击不中变换在这类应用中非常的实用。
示例9.1(膨胀操作):
clc;
clear;
A=imread('E:\数字图像处理书籍\数字图像处理(MATLAB版)冈萨雷斯 中文高清版\数字图像处理代码及其处理图片\数字图像处理matlab版\matlab版数字图像处理的图片(冈萨雷斯)(1)\matlab\dipum_images_ch09\Fig0906(a)(broken-text).tif');
B=[0 1 0;1 1 1;0 1 0];
A1=imdilate(A,B);
subplot(121),imshow(A);%这一部分及其以下部分是自己不会的部分,格式subplot(),imshow;tile('');
title('原图像'); %subplot()中的数字第一个表示几行,第二个表示几列,第三个目前的为第几个元素
subplot(122),imshow(A1);
title('膨胀之后的图像');<img src="https://img-blog.csdn.net/20150503160028803?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmlnaHRpbmdmb3Jjdg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);" alt="" />
这篇关于【Matlab学习笔记】【数学形态学】数字图像处理(MATLAB版)冈萨雷斯第九章学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!