我要给图片二值化,然后根据模板图片对齐。但是二值化的时候出现一个问题,我的图片有断的地方,二值化的时候虽然没有使用膨胀,但是二值化之后还是有膨胀的现象,我接下来处理的时候就出现问题了。望大神们多多指点!
图片1是原始图片,图片2是二值化后图片,图片3是对二值化后图片根据模板对齐后的图片,图片在右边那里下来一道,想解决这个问题不知道该怎那么办。附上二值化程序
clear all;
close all;
clc;
TMAX = 0.5;
% display parameters
minIntensity = 0;
maxIntensity = 220;
% read an image
f1=imread('E:\Projects\Image255\ZCscan128.bmp');
figure(1),imshow(f1),title('原图');
[m,n]=size(f1);
M=f1(3:1:m,:);
% Apply filter to reduce the speckle noise
[Img_filtered, nIter, dTT] = twodncdf(M, TMAX);
ff=uint8(Img_filtered);
ff1=imadjust(ff,[0.15,0.7],[0,1]);%灰度调整?
figure(2),imshow(ff1),title('滤波后灰度增强');
thresh=graythresh(ff1); %自动阈值处理
bw1=im2bw(ff1,thresh); %二值化
figure(3),imshow(bw1),title('二值化');
bw3=bwareaopen(bw1,350);%%%%去除点数面积在80以下的区域
figure(5),
imshow(bw3);
imwrite(bw3,'E:\Projects\Image255\ZCscan128-1.bmp')
1.jpg
(89.12 KB, 下载次数: 0)
2015-1-29 11:28 上传
1
3.jpg
(23.6 KB, 下载次数: 0)
2015-1-29 11:28 上传
3
2.jpg
(26.27 KB, 下载次数: 0)
2015-1-29 11:29 上传
2