采用细化法的matlab实现

来源:本站
导读:目前正在解读《采用细化法的matlab实现》的相关信息,《采用细化法的matlab实现》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《采用细化法的matlab实现》的详细说明。
简介:本文介绍的是采用细化法的matlab实现的源代码。

map1=imread('p.jpg');[row,col,dep]=size(map1);   %行,列,深度值map=zeros(row,col);pixsum=row*col;                %像素总数%灰度化for i=1:row    for j=1:col        map(i,j)=0.11*map1(i,j,1)+0.59*map1(i,j,2)+0.3*map1(i,j,3);    endend%灰度化完成,输出灰度图figure(1)imshow(map,[])title('原始灰度图像')Y=zeros(row,col);       %存储输出图像%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5根据通道二值化    for i=1:row        for j=1:col           if map1(i,j,2)>map1(i,j,1)&&map1(i,j,2)>map1(i,j,3)              Y(i,j)=1;           else              Y(i,j)=0;            end        end    endfigure(2)imshow(Y,[])title('二值化后图像')%骨架提取,以前的思路是进行若干次腐蚀,直到腐蚀为空集的前一次,但效果不好。%现在改成细化法。skel=zeros(row,col);%细化索引表tab=[0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,1,...1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,1,...0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,1,...1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,1,...1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,...0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...1,1,0,0,1,1,0,0,1,1,0,1,1,1,0,1,...0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,1,...1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,1,...0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,1,...1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,0,...1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,...1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,0,...1,1,0,0,1,1,0,0,1,1,0,1,1,1,0,0,...1,1,0,0,1,1,1,0,1,1,0,0,1,0,0,0];B=[1 2 4;8 0 16;32 64 128];for i=2:row-1    for j=2:col-1        N=sum(sum(Y(i-1:i+1,j-1:j+1).*B));        skel(i,j)=tab(N+1);    endend%腐蚀完成figure(3)imshow(skel,[])title('提取的图像骨架')

提醒:《采用细化法的matlab实现》最后刷新时间 2024-03-14 01:02:33,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《采用细化法的matlab实现》该内容的真实性请自行鉴别。