陳 英, 李志勇
(南昌航空大學 軟件學院,江西 南昌 330063)
目標偵測識別在日常生活中很普遍,車站和機場的人臉識別閘門都是采用單目標偵測識別。多目標偵測到海量人臉之后再進行識別的方案可以有效地解決這類問題。對于多目標偵測,當前已有的研究包括:文獻[1]提出了循環卷積神經網絡(RCNN)的處理方案,通過卷積神經網絡(CNN)和支持向量機(SVM)機器學習的方法解決多目標偵測問題;文獻[2]對 RCNN進行改進,提出了Fast RCNN的方法,通過CNN提取特征,然后在特征圖上找到有物體的框,輸入到分類網絡進行分類;文獻[3]對Fast RCNN進行改進,提出了Faster RCNN,將Fast RCNN得到特征圖上的框,輸出到區域選取網絡(region proposal network,RPN)篩選框,再進行分類,加速了網絡的運行速度;文獻[4]提出了SSD方法,在多尺度特征圖上進行偵測,提高了偵測的精度;文獻[5~7]提出了Yolo的方法,尤其是YoloV3在SSD的基礎上,增加了上采樣操作,進一步增加了偵測的精度和速度;文獻[8]提出了多任務級聯卷積神經網絡(multi-task cascaded CNN,MTCCNN),采用圖像金字塔的方法,并采用多任務級聯的方式進行多目標偵測。對于人臉識別,文獻[9]提出了一個損失Triplet Loss,通過加入隔離帶并采用困難樣本訓練的方式進行特征分離;文獻[10]又提出了一個新的損失Center Loss,通過為每一個特征加入中心點的方式,分開特征;文獻[11]提出了一種對SoftMax的改進方法—Arc-SoftMax,即在SoftMax中加入隔離帶,分開特征。
綜上所述,多目標偵測識別的方案很多,但是要將偵測和識別方案很好地結合,是一個很難的問題。本文在多目標偵測中采用了MTCCNN作為主要的方案,并對其網絡模型進行改進,一定程度上加速了網絡偵測速度。對于人臉識別,采用Arc-SoftMax的分特征的方法,將兩種方案很好結合,完成海量人臉的偵測識別。
通過交并比(intersection over union,IoU)對建議框和預測框進行重疊度計算,并作為置信度的計算方法,通過6種情況下的IoU計算,找出一個通用的計算方法。然后采用非極大值抑制(non maximum suppression,NMS)對預測框進行篩選,得到最終目標框。
NMS篩選預測框的步驟如下:
1)首先根據IoU計算出的置信度,對所有的預測框由大到小進行排序,保存每次排序置信度最大框;
2) 用第一個框與剩下所有的框進行IoU計算,如果計算后的IoU的值小于某個閾值,則保留當前框;
3)重復步驟(1)操作,直至沒有框可以比較,最終保留下來的框即為所有的目標框。
圖像金字塔縮放過程如下:
1)通過多次試驗確定一個較好的縮放比例;
2)每次通過縮放比例對原始圖片進行縮放,將縮放后的圖片傳入神經網絡進行特征提取,得到特征圖;
3)直到縮放到圖片的長或寬為提前設定的最小的尺寸,停止縮放。
1)SoftMax原理:在處理多分類問題時,通常會使用SoftMax激活函數作為網絡最后一層分類的激活函數。SoftMax的原理如式(1)所示
(1)
式中Si為激活后的值,ei為第i個值,j為所有向量的個數。
在眾多的分類問題中,常常會使用交叉熵作為損失函數(cross entropy loss),如式(2)所示
(2)
對SoftMax進行改進,計算過程
(3)
對SoftMax進行求導,計算過程
(4)
2)歐氏距離與余弦相似度原理
歐氏距離
(5)
式中X和Y為一個向量,dis(X,Y)為X與Y之間的距離,i為點的個數。
余弦相似度如式(6)、式(7)所示
(6)
(7)

3)Arc-SoftMax原理
本文中以對SoftMax層改進為核心思想進行設計,如式(8)所示為SoftMax的公式,如式(9)所示為對SoftMax的改進,n為個數,s為神經元x和權重w的向量積,θyi為yi的角度,m為隔離帶大小
(8)
(9)
(10)
余距相似度和余弦距離有等價公式
(11)
最終可得
(12)
最終可以得出結論余弦相似度等價于在二范數歸一化后的歐氏距離。通過對原始的SoftMax改進之后,通過加入了一個隔離帶,使得SoftMax的分類效果得到了更好地提升。
本文采用在原始偵測網絡上進行改動,去除對于人臉關鍵點的回歸,并結合遷移學習對人臉進行分類,提取人臉特征。
在偵測數據集中進行使用平移中心點的方式進行增樣處理,具體步驟如下:
1)處理掉異常的人臉框的數據,如人臉框寬高小于12 pix、寬高小于0和框坐標小于0;
2)計算標簽框的中心點坐標,對中心點偏移0.074左右,得到偏移后的人臉框坐標;
3)計算偏移后人臉框與標簽框的IoU值,作為置信度,分別篩選出正樣本、負樣本和部分樣本;
4)對負樣本進行增樣處理,在圖片中人臉框四周提取背景信息作為負樣本,擴充5倍負樣本;
5)將制作好的標簽框坐標保存到.txt文本文件中,共9個.txt文本文件,分別代表3種尺寸,每個尺寸3種樣本標簽。
改進的OMTCCNN的網絡模型如圖1所示。

圖1 OMTCCNN網絡模型
該網絡中總共有3個網絡分別為Proposal Network(P Net)、Refine Network(R Net)和Output Network(O Net)。P Net主要用于對人臉框的初步篩選,篩選出所有框到人臉的框;R Net主要篩選P Net輸出的框,對P Net的框進行篩選,得到更加精確人臉框;最后將R Network得到的框輸入到O Net中進行最終精準的人臉框的回歸,通過這種多任務級聯的方法,通過不斷篩選得到最終的結果,但這個方法下需要多次處理一個問題,因為整個網絡的速度比較慢,可以進行優化。
本文改進如下:
1)P Net、R Net和O Net去除5個特征點的回歸,加速網絡偵測速度;
2)P Net、R Net和O Net中將置信度的激活函數由SoftMax改為Sigmoid;
3)O Net中淺層加入BatchNormal,同時加入Dropout抑制部分神經元,訓練時減緩網絡收斂速度,偵測時增加網絡的推理速度。
本文的偵測數據集來源于香港中文大學多媒體實驗室的CelebA數據集(1)數據集包含202 599張人臉圖片(2)數據集解壓后9.77 GB,壓縮文件大小為700 MB,進行增樣后數據集中包含750萬張圖片。具體數據集屬性如表1。

表1 偵測數據集屬性
如圖1所示為在CelebA數據集下標簽框與OMTCCNN網絡輸出框的對比,圖2(a)所示為CelebA標簽框的效果,可以看到CelebA原始標簽框并不準確;圖2(b)所示為Fast MTCNN網絡輸出的人臉框,比原始標簽框更加貼合人臉,所留的空白也相對減少,可以看出偵測Fast MTCNN基于CelebA數據集的效果已經明顯高于原始標簽效果。

圖2 CelebA數據集下標簽框與網絡輸出框對比
從原始網絡模型OMTCCNN和改進后的網絡模型OMTCCNN進行分析,分別比較偵測網絡中P Net、R Net和O Net的精確率、召回率和網絡運行時間,其結果分別如表2,表3所示。通過對MTCNN與E-MTCNN的精確率和召回率的比較,發現兩個模型的精確率和召回率相差不大,但在偵測時間上卻有區別,優化后的OMTCCNN時間上有一定的提升。

表2 MTCNN下的精確率和召回率

表3 E-MTCNN下的精度和召回率
如圖3和圖4所示分別為SoftMax和Arc-SoftMax下的分類效果。本文將多分類的特征變為二維數據,并將每兩個特征值作為一個點(x,y),顯示在二維直角坐標系中。

圖3 SoftMax十分類效果

圖4 Arc-SoftMax十分類效果
圖3為SoftMax在20,40輪次的分類效果圖,很明顯,SoftMax還沒有把分類分開,是個類的特征還冗雜在一起,分類效果很差。圖4為對SoftMax加入隔離帶的改進方法Arc-SoftMax的效果圖,可以看出:在10,40輪次已經將十分類的特征大致分開,只有中心位置還沒有分離的很明顯;在訓練到213輪次之后,可以看到十分類的中心位置的特征也比較好地分離開。當235,256輪次時,整個特征已經清晰可見。這只是在二維坐標系中的分類效果,而人臉的特征向量有512維度,如果將這些特征放在更高維的坐標系中,特征分離效果將會更好。
FAR表示在不同類之間的錯誤接受的比率,TAR表示在類之間正確接受的比率,FRR表示在類之間的錯誤接受的比率。不同閾值下的FAR與TAR值的對比結果如表4所示,從表中可以看出,隨著閾值的不斷變大,FAR的比率不斷下降,表明將兩個人判別為同一個人的幾率增大;TAR的比率也在不斷的減小,表明同一個人被判別為同一個人的比率也在下降;與TAR相對應的FRR的拒識率就會有所升高。最終可以得出,在FAR為0.042 01時,TAR最高為0.986 3。

表4 相似度閾值下的評測指標
綜上所述,OMTCCNN對多目標偵測時,時間上有所提升,比原模型快了9 %;人臉識別通過對SoftMax的改進Arc-SoftMax的使用,在小范圍人臉識別中可以達到TAR=0.986 3@FAR=0.042 01。
針對多目標偵測識別,對MTCNN偵測網絡進行優化,一定程度上加速了網絡的偵測速度,對人臉識別進行遷移學習,利用CASIA-FaceV5部分人臉數據進行測試結果顯示,對于小范圍人臉有比較好的效果。