文档介绍:。。实验原理实验环境MATLAB图像的骨架提取原理图像细化图像细化(ImageThinning),一般指二值图像的骨架化(ImageSkeletonization)的一种操作运算。一个图像的骨架由一些线和曲线(比较理想的是单像素宽度),骨架可以提供一个图像目标的尺寸和形状信息,因而在数字图像分析中具有重要的地位,图像细化(骨架化)是进行图像识别、线条类图像目标分析的重要手段。骨架的定义及提取原理比较普遍的方法是采用目标(Object)中轴(MedialAxis)的概念。中轴线的点(像素点)定义为距离目标边界上两个点等距的那些像素。  在图像处理中实现这种等距的计算一般有两个途径。  一是使用距离变换(DistanceTransform)的方法(在此不讨论)。另外一个方法介绍如下:思路:想象一个图像目标四周被火点燃,燃烧的速度四周保持一致,那么四周由边界向质心方向(向内部中心)燃烧时,相互遇到的那条线,就是中轴线。以长方形为例,可以想象,分别会有许多内接圆,分别沿着长方形(矩形)的四个角向中心方形移动。拓扑方法是实现图像骨架化的有利工具,我们可以定义一些图像目标边界上可以删除的像素点,以便最后获得图像目标的骨架。但是,我们还要求保持图像目标(一般常用于线条类的图像目标)的连通性(Connectivity),还不能改变图像目标的个数,不能改变目标内的空洞个数,也不能改变不同目标的相互关系(位置关系等等),一旦有些像素涉及到改变上述内容的,则一律不能被当作删除的图像像素。我们可以利用一个3x3模板来检测一个像素是否应该被删除掉。假定3乘3大小的图像中,中心点(黑点)被删除,那么会有如下两种情形:(1)顶端两个像素和右下端两个像素被分离了,这样就会将原来的一个目标(物体)分为两个,不符合细化操作的要求。(2)(因为如果这九个点只是一个物体的局部)顶端两个像素和右下端两个像素可能是由外部的像素点进行连接的,那么所有像素点(黑点)会形成一个空洞,如果中心点被删除,则会将孔洞消除,又违背了前面提及的细化的规则。实验内容图像骨架提取的程序流程图:实验结果:实验总结一个图像的骨架由一些线和曲线(比较理想的是单像素宽度),骨架可以提供一个图像目标的尺寸和形状信息,因而在数字图像分析中具有重要的地位,图像细化(骨架化)是进行图像识别、线条类图像目标分析的重要手段。附录:clearall;I=imread('');subplot(2,2,1);imshow(I);title('原图像');level=graythresh(I);I=im2bw(I,level);subplot(2,2,2);...imshow(I);re=ones(400,318);I=re-I;subplot(2,2,2);imshow(I);title('二值化的图像');bwl=bwmorph(I,'skel',Inf);subplot(2,2,3);imshow(bwl);title('骨架提取');bw2=bwmorph(bwl,'spur',4);subpl