2. 中国三峡建设管理有限公司, 成都 610041
2. China Three Gores Projects Development Co., Ltd., Chengdu 610041, China
水利工程质量受诸多要素影响,除材料、机械等硬性条件之外,人员、方法和环境也起着决定性作用[1]。人员和方法要素的提升不仅可以降低经济成本,而且可以沉淀成为资源,渐进式地推动行业的发展。水利设施作为关乎国计民生的关键工程,工程质量的保证是项目顺利进行的关键,而施工阶段的质量控制又是工程质量控制最关键的环节。质量控制的研究经历了仓面设计[2]、振捣工艺[3]、自动化监控[4]多个研究阶段,与施工建设的机械化、智能化水平相对应。刘亚洁[5]进行了基于立体视觉的混凝土振捣质量监测系统的开发,杨煜昕[6]基于机器视觉研究了混凝土表观质量检测方法。但在实际工程中,很多阶段仍未实现相应的智能化。以白鹤滩工程为例,当地常年干热、大风的气候条件极大地影响了混凝土的温度和湿度条件,施工过程中容易出现混凝土坯层表面水分蒸发过快的问题,进而导致骨料干燥泛白,早期塑性收缩开裂和坯层覆盖的允许间隔时间缩短等问题。对此,工程分配专门的人手对坯层覆盖间歇时间进行记录上报,当间歇时间过长时系统会给出相应的预警。但是在实际过程中经常出现工人忘记记录的情况,导致系统误报。因此,实现坯层覆盖间歇时间超时的智能化报警具有重要的现实意义。
本文着重解决混凝土仓面浇筑场景下的进度监测问题,研究工作在数据集构建、模型训练与优化和工程应用3个相互承接的方面开展。数据方面,基于白鹤滩水电站建设过程中的真实工程数据,构建大坝混凝土仓面浇筑数据集(concrete dam pouring dataset, CDPD),来满足仓面浇筑场景下目标检测、语义分割、图像分类任务的需要。模型方面,采用预训练与微调结合的方法解决专业领域样本量有限的问题。应用方面,为识别仓面施工进度,以模板为中介将模板的遮盖程度和浇筑进度相对应,使用目标检测模型得到模板遮盖程度,从而实现浇筑过程每一个坯层覆盖时间的识别,可以用于浇筑间歇时间超时的预警。为解决模板遮盖程度识别的滞后性,使用吊罐卸料的信息将时间分辨率提升到秒级,实现秒级精度的坯层覆盖间歇时间超时预警。
1 数据集构建 1.1 数据采集本研究在白鹤滩水电站的建设过程中采集混凝土仓面浇筑施工整个流程的视频数据。施工现场视频采集硬件布设方案如图 1所示,在仓面一侧模板上布设3~5个视频采集装置,摄像头和储存、处理设备之间由无线网桥进行信号传输,无线传输距离为500~1 500 m。服务器包含用于数据存储的硬盘录像机和用于运行模型的GPU服务器。
1.2 数据标注
数据采集视频为DAV格式,每秒25帧。在标注之前,从视频中每隔1 000帧(40 s)采集一张图片并保存,这样可以避免相似场景的重复标注。本研究标注工具使用的是VIA-1.0.6 [7],使用多边形将图片想要识别的区域框出并标注所属类别。表 1统计了“模板遮盖检测监督施工进度”任务下标注的3种检测类别的平均数及总数。以图 2为例:标注为f的区域是模板(formwork),标注为r的区域是未振捣混凝土,标注为v的区域是振捣密实的混凝土,共标注了208张不同的图像。
1.3 数据处理
在工程领域,训练目标识别模型最大的问题是训练样本数目不足,与常见对象检测任务几万到上百万的样本数目(如ImageNet数据集中共有1 400多万张图片[8])相比,工程领域的标注数据量约为几百。因此,本研究采用数据增强的方法对原始数据进行扩充,数据增强是一种使有限的数据产生更多的等价数据来人工扩展训练数据集的技术,是克服训练数据不足的有效手段,目前在深度学习的各个领域中应用广泛。在此仅针对亮度调整进行详细说明。
实际识别场景下环境是非常多变的,当阳光、灯光照射强度及角度发生变化时,物体的颜色和亮度也会有较大差异。所以本研究通过调整图像的色彩平衡、亮度和对比度得到新的训练样本。
图像的调节使用线形插值的方式进行:
$ p_{i, j, k}^{\text {out }}=(1-\alpha) p_{i, j, k}^{\text {in1 }}+\alpha p_{i, j, k}^{\text {in2 }} . $ | (1) |
其中:i和j为第i行第j列像素点的值,k为图像RGB通道的层数,α通常为0~1之间的数字。基于式(1)的亮度插值,使用全黑的图像(α=0)和原始图像(α=1)作为插值的输入,插值结果如图 3所示。α=0.5可以表示弱光环境下的情况,α=2则与强光条件的情况类似。
此外,使用亮度恒定灰度图像和原始图像可以进行对比度插值,使用黑白图像和原始图像可以进行饱和度插值。对比度、饱和度方面的增强有助于提高水雾、强光条件下模型的识别能力。
在亮度、对比度和饱和度调整之外,图像的几何变化也能有效提高模型的泛化能力。如翻转、平移、旋转、剪裁等,图像增强方法在数据增强时使用随机数对不同增强算法的程度进行控制,结果如图 4所示。
2 模型训练与优化
目标检测领域已经有比较广泛的研究,也诞生了很多优秀的研究成果,如R-CNN[9]、Faster R-CNN[10]、Mask R-CNN[11]、YOLO[12]、SSD[13]等。本研究主要采用Mask R-CNN作为目标检测框架,主要原因如下:
1) 与One-Stage的YOLO等算法相比,Mask R-CNN的识别精度更高。
2) 仓面浇筑是一个耗时较长的过程,本研究不需要对每一帧都进行采样和识别,模型速度的要求不是太高,所以Mask R-CNN的速度(5 fps)完全符合实际需要。
3) Mask R-CNN包含语义分割任务,能针对需求给出目标所在的矩形区域或所在非规则区域的准确范围,这为工程应用带来了很大的自由度。
2.1 模型结构如图 5所示,模型第1部分是特征提取层,使用包含残差结构的卷积神经网络ResNet将输入图像转化为特征层(feature maps)。第2部分在feature maps上使用RPN(region proposal network)网络产生RoI(region of interest)候选框,并在第3部分对每一个候选框计算所属类别、边界偏置和具体边界3种输出。
2.2 预训练模型
由于数据量不足以支持从头训练一个完整模型,因此本研究首先在MS COCO[14]数据集上进行预训练,得到Mask R-CNN模型中ResNet、RPN等层的参数。再使用大坝混凝土仓面浇筑数据集上标注结果对模型进行微调,由于数据量的缘故,微调仅针对模型输出层进行,既能保证训练效果,又提高了训练速度。
2.3 模型训练使用标注的数据训练Mask R-CNN模型过程中误差曲线如图 6所示,共训练了20个epoch(1个epoch即所有训练样本在神经网络中都进行了一次正向传播和一次反向传播)。该模型的误差由3部分组成:分类误差(class loss)、定位误差(bounding box loss)和语义分割误差(mask loss)。从3部分误差下降趋势和幅度来看,定位误差和分类误差下降较多,说明这两个任务相对简单,模型也能较好的学习;语义分割误差下降最少,这是因为语义分割任务需要确定每一个像素点所属类别,难度非常大,同时在数据标注过程中本研究忽略了少量水管、电线、钢筋的遮挡,即标注时本研究将遮挡模板和混凝土的少量水管、电线、钢筋标注为了相应的区域,但模型无法很好的理解这一问题,所以会进一步增加这一任务的难度。因此,本研究中语义分割算法主要用来在训练中改善目标检测算法的训练效果,提高其准确率。
使用训练好的模型预测完整一仓浇筑过程,其中几个关键帧的预测结果如图 7所示。模型预测效果与误差函数分析结果一致,能够相对准确识别出目标范围和类别,但在每一个像素的分类上尚有困难,但值得注意的是,因为模板的材质、颜色较为特殊,所以即使只有少量样本,也能较好地学习模板的Mask。
3 工程应用
基于建立好的目标检测模型和CDPD数据库,本研究在白鹤滩水电站的建设过程中进行了工程应用,对模型和算法的有效性进行检测。
3.1 模板遮盖识别控制坯层浇筑间隔随着浇筑过程的进行,模板与仓面交接线不断上升,模板也被不断遮挡,直到浇筑完成时模板被完全遮挡。记初始模板高度为H,浇筑过程中余下模板的高度为h,则浇筑完成度p表示如下:
$ p=\frac{H-h}{H} \times 100 \%. $ | (2) |
使用训练好的模型进行预测,对输出的模板类Region Box进行分析。一个Region Box由4个参数确定——左上角坐标(x1, y1)和右下角坐标(x2, y2),同时模型还输出候选区所属类别的概率。实际工程场景中,模板往往与x轴方向平行,若不平行,则模型会根据模板实际位置输出多个模板类Region Box,各个Region Box的底边分别与x轴方向平行,可近似看做模板整体与x轴方向平行,所以本研究依x轴建立起坐标系,将图像沿x轴平均分为n个区域共n+1个点,从左到右依次记为x1, x2, …, xn+1。如图 8所示,当模型识别到模板时,依次检查是否有Region Box落在该点的y方向,如果有则记录下Region Box的上下边界的坐标,其差值记为模板高度h。当同一个x有多个Region Box互相重合时,选取分类概率较高的进行计算。
基于单片摄影测量计算可以得到不同时间下的浇筑完成度,由于中值滤波既能有效消除噪声,又能保留一定的阶段信息,因此使用中值滤波进行降噪,剔除因环境因素引起的数据波动,得到模型识别结果。将模型识别的结果与手动标注的真实浇筑过程进行对比,如图 9所示。红色虚线为人工标注的坯层覆盖过程,蓝线为模型识别结果,纵轴值为该时刻整个仓面浇筑完成度的均值。容易看出,本方法较为准确地识别出了5个浇筑坯层的浇筑过程。3月17日23时至3月18日1时之间连续浇筑了2个坯层,区分略有不明显,但考虑到质量控制主要关注坯层浇筑间隔是否超时,所以连续浇筑导致平台期不明显可以接受。
自动获取浇筑仓面施工过程信息之后,本研究针对表 2中规定的坯层覆盖最大间歇时间进行预警。开仓完成第一个坯层浇筑之后,若大于一定时间,仓面浇筑完成度p变化小于10%,则根据间隔时间的不同发出对应级别的预警信息。10%这一参数可根据实际情况进行调整,若识别精度需求较高可适当下调。
3.2 吊罐识别校准施工进度
基于模板遮盖比例和中值滤波结合方案可以较为准确地识别施工进度,但也存在一定的滞后性,该滞后性主要来源于对浇筑状态变化的识别不够及时和中值滤波算法引入的滞后性。所以本研究引入浇筑任务开始的明确信息——“卸料”进行识别,对浇筑阶段变化时间点进行精确定位。如图 10所示,纵轴为吊罐卸料位置在条带横向的位置的比例,其范围是[0, 1],数据点代表在这一时刻有吊罐出现。但需要注意的是,模型识别结果的每个数据点并非代表一次卸料,而是代表在该时刻的图像中有吊罐存在,所以本研究需要在时间维度上对相邻帧的吊罐进行合并。合并条件为:120 s之内位置相差小于0.2的所有吊罐目标为同一次卸料。合并后,图 10中共检测到95次卸料。
在这一时间范围内,浇筑位置左右不停的移动,并相对均匀覆盖整个仓面。因为视频覆盖范围跨越了2个条带,所以图像中一个坯层的浇筑过程并非完整地从左到右,而是在0.6处分开(图 10中0.6以上部分对应图 9浇筑过程所在条带)。基于此,对于某一个条带,本研究可以使用吊罐卸料信息判断该坯层浇筑是否开始。从图 10识别出0.6以上部分第2次卸料开始于2020年3月17日22时24分50秒,即图 9中坯层2浇筑开始时间为2020年3月17日22时24分50秒,与真实情况吻合。
使用基于单片摄影测量的方法检测到浇筑间歇期开始后,将目标检测模型从模板检测切换为吊罐识别模型,检测到连续3次卸料活动,使用第1次卸料活动时间作为平台期开始的标志,并将模型切换回模板检测模型。这一方法可以极大提升平台期的识别精度,将时间分辨率提升到秒级,实现实时性的飞跃式增长。
4 结论本文立足于保证工程建设质量和提高工程建设的智能化水平,针对水利工程建设中的混凝土浇筑仓面施工环节进行了详细分析,使用深度学习领域的目标检测和语义分割技术,建立了大坝混凝土仓面浇筑数据集,提出了适合工程应用的模型训练流程。采用基于模板遮盖程度的工程进度识别方法和基于吊罐识别的施工进度校准策略,构建了软硬件结合的混凝土坯层覆盖间歇时间超时预警方法。
本研究也存在一些不足,如单路摄像数据存在被遮挡、角度受限等因素引起的系统性误差,摄像设备固定在模板上只能覆盖固定的范围等。随着工程机械化、智能化水平的提高,可以采用多路摄像、无人机记录等方式实现更好的混凝土坯层覆盖间歇时间超时预警。
[1] |
王海东, 张利萍. 建筑工程施工管理控制[M]. 天津: 天津科学技术出版社, 2017. WANG H D, ZHANG L P. Construction engineering management control[M]. Tianjin: Tianjin Science and Technology Press, 2017. (in Chinese) |
[2] |
蒋为群, 郭伟, 黄文. 三峡工程混凝土浇筑仓面设计及施工现场质量控制[J]. 水电站设计, 2007, 23(2): 84-87. JIANG W Q, GUO W, HUANG W. Design of concrete pouring silo surface of Three Gorges Project and quality control of construction site[J]. Design of Hydroelectric Power Station, 2007, 23(2): 84-87. (in Chinese) |
[3] |
刘山伟, 武明芬. 高拱坝仓面混凝土平仓振捣工艺研究与实施[J]. 水利水电施工, 2010, 4: 16-19. LIU S W, WU M F. Research and implementation of high arch dam concrete flattening and vibrating process[J]. Water Conservancy and Hydropower Construction, 2010, 4: 16-19. (in Chinese) |
[4] |
彭华. 混凝土坝施工质量实时监控方法及系统: CN103064394A[P]. 2013-04-24. PENG H. Concrete dam construction quality real-time monitoring method and system: CN103064394A[P]. 2013-04-24. (in Chinese) |
[5] |
刘亚洁. 基于立体视觉的混凝土振捣质量监测系统的开发[D]. 哈尔滨: 哈尔滨工业大学, 2018. LIU Y J. Develop of concrete vibration monitoring system based on stereo vision[D]. Harbin: Harbin Institute of Technology, 2018. (in Chinese) |
[6] |
杨煜昕. 基于机器视觉的混凝土表观质量检测方法研究[D]. 镇江: 江苏大学, 2020. YANG Y X. Research on apparent quality detection method of concrete based on machine vision[D]. Zhenjiang: Jiangsu University, 2020. (in Chinese) |
[7] |
DUTTA A, ZISSERMAN A. The VIA annotation software for images, audio and video[C]//Proceedings of the 27th ACM International Conference on Multimedia (MM'19). New York, USA: ACM, 2019: 2276-2279.
|
[8] |
DENG J, DONG W, SOCHER R, et al. Imagenet: A large-scale hierarchical image database[C]//2009 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2009: 248-255.
|
[9] |
GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//2014 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2014: 580-587.
|
[10] |
REN S Q, HE K M, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149. |
[11] |
HE K M, GKIOXARI G, DOLLÁR P, et al. Mask R-CNN[C]//2017 IEEE International Conference on Computer Vision. Piscataway, USA: IEEE, 2017: 2980-2988.
|
[12] |
REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: Unified, real-time object detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2016: 779-788.
|
[13] |
LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single shot multibox detector[C]//Computer Vision-ECCV 2016. Cham, Switzerland: Springer, 2016: 21-37.
|
[14] |
LIN T Y, MAIRE M, BELONGIE S, et al. Microsoft coco: Common objects in context[C]//Computer Vision-ECCV 2014. Cham, Switzerland: Springer, 2014: 740-755.
|