对二值化断裂裂缝进行裂缝拼接,按照裂缝角度、裂缝端点距离进行生长拼接,能够有效克服噪声点,完成裂缝拼接
%
clc; clear all; close all;
img = imread('62.jpg');
%img =rgb2gray(img);
%img=imresize(img,[2048 2048]);
%自适应直方图均衡
%J=adapthisteq(img);
%figure,imhist(J,64);
%img=double(J);
%中值滤波
%img=medfilt2(img,[5,5]);
%r=img(:,:,1);
%=img(:,:,2);
%b=img(:,:,3);
%im=rgb2gray(img); % Display the image
%[pc] = phasecongmono(img,4,3,2.1,0.55,3.0,0.5,10,1.5,-1);
%[pc] = phasecongmono(imrec,4,6,2.1,5,10,0.5,10,1.5,-1);
%[pc] = phasecongmono(img,5,5,2.1,0.55,5,0.5,10,1.5,-1);
w=zeros(2048,4096);
for i=5%4:6
[pc] = phasecongmono(img,i,5,2.1,0.55,5,0.5,10,1.5,-1);
% nscale 小波尺度的数量\ minWaveLength 最小尺度滤波器的波长\ mult 连续滤波器之间的缩放因子\
% sigmaOnf 描述频域中的对数Gabor滤波器传递函数的高斯标准偏差与滤波器中心频率的比率。
% k 噪声能量的标准偏差不超过我们设定噪声阈值点的平均值。对于嘈杂的图像,您可能需要更改为10或20的值
% cutOff 频率分布的分数测量值低于相位一致值受到惩罚
%g控制用于频率扩展的相位一致性的Sigmoid函数的过渡的锐度。
% deviationGain 扩大应用于计算出的相位偏差结果。增加这样会锐化边缘响应,但是如果增益太大,也可以衰减其幅度。明智的价值在1-2范围内。
% noiseMethod 参数指定用于确定的方法
%figure;
[T,SM]=graythresh(pc);%高的SM值说明灰度分成2类的可能性高
%T=T*255;
g=im2bw(pc,T);
%g=~g;
%第二图大律法
%figure,subplot(2,1,1);imshow(g);
%imwrite(pc,'D:\学习\图片\lena.jpg');
g=bwareaopen(g,100);%;将小于2000像素的单元去掉
%subplot(2,1,2);;imshow(g);
w=w+g;
end
figure;
subplot(221)
imshow(img);title('原图');
subplot(222)
imshow(pc);title('相位一致性');
subplot(223),imshow(w);
bw = w(:,1123:end); % 去除赛道部分
img_bridge = myBridge_crack(bw); % 裂缝生长拼接
subplot(224),imshow(img_bridge);title('裂缝图');
[1]唐磊, 赵春霞, 王鸿南,等. 基于图像分析的路面裂缝检测和分类[J]. 工程图学学报, 2008, 29(3):6.
[2]任炳兰. 基于Matlab的路面裂缝识别算法研究[D]. 长安大学.
部分理论引用网络文献,若有侵权联系博主删除。