首页 > 代码库 > Matlab实现图像切割
Matlab实现图像切割
以下使用极小值点阈值选取方法,编写MATLAB程序实现图像切割的功能。
极小值点阈值选取法即从原图像的直方图的包络线中选取出极小值点,
并以极小值点为阈值将图像转为二值图像
clear all; close all ; G=imread(‘rabbit.png‘); figure(); subplot(2,2,1); imshow(G); subplot(2,2,2); imhist(G); subplot(2,2,3); imhist(G); [h,x]=imhist(G); h=smooth(h,7); plot(x,h) %求出阈值T df1=diff(h);%一阶差分 df2=diff(df1);%二阶差分 [m,n]=size(df2); T=0; for i=1:m if(abs(df1(i+1))<=0.15 && df2(i)>0) T=x(i+2)%确定阈值 break; end end G=im2bw(G,T/255);%转为二值图像 subplot(2,2,4); imshow(G);
Matlab实现图像切割
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。