图像分割——迭代式阈值分割
生活随笔
收集整理的這篇文章主要介紹了
图像分割——迭代式阈值分割
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、算法步驟:
(1)預(yù)定義兩閾值之差dt
(2)選定初始閾值T0(一般為圖像的平均灰度)
(3)用T分割圖像為G1、G2兩組,G1由灰度值大于T的所有像素組成,G2由灰度值小于等于T的所有像素組成。
(4)對G1和G2的像素分別計算平均灰度值m1,m2。
(5)計算出新的閾值:T1=(m1+m2)/2
(6)重復(fù)步驟3到步驟5,直到連續(xù)迭代中的閾值之間的差小于預(yù)定義的閾值差dt為止。
2、代碼如下:
close all;clear all;clc; %關(guān)閉所有圖形窗口,清除工作空間所有變量,清空命令行 I=imread('cameraman.tif'); I=im2double(I); dt=0.01; %預(yù)定義兩閾值之差 T0=(min(min(I))+max(max(I)))/2; %初始閾值 G1=find(I>T0); %分組G1 G2=find(I<=T0); %分組G2 m1=mean(I(G1)); %平均灰度值 m2=mean(I(G2)); T1=(m1+m2)/2; %新閾值 while abs(T1-T0)>dtT0=T1;G1=find(I>T0);G2=find(I<=T0);T2=(mean(I(G1))+mean(I(G2)))/2; end J=im2bw(I,T1); %把圖像轉(zhuǎn)換為二值圖,進(jìn)行閾值分割 set(0,'defaultFigurePosition',[100,100,1000,500]); set(0,'defaultFigureColor',[1 1 1]); figure(1); subplot(121),imshow(I); subplot(122),imshow(J);3、運行效果如下:
?
總結(jié)
以上是生活随笔為你收集整理的图像分割——迭代式阈值分割的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图像处理与图像识别笔记(一)
- 下一篇: 二、矢量分析