[已答复] 裂隙问题:使用裂隙.png这张图时没问题,但改用300.jpg后出

[复制链接]
之乎灬者也 发表于 2017-9-8 17:06:27
                     使用裂隙.png这张图时没问题,但改用300.jpg后出现Judge_Direction子函数中rect1 = stats(ind(1)).BoundingBox;超出索引维度问题,帮忙分析分析,主函数代码如下,子函数在附件中。

%% 裂隙检测
I = imread('C:\Users\Administrator\Desktop\裂隙.png');
if ndims(I) == 3
I1 = rgb2gray(I);
else
I1 = I;
end
% 直方图增强
I2 = hist_con(I1);
% 中值滤波
I3= med_process(I2);
% 图像增强
I4= adjgamma(I3,2);
% 迭代法求阈值
[bw, th] = IterProcess(I4);
bw = ~bw; % 反色
% 二值图像滤波
bwn1 = bw_fileter(bw,15);
% 裂隙识别
bwn2 = Identify_Object(bwn1);
% 裂隙投影
[projectr, projectc] = Project(bwn2);
[r, c] = size(bwn2);
% 裂隙判断
bwn3 = Judge_Crack(bwn2, I4);
% 裂隙拼接
bwn4 = Bridge_Crack(bwn3);
% 裂隙形状识别
[flag, rect] = Judge_Direction(bwn4);
if flag == 1
    str = '横向裂隙';
    wdmax = max(projectc);
    wdmin = min(projectc);
else
    str = '纵向裂';
    wdmax = max(projectr);
    wdmin = min(projectr);
end
imshow(bwn4);



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

3 条回复


Lesvas 发表于 2017-9-8 17:55:17
估计里面的数组位置设置的不对
所以这个程序不通用。建议你按照思路写程序,而不是固定参数

6684 发表于 2021-6-2 09:23:17
请问楼主当时这个问题解决了吗

lyqmath 发表于 2021-6-7 17:07:33
需要做预处理,去除背景,突出中间的裂缝线
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
热门教程
站长推荐
快速回复 返回顶部 返回列表