您的位置:首页 > 其它

[学习笔记]形态学图像处理-击中或击不中变换

2013-09-22 17:14 417 查看
击中或击不中变换是形态检测的一个基本工具。他是一个整体,方法中包括击中部分跟击不中部分。



输出图像由所有在B1中匹配的像素(击中)和未在B2中匹配的像素(击不中)组成。

例子:

f = imread('FigP0918(left).tif')
imshow(f)
B1 = strel([0 0 0; 0 1 1; 0 1 0])
B2 = strel([1 1 1; 1 0 0; 1 0 0])
g = bwhitmiss(f,B1,B2)
figure()
imshow(g)


处理前:



处理结果:



http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/

如果击中或击不中不止一个结构元时,使用查表法:

例子:

function g = endpoints(f)
persistent lut
if isempty(lut)
lut = makelut(@endpoint_fcn,3);
end
g = applylut(f,lut);

function is_end_point = endpoint_fcn(nhood)
is_end_point= nhood(2,2)&(sum(nhood(:))==2)


f = imread('Fig0914(a)(bone-skel).tif')
imshow(f)
g = endpoints(f)
figure
imshow(g)


源图像:



处理结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: