數據準備的完整過程——一站式caffe工程實踐連載(二)

數據準備的完整過程——一站式caffe工程實踐連載(二)

2 人贊了文章

知識引入

這一小節我們將分享數據的準備。在所有機器學習的項目中,數據準備是至關重要的一步,也是第一步。數據的準備將包含以下幾個部分,數據的獲取,數據的清洗與整理以及數據的標註,數據的獲取,一般我們有以下的渠道,開源數據集的獲取,爬蟲獲取,以及我們自己去進行一些採集。但是由於自己採集的效率比較低,所以我們可以優先採用前面兩種渠道,然後是數據的整理,數據的整理工作,這一步尤其重要,它包含統一圖片的格式,統一圖片的命名標準,以及對圖片進行一些去重。對我們需要的圖片進行相應的裁剪。最後是圖像的標註,圖像的標註就是獲取圖像對應的label。

數據獲取

我們使用開源數據集或者使用爬蟲來進行扒取。開源數據集的話,我們現在這裡給大家介紹一個比較常用的數據集:

鏈接地址

mmlab.ie.cuhk.edu.hk/pr

如上圖,celeba這個數據集是香港中文大學湯曉鷗他們實驗室整理的一個圖像領域裡非常有名的數據集,它包含20萬左右的人臉,每一個人臉包含40多個屬性。總體來說它包含不同的姿態,不同的表情,非常適合我們這樣的一個任務,因為它的多樣性非常好。

然後我們介紹一個比較好用的一個爬蟲:

鏈接地址:

github.com/sczhengyabin

上圖這個爬蟲可以爬取google,bing以及百度這三大通用搜索引擎的圖片,每一個搜索引擎大概可以爬到2000張左右的圖片,上面是我們使用人臉嘴唇這樣一個關鍵詞,獲取到一些結果。

數據整理

在我們準備好了數據之後,我們接下來要對這些數據進行一些有效的整理,它包含要統一圖片的格式,重命名以及圖片的去重等一系列的操作,如下圖:

在這裡我不再對上面的這幾個步驟逐一的說明,我給大家提供一個github鏈接,這是我開源的一個github項目。

鏈接地址

github.com/longpeng2008

它上面已經包含了統一格式重命名以及去重的一些腳本,大家可以自行的去follow去使用。

圖像裁剪

最後一步,我們要對圖像進行適當的裁剪。本項目的這個任務是一個對嘴唇進行分割任務,在圖像項目中我們一般會簡化問題,我們沒有必要使用整張的人臉,沒有必要使用帶有非人臉的區域來進行訓練。所以我們需要首先對這個嘴唇區域進行裁剪,裁剪完嘴唇區域之後,我們針對嘴唇區域去訓練一個分割的模型。在使用過程中,我們可以利用其它的方法,先檢測到嘴唇這個區域,然後對這個區域進行分割,這樣可以提高模型的魯棒性,提高模型抗干擾的能力。

具體的方法我們可以先使用opencv的一個人臉關鍵點檢測的開源框架。首先我們可以提取到嘴唇的關鍵點,提取到嘴唇的關鍵點之後,我們可以適當的擴大一下嘴唇的二維區域,這也方便我們後面做一些數據增強的操作。下面就是我們裁剪出來的嘴唇的結果:

我是對嘴唇的區域裁剪了一個正方形.

數據標註

得到了我們訓練數據之後,我們需要對它進行數據的標註。數據的標註,可以使用一些開源工具。labelme是一個非常常用的開源工具,它可以對圖像分割任務、檢測任務等一系列任務進行標註。我們現在是一個圖像分割的任務,如下圖:

所以我們需要的是標註出圖像主體的輪廓,也就是嘴唇的輪廓。如上最終標註的結果就是一張與原圖大小相同的圖片,如下圖:

左圖是我們的原圖,右圖是我們的標註結果。從我們的標註結果可以看出,上嘴唇和下嘴唇我們進行了區分。圖像分割任務本質上是一個逐像素的圖像分類任務,在caffe這個開源框架之中,圖像分類任務的標籤是從0,1,2依次往上疊加。所以我們這個彩色圖肯定是不能直接用的。我們最終要使用的話,必須將這個彩色圖轉化為0,1,2,3這樣的標籤,由於我們的這個圖像任務包含背景上嘴唇下嘴唇,所以我們的標籤會包含0,1,2。至於這個轉化腳本的話,大家可以自己去嘗試編寫。

完整內容及視頻解讀,請微信搜索關注蜂口小程序~??

參與內測,免費獲取蜂口所有內容,更有其他優惠福利多多,,若想獲得內測種子用戶資格,歡迎加微信勾搭,歡迎大家多多參與,盡情挑刺,凡是好的建議,我們都會虛心採納噠~????

我的個人微信:fengkou-IT

蜂口小程序將持續為你帶來最新技術的落地方法,歡迎隨時關注了解~ 轉發轉載請註明出處呦~


推薦閱讀:

體驗自動化機器學習,試試這款能幫你每小時省20刀的新框架
全場回顧 | LiveEdu 應邀參加 2018 中國虛擬現實教育創新大會
無人車系統模擬相關軟體介紹-Carsim
十年前的天才少年,如今的AI黃金一代
論強化學習和概率推斷的等價性:一種全新概率模型

TAG:Caffe深度學習框架 | 深度學習DeepLearning | 人工智慧 |