Matlab实现图像切割

Posted jhcelue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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实现图像切割的主要内容,如果未能解决你的问题,请参考以下文章

数字图像处理原理与实践(MATLAB版)勘误表

如何用ENVI和ARCGIS切割出图像的制定区域

身份证识别基于形态学实现二代身份证号码识别系统matlab源码含GUI

图像处理基于matlab图像主动轮廓实现与测试平台含Matlab源码 1381期

毕业设计/Matlab系列基于PCA的图像压缩算法实现(附matlab代码)

求高手给一个matlab提取图像lbp的代码 谢谢啦