APP下载

基于CT 图像的高聚物黏结炸药颗粒边界勾勒算法

2021-02-03张伟斌骆吉洲姜守旭宗和厚

含能材料 2021年1期
关键词:炸药灰度边界

吴 未,陈 华,戴 斌,张伟斌,骆吉洲,姜守旭,宗和厚

(1.中国工程物理研究院化工材料研究所,四川 绵阳621999;2.哈尔滨工业大学计算机科学与技术学院,黑龙江 哈尔滨150001)

1 引言

三氨基三硝基苯(TATB)基高聚物黏结炸药(Polymer Bonded Explosive,PBX)是一种能量表现优良的钝感耐热炸药,主要由炸药颗粒、黏结剂等组份构成,在压制成型后组份以及这些组份构成的结构是影响炸药整体力学性能的重要因素[1]。通过对压制成型后的TATB 基PBX 内部颗粒边界的精确识别,可进一步开展装药颗粒间界面形变等问题的研究,建立基于真实PBX 材料的计算模型;在构建PBX 宏观本构模型时,PBX 内部颗粒的精确识别可以补充对颗粒和界面的描述,是研究炸药非线性损伤、断裂行为及本构关系理论的重要基础。当前对于TATB 基PBX 颗粒边界识别和提取主要采用计算机层析成像(Computed Tomography,CT)技术,但由于该技术对PBX 炸药的检测能力存在空间与密度分辨水平低、尺寸定量精度较差等问题,客观上造成了CT 图像视野较暗、对比度低、噪声较多等情况[1],进而使现有的图像分割技术无法对颗粒大小、位置、分布等关键数据进行准确的定量表征。

PBX 颗粒的边界勾勒实质是对PBX 炸药的CT 图像进行分割。图像分割一直是计算机视觉领域的研究热点,但是针对PBX 等特殊材料CT 图像的研究相对匮乏。基于深度学习的图像分割算法利用各类卷积神经网络(如FCN[2],U-Net[3],Mask R-CNN[4]),通过大量经过标注的图像来训练模型完成图像分割的任务。而目前PBX 材料CT 图像数量稀少且未经标注,难以满足模型训练的需要。传统的图像分割算法主要包括基于阈值、边缘和区域三类。OTSU[5]为代表的基于阈值的分割算法将各个像素的灰度值与阈值作比较来实现图像分割。这类算法具有简单、高效、应用广泛等特点,但它们仅考虑了灰度值而没有考虑像素的空间分布,有对噪声敏感的缺点。因此,在高噪声的PBX炸药CT图像上直接应用阈值分割算法难以准确提取炸药颗粒边界。

基于边缘检测的分割算法其核心思想是利用微分算子检测灰度值或者结构突变的区域以识别目标边缘进而实现图像分割,有时也利用边缘特征在同一相位具有较高频率来识别目标边缘以完成分割任务[6-7]。这类算法或无法检出连续完整的边缘,或对噪声异常敏感[1],在PBX 高噪声高纹理的CT 图像上难以取得良好的效果。分水岭算法[8]为代表的基于区域的分割算法以寻找和定位分割区域为基础。在低对比度高噪声的PBX 炸药CT 图像上,直接利用经典边缘算子计算轮廓来得到种子点容易导致炸药颗粒边缘分界混乱的问题,难以准确提取PBX 颗粒边界。近年提出的基于超像素的图像分割方法[9]将纹理、颜色和亮度等特征相似的像素视为具有视觉意义的不规则超像素。这种思想分别与阈值分割算法、边缘检测算法和分水岭算法相结 合,产生了SLIC[10]、SEEDS[11]和Waterpixels[12]等图像分割算法。这些算法运用于PBX 的CT 图像边界勾勒时难以确保每个超像素恰好表示一个炸药颗粒内所有像素,使得所勾勒的颗粒边界严重偏离真实情况。

基于上述分析,本研究提出的边界勾勒算法,结合统计学数字特征和二值化方法的弹性胶囊算法以识别图像中每个炸药颗粒对应的唯一种子点,利用选定的种子点调用分水岭算法获得TATB 基PBX 炸药的单像素颗粒边界,最后对单像素颗粒边界进行进一步调整和优化来获得准确清晰的边界勾勒结果。

2 边界勾勒算法

2.1 算法基本思想

TATB 基PBX 炸药CT 图像呈现颗粒内部灰度值低,边界部分灰度值高的特性,如果将灰度图像转变为三维数字高程模型,颗粒内部对应“山谷”,边界部分则对应为“山脊”,与经典分水岭算法[8]的设计思路非常契合。但是经典分水岭算法流程中对于种子点的选取是直接利用Canny 算法[13]检测边缘,依据边缘图寻找和绘制轮廓,生成种子点输入到分水岭算法中。但由于TATB 基PBX 图像质量较差,用该方法寻找的种子点与实际炸药颗粒对应关系混乱,当某个颗粒位置对应多个种子点,则颗粒内部将被分成多个小区域;如果未对应任何种子点,则该颗粒区域将会与其他颗粒粘连。为了解决种子点选取不合理的问题,本文提出基于弹性胶囊的分水岭算法[8]来实现TATB 基PBX 炸药CT 图像上颗粒边界的自动识别和勾勒,该算法的核心思想是将弹性胶囊作为工具,让可以形变的“胶囊”在二值化边界草图中PBX 颗粒间游走,通过分析“胶囊”覆盖下像素的类别确定该位置是否位于炸药颗粒边界以确定与实际炸药颗粒一一对应的子区域,再将子区域作为种子点输入到分水岭算法中完成PBX 颗粒的分割。最后依据弹性胶囊在图像游走时留下的轨迹特征,适当调整分水岭算法输出图像边界的宽度与灰度,得到最终较为清晰准确的炸药颗粒边界图,该算法基本流程如图1 所示,主要包含兴趣区域识别与统计二值化、弹性胶囊算法、边界调整和种子点选取、边界精细化4 个子步骤。

图1 颗粒边界勾勒算法流程图Fig.1 Flowchart of the granule boundary extraction algorithm

2.2 兴趣区域识别与统计二值化

兴趣区域识别是整个边界勾勒算法流程的第一步,旨在从原始图像(如图2a)中提取兴趣区域,排除非主体部分对后续研究的干扰。本研究样品的兴趣区域为图2a 中央圆形内部,边缘退化[14]情况较轻,故直接采用Canny 算法[13],通过高斯平滑和非极大值抑制消除边缘噪声和伪影干扰,识别到准确的兴趣区域边界,再通过Hough 圆变换[15]计算区域圆心和半径,得到最终兴趣区域的准确空间坐标范围,并消除坐标范围外非主体部分的干扰(如图2b)。

统计二值化过程是在兴趣区域图像(如图2b)的基础上,利用图像中炸药颗粒内部与边界的灰度差异,尽可能将兴趣区域中粘结剂边界分离出来,形成一张二值化边界草图。该子过程首先计算兴趣区域内每个像素(i,j)其20×20 邻域内像素的灰度均值m和标准差σ;然后对每个像素点进行判断,若像素(i,j)的灰度值g满足g<m-0.1σ,则判定像素(i,j)位于炸药颗粒内部,设为白色,反之判定为边界,设为黑色;经过上述操作,得到二值化边界草图(如图2c)。

二值化边界草图具有如下特征:(1)由于密度不均和噪声的问题,草图中代表颗粒内部的白色像素并非连续分布而是呈离散团状点云,内部有孔洞;(2)草图存在边界不够平滑、有孤立白色碎点的情况,相邻颗粒的团状点云存在粘连。为了让每个颗粒有且仅有一个闭合子区域与其对应,需要在后续的操作中填充孔洞,消除碎点与粘连问题。

图2 兴趣区域识别与统计二值化过程Fig.2 Procedures of regions of interest identification and statistical binarization

2.3 弹性胶囊算法

为了让每个颗粒都有唯一子区域与之对应,消除团状点云之间的粘连以及碎点是核心的问题,而弹性胶囊算法则是为了解决这一问题,保证分水岭算法种子点选取的合理性而提出。现有的传统图像分割算法都只是从图像本身出发,依据像素的灰度、分布进行图像分割,当图像质量较低时,由于局部的噪声,其他算法无法有效将粘连的PBX 炸药小颗粒划分开。弹性胶囊算法除了图像本身的信息,还考虑了PBX 炸药颗粒压制后类球状的形态,将这个信息作为常识融入到算法中,通过条状“胶囊”的旋转,捕捉颗粒边界语义信息,较好地消除颗粒粘连和碎点的问题。其次,现有的传统图像处理算法对该类别PBX 炸药CT 图像的异常像素点(如噪声点、材料杂质部分)应对的能力不足,灰度或边缘特征在受到异常像素点影响后都会发生变化,从而让结果偏离真实的颗粒分布。而弹性胶囊算法利用胶囊的移动,在分析胶囊覆盖下的颗粒情况时,特别考虑了异常像素点的问题,对异常点有足够的宽容度,所以在低质量PBX 炸药CT 图像中,该算法能有效选取合理种子点,保证了最终输出结果的准确度。

每个弹性胶囊是宽为2W+1 长为L的矩形块,矩形块中每个像素记录其与胶囊最左侧中点的偏移,可以用二维点集C={(x,y)||y|≤W,0≤x<L且x,y∈Z}来保存。弹性胶囊的旋转是围绕其最左侧中点进行的,故称该点为“轴点”(如图3 中红色像素,对应点集C 中(0,0)点)。将胶囊绕轴点逆时针旋转角度α(0°≤α<180°)得到的点集C'={([xcosα-ysinα],[xsinα+ycosα])|(x,y)∈C},图3 中绿色胶囊就是橙色胶囊逆时针旋转45°得到的。本文根据样品特征,选取弹性胶囊宽度范围{5,7,9},长度最大为47,最小为6;通过在0°与180°之间均匀选取16 个角度,对初始胶囊进行旋转,每个初始胶囊将对应16 种不同方向的新胶囊。

图3 胶囊及其旋转示意图Fig.3 Schematic diagram of a elastic capsule and its rotation

在胶囊生成后,按面积从大到小的顺序选取胶囊,二值化草图中的每个像素都要与胶囊经过一轮比较,当像素(i,j)与胶囊进行比较时,就将胶囊“轴点”与像素(i,j)重合,再对胶囊覆盖下的像素进一步分析以确定像素(i,j)的类别。具体像素分析过程如下:(1)统计胶囊覆盖下边界点像素数nResult;(2)统计胶囊覆盖下颗粒内部点像素数nPFrag;(3)统计胶囊覆盖下颗粒内部点构成的连通分支数nFrag;(4)若nResult大于等于20,nPFrag小于等于胶囊面积的1/20,nFrag小于等于5,三个条件若同时满足则当前像素为边界的概率很大,置像素(i,j)的灰度值为128+nResult,同时这三个条件的设定也能接受一定量异常像素点的存在,使算法对噪声不敏感;若三个条件不同时满足,则换用更小的胶囊进行比较;若所有胶囊比较后仍然无法满足条件,则认为该点无法通过,置灰度值为0。经过上述弹性胶囊算法,将会得到一张弹性胶囊边界图(如图4a)。

2.4 边界调整和种子点选取

弹性胶囊算法得到的炸药颗粒粗略边界仍含有一些噪声,为了消除这些噪声对后续操作的影响,需要进行边界调整操作。先计算胶囊轨迹像素(如图4a 中白色区域)的灰度均值m和标准差σ,然后将灰度值小于m-σ/2 的胶囊轨迹像素置为黑色以缩减边界,所得结果如图4b。

图4 弹性胶囊算法和分水岭算法步骤Fig.4 Procedures of the elastic capsule algorithm and watershed algorithm

调整后边界变窄,连通性变弱且边界内部可能存在孤立噪点。利用边界形态学变换在图4b 所示的图像上进行两次开操作和一次膨胀操作,在图中形成多个较为可靠的黑色子区域(如图4c 黑色部分)。其中黑色像素表示炸药颗粒内部,每个炸药颗粒近似与图4c 中黑色子区域一一对应。本研究采用Canny 算法[13]提取黑色子区域的边缘,再依据提取到的边缘绘制每个子区域的轮廓(所得结果如图4d),将每个轮廓内部所包含的独立区域作为种子点,调用分水岭算法[8]产生单像素宽度的颗粒边界勾勒图像(如图4e 所示)。

2.5 边界精细化

边界精细化旨在根据弹性胶囊算法的输出(如图4a),计算单像素颗粒边界(如图4e)中的每个边界像素的粗细权值,并根据权值向外扩张不同的宽度以获得更准确、真实的边界勾勒结果。首先在图4a 中标记单像素边界位置;然后循环地用颗粒内部黑色像素腐蚀图4a 中弹性胶囊的边界,当腐蚀操作到达标记的单像素颗粒边界点(i,j)时将所用循环的轮数roundij作为图4e 中白色边界点(i,j)的权值,如果像素(i,j)两侧腐蚀操作到达时循环轮数不同则保留较大的值;接下来根据所有单像素边界点权值roundij将所有单像素边界点的权值线性映射到[1,3]的集合中得到最终权值weightij,再在图4e中从每个白色边界点依据对应的权值向外扩张1+2weightij个像素,最后再将图像兴趣区域中白色像素的灰度设置成与原始图像(图2a)对应位置一致,产生最终的边界勾勒结果(如图4f)。

3 实验部分

3.1 实验样品与CT 检测

实验样品:TATB 基PBX,样品为等静压成型的PBX 试件经过机械加工后制备成Φ10 mm×10 mm 的圆柱形试件。试验样品的CT 扫描成像实验在nano-Voxel 设备(Sanying Precision Engineering Research Center,Tianjin,China)上展开,如图5 所示。实验所采用的参数为电压100 kV,电流100 μA,单幅投影图采样曝光时间0.3 ms,样品旋转360 度,投影图采样数为1080,检测空间分辨率为15 μm/pixel。

图5 CT 原理示意图Fig.5 Principle of X-ray CT

3.2 不同算法的对比实验

为了分析本研究提出的算法对比现有传统算法的表现,我们选取使用广泛且具有代表性的5 种图像分割算法进行比较。图6a 的Canny 算法和图6b 的相位一致性算法是典型基于边缘的图像分割算法;图6c 的分水岭算法是用途最为广泛的基于区域算法;图6d 的SLIC 算法和图6e 的SEEDS 算法是具有代表性的基于超像素算法;上述算法灵活性强、用途广泛,且分属传统图像分割算法的不同子类别,具有典型性,所以选取了这几个算法作为算法表现的参照。本研究将以上5 种算法与本文提出的算法在PBX 炸药样品图像中运行,实验结果表明:(1)Canny 算法(如图6a)边界识别不完整且噪声严重,相位一致性算法(如图6b)几乎无法识别炸药颗粒边界;(2)直接调用分水岭算法时由于种子点选择不合理,出现了严重的颗粒粘连情况(如图6c);(3)SLIC 算 法(如 图6d)和SEEDS 算 法(如图6e)等超像素图像分割算法的目的是为了降低图像维度以及剔除异常像素点,并不适合直接应用于PBX图像颗粒实例的分割,所以分割结果与颗粒边界差距较大;(4)本文提出的算法由于确保了可以恰当地从颗粒内部选取分水岭算法的种子点,故边界勾勒的效果明显优于其他算法。

3.3 准确性分析

为了定性分析本文提出的算法在TATB 基PBX 炸药CT 图像边界勾勒的表现,我们在样品图像上运行我们的算法,得到的结果如图7,利用图7a 调整得到的算法参数,在该批次其他图像中均有良好的效果(如图7b~7d)。实验结果表明:本研究提出的算法在不同图像上得到了连续且与实际贴合程度较高的边界勾勒结果。同时,依据某一图像情况设定的算法参数,依然可以使得算法在同批次的其他样品图像中有良好的效果,同批次图像数据执行算法时,无需反复针对图像调整参数,具有较高的自动化程度。

图6 各算法在图2a 所示的原始图像上的输出结果对比Fig.6 Comparison of the outputs of different algorithms applied to original image given in Fig.2a

图7 本文提出的算法在不同输入图像上的结果对比Fig.7 Comparison of the outputs of the proposed algorithm applied to different original images

4 结论

(1)通过CT 扫描得到的TATB 基PBX 炸药CT 图像较为模糊,难以获取准确边界轮廓,进而造成分水岭算法种子点选取精度较差,本文提出的基于弹性胶囊的处理流程,可以辅助选取准确的种子点,实验证明,利用弹性胶囊算法选取种子点后,分水岭算法的边界提取精度有明显的提升,其边界提取准确性要明显好于其他具有代表性的5 种传统图像分割算法。

(2)针对TATB 基PBX 炸 药CT 扫描图像 质量较差,通过常用的图像处理算法无法有效提取炸药颗粒边界特征的问题,提出了基于统计数字特征和弹性胶囊的分水岭算法,从PBX 炸药CT 扫描原始图像上可以准确、完整地提取炸药颗粒边界,算法自动化程度较高,能缩减人力成本,有一定的实用价值。

(3)基于弹性胶囊的分水岭算法提高了TATB 基PBX 内部细观结构的表征能力,为进一步研究TATB基PBX 宏观力学性能提供了研究基础。

猜你喜欢

炸药灰度边界
采用改进导重法的拓扑结构灰度单元过滤技术
议论火炸药数字化制造
守住你的边界
拓展阅读的边界
探索太阳系的边界
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
意大利边界穿越之家
Arduino小车巡线程序的灰度阈值优化方案
超细ANPyO/HMX混晶炸药的制备与性能
Al粉对炸药爆炸加速能力的影响