基于图像处理的野外金属破片靶测量研究

2021-12-24 03:23淼,王浩,黄勇,薛
弹道学报 2021年4期
关键词:靶板破片噪点

何 淼,王 浩,黄 勇,薛 绍

(1.南京理工大学 能源与动力工程学院,江苏 南京 210094;2.南京信息职业技术学院 人工智能学院,江苏 南京 210043)

开展野外爆破试验是检验战斗部设计合理性的必要环节,而对试验所用靶板的毁伤情况进行精确、高效测量,是评判战斗部设计及毁伤效果的直接依据。受野外测量环境和条件制约,使用人工对试验靶板测量既低效又工作量巨大,尤其对非规则破片毁伤孔洞无法人工测量的情况,必须借助其他技术手段实现毁伤区自动测量与评估报靶。

1 技术现状

随着图像处理技术的愈发成熟,本世纪初首先出现基于靶板图像灰度值二值化分割识别弹孔及判定靶环的报靶方法[1-2],其识别成本低且易实现,但受靶板形变与光照不均影响,弹孔边缘识别精度差直接制约其实用性。为解决靶板形变,科研人员提出基于Hough变换靶板形变纠正技术[3],采用小波变换、中值滤波与边缘检测算子等技术克服靶板图像噪点与抗光照问题[4],以及运用神经网络[5]、机器视觉[6-7]及深度学习技术[8],突破了在钢靶、混凝土靶等非纸质靶场景下,因靶板图像带入靶板材质纹理光照对毁伤边缘检测的影响。但上述研究主要识别对象为偏圆孔型有固定毁伤形状的枪弹靶识别,尤其是应用于胸环靶识别较多[9],对破片战斗部面撒型不规则毁伤形状的识别研究较少。

本文以大当量战斗部野外爆破试验中,大型钢制薄靶板的面毁伤穿透区域的识别与测量为研究场景,针对野外大型钢板靶图像形变矫正及光照情景下不规则毁伤孔洞识别与测量问题进行了研究。

2 测量技术实现

2.1 测量流程总体设计

考虑野外靶板图像受成像角度、靶面噪点以及光照等影响,靶面毁伤孔洞会出现形变、图像分割干扰等问题,会降低靶面毁伤区域面积测量的精度。因此,需要将野外拍摄靶面转换为无形变正视图,并进行靶像去噪和抗光照处理,以保证靶面毁伤区域图像分割精度,再通过靶面物理尺寸与靶像成像像素数之间关系,推算出毁伤区域面积。总体测量计算流程如图1所示。

图1 野外金属破片靶毁伤区面积测量流程

2.2 靶板图像矫正

依据透视投影变换原理和相机视线与靶面夹角关系可知,当相机视线与靶面法向方向存在夹角θ≠0°时,靶板成像将存在一定程度透视投影形变,如图2所示,靶板物理宽度和高度分别设为WT和HT。

野外试验中,人工拍摄不可避免靶像存在偏视角而导致透视斜投影情况,进而引起毁伤区域在靶像中出现形变,这会对靶板后续测量造成严重误差。由于透视投影变换可看成透视变换加入相机视线法向平面作为正投影面后的透视结果[10],因此,可将图2中靶板透视投影图作为原图,靶板正视图作为透视变换目标图,运用透视变换做逆变换矩阵求解,从而实现靶板图像正视矫正。

图2 靶板透视投影示意图

由文献[11]知,透视变换为图像在三维空间中的转换,设靶板透视投影图像素空间坐标为P=(xyz),设靶板相机正视图像素空间坐标为P′=(x′y′z′),设A为透视逆变换矩阵,则有[11]:

P′=P·A

(1)

由文献[12]可得式(1)完成形式为

(2)

化简得等式组形式:

(3)

考虑靶板透视投影图和靶板正视图均为二维平面图像,可设z=1,z′=1,因此,从式(3)可知需有8个方程联立求出透视投影变换阵A,8个方程需4对变换前后坐标点对:

T1(x1,y1)~T′1(x′1,y′1),T2(x2,y2)~T′2(x′2,y′2)T3(x3,y3)~T′3(x′3,y′3),T4(x4,y4)~T′4(x′4,y′4)

代入式(3)式即可求解[13]。本文将T1、T2、T3、T4设为逆透视转换正视图的4个边角定点,即T1(0,0),T2(0,m),T3(n,0),T4(m,n),其中m、n分别为正视图分辨率长和高,为保证所转换正视图与靶板实际比例相符,且转换后的正视图不出现形变失真,应有m∶n=WT∶HT。T′1、T′2、T′3、T′4为靶板图像中靶板边缘顶点,如图3所示。

图3 靶板逆透视转换示意图

2.3 矫正图滤波

由于金属靶板在野外日晒雨淋,表面难免出现风化锈迹等现象,在靶板图像上成为背景噪声。为避免纹理噪声影响靶图毁伤区域分割,需要对靶图进行滤波去噪处理。滤波的思路是通过设计滤波器,对原图进行卷积领域运算,将运算后的值作为该卷积原图区域中心位置新值。为解决原图边缘像素卷积区不够的问题,本文采用在图像外围补填充一圈图像边缘像素,如图4所示。同时,为减小运算量,考虑金属靶面和毁伤区域颜色对比度较高,且颜色单一性较强,本文基于RGB单通道灰度图进行滤波。

图4 卷积领域运算示意图

由于均值滤波对椒盐噪点去噪良好[14],可针对金属靶板锈点进行平滑去噪,但不能保护图像细节,对破片毁伤区域边缘易造成模糊。为保证毁伤区域边缘锐度和后续二值分割的精度,在均值平滑去锈噪点时,本文利用中值滤波增强边缘锐度特性[15]。

设f(i,j)表示原图(i,j)处像素灰度级,h(m,n)表示滤波器算子在(m,n)处权值,滤波器大小为k×k,V(i,j)和M(i,j)分别表示原图(i,j)处均值滤波和中值滤波卷积领域运算,则有:

(4)

(5)

式中:med{·}表示取中值运算。

2.4 毁伤区域分割

运用图像分割技术将毁伤区域从正视图S中识别是毁伤区域测量重要环节。考虑到金属靶板底色单一、靶图分割语义简单的情况,传统分割方法在分割有效性及精度上均可满足工程要求。其次,由于毁伤区域与靶板灰度对比度较大,靶面及毁伤区域各自内部灰度分布均匀,即类间方差较大,如图5所示,因此本文选择经典的2D-Otsu法。同时,为抑制靶面的纹理噪声和光照不均匀、偏光的情况,本文引入了均值-中值双滤波作为2D-Otsu阈值法[16-18]前处理,对金属靶面进行二值分割。

图5 野外钢靶板测量区透视变换图

(6)

式中:

(7)

(8)

(9)

(10)

(11)

因存在w*和l*2个阈值,则M图上像素将被分在4个区域。图6表示了图5(c)的一维、二维直方图,其中图6(a)对偏单色金属靶面不易形成直方图谷底,显然影响分割效果;图6(b)中I1表示全局和局部领域灰度均小于w*和l*的靶面非毁伤区像素,I4表示全局和局部领域灰度均大于w*和l*的毁伤区像素,I2和I3表示非靶面和非毁伤区的噪点、干扰纹理以及毁伤区边缘不确定像素。显然基于均值-中值滤波后灰度图所构造二维直方图中,像素沿着对角线集中分布于I1和I4区域,说明噪声影响较小,(w*=124,l*=122)阈值对取值越理想,靶面背景与毁伤区分割精度较高。

从图6(c)看出,受金属靶板毁伤程度不均匀和边缘起边毛刺的影响,二值分割图往往存在毁伤区内分割噪点和边缘非连续噪点情况。本文先使用膨胀腐蚀闭运算去除毁伤区内误识别噪点,再用腐蚀膨胀开运算去除靶图背景中误识别噪点,并保持了毁伤区域原始大小,如图6(d)和图6(e)所示。

图6 金属靶板均值-中值双滤波2D-Otsu分割

2.5 毁伤区测量计算

对分割二值图进行精确测量需要计算每个毁伤区的像素数及单像素的物理单位面积。由于金属靶板破片毁伤所产生的区域多为形状随机、边缘不规则孔洞,传统OpenCv等图像处理平台的轮廓识别函数FindContours在识别成功率和识别精度上不够,且因为算法封装不支持用户自定义,同时考虑算法后续轻量化移植部署,本文针对二值靶图的不规则破片毁伤区测量进行了自定义算法设计。

本文构建了一种基于像素的领域搜索生长法来识别每个二值图毁伤区域,算法主要思路如图7所示。该算法中使用面向对象集合存储空间动态分配特性,对新识别毁伤区创建新像素点集合存储,支持实现了各毁伤区搜索生长过程中该区像素总数不确定情况。

图7 领域搜索生长法算法流程图

图7中使用了队列作为算法辅助数据结构,核心思想是将所有毁伤区像素总点集合K中已判别属于某毁伤区的像素入队,并从K中删除,对队列内所有像素进行领域搜索点,新搜索到点继续入队,直到队列为空时证明该毁伤区所有像素点已全部搜索完毕,此时再看K内是否还有像素,如果有则说明有新的非连通毁伤区,并创建新的毁伤区像素点集合,如果K中没有像素,则说明整个靶面毁伤区全部识别完毕。这里,对某像素p进行领域搜索,是针对p周边3×3区域,即搜索与p像素紧邻的8个像素位置。

毁伤区领域搜索生长法面向对象伪代码描述如下。

输入:二值图像src

输出:各毁伤区像素集合AllRegions

1:functionFindSurface(src)

2:K←newList()

3:fori=0 →src.Rowsdo

4:forj=0 →src.Colsdo

5:ifsrc[i,j]==255K.Add(src[i,j])

6:AllRegions←newList>()

7:whileK.Count>0 do

8:newRegion←newList()

9:p′←K[0]

10:K.Remove(p′)

11:newRegion.Add(p′)

12:MQueue.Join(p′)

13: whileMQueue!=Emptydo

14:p←MQueue.GetOut()

15:newp←IsSidePoint(K,p)

16:K.Remove(newp)

17:newRegion.Add(newp)

18:MQueue.Join(newp)

使用领域搜索生长法对图5靶面进行毁伤区识别,并标记每个毁伤区边缘,效果如图8所示。

图8 野外金属靶板毁伤区识别图

对领域搜索生长法将靶图各毁伤区识别像素数累计求和,即可得到每个毁伤区像素总数PSum,再基于靶图物理尺寸和总分辨率计算出单个像素平均物理面积,从而计算出各毁伤区物理实际面积Ap,如式(12)所示,其中Sh和Sw分别表示靶板正视图的高和宽。

(12)

3 标准实验与分析

3.1 标准靶验证实验

由于破片飞行角度、速度的随机性,在野外大型金属靶板上毁伤区域往往呈不规则分布,且毁伤区形状多为不规则形状,毁伤边缘多有毛刺不平滑,显然依赖物理人工方法对本文测量结果精度验证并不可行。因此,本文设计了一张1 m×1 m的铝靶板,用AutoCAD画出标准尺寸孔洞,由CAD尺寸计算出面积作为理论值,再与本文测量结果进行比较,以验证本文方法的测量精度。

图9为所设计标准铝靶板尺寸和识别效果组图。可看出图9(d)通过滤波既保持了孔洞边缘锐度,又尽量降低了铝靶板金属加工拉丝纹理,以及抑制了孔洞区域底色污渍噪点,为图9(e)分割创造了良好条件,但图9(e)分割孔洞区域仍然有个别误识别噪点,先后使用膨胀腐蚀闭、开运算得到图9(f)和图9(g),在同样膨胀腐蚀卷积尺寸规模下(本实验选择为5×5卷积尺寸)去除了孔洞区域噪点,又抑制了非毁伤区噪点生成,所得图9(h)识别效果良好。

图9 标准铝靶板识别序列图

表1给出了测量计算结果和CAD标准尺寸计算面积的比较分析。从表1可知,本文针对金属靶板毁伤孔洞区识别及测量值损失比均分布于0~5%之间,相对本文测量方法的成本和野外使用便利性,满足实际工程需求。

表1 标准1 m×1 m铝靶板测量结果精度分析

3.2 野外实靶实验

在标准实验验证本文方法有效性基础上,对图10中两副野外靶板进行了破片孔洞面积与周长测量及边缘标识。图10中1号靶尺寸0.75 m×1.5 m,2号靶尺寸1 m×1.2 m。1号、2号靶分别识别出14,58个破片孔,如表2、表3所示识别结果。受纹理影响,2号靶第0、1误识别为孔洞情况。

表2 野外靶破片孔面积与周长测量结果(1号靶)

表3 野外靶破片孔面积与周长测量结果(2号靶)

图10 野外靶实验过程(上图为1号靶,下图为2号靶)

4 结论

为解决野外巨幅金属靶板破片毁伤测量困难,以及野外金属靶绣噪点、金属加工纹理、毁伤区形状不规则等问题,本文设计了一套金属破片靶孔图像识别流程,采用提出了基于均值-中值复合滤波前处理的鲁棒2D-Otsu方法进行抗锈、抗纹理靶板毁伤区分割识别,并提出了基于像素级的领域搜索生长法来高精度测量计算毁伤区面积算法,最后使用铝靶板进行了验证试验,分析证明,本文方法对金属破片靶的毁伤区识别与测量是有效和可行的,实靶试验结果表明本文方法测量精度满足实际工程需求,可低成本部署应用。

猜你喜欢
靶板破片噪点
抽气对HL-2A装置偏滤器靶板热负载的影响研究
水下截卵形弹丸低速侵彻薄钢板的仿真分析
轴向聚焦式预制破片战斗部破片飞散角研究
多层破片战斗部对飞行目标毁伤概率计算方法
浅埋炸药爆炸形貌及其冲击作用效应*
GH4169合金单/双层靶板高温高速冲击数值仿真
破片群作用下复合材料层合板近场动力学损伤模拟*
一种基于LS-DYNA的炮弹破片极限穿透速度仿真方法∗
相机学院
专业降噪很简单!