周保宇, 高樹(shù)輝
(中國(guó)人民公安大學(xué), 北京 100038)
血跡形態(tài)分析(BPA)可以理解為動(dòng)態(tài)血液脫落事件導(dǎo)致的靜態(tài)后果的科學(xué)研究。BPA是繼對(duì)人類的血液進(jìn)行個(gè)體識(shí)別之后發(fā)展起的一門新興的邊緣學(xué)科,常見(jiàn)的血跡形態(tài)可分為被動(dòng)血跡、濺落血跡和變動(dòng)血跡。在暴力事件和命案現(xiàn)場(chǎng)中,血跡痕跡是最常見(jiàn),能直接反映作案活動(dòng)過(guò)程的生物物證之一,對(duì)血跡形態(tài)進(jìn)行分析可以得出出血點(diǎn)的高度,揮灑角度,物體運(yùn)行的速度等關(guān)鍵信息,因此在犯罪現(xiàn)場(chǎng)重建過(guò)程中占有十分重要的地位。血跡形態(tài)分析具有一定的客觀性和科學(xué)性,其結(jié)論已普遍被司法機(jī)關(guān)所接受。傳統(tǒng)的血液形態(tài)分析的方法是先進(jìn)行人工特征提取,再利用一系列的數(shù)學(xué)方法進(jìn)行建模,大致還原所測(cè)血跡的出血點(diǎn)和運(yùn)動(dòng)軌跡,常用的技術(shù)有拉繩法、三角函數(shù)計(jì)算法與繪圖法、計(jì)算機(jī)程序法、公式計(jì)算法[1]。上述的4種方法都是根據(jù)血跡滴落后的形態(tài)特征,用拉線的方法或者直接在計(jì)算機(jī)上繪制出血跡的維度數(shù)據(jù),再使用三角函數(shù)等數(shù)學(xué)公式計(jì)算出血滴滴落時(shí)的高度、角度、速度信息。傳統(tǒng)血跡形態(tài)識(shí)別方法非常實(shí)用,但是存在著測(cè)量誤差和系統(tǒng)誤差,導(dǎo)致檢驗(yàn)效果并不理想。本文引入深度學(xué)習(xí)的思想對(duì)分析的結(jié)果進(jìn)行補(bǔ)充。
人工神經(jīng)網(wǎng)絡(luò)發(fā)展大致經(jīng)歷了3個(gè)高潮時(shí)期:20世紀(jì)40年代~60年代的控制論,20世紀(jì)80年代~90年代中期的聯(lián)結(jié)主義以及Hinton等人在《Science》上發(fā)表文章,提出了深度學(xué)習(xí)具有提取數(shù)據(jù)更加本質(zhì)的特征的能力[2]。2012年,Geoffrey Hinton組的研究人員在ImageNet2012上奪冠[3],他們圖像分類的效果遠(yuǎn)遠(yuǎn)超過(guò)第二名,由此掀起的深度學(xué)習(xí)熱潮一直持續(xù)至今。在刑事科學(xué)技術(shù)領(lǐng)域,圖像識(shí)別技術(shù)員也應(yīng)該乘上這股浪潮,在指紋、步態(tài)、槍彈痕跡、血跡痕跡等圖像識(shí)別方法中利用深度學(xué)習(xí)進(jìn)行補(bǔ)充,將人工特征提取和計(jì)算機(jī)深度學(xué)習(xí)相結(jié)合,逐步完善現(xiàn)場(chǎng)勘驗(yàn)中痕跡物證的檢驗(yàn)工作。本研究利用模式識(shí)別的方法,對(duì)400個(gè)驗(yàn)證樣本分類測(cè)試學(xué)習(xí)。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一種前饋性神經(jīng)網(wǎng)絡(luò),是一種近年來(lái)廣泛被用于圖像識(shí)別領(lǐng)域的高效識(shí)別方法,用于識(shí)別位移,縮放及旋轉(zhuǎn)不變性的二維數(shù)據(jù)[4]。特別是在模式分類領(lǐng)域,由于該網(wǎng)絡(luò)避免了對(duì)圖像的復(fù)雜前期預(yù)處理,可以直接輸入原始圖像,因而得到了更為廣泛的應(yīng)用。
卷積分析數(shù)學(xué)中的一個(gè)十分重要的運(yùn)算,利用卷積核對(duì)一個(gè)圖像進(jìn)行卷積,其實(shí)就是對(duì)圖像進(jìn)行濾波,其數(shù)學(xué)表達(dá)式為:
公式中,P=f(x,y)是所要做卷積運(yùn)算的照片,Q=w(x,y)就是所謂的卷積核,也可以稱為濾波器,響應(yīng)函數(shù)等等,a和b是規(guī)定了卷積核即w(x,y)的大小。
卷積神經(jīng)網(wǎng)絡(luò)是由A.卷積層B.非線性(ReLU)C.池化D.全連接層4部分組成。卷積層的目的就是要從圖像中提取特征。在計(jì)算機(jī)中,每個(gè)圖像都是以一個(gè)數(shù)字矩陣的形式儲(chǔ)存的,無(wú)論是彩色圖像(三個(gè)通道),還是黑白圖像(一個(gè)通道)均由0~255的數(shù)值表示。給目標(biāo)圖像做卷積就是N個(gè)卷積核與圖像進(jìn)行矩陣運(yùn)算,得出N個(gè)特征層,這些特征包括銳化,邊緣提取,模糊等。ReLU在卷積操作之后進(jìn)行,主要目的是在深層網(wǎng)絡(luò)中引入非線性。
因?yàn)榫W(wǎng)絡(luò)要學(xué)習(xí)現(xiàn)實(shí)的圖片都是非線性的,而矩陣運(yùn)算的結(jié)果都是線性的,因此要進(jìn)行ReLU運(yùn)算,常用方法有:
池化的主要作用是減少數(shù)據(jù)的維度,減輕網(wǎng)絡(luò)運(yùn)行負(fù)擔(dān),控制過(guò)擬合,變形保持平穩(wěn)。主要的方式有Max, Average, Sum等。全連接層連著輸出層位于網(wǎng)絡(luò)的終端,用于進(jìn)行結(jié)果分類,如果說(shuō)卷積層、池化層和激活函數(shù)層等操作是將原始數(shù)據(jù)映射到隱層特征空間的話,全連接層則起到將學(xué)到的“分布式特征表示”映射到樣本標(biāo)記空間的作用。
硬件:尼康D7000數(shù)碼照像機(jī),翻拍架,A4紙張,醫(yī)用輸液器,燒杯,卷尺,支架,計(jì)算機(jī),gpu。
軟件:caffe,python。
1.3.1 替代樣本的選取
訓(xùn)練神經(jīng)網(wǎng)絡(luò)需要大量的實(shí)驗(yàn)樣本,考慮到血液的獲取難度大和保存時(shí)間短、易凝結(jié)的問(wèn)題,本實(shí)驗(yàn)選取與血液滴落形態(tài)相近的工業(yè)紅墨水代替血液,經(jīng)過(guò)多次滴落形態(tài)測(cè)試,發(fā)現(xiàn)血滴和紅墨水滴具有高度相似性,兩者滴落形態(tài)對(duì)比見(jiàn)圖1、圖2所示:
圖1 血滴形態(tài)
圖2 紅墨水滴形態(tài)
經(jīng)過(guò)測(cè)試發(fā)現(xiàn)血滴形態(tài)的基本特征與紅墨水水滴極為接近,均具備3個(gè)特征,第一,圓形滴狀形態(tài),為血滴形態(tài)的主體;第二,芒刺部分,反映出血跡濺落的程度;第三,血跡陰影區(qū)域,與血跡滴落的量和時(shí)間相關(guān)。根據(jù)類比推理的思想可得出利用紅墨水代替血液進(jìn)行滴落實(shí)驗(yàn)所得的結(jié)果是具有科學(xué)性的。
1.3.2 樣本分組
實(shí)驗(yàn)選取了2 400張紅墨水靜態(tài)滴落照片,將其分為4組,滴落高度以15 cm為間隔,分別是40 cm,55 cm,70 cm,85 cm,每個(gè)樣本組共計(jì)600個(gè)樣本,其中編號(hào)前500號(hào)用于訓(xùn)練網(wǎng)絡(luò),后100號(hào)用于驗(yàn)證正確率。每組部分實(shí)驗(yàn)樣本如表1。
1.4.1 樣本制作
在醫(yī)用輸液器內(nèi)灌入工業(yè)紅墨水,掛在支架上,調(diào)節(jié)滴落點(diǎn)據(jù)地面的高度為35 cm。為保證每一滴滴落液體的體積壓力相同,調(diào)節(jié)壓力旋鈕,用秒表控制液滴以3秒1滴的速度均勻下落。每個(gè)高度所采集的樣本量在700個(gè)以上后置于翻拍架上,用尼康D7000相機(jī)進(jìn)行拍照,在電腦中進(jìn)行樣本圖片的選取篩檢,每組篩選出600個(gè)優(yōu)質(zhì)樣本,并選取500個(gè)作為訓(xùn)練組,100個(gè)作為驗(yàn)證組。
表1每組部分實(shí)驗(yàn)樣本
1.4.2 網(wǎng)絡(luò)選取
圖3 網(wǎng)絡(luò)層
在神經(jīng)網(wǎng)絡(luò)復(fù)雜度的選取上考慮到實(shí)驗(yàn)的數(shù)據(jù)量一共是2 400張照片,不適合選取層數(shù)多的網(wǎng)絡(luò)。網(wǎng)絡(luò)層數(shù)多自帶參數(shù)就會(huì)多,訓(xùn)練時(shí)會(huì)出現(xiàn)參數(shù)訓(xùn)練不足的問(wèn)題,因此選取層數(shù)比較少的網(wǎng)絡(luò)結(jié)構(gòu):CAFFENET。如圖3,該網(wǎng)絡(luò)層共含有8個(gè)帶權(quán)層,其中包含5個(gè)卷積層和3個(gè)全連接層,最后一個(gè)全連接層的輸出被送到一個(gè)分類為4類的softmax層。在第一二五層后進(jìn)行最大池化操作(MAX Pooling),響應(yīng)歸一化跟在第一二層卷積層后面,ReLU非線性應(yīng)用于每個(gè)卷積層及全連接層的輸出。
網(wǎng)絡(luò)具體工作流程如下:在第一個(gè)卷積層中,使用96個(gè)大小為11×11×3、步長(zhǎng)為4的卷積核,對(duì)大小為227×227×3的訓(xùn)練圖像進(jìn)行濾波之后進(jìn)行響應(yīng)歸一化及池化,其輸出的結(jié)果作為第二個(gè)卷積層的輸入,且利用256個(gè)大小為5×5×48的卷積核對(duì)其進(jìn)行濾波。之后的三層卷積層直接相連,其中沒(méi)有進(jìn)行任何的池化和歸一化操作。第三個(gè)卷積層有384個(gè)大小為3×3×256的核被連接到第二個(gè)卷積層的(歸一化的、池化的)輸出。第四個(gè)卷積層擁有384個(gè)大小為3×3×192的核,第五個(gè)卷積層擁有256個(gè)大小為3×3×192的核。3個(gè)全連接層均有4096個(gè)神經(jīng)元,輸出的結(jié)果被softmax層進(jìn)行4類分類。
隨著網(wǎng)絡(luò)迭代次數(shù)的增加,實(shí)驗(yàn)測(cè)試的準(zhǔn)確率和數(shù)據(jù)的損失值均趨于穩(wěn)定,如圖4圖5所示。迭代次數(shù)在0~100區(qū)間時(shí),準(zhǔn)確率上升幅度大,每個(gè)迭代標(biāo)記點(diǎn)的上升值均約為上個(gè)節(jié)點(diǎn)上升值的兩倍,當(dāng)?shù)螖?shù)達(dá)到約200次時(shí),實(shí)驗(yàn)的準(zhǔn)確率基本達(dá)到平穩(wěn)值。
圖4 準(zhǔn)確率隨迭代次數(shù)的關(guān)系
圖5 損失值與迭代次數(shù)的關(guān)系
隨著時(shí)間增加的實(shí)驗(yàn)結(jié)果繪圖如圖6。
實(shí)驗(yàn)終止于第500次迭代,實(shí)驗(yàn)結(jié)果如圖7所示,其中l(wèi)oss值為0.101 827,accuracy=96.75%,分類結(jié)果比較理想。
圖6 準(zhǔn)確率、損失值與時(shí)間的關(guān)系
圖7 實(shí)驗(yàn)最終結(jié)果
利用深度學(xué)習(xí)的思想進(jìn)行血跡痕跡檢驗(yàn)與傳統(tǒng)方法有著本質(zhì)的區(qū)別,即從人工進(jìn)行特征提取轉(zhuǎn)向計(jì)算機(jī)的神經(jīng)網(wǎng)絡(luò)自己進(jìn)行特征學(xué)習(xí),并隨著迭代次數(shù)的增加不斷優(yōu)化網(wǎng)絡(luò)的各項(xiàng)參數(shù)以達(dá)到最優(yōu)的模型。
本文使用了2 400個(gè)紅墨水滴落樣本進(jìn)行網(wǎng)絡(luò)模型的訓(xùn)練與驗(yàn)證,使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行滴落血跡形態(tài)的高度識(shí)別,滴落間隔為15 cm,高度為40 cm、55 cm、70 cm、85 cm共4組,最終分類的準(zhǔn)確率達(dá)到96.75%,這是傳統(tǒng)血跡形態(tài)識(shí)別方法達(dá)不到的高度。
但是需要注意的是,本次實(shí)驗(yàn)所得出的模型并不可以直接投入于滴落血跡形態(tài)的高度檢驗(yàn)中去,這次實(shí)驗(yàn)的訓(xùn)練集和驗(yàn)證集的數(shù)據(jù)量對(duì)于神經(jīng)網(wǎng)絡(luò)來(lái)說(shuō)還是太少了,雖然在網(wǎng)絡(luò)數(shù)據(jù)的最終結(jié)果中顯示,當(dāng)時(shí)間到達(dá)40秒鐘左右或迭代次數(shù)達(dá)到200次時(shí)驗(yàn)證集的準(zhǔn)確率已經(jīng)趨于穩(wěn)定,但是網(wǎng)絡(luò)的系統(tǒng)參數(shù)因數(shù)據(jù)集少導(dǎo)致訓(xùn)練不足,并沒(méi)有達(dá)到最優(yōu)化,所以不能依靠不成熟的系統(tǒng)參數(shù)進(jìn)行數(shù)據(jù)集的測(cè)試,效果一定會(huì)有很大的誤差。當(dāng)原始數(shù)據(jù)達(dá)到萬(wàn)級(jí)以上的時(shí)候,該網(wǎng)絡(luò)的系統(tǒng)參數(shù)自然會(huì)有質(zhì)的飛躍,可以投入到一般的滴落血跡形態(tài)高度的檢測(cè)中去。
利用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行血跡形態(tài)識(shí)別在流程上可謂與傳統(tǒng)方法截然不同,傳統(tǒng)方法即學(xué)即用,準(zhǔn)備時(shí)間少,但是分析時(shí)的操作時(shí)間較長(zhǎng),當(dāng)出現(xiàn)大量血跡痕跡的現(xiàn)場(chǎng)案件時(shí),偵破流程會(huì)十分復(fù)雜而且準(zhǔn)確率得不到保證。而在卷積神經(jīng)網(wǎng)絡(luò)模式中,均需要大量的前期數(shù)據(jù)準(zhǔn)備,但一旦模型成功建立就可以在數(shù)秒內(nèi)對(duì)已有圖片進(jìn)行分類,并且準(zhǔn)確率可以達(dá)到人工識(shí)別達(dá)不到的高度。