Py学习  »  机器学习算法

好文推荐第81期 | E&G中科院1区文章《基于深度学习的岩体裂隙自动识别》!

研途星辰 • 1 年前 • 1008 次点击  

好文推荐

Automatic identification of rock fractures based on deep learning

基于深度学习的岩体裂隙自动识别


摘要(Abstract)













岩体裂隙是导致岩石破坏的主要因素之一,准确提取裂隙特征对于理解岩石破坏机理至关重要。受计算机视觉最新发展的启发,我们引入了一种先进的深度学习模型 YOLACT++,用于岩体裂隙的自动化识别与解析。YOLACT++ 继承了 YOLACT(You Only Look At CoefficienTs)的基本架构,并优化了骨干网络,在保证实时性的同时提高了分割精度。基于无人机多角度近景摄影,我们从多个岩质边坡采集数据集,以用于模型训练和验证。我们提出了模型性能评估指标,包括交并比(Intersection over Union)、精度(Precision)和召回率(Recall),以及用于描述裂隙的定量参数,如走向、迹长、粗糙度、张开度、间距和裂隙强度。将 YOLACT++ 的分割结果与两种经典实例分割模型——Mask R-CNN(Mask Region-based Convolutional Neural Network)和 YOLO V8(You Only Look Once V8)进行对比分析。结果表明,YOLACT++ 具备更强的泛化能力,在图像边界处的分割精度更高。采用 ResNet-101 作为骨干网络时,YOLACT++ 在精度、交并比和召回率方面分别达到 93.8%、87.1% 和 92.2%,相比 Mask R-CNN 分别提升 5.4%、3.6% 和 8.3%,相比 YOLO V8 分别提升 3.3%、7.8% 和 4.2%。总体而言,本研究提出的基于深度学习的 YOLACT++ 模型为岩体裂隙的自动化解析提供了一种高效可靠的方法,并可推广应用于其他材料的裂缝识别。



引言(Introduction)














岩体中的裂隙是导致岩质边坡不稳定及潜在破坏的关键因素。准确获取裂隙信息对于理解岩质边坡失稳及破坏机制至关重要。国际岩石力学与岩石工程学会(ISRM)指出,裂隙的走向、迹长、粗糙度、张开度、间距等是控制岩体行为的关键参数。精确量化裂隙的几何特征长期以来被视为岩石力学分析中的重要步骤。另一方面,物理信息神经网络(PINNs)将人工智能与计算力学相结合,为材料内部缺陷检测提供了一种强大的方法。对于裂隙岩体,准确提取岩体表面的裂隙信息可为 PINNs 模型提供可靠的边界条件,从而显著提升对裂隙岩体内部缺陷的预测能力,并有助于岩体质量评估。  

裂隙信息获取方法主要分为手动测量和自动化测量两大类。传统的手动测量方法,如测线取样和窗口取样,通常需要测量人员使用罗盘和测量尺等工具在现场采集裂隙数据。然而,这种手动、接触式测量方式耗时低效,且受限于可达区域。此外,测量精度在很大程度上依赖于测量人员的经验。如何智能、高效地获取裂隙几何特征仍然是工程地质领域面临的重要挑战。

随着人工智能和遥感技术的快速发展,融合计算机视觉与无人机(UAV)摄影测量的非接触式自动化方法为解决上述问题提供了新的途径。相比手动测量,UAV 摄影测量在陡峭边坡或易发生落石的区域测量时更加安全,能够从整个岩质边坡中选择合适的露头进行图像采集,从而实现客观测量。此外,基于计算机视觉的自动识别比人工识别更加高效。自动识别算法主要分为边缘检测算法和深度学习算法,以下是对这两类算法的概述。  

边缘检测算法基于图像中像素灰度值的变化,通过识别灰度变化较大的区域来确定目标物体或场景的边界。常见的边缘检测算法包括 Canny 算法和 Laplacian 算法。虽然边缘检测算法结构简单、计算效率高,但其参数需根据图像场景进行调整。对于岩体裂隙图像,光照阴影和岩石纹理的干扰使得裂隙提取变得困难,因此边缘检测算法不适用于复杂裂隙图像的分割。在机器学习快速发展的推动下,监督学习算法(如随机森林、梯度提升机和人工神经网络)已广泛应用于材料工程领域,如材料多尺度建模、材料性能预测以及输入-输出不确定性量化分析。深度学习算法扩展了监督学习框架,利用更复杂的卷积神经网络(CNN)来解决更具挑战性的问题。在计算机视觉领域,深度学习算法已应用于岩土裂隙的自动识别。基于深度学习的图像分割可分为语义分割(对像素进行分类赋予语义标签)和实例分割(对单个目标进行分割)。常见的语义分割模型包括 U-Net、SegNet和 DeepLab,而常见的实例分割模型包括 Mask R-CNN、YOLO和 YOLACT。Lee et al通过对比 U-Net、DeepLab 和 Canny 算法在岩体裂隙图像上的分割效果,证明了语义分割优于边缘检测算法。同样,Han et al通过对比 Mask R-CNN 和 U-Net 在土壤裂隙图像上的分割结果,表明实例分割优于语义分割。

当前,主流的实例分割模型主要包括基于两阶段检测器的 R-CNN 系列和基于单阶段检测器的 YOLO 系列。R-CNN 系列在第一阶段利用区域提议网络(RPN)提取候选边界框区域,并在第二阶段对这些区域进行掩码生成。这种边界框生成机制倾向于关注较大且居中的目标,使得 R-CNN 系列在处理较大且规则的目标时具有更高的精度。然而,岩体裂隙通常较为狭长且不规则,且其关键特征(如细微裂隙和复杂分支)可能无法完全包含在 RPN 生成的矩形框内,这可能导致裂隙分割结果不完整或不连续,从而降低裂隙识别的准确性。相比之下,YOLO 系列直接从输入图像中提取特征并生成掩码,跳过 RPN 生成步骤。这种一体化的掩码生成机制能够捕捉完整的裂隙掩码。然而,YOLO 系列模型的简化架构限制了其对不同尺度裂隙的识别能力。此外,YOLO 系列所采用的标准卷积核在提取线性分布的裂隙信息方面效果较差,难以精准捕捉细微裂隙结构。因此,开发一个既能满足精度要求,又能生成连续裂隙掩码,并适用于多尺度裂隙检测的深度学习模型仍然是一个关键任务。  

本文针对上述问题,引入了一种先进的实例分割模型 YOLACT++。YOLACT++ 采用了一种结合原型掩码与掩码系数的架构来生成分割结果 。该架构利用掩码系数对包含多尺度图像信息的原型掩码进行组合,从而生成最终的实例掩码。这一设计使 YOLACT++ 能够有效适应不同尺度的目标。此外,YOLACT++ 采用的可变形卷积核能够根据裂隙的实际形状和位置调整采样点的位置和大小,使网络在每一层卷积中充分捕捉裂隙的形态与纹理特征。这一能力使其特别适用于检测不规则的线性目标,如岩体裂隙。在本研究中,我们首先利用无人机多角度近距离摄影测量技术采集多处岩质边坡的裂隙图像,并构建数据集用于模型训练和验证。然后,提出多个模型性能评估指标(如交并比、精确率和召回率),以及裂隙定量描述参数(如走向、迹长、粗糙度、裂隙张开度、间距及裂隙强度)。最后,我们将 YOLACT++ 的分割结果与 Mask R-CNN 和 YOLO V8 进行对比,以验证 YOLACT++ 在岩体裂隙自动识别中的优越性。



图表(Figures and Tables)














Fig. 1. Deformable convolution in ResNet-101. (a) Architecture of ResNet-101. (b) Comparison of the two convolutional kernels in fracture feature extraction: b-1 standard convolution; b-2 deformable convolution. (c) Illustration of 3 × 3 deformable convolution.

Fig. 2Architecture of the YOLACT++ model in fracture detection.

Fig. 3Definition of the IoU.

Fig. 4Fracture quantification. (a) Image merging: a-1 and a-2 fracture local image; a-3 fracture panorama. (b) Extraction of the fracture skeleton. (c) 3D point cloud of the fracture.

Fig. 5Dataset acquisition and preprocessing. (a) Dataset acquisition: a-1 overview of the dataset acquisition; a-2 proximity photogrammetry. (b) Color adjustment: b-1 original; b-2 brightness modifying; b-3 grayscale modifying. (c) Multi-angle rotations: c-1 36°; c-2 72°; c-3108°; c-4144°. (d) Mirroring: d-1 horizontal mirroring; d-2 vertical mirroring; d-3 central symmetry.

Fig. 6Loss curves of the YOLACT++ model.

Fig. 7The performance evaluation metric curves during the training process of YOLACT++, Mask R-CNN and YOLO V8. (a) IoU. (b) Precision. (c) Recall.

Fig. 8Scatter box plots showing the performance of YOLACT++, Mask R-CNN and YOLO V8. (a) ResNet-50. (b) ResNet-101.

Fig. 9Segmentation results of YOLACT++, Mask R-CNN and YOLO V8 for fractures in different scenarios.

Fig. 10Applications of Achievements in Engineering Geology. (a) Rock fractures with complex shapes and branching. (b) The YOLACT++ identification result. (c) Fine mesh model for rock fractures. (d) Numerical simulation of the SIF and fracture propagation path.




结论(Conclusions)














(1) 相较于 ResNet-50,YOLACT++ 在结合 ResNet-101 时表现更优。ResNet-101 更深的网络结构和增加的参数量增强了特征表示能力,使其更适用于捕捉裂隙的复杂形态和纹理特征。  

(2) 在相同的骨干网络下,YOLACT++ 在不同场景的裂隙图像处理上表现稳定,而 Mask R-CNN 和 YOLO V8 的分割结果包含较多离群点,表明 YOLACT++ 具有更强的泛化能力。  

(3) YOLACT++ 结合 ResNet 与 FPN,以提取不同层级特征图的信息,使其能够实现裂隙的多尺度分割。其骨干网络中的可变形卷积保证了裂隙掩码的连续性,从而提高裂隙迹长测量的准确性。此外,与 Mask R-CNN 和 YOLO V8 相比,YOLACT++ 在图像边缘区域的分割结果更加精确,更适用于图像边缘裂隙掩码的拼接。  

(4) 从方法论角度来看,所引入的 YOLACT++ 算法不仅适用于岩体裂隙识别,还可用于混凝土、结构体及玻璃等其他材料的裂缝检测。  

总体而言,研究结果表明 YOLACT++ 在岩体裂隙自动解析与表征方面具有较高的有效性,为地质研究和工程应用提供了重要参考。未来工作中,我们将进一步引入 Sobol 敏感性分析或方差分析等方法 (Liu et al., 2023; Liu et al., 2020a),量化各输入变量(如数据采集变量:图像对比度、拍摄距离,以及环境变量:岩石岩性、风化程度)对裂隙检测精度和定量参数(如迹长和张开度)的影响。通过优化输入变量,我们旨在进一步提升模型输出的精度。


 参考文献 


Ji Y ,Song S ,Zhang W , et al.Automatic identification of rock fractures based on deep learning[J].Engineering Geology,2025,345107874-107874.
https://doi.org/10.1016/J.ENGGEO.2024.107874

版权声明

本文仅用于学术交流与分享,版权属于出版商,如有任何疑问,请与我们联系。


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/179210