胡紫薇,項 安,陳奕杰
(同濟大學 電子與信息工程學院, 上海 201804)
近年來,機場、地鐵、車站等區(qū)域對于液體危險品的安全檢查越來越重視,由于這些區(qū)域人口密集,一旦被不法分子利用將產(chǎn)生難以預料的后果。然而,實際的液體一般是多種液體的混合物,混合物的配比不同,容器的形狀、材料、在安檢機中的位置不同均會導致識別結果精度偏低,誤報率和漏報率較高。
現(xiàn)階段利用X射線安檢技術對固體爆炸物的識別技術取得了極大的突破。SAMET等[1]提出了利用X射線安檢設備,基于深度神經(jīng)網(wǎng)絡對行李的X射線圖像進行特征提取后實現(xiàn)分類,成功檢測出手槍、管制刀具等危險物品;ANDRE等[2]提出了利用雙能量CT安檢設備,基于三維模型重構計算行李中任何區(qū)域的原子序數(shù)和密度信息,實現(xiàn)物質(zhì)分類,識別諸如金屬、毒品、爆炸物等危險品。
對于固體危險品的檢測方法已日漸完善,識別準確率非常高,但是在液體危險品檢測方向上還存在著諸多問題。Optosecurity公司提出了通過知識庫去除傳送帶和玻璃壁的影響,基于數(shù)學模型計算有效路徑對液體進行識別[3],但是由于容器形狀不一,在行李中的位置難確定,容器材料與厚度對識別結果的影響,檢測結果并不精確。李文博[4]提出在靜態(tài)條件下對危險液體進行區(qū)分,該方法僅針對靜態(tài)放置被檢品,且未提出去除容器影響的方案;王宇石等[5]提出MMA算法可對圓形或橢圓形容器盛放的高密度危險液體實現(xiàn)識別,但需要多個光源來實現(xiàn)高識別率;查艷麗[6]在此基礎上提出對液體容器材料的識別算法,為實現(xiàn)液體檢測去除容器影響提供了一定的借鑒。
筆者利用現(xiàn)有雙能X射線安檢機,基于圖像深度學習,提出了一種去除容器壁厚的數(shù)學模型,計算容器吸收系數(shù),并利用圖像處理方法獲得精準的容器定位,采用支持向量機和邏輯回歸模型實現(xiàn)R值分類,完成對液體危險品的識別,此方法能夠提升安檢效率與識別精度。
雙能X射線安檢機主要由射線源和陣列探測器組成。由一列探測器收集線性的扇形X射線穿透物體后的衰減信號組成單個列陣,經(jīng)由傳送帶及采集率匹配得到行程矩陣數(shù)據(jù)信息,處理后由灰度信息形成偽圖像。由于被檢測物體的密度與厚度不同,形成圖像的灰度值也不同。對于單能系統(tǒng),只能通過圖像中物體形狀來判斷。而對于雙能系統(tǒng),則可以利用高低能數(shù)據(jù)圖像得到R值,從而計算得到物質(zhì)的有效原子序數(shù)Zeff的信息,實現(xiàn)物質(zhì)鑒別。
假定入射X射線束能量為I0,通過厚度為H的物質(zhì)后其衰減為I。經(jīng)過簡化后,其關系表現(xiàn)為Beer-Lambert定律[7]
(1)
式中:μm()為坐標為處物質(zhì)的質(zhì)量吸收系數(shù);ρ()為物質(zhì)的密度。
對式(1)進行變換得到X射線透視成像公式為
(2)
式中:L為射線穿透的有效長度。
將X射線透過混合物等效為通過N份均勻的不同物質(zhì)(見圖1),那么式(2)可以表示為
圖1 雙能X射線安檢機結構示意
(3)
根據(jù)式(3)可以發(fā)現(xiàn)X射線穿透物質(zhì)的吸收強度由物體長度和透射厚度決定。
X射線穿透物質(zhì)等效示意如圖2所示,高低能圖像的物質(zhì)厚度相抵消??梢缘玫絉值計算公式如式(4)所示。
圖2 X射線穿透物質(zhì)的等效示意
(4)
這種方法即目前安檢機區(qū)分有機物、無機物和混合物的方法[8]。
通過高低能數(shù)據(jù)得到被檢液體等效的R值之后,根據(jù)式(5)得到有效原子序數(shù)Zeff,從而完成對液體的識別。
Zeff=a·exp(α·R)+b·exp(β·R)
(5)
式中:a=-6.596X105,b=4.685,α=-9.815,β=0.678 3。這4個常數(shù)的取值為經(jīng)驗值。
根據(jù)式(4)和式(5),可以得到X射線安檢機檢測危險品是通過高低能數(shù)據(jù)得到等效的R值,或者通過擬合曲線得到有效原子序數(shù)Zeff,實現(xiàn)物質(zhì)分類的[9-13]。但是,這種方法在檢測液體危險品時需要經(jīng)過一定的改進。因為液體一般被盛放于容器中,容器的材料、壁厚等對高低能數(shù)據(jù)的影響將會直接影響到對液體物質(zhì)的分類。所以,提出如下的一種理想狀態(tài)下的算法模型,盡可能剔除容器的干擾,得到液體的高低能數(shù)據(jù)與R值。
假定不考慮空氣、傳動帶等因素的影響,將容器壁假定為均一、厚度相等的材料,將容器中的待檢測液體也視為均勻的?;谝陨系睦硐牖僭O,可以將整個待檢測物體的吸收強度等效為
A=μbottleLbottle+μliquidLliquid
(6)
式中:A為吸收強度;μbottle為容器的吸收系數(shù);Lbottle為射線穿過容器的有效長度;μliquid為液體的吸收系數(shù);Lliquid為射線穿過液體的有效長度。
只要能夠求得μbottle,Lbottle的值,即可得到液體的相關參數(shù)并實現(xiàn)識別。
對于X射線源發(fā)出的一條X射線,其在穿過容器壁后,通過待檢測液體,再穿過容器壁到達直線上的陣列探測器接收點。此種理想狀態(tài)下的數(shù)學模型如圖3所示。
圖3 理想狀態(tài)下的數(shù)學模型
對于射線源發(fā)出的兩條射線S1與S2,在分別經(jīng)過有效長度為L1與L2的物質(zhì)吸收后被探測器接收。通過分析最終的成像信息,可以推算得到S1與S2對應的探測的實際位置(x1,y1),(x2,y2)。
假定X射線源處正上方的傳送帶為坐標軸原點,那么對于S1和S2分別有
(7)
(8)
(9)
(10)
將式(9)與式(10)代入式(7)與式(8),化簡得到
AS1cosα1=2dμbottle+μliquidHliquid,S1
(11)
AS2cosα2=2dμbottle+μliquidHliquid,S2
(12)
式中:Hliquid,S1,Hliquid,S2為射線穿過液體的有效長度在垂直方向上的投影。
由于傳送帶的運動與慣性的存在,一般情況下,Hliquid,S1≠Hliquid,S2。
對式(11)與式(12)進行差分得到
AS1cosα1-AS2cosα2=μliquidΔHliquid
(13)
由式(13)可以發(fā)現(xiàn),通過差分可以消除容器壁對液體R值的影響。對高低能圖像同時進行差分處理,后通過高低能數(shù)據(jù)相除可以得到理想狀態(tài)下液體R值的求解方法為
(14)
根據(jù)式(14)即可得到液體R值,再根據(jù)式(5)可得到液體的有效原子序數(shù),實現(xiàn)對危險液體的識別分類。
2.1.1 圖像噪聲分析與平滑處理
在X射線穿透被檢測液體的過程中,會存在暗電流產(chǎn)生的噪聲、探測器之間相互接收產(chǎn)生的噪聲、系統(tǒng)的噪聲等干擾。若不對噪聲進行前期處理,會影響容器定位的效果。
對于暗電流產(chǎn)生的噪聲,采集射線源關閉時的圖像,對其進行列均值處理,得到的值可以近似認為是每個探測點的暗電流數(shù)據(jù)。在通過被檢測液體時,將得到的雙能圖像減去暗電流數(shù)據(jù),即可排除暗電流噪聲的干擾[14]。對于其他噪聲,可采用中值濾波的方法濾除。
2.1.2 圖像二值化處理
圖像二值化處理是為了減少圖像的冗余信息,對圖像進行輪廓清晰化處理而進行的步驟。二值化處理的基本原理是設定一個閾值,將高于該閾值的像素點設為1,小于該閾值的像素點設為0,從而達到過濾不相干信息,突出所需被檢物輪廓的目的。
在危險液體檢測中,一般方法的處理結果顯示仍有較多的不相干背景殘留,無法得到較好的容器輪廓。在上述理論基礎上,筆者提出一種基于R值的圖像二值化處理方法,以盡可能多地濾除背景的影響。
基于R值的二值化處理方法為:首先,在不放置任何待檢測物的狀態(tài)下,得到“亮場圖片”數(shù)據(jù),對其進行列均值處理后,以得到的數(shù)值作為每個探測點的滿載數(shù)據(jù)。然后,通過盛有被測液體的容器,得到被測物的高低能圖像數(shù)據(jù),根據(jù)式(4)將其分別除以對應的滿載數(shù)據(jù)后,進行對數(shù)變換再相除可以得到R值圖像。通過選取合適的R值可以突出液體容器的信息,剔除其他不相關信息。
基于R值的二值化處理結果如圖4所示,通過對圖4的分析可以發(fā)現(xiàn),基于R值的二值化算法能夠有效地濾除與液體容器無關的信息(如尺子等),保留所需物體信息。
圖4 基于R值的二值化處理結果
2.1.3 圖像形態(tài)學處理
基于R值的二值化處理雖然能夠有效地剔除無關信息,得到液體容器信息,但是也導致了圖像出現(xiàn)缺失和存在多余點,甚至部分圖像未能連接在一起。為了更好地實現(xiàn)容器定位,在圖像二值化后進行形態(tài)學處理,以減小空隙和去除多余信息點。對二值化處理后的圖像迭代4次腐蝕操作,再迭代4次膨脹操作,最后進行融合操作,能夠保留較多的有用信息,并去除不必要的信息。
一般的圖像識別問題中,通常采用如圖5(a)所示的邊界矩形框實現(xiàn)目標物體的查找,但是對于液體識別來說,其無法實現(xiàn)等厚度截面下的分析,所以采用如圖5(b)所示的最小外接矩形的方法實現(xiàn)容器定位。
圖5 矩形框方案示意
在簡單場景下進行試驗可以發(fā)現(xiàn),最小外接矩形的方案對經(jīng)過二值化和形態(tài)學處理后的液體容器的定位準確性較高(見圖6)。
圖6 簡單場景下最小外接矩形試驗方案
在基于去除容器壁厚的數(shù)學模型方法進行處理后,不同液體的R值仍存在交叉,需要對其采用邏輯回歸模型與支持向量機模型進行分類。
對于分類模型,為了避免參數(shù)在訓練過程中過擬合的現(xiàn)象,在訓練過程中會隨機選取80%的數(shù)據(jù)作為訓練集,20%的數(shù)據(jù)作為驗證集。在訓練邏輯回歸模型上,首先在訓練集上訓練迭代幾次,得到一個模型參數(shù),再通過得到的模型參數(shù)對驗證集進行判別,并將判別結果反饋給模型,模型通過梯度下降的方法對參數(shù)進行迭代優(yōu)化。執(zhí)行以上步驟多次,得到一個較為理想的模型參數(shù)作為邏輯回歸的參數(shù)值。對于支持向量機,因為模型是基于數(shù)學方法求解的唯一值,因此不需要進行梯度下降的方法優(yōu)化。但為了能夠與邏輯回歸模型訓練的結果進行比對,因此在選取數(shù)據(jù)中,選取同等訓練數(shù)據(jù)值優(yōu)化支持向量機。
圖7為邏輯回歸模型、線性SVM(支持向量機)以及非線性SVM在兩個γ值(支持向量機選擇高斯核函數(shù)作為內(nèi)核的一個參數(shù))下,二維數(shù)據(jù)(低能數(shù)據(jù)、R值)的分類結果。由圖7可以直觀地看出,支持向量機的分類效果在本該試驗采集的樣本內(nèi)比邏輯回歸模型的效果更好,且對于非線性模型進行非線性描述有更好的顯示結果。
圖7 分類模型可視化結果
危險液體識別事件是一個二分類問題,其檢測結果存在4種情況,即TP(True Positive),F(xiàn)P(False Positive),F(xiàn)N(False Negative),TN(True Negative)。TP是指將危險液體正確識別;FP是指將危險液體錯誤識別為非危險液體;FN是將非危險液體錯誤識別為危險液體;TN是正確識別非危險液體。假定危險液體判定為1,非危險液體判定為0,該4種情況如表1所示。
表1 二分類問題判定情況
表中FN為誤報情況,F(xiàn)P為漏報情況。查準率=TP/(TP+FP),代表在所有判定為1的樣本中實際為1的正確率。查全率=TP/(TP+FN),代表所有實際為1的樣本中被判定為1的正確率。
通過查準率和查全率可以得到PR曲線(查準率-查全率曲線),查準率與查全率一般呈負相關,即一個指標高時另一個指標偏低。所以,根據(jù)PR曲線包圍的面積大小可以定性判斷結果的準確性。定義該面積為AP,AP越大,表明判定準確率越高。如圖8所示,邏輯回歸模型的AP值小于支持向量機。
圖8 不同模型PR曲線對比
ROC曲線(Receiver Operating Characteristic Curve,接收者操作特征曲線)利用混淆矩陣派生假正率和真正率兩個度量,并用這兩個度量作為橫縱坐標,生成ROC空間。其中,ROC曲線下方面積值為分類模型的AUC(ROC曲線下的面積)值。在模型評比中,通常利用AUC作為衡量分類器性能的度量,隨機效果對應的AUC值為0.5,若數(shù)值小于0.5,需要考慮數(shù)據(jù)之間清洗以及替換其他模型,AUC值越接近1,就表示對應的分類模型的效果越好。不同模型和ROC曲線如圖9所示,邏輯回歸模型的AUC值小于支持向量機模型的。
圖9 不同模型ROC曲線對比
液體識別算法流程圖如圖10所示,在對得到的雙能X射線高低能圖像進行濾波、二值化、形態(tài)學處理后,獲取液體容器的最小外接矩形,然后根據(jù)高低能數(shù)據(jù),利用R值識別算法,對無托盤等遮擋物場景下的危險液體進行識別。設置了兩種場景,其識別信息如表2所示。
圖10 液體識別算法流程圖
表2 無遮擋物場景識別信息
簡單場景識別結果如圖11所示(自上而下分別為容器1,2,3,4,紅色邊框表示識別為危險液體)。
圖11 簡單場景識別結果
對市面上存在的U型探測器和L型探測器分別進行779次和740次采樣(總計1 519次采樣數(shù)據(jù)),采用兩種模型和R值分類模型進行評估,得到的評估結果如表3所示。
表3 各種分類模型評估結果
根據(jù)表3,可以發(fā)現(xiàn)支持向量機模型對雙能X射線危險液體的識別表現(xiàn)較好,能夠實現(xiàn)較高的識別準確度,精確度能夠達到80%以上。
根據(jù)圖11可以發(fā)現(xiàn),筆者提出的數(shù)學模型可以在一定程度上去除容器壁厚對識別結果的影響,經(jīng)過中值濾波、二值化、形態(tài)學處理后,根據(jù)高低能圖像能夠利用最小外接矩陣得到液體容器的精確定位,從而得到液體的R值的原理,實現(xiàn)了對液體的識別。支持向量機模型和邏輯回歸模型均能夠利用物體的三維信息(高能、低能、R值)對液體進行特征提取后分類,而支持向量機模型對于文章研究的對象具有更好的分類效果。
然而,去除容器壁厚的方法是在容器壁厚均勻的前提下建立的,對于不均勻壁厚的容器容易出現(xiàn)誤檢、漏檢,而現(xiàn)實中極有可能存在壁厚不均勻的情況,在此方面需要進一步完善模型。另外,由于現(xiàn)實中液體容器所處的環(huán)境復雜,其他物體的遮擋對于判別結果的影響也需要作進一步考慮。