💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
裂缝是缺陷的先兆。对裂缝进行标记是一个繁琐的过程。为了增加裂缝的几何特性,可以将裂缝分割成瓷砖图像。在这个程序中,细化的裂缝会以一定的重叠比例在相邻的瓷砖间进行遍历。这将确保产生具有相似属性的裂缝。请注意,一些裂缝的伪影可能会出现在瓷砖图像中。
对于图像裂缝的分割,您可以使用计算机视觉中的图像分割技术来实现。常见的方法包括传统的基于阈值、边缘检测和区域增长的方法,以及现代的基于深度学习的语义分割方法。
传统方法中,您可以尝试使用边缘检测算法(如Sobel、Canny等)来检测裂缝的边界,然后通过区域增长或分水岭算法来将裂缝分割成有/无重叠区域。这些方法需要对图像的特定属性进行分析和处理,适用于一些简单的场景。
而如今,深度学习技术在图像分割领域取得了显著的进展。您可以考虑使用卷积神经网络(CNN)进行语义分割,其中常用的模型包括U-Net、Mask R-CNN等。这些模型通过学习图像的语义信息来实现对裂缝的精准分割,对复杂场景和多样化裂缝具有较好的适用性。
在进行裂缝分割时,需根据您的数据集特点和具体需求选择合适的方法,并进行适当的数据增强和预处理来提高模型的泛化能力和分割效果。
📚2 运行结果
部分代码:
%% Inputs
tileHeight = 50; % tile height
tileWidth = 100; % tile width
overlapRatio = 0.2; % overlap bewteen adjacent tiles
difference_limit = 5; % Pixel difference
writeImage = 0; % write/save spilt images
%% Load images
% Read image
color_image = imread('Pseudo_crack_01.png');
grey_image = rgb2gray(color_image);
binary_image = imbinarize(grey_image);
binary_image = bwmorph(binary_image,'thin',Inf);
%% Split cracks and save
cracksSplitter(tileHeight, tileWidth, overlapRatio, difference_limit, color_image, ...
binary_image, writeImage)
%% End
%--------------------------------------------------------------------------
clcwaitbarz = findall(0,'type','figure','tag','TMWWaitbar');
delete(clcwaitbarz);
Runtime = toc(Start);
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]张颖.基于深度学习的图像语义分割算法研究[J].[2024-03-25].
[2]孟庆成万达吴浩杰李明健齐欣.基于卷积神经网络的混凝土裂缝图像识别方法[J].沈阳建筑大学学报(自然科学版), 2021, 37(5):832-840.
[3]贾潇宇.基于卷积神经网络的桥梁裂缝识别研究[J].中国新通信, 2022, 24(9):3.