天天看點

[基于tensorflow的人臉檢測] 基于神經網絡的人臉檢測2——FDDB資料集處理

目錄:

1.官網的資料解釋

2.處理資料

3.處理好的資料分享

正文:

1.官網資料解釋

FDDB資料集官網提供了資料以及資料的标注,下面是其中一張圖檔的标注。

2002/08/26/big/img_265

3

67.363819 44.511485 -1.476417 105.249970 87.209036 1

41.936870 27.064477 1.471906 184.070915 129.345601 1

70.993052 43.355200 1.370217 340.894300 117.498951 1

以上标注,官網的解釋是,第一行表示圖檔的名稱。第二行表示這張圖檔擁有的人臉數。因為這張圖檔有三張人臉,是以下面的三行都是對人臉位置的标注;每一行的資料都代表長半軸、短半軸、旋轉角度、中心點x坐标、中心點y坐标、1。

2.處理資料 對于官網提供的資料,首先需要進行人臉以及非人臉的擷取。人臉的标注是橢圓的,但是擷取的時候需要用矩形的方法進行擷取,是以擷取人臉的方式如下,這裡用 major_axis_radius、minor_axis_radius、angle、center_x 、center_y 、1代表官網給出的标注資訊。

centerx = int(float(center_x))
centery = int(center_y))
a = int(float(minor_axis_radius)
b = int(float(major_axis_radius)
x1 = centerx - a
y1 = centery - b
x2 = centerx + a
y2 = centery + b
face_image = image[y1:y2,x1:x2] #注意x y的順序
           

隻需要周遊所有的标注人臉的txt檔案,就可以擷取所有的FDDB資料集人臉圖檔。

對于非人臉圖檔,可以通過裁剪一張圖檔中的非人臉部分。通過設定交并比(與人臉的重疊率,重疊率低于所設門檻值則認為非人臉)擷取非人臉,交并比的定義一般為重疊面積除以總面積。可以随機在一張圖檔上生成矩形框,然後計算交并比,達到要求則獲得非人臉。對于一張圖檔生成幾張非人臉以及随機産生的矩形框大小,完全可以由自己決定,為了友善矩形框通常設定為與人臉矩形框大小一緻。下面展示擷取非人臉程式思想流程圖以友善了解。

[基于tensorflow的人臉檢測] 基于神經網絡的人臉檢測2——FDDB資料集處理

3.處理好的資料分享 下面是我處理得到的人臉以及非人臉資料,另外把人臉分成了訓練集、驗證集以及測試集。有需要的可以下載下傳。

FDDB資料集人臉/非人臉資料

密碼:xm93mk

結語:

如果對你有幫助,就給我一個贊吧,如何有問題,可以在評論區進行讨論。

上一篇:[基于tensorflow的人臉檢測] 基于神經網絡的人臉檢測1——項目介紹

下一篇:[基于tensorflow的人臉檢測] 基于神經網絡的人臉檢測3——WIDER FACE資料集處理