王伊琳
(西北政法大学,陕西 西安 710122)
公共场所由于空间限制和人流密度容易频发安全事故,因此做好提前的安全检查非常重要。通常,安检工作需要安检员对乘客及其所携带的物品在X光安检成像系统上进行监督检查,但这样对于整个安检机制来说掺杂太多的主观性,可能造成违禁物品的错检或漏检[1]。另外,随着安检技术的应用普及,安检领域获得的X光安检图像越来越多,由于缺少行之有效的自动化管理方法,使大量的安检图像变成了闲置资源。所以,利用图像处理与模式识别的方法让机器辅助人工实现自动检测分类有着重要的研究价值和实际意义。
绝大多数安检设备都是通过X射线源发出的X射线穿透物体,并反映到探测器上,所以安检图像与普通的可见光谱图像完全不同。不同材质的物体在安检成像系统中会呈现出特殊的颜色分布,如水、酒精、皮革等物体呈橙色,金属、食盐等呈蓝色,聚氯乙烯等混合物呈绿色。另外,X射线具有很好的透射性,被检测物体的细微结构均可以在成像系统中清晰地显示出来,因此X光安检图像同时具有丰富的局部细节信息。
基于上述内容,笔者利用描述图像局部细节变化的纹理特征结合颜色特征来对X光安检图像进行描述,构建图像的自适应模糊颜色模板,然后结合高斯金字塔和中值二值模式(Median Binary Pattern, MBP)算子[2],以求让机器有效利用X光安检图像的颜色信息、纹理特征和多尺度等特点对输入的测试图像进行检测分类。
传统的局部二值模式(Local Binary Pattern, LBP)算子是以中心像素作为阈值与邻域像素进行比较,在一定程度上忽略了邻域像素之间的灰度变化规律。针对这一问题,本文利用以邻域像素的中位数作为阈值的MBP算子。MBP算子仍使用传统LBP算子3×3的像素邻域,它是将邻域像素的中位数作为阈值,并逐一与邻域像素进行比较,邻域像素灰度值大于阈值的记为“1”,小于阈值的记为“0”,其公式定义如下:
式中,L表示邻域像素的个数,gp表示像素的灰度值。由此可以得到一串二进制编码,将获得的二进制编码转化为十进制数作为中心像素的MBP值。以此类推,可以得到整幅图像的MBP模式。
金字塔是一种非常直观的图像多尺度的表达形式,可以通过构建图像金字塔实现对图像多尺度的表达[3]。金字塔模型一般包括两个步骤:①用一个低通滤波器对图像进行平滑;②对平滑后的图像进行抽样或插值,这样可以得到一系列尺寸放大或缩小的图像。靠近金字塔底层的图像尺寸较大,分辨率较高,对应精细的尺度,能够反映图像中的细节;随着金字塔的逐层上移,图像的尺寸和分辨率都在降低,对应粗的尺度,包含图像中的主要特征信息。在构造图像金字塔的过程中,常用的滤波器有高斯滤波器、高斯差分滤波器和小波多尺度滤波器,本文实验将采用高斯滤波器。
X光安检图像往往会因为物体的摆放位置、物体之间的遮挡造成同一物体存在多尺度的图像,所以为了对图像特征进行多尺度的表达,本文将在安检图像上提取包含3个尺度的高斯金字塔,然后在每一层的图像上提取MBP特征,进而得到安检图像的多尺度特征。
红、绿、蓝是三原色,图像处理中的其他颜色空间都是通过RGB颜色空间转换而来的,生活中用到的电子显示屏、监控器等硬件显示设备也都是通过RGB颜色空间的方法来显示,可见在图像处理中RGB颜色空间是最为基本的颜色空间,任何一幅图像的颜色信息都可以通过不同权重的R、G、B分量来显示,所以本文将R、G、B三个通道的分量作为表征安检图像颜色信息的模板。
颜色直方图能够反映在一个图像区域中各种颜色所占的比例,首先对X光安检图像在RGB颜色空间中进行颜色直方图分析,颜色直方图的纵轴代表颜色分量中像素点出现的频数,横轴代表RGB颜色空间[0,255]的亮度范围,在颜色直方图中选取亮度较大的范围[150,255],分别统计R、G、B三个通道在这个亮度范围的像素个数,不同材质物体的X光安检图像可以得到不同的频数值,这个频数值能够反映图像中哪种通道的颜色占的比例大,例如在手机、电脑的安检图像中G通道和B通道所占的比例更大,而在液体的安检图像中R和G通道所占的比例更大。最后从大到小为每个通道分配权重值来构造自适应模糊颜色模板,经过大量实验,权重值依次取为0.45,0.35,0.2时,效果最好。
自适应模糊颜色模板能够在图像检测分类时自动分析并利用主要的颜色信息,在得到X光安检图像的自适应模糊颜色模板后,首先在自适应模板上提取包含3个尺度的高斯金字塔构成图像的多尺度空间,然后提取图像在每一个尺度上的MBP特征,对高斯金字塔进行MBP特征提取的同时也获得了图像在不同尺度下的纹理特征,以一幅液体的X光安检图像为例,实验的总算法框图如图1所示。
图1 基于自适应模糊颜色模板的多尺度纹理提取算法框图
下一步对图像进行8×8分块,然后统计每一个子块上的MBP算子直方图,级联所有子块的直方图特征输入词袋模型中,构造特征词典,统计并生成视觉单词直方图,最后训练SVM分类器进行检测分类实验。
(a)标记为“手机”的X光安检图像
(b)标记为“液体”的X光安检图像
(c)标记为“电脑”的X光安检图像
整个实验过程包含训练和测试两个阶段,从现有的X光安检图像数据库中选择3类图像作为实验样本,分别是手机安检图像、液体安检图像和电脑安检图像,共435幅图像。将它们的尺寸大小统一转化为200×200,其中285幅作为训练样本,人工标记分为3类:手机、液体、电脑,每类95幅图像,剩下的150幅图像作为测试样本,同样包含3类:手机、液体、电脑,每类50幅图像。图2给出部分训练样本的示例图像。
为验证本文算法的有效性,实验结果给出了分类的混淆矩阵,如图3所示,从矩阵中可以看出,“液体”的分类识别率达到1,没有错误的分类;“电脑”正确的分类识别率为0.98,其中0.02被分类为“手机”;“手机”正确的分类识别率为0.94,其中0.06被分类为“电脑”。
图3 混淆矩阵
同样地,将混淆矩阵中错误的分类识别率对应到测试图像中,如图4所示,其中图4(a)、图4(b)、图4(c)是“手机”图像,但被错误地分类为“电脑”图像,图4(d)是“电脑”图像,但被错误地分类为“手机”图像。通过分析错分的实验结果可以看出,由于“手机”和“电脑”X光安检图像的颜色特征与纹理特征比较相似,从而造成了机器的错分。
(a)手机 (b)手机 (c)手机 (d)电脑
通过实验分析,本文算法利用X光安检图像的颜色、纹理、多尺度等特点,有效地对包含不同类别物体的X光安检图像进行自动检测分类,且算法能够获得较高的检测分类率。