雷鋒網(wǎng)按:本文作者鄔書哲, 中科院計算所智能信息處理重點實驗室VIPL課題組博士生,研究方向:目標(biāo)檢測,尤其關(guān)注基于深度學(xué)習(xí)的目標(biāo)檢測方法。
本文分上下兩篇,上篇主要介紹人臉檢測的基本流程,以及傳統(tǒng)的VJ人臉檢測器及其改進,下篇介紹基于深度網(wǎng)絡(luò)的檢測器,以及對目前人臉檢測技術(shù)發(fā)展的思考與討論。為了讓本文更適合非計算機視覺和機器學(xué)習(xí)背景的讀者,文中對所涉及到的專業(yè)術(shù)語盡量以通俗的語言和用舉例的方式來進行解釋,同時力求嚴(yán)謹(jǐn),以體現(xiàn)實事求是和一絲不茍的科學(xué)研究精神。
這是一個看臉的世界!自拍,我們要藝術(shù)美顏;出門,我么要靚麗美妝。上班,我們要刷臉簽到;回家,我們要看臉相親。 當(dāng)手機把你的臉變得美若天仙,當(dāng)考勤機認(rèn)出你的臉對你表示歡迎,你知道是什么魔力讓冷冰冰的機器也變得溫情脈脈,讓呆呆的設(shè)備也變得善解人意嗎?今天就讓我們走近它們的內(nèi)心,了解這些故事背后的一項關(guān)鍵技術(shù): 人臉檢測 。
看人先看臉,走在大街上,我們可以毫不費勁地看到所有人的臉:棱角分明的國字臉,嬌小可人的瓜子臉,擦肩而過路人甲的臉,迎面走來明星乙的臉,戴著口罩被遮住的臉,斜向上45度仰角自拍的臉??墒?,對于我們的計算機和各種終端設(shè)備而言,從眼前的畫面中把人臉給找出來,并不是一件容易的事情,原因就在于,一千個讀者就有一千個哈姆雷特,在你的眼里,人臉是這樣的:

而在機器的眼里,人臉是這樣的:

你沒看錯,圖像存儲在機器中不過就是一個由0和1組成的二進制串!更確切地說,機器看到的是圖像上每一個點的顏色值,因此對于機器來說,一張圖像就是一個由數(shù)排成的陣列。試想一下,如果我把每個點的顏色值都念給你聽,你能告訴我對應(yīng)的這張圖像上有沒有人臉和人臉在哪里嗎?很顯然,這并不是一個容易解決的問題。
如果手機沒法在自拍照中找到我們臉,那它就像一個失明的化妝師,沒法展現(xiàn)出我們最好的一面;如果考勤機沒法通過攝像頭看到我們的臉,那我們的笑就只是自作多情,它也根本不可能識別出我們到底是誰。人臉檢測架起了機器和我們之間溝通的橋梁,使得它能夠知道我們的身份(人臉識別),讀懂我們的表情(表情識別),和我們一起歡笑(人臉動畫),與我們一起互動(人機交互)。
人臉檢測的開始和基本流程
具體來說,人臉檢測的任務(wù)就是判斷給定的圖像上是否存在人臉,如果人臉存在,就給出全部人臉?biāo)幍奈恢眉捌浯笮 S捎谌四槞z測在實際應(yīng)用中的重要意義,早在上世紀(jì)70年代就已經(jīng)有人開始研究,然而受當(dāng)時落后的技術(shù)條件和有限的需求所影響,直到上世紀(jì)90年代,人臉檢測技術(shù)才開始加快向前發(fā)展的腳步,在新世紀(jì)到來前的最后十年間,涌現(xiàn)出了大量關(guān)于人臉檢測的研究工作,這時期設(shè)計的很多人臉檢測器已經(jīng)有了現(xiàn)代人臉檢測技術(shù)的影子,例如可變形模板的設(shè)計(將人臉按照五官和輪廓劃分成多個相互連接的局部塊)、神經(jīng)網(wǎng)絡(luò)的引入(作為判斷輸入是否為人臉的分類模型)等。這些早期的工作主要關(guān)注于檢測正面的人臉,基于簡單的底層特征如物體邊緣、圖像灰度值等來對圖像進行分析,結(jié)合關(guān)于人臉的先驗知識來設(shè)計模型和算法(如五官、膚色),并開始引入一些當(dāng)時已有的的模式識別方法。
雖然早期關(guān)于人臉檢測的研究工作離實際應(yīng)用的要求還有很遠,但其中進行檢測的流程已經(jīng)和現(xiàn)代的人臉檢測方法沒有本質(zhì)區(qū)別。給定一張輸入圖像,要完成人臉檢測這個任務(wù),我們通常分成三步來進行:
1.選擇圖像上的某個(矩形)區(qū)域作為一個觀察窗口;
2.在選定的窗口中提取一些特征對其包含的圖像區(qū)域進行描述;
3.根據(jù)特征描述來判斷這個窗口是不是正好框住了一張人臉。
檢測人臉的過程就是不斷地執(zhí)行上面三步,直到遍歷所有需要觀察的窗口。如果所有的窗口都被判斷為不包含人臉,那么就認(rèn)為所給的圖像上不存在人臉,否則就根據(jù)判斷為包含人臉的窗口來給出人臉?biāo)诘奈恢眉捌浯笮 ?p align="center" class="pageLink"> 1/8 1 2 3 4 5 6 下一頁 尾頁