破片是指炸弹或炮弹爆炸以后所产生的破碎弹片,它是常规武器中起毁伤作用的最基本元件[1]。同时也是毁伤效果评估和武器性能验证的重要参数依据,其中包括破片的数量、空间分布位置、分布密度等[2]。在进行战斗部的威力测试实验中,常采用不同材质的目标靶板来统计破片,即在战斗部静爆试验场周围布置一定角度范围的目标靶板,通过引爆战斗部对目标靶板形成毁伤,而后对靶面的破片孔进行统计分析。传统的统计方法主要依靠人工对靶板区域内的破片进行统计,存在很多不足,如工作量大、检测效率低、易受主观因素影响,很难进行科学、客观的统计。
近年来随着深度学习和激光领域的显著发展,在靶场的实验过程中也得到应用。何性顺等[3]提出了基于TLS的靶板穿孔特征识别提取方法,采用三维激光扫描技术,生成三维点云。但成本较高,点云数据在密度上可能存在不均匀的情况,影响检测精度。李明富等[4]提出一种图像识别技术在战斗部静爆试验分析中的应用,运用传统的图像预处理和识别算法,但对复杂的破片分布检测精度不理想,在传统的图像检测算法不能反映图像全部特征的需求下,雷江波等[5]提出一种基于Faster R-CNN的破片群图像检测方法,但检测效率较低,对暗小目标的检测效果不太理想。虽然后续又有学者对算法进行了改进,提升了对小目标物体的识别分类能力和效率,但基于二维图像的破片检测的检测结果丢失了物体的第三个维度,缺少空间位置信息,如果通过转换矩阵进行坐标变换,重新建立单个靶板之间的空间联系,会引入新的误差,而三维点云数据则能够提供更全面的几何结构和空间信息。
针对以上问题,提出一种基于三维重建生成点云数据的破片参数检测方法,通过引入法向量预先验证的分割方式,提前分离出感兴趣的点云区域,去除冗余信息,在一定程度上过滤噪声点,加快算法的执行速度。接着通过自适应阈值进行颜色区域生长分割[6],可以更有效地保留和处理靶面的细节特征,实现靶板破片信息的精准测量。
采用传感器尺寸为23.5×15.6 mm的单反相机和焦距为55~200 mm的变焦镜头获取爆轰现场靶板的多视图图像,最大分辨率为6 000×4 000,为保证图像之间应有足够的视角重叠,即多个图像之间共享相同的场景内容。采用固定三脚架规律旋转相机拍摄角度的方法拍摄,最后通过图像匹配和三角测量等[7]技术恢复场景的深度信息。
三维点云的整体重建流程如图1所示。首先对采集到的图片进行畸变矫正[8],由于相机镜头在生产过程中不能保证参数的高度一致,会产生成像的畸变,校正之后可以消除图像失真,改善特征提取和匹配,提高重建结果的准确性;而后应用尺寸不变特征转换算法(scale invariant feature transform,SIFT)进行图像的特征提取与匹配[9],建立图像之间的对应关系;接着进行运动结构恢复算法(structure from motion,SFM)的几个核心步骤[10],包括图像注册、三角测量、捆集调整优化(bundle adjustment,BA),可以得到重建出的稀疏三维点云;最后通过多视角立体视觉方法(multi-view stereo,MVS)进行密度重建。文章采用TransMVS的方法生成重建后的稠密点云[11],大体思想是通过深度学习网络在数据集上进行训练,学习图像之间的相似性特征,这些特征可以捕捉到不同视角之间的一致性和相关性,从而去完成多视角立体匹配和稠密点云的重建。
图1 三维重建流程
Fig.1 Iterative reconstruction process
通过多视图三维重建得到靶面的稠密点云,对破片点云的分割流程如图2所示。由于受传感器测量误差和实际环境因素的干扰,需要对点云进行预处理操作,为降低点云数据的复杂性,提高计算效率和减少存储需求,率先对点云进行下采样处理;前面提到的三维重建方法会通过对不同视角施加掩码的方式滤除掉一部分的背景噪声,但在点云中处理中还要继续对背景干扰做进一步的分割,点云地面滤波算法(covariance matrix adaptation evolution strategy filter,CSF)引入“布料”的概念[12],通过估计点云数据点的局部协方差矩阵来识别和滤除噪声点。假设噪声点的协方差矩阵会比较平坦,而结构点区域的协方差矩阵相对波动较大,从而去除地面及背景噪声;最后通过半径滤波去除点云中的离群点。
图2 点云预处理流程
Fig.2 Point cloud preprocessing process
法向量是三维点云数据中一个重要的属性,可以用于表征点云的几何形状或进行点云分割。主要的法向量估计方法有积分图法和主成分分析法(PCA)[13],由于重建后生成的是无序点云,所以采用PCA方法用于法线生成。点云集合P中的任意一点 pi,取其邻域的k个相邻点,通过拟合局部平面的方法去估计点云的法向量。通过构建点云协方差矩阵,其最大特征值对应的特征向量方向,为数据分布方差最大的方向。其中协方差矩阵D为
(1)
式(1)中:表示最近邻点集的三维质心;λj为协方差矩阵的第j个特征值;vj 为其对应的特征向量。将特征值按从大到小进行排列λ2、λ1、λ0,选取前k个最大的特征值对应的特征向量组成特征向量矩阵,然后将点云数据投影到特征向量的方向上去。如图3所示,特征值最小λ0对应的向量v0即为局部平面pi点处的法向量。
图3 点云法向量示意图
Fig.3 Schematic diagram of point cloud normal vector
为了利用生成的法向量信息对点云进行预先筛选,需要对点云进行法向定向,以确保法向量在整个点云中的一致性,针对点云中靶板的形状结构,采用随机采样一致性算法(RANSAC)进行多平面的拟合分割[14]。通过随机采样和迭代的方式,从点云中找出与预设模型最符合的内点集合,并拟合出平面模型。这样就可以将点云分割成平面内的点和离群点2部分。根据预设的距离阈值,将距离小于阈值的点添加到内点集合。重复以上步骤,直到达到最大迭代次数。通过最终拟合出的平面模型和内点集合,可以得到平面的几何参数以及静爆试验后的靶面点云信息。平面分割后的点云中有i个点云靶面,每个靶面的拟合平面法向量为ni,取其中的2个向量n1、n2根据公式:
c=n1×n2
(2)
式(2)中,c向量即为点云视点所在的搜寻方向,沿该方向计算视角平均距离,计算公式为
(3)
式(3)中:vi为搜寻方向上的坐标点;为视角平均距离。选择具有最小平均距离的视点作为最佳视点v。根据确定的视点对法向量进行重新定向。即点云中的一点与视点连线所在的方向与该处的法向量同向。
n·(v-pi)>0
(4)
式(4)中, n为点云pi处的法向量。而后通过下面公式:
(5)
式(5)中,θi为点云pi与邻域法向量的夹角。计算点云邻近区域的法线夹角算术平均值∂,最后通过阈值ψ预先筛选出点云靶面中疑似弹着点的特征点云。如图4所示,重新定向后的点云法向量更加平滑。
图4 点云法向量
Fig.4 Point cloud normal vector
三维点云中除了位置信息外,针对每个坐标点都有一个对应的RGB值,用于定义其颜色信息。对于预处理之后的靶面点云数据,利用其颜色信息进行区域生长分割。区域生长分割是一种基于相似性准则将点云数据划分为不同区域的分割方法[15]。首先从点云中选择一个种子点作为分割的起始点;将颜色特征用于生长的相似性准则;然后从种子点开始,进行邻域搜索,搜索其相邻点并计算它们与种子点之间的相似度;对于满足相似性准则的相邻点,将其添加到种子点所属的区域中作为提取的特征点;重复迭代以上步骤,直到没有满足相似性准则的点出现或达到预定义的停止条件。
其中相似度度量通常是基于预先设定的阈值,但由于三维点云会出现局部的密集度分布不均匀,同一点云中即使有相同的环境光照,但靶板的面向角度不同,区域生长的阈值也会随之产生变化,这时如果采用预先设定阈值的方法就无法及时地适应新的数据特征,从而导致检测结果的偏差或延迟。为解决此问题引入自适应阈值的颜色区域生长分割方法,算法的流程如图5所示。
图5 分割流程
Fig.5 Split process
主要经过如下几个步骤:
1) 生成点云颜色特征图
结合前面提到的RANSAC多平面分割,将预处理后每个无序的平面点云中颜色信息提取出来,生成二维特征图,如图6(a)所示。将点云的三维坐标映射为特征图的二维坐标,其中特征图的RGB值来自点云的颜色信息。映射关系为
(6)
图6 点云颜色特征图
Fig.6 Point cloud color feature map
式(6)中:Q为预处理后的点云数量;i为平面分割后的靶面点云;wi为第i个点云平面对应的特征图宽度;hi为第i个点云平面对应的特征图高度;λi为第i个点云平面的像素插补值。
2) Oriented FAST and Rotated BRIEF(ORB)特征点检测
建立点云特征图之后,应用图像中的角点检测算法处理点云的颜色信息。文章采用ORB算法[16],既具有高的提取速度又具有旋转不变特性。可以准确快速地检测出特征图中的特征点。由于靶面点云数量远远高于弹孔的点云数量,且颜色值趋于统一,没有过大的偏差抖动。所以ORB算法检测出的特征点即为弹着点处的点云,如图6(b)所示。
3) 自适应阈值生成
以颜色特征图中检测出的特征点为中心,遍历特征点周围像素的颜色值。根据公式:
(7)
可计算出点云靶面的分割阈值ζ。式(7)中:l为特征点周围的像素点个数;γ为插补系数;tl为特征点间的颜色欧氏距离;ml为特征点中心与周围像素点的颜色欧氏距离,公式为
(8)
式(8)中,rl、gl、bl为点云l的RGB值。
4) 区域生长分割
最后把生成的自适应阈值ζ作为区域生长分割的相似度度量,通过Kd-Tree近邻搜索算法不断选择新的种子点,以颜色欧氏距离为判定条件,以满足条件的三维点为中心进行区域生长。重复迭代步骤1—步骤3,直到完成所有点云分割。
为验证本文中的方法在实际应用环境中的有效性,进行了现场测试实验。静爆试验采用1.5 m×2 m×10 mm 规格的钢板,4块相连离静爆中心3.5 m处呈圆弧排列,作为战斗部静爆破片的着靶目标。破片着靶后的靶板实物如图7所示。重建后的靶面点云密度约为20 000/m2,靶面整体点云如图8所示。
图7 试验靶板(局部放大)
Fig.7 Test target plate (local amplification)
图8 靶面整体点云(预处理后)
Fig.8 Target overall point cloud (after preprocessing)
法向量的夹角阈值ψ、自适应阈值的插补系数γ、邻域点个数l是影响整个分割算法精度的几个重要参数。所以需要经过反复试验来确定其精度范围。其中法向量的夹角阈值ψ会影响点云预先分割的效果,合理的阈值会剔除掉大部分的靶面点云,保留靶板弹着点附近的有效点云。通过测试,ψ取靶面凹陷处附近点云,大小为法向量夹角的均值10°~15°为最佳。γ和l的大小决定了阈值生成的效果,其中γ主要由预处理过后点云的密度决定。通过测试多组参数γ和l的不同组合,当特征点数取l=60时,γ=0.4生成凹坑处点云阈值效果最好;γ=0.8时生成通孔处的点云阈值效果较好。弹孔的不同特征如图9所示。
图9 弹孔点云特征
Fig.9 Bullet hole point cloud features
对重建出的靶面三维点云应用本文算法进行点云分割,分割效果如图10所示。共检测出弹着点176个,其中按特征分类凹坑62个,通孔114个。为了更方便直观,在点云的每个弹孔位置添加了数量和特征标签,输出每个弹孔的部分特征信息见表1。通过人工统计的方法进行对比试验,统计出凹坑为66个,通孔为118个,共计184个,可见本文中提出的方法检测弹着点特征准确率达到95%,可以较为可靠地作为后续靶面分析的可靠依据。
表1 靶板信息统计表
Table 1 Statistical table of target plate information
编号弹孔特征弹着点X坐标弹着点Y坐标弹着点Z坐标面积/cm2距中心距离/m编号弹孔特征弹着点X坐标弹着点Y坐标弹着点Z坐标面积/cm2距中心距离/m1通孔178.51119.67286.320.283.5810通孔197.07100.61358.740.283.512通孔190.01100.8297.340.423.5311通孔197.12120.74359.040.283.473通孔164.1396.54294.840.323.5112通孔178.5238.62285.250.243.384通孔166.09142.64292.580.413.4813通孔197.2359.97358.150.323.535凹坑196.01118.82276.080.823.5914凹坑174.8079.05363.820.183.616通孔178.0879.31285.960.243.4615通孔163.3078.47294.930.213.467凹坑175.5660.80363.370.453.4716通孔144.75101.09372.800.383.428通孔144.09120.11359.040.383.6017通孔177.43120.20363.630.253.529通孔176.8156.38286.510.293.4118通孔143.3051.69372.430.233.5411通孔197.12120.74359.040.283.47……
图10 靶面整体点云识别效果
Fig.10 Recognition effect of overall point cloud on target surface
以静爆试验中靶板为研究对象,应用多视图三维重建的方法生成点云,对其进行点云分割研究,结论如下:
1) 预处理过程中将整体靶面点云分割成多个平面,对单个平面的靶面点云进行视点的重新估计,可以生成更理想的平面点云法向量,实现了基于法向量的预先分割,有效提高了后续点云分割的效率。
2) 针对静爆现场多个靶板的复杂环境,引入自适应阈值的颜色区域生长方法实现靶面弹孔的点云分割与特征分类,有效提高了较传统定阈值分割方法的泛化能力。
通过实验数据证明,提出的算法可以有效地识别静爆后破片的着靶位置坐标、弹孔的特征及飞散角度,误差小于4%,为后续的战斗部毁伤效果评估提供可靠依据。
[1]李丽萍.破片战斗部毁伤威力测试关键技术研究[D].南京:南京理工大学,2017.LI Liping,Research on key techniques for testing the damage power of fragmented warheads[D].Nanjing:Nanjing University of Science and Technology,2017.
[2]申景田,苏健军,姬建荣,等.破片飞散角动静爆关联的试验研究[J].弹箭与制导学报,2019,39(2):48-51.SEN Jingtian,SU Jianjun,JI Jianrong,et al.Experimental study on the correlation between dynamic andstatic explosions of fragment flying angle[J].Journal of Missile and Guidance,2019,39(2):48-51.
[3]何性顺,苏健军,段奇三.基于TLS的靶板穿孔特征识别提取方法[J].兵器装备工程学报,2021,42(1):249-253.HE Xingshun,SU Jianjun,DUAN Qishan.Target plat perforation feature recognition and extraction method based on TLS[J].Journal of Ordnance Equipment Engineering,2021,42(1):249-253.
[4]李明富,何宸,凌艳,等.图像识别技术在战斗部静爆试验分析中的应用[J].四川兵工学报,2014,35(6):101-104.LI Mingfu,HE Chen,LING Yan,et al.The application of image recognition technology in the analysis of warhead static explosion test[J].Sichuan Journal of Ordnance Technology,2014,35(6):101-104.
[5]雷江波,王泽民,李静.基于Faster R-CNN的破片群图像目标检测研究[J].国外电子测量技术,2021,40(1):70-74.LEI Jiangbo,WANG Zhemin,LI Jing.Research on fragment group image target detection based on faster R-CNN[J].Foreign Electronic Measurement Technology,2021,40(1):70-74.
[6]马学磊,薛河儒,周艳青,等.基于改进区域生长法的羊体点云分割及体尺参数测量[J].中国农业大学学报,2020,25(3):99-105.MA Xuelei,XUE Herui,ZHOU Yanqing,et al.Sheeppoint cloud segmentation and body size parameter measurement based on improved regional growthmethod[J].Journal of China Agricultural University,2020,25(3):99-105.
[7]HARTLEY R I,STURM P.Triangulation[J].Computer vision and image understanding,1997,68(2):146-157.
[8]ZHANG Z.A flexible new technique for cameracalibration[J].IEEE Transactions on pattern analysis and machine intelligence,2000,22(11):1330-1334.
[9]LOWE D G.Distinctive image features from scale-invariant keypoints[J].International journal of computer vision,2004,60:91-110.
[10]SCHONBERGER J L,FRAHM J M.Structure-from-motion revisited[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.2016:4104-4113.
[11]DING Y,YUAN W,ZHU Q,et al.Transmvsnet:Global context-aware multi-view stereo network with transformers[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition.2022:8585-8594.
[12]XU H,ZHANG H,MA J.Classification saliency-based rule for visible and infrared image fusion[J].IEEE Transactions on Computational Imaging,2021,7:824-836.
[13]SANCHEZ J,DENIS F,Coeurjolly D,et al.Robust normal vector estimation in 3D point clouds through iterative principal component analysis[J].ISPRS Journal of Photogrammetry and Remote Sensing,2020,163:18-35.
[14]LI L,YANG F,ZHU H,et al.An improved RANSAC for 3D point cloud plane segmentation based on normal distribution transformation cells[J].Remote Sensing,2017,9(5):433.
[15]MA X,LUO W,CHEN M,et al.A fast point cloud segmentation algorithm based on region growth[C]//2019 18th International Conference on Optical Communications and Networks (ICOCN).IEEE,2019:1-2.
[16]RUBLEE E,RABAUD V,KONOLIGE K,et al.ORB:An efficient alternative to SIFT or SURF[C]//2011 International conference on computer vision.Ieee,2011:2564-2571.