摘要:整個(gè)工程中應(yīng)用了深度學(xué)習(xí)框架來(lái)建立識(shí)別人臉的神經(jīng)網(wǎng)絡(luò),和一個(gè)網(wǎng)絡(luò)攝像頭用來(lái)捕捉老板的人臉。所以,我用和編寫(xiě)了一段裁剪人臉圖像的腳本,代碼在這里下載偷拍到的人臉圖像比我之前設(shè)想的更清楚識(shí)別人臉圖像接下來(lái),要用機(jī)器學(xué)習(xí)教會(huì)電腦識(shí)別老板的臉。
深度學(xué)習(xí)如果上班的時(shí)候想放松一下,或者直說(shuō)想偷偷懶,看點(diǎn)和工作無(wú)關(guān)的網(wǎng)頁(yè),這時(shí)候萬(wàn)一老板突然出現(xiàn)在背后,會(huì)不會(huì)感到很難堪呢?
有的瀏覽器設(shè)置了boss按鍵,手快的人還可以切換屏幕,不過(guò)總會(huì)顯得不自然,而且經(jīng)常搞的手忙腳亂的。
一個(gè)日本程序員決定自己動(dòng)手,編寫(xiě)一個(gè)一勞永逸的辦法,我們來(lái)看看他是怎么實(shí)現(xiàn)的吧~
思路很直接:用網(wǎng)絡(luò)攝像頭自動(dòng)識(shí)別在工位通道走過(guò)的人臉,如果確認(rèn)是老板的話(huà),就用一張寫(xiě)滿(mǎn)了代碼的截圖覆蓋到整個(gè)屏幕上。 整個(gè)工程中應(yīng)用了Keras深度學(xué)習(xí)框架來(lái)建立識(shí)別人臉的神經(jīng)網(wǎng)絡(luò),和一個(gè)網(wǎng)絡(luò)攝像頭用來(lái)捕捉老板的人臉。
任務(wù)是這樣的:
當(dāng)老板接近我的工位時(shí),電腦就會(huì)自動(dòng)切換屏幕
辦公室的情況如下:
從老板的座位到我的座位大約6~7米,他會(huì)在離開(kāi)座位后4到5秒鐘到達(dá)我的座位,因此,需要在這之前隱藏屏幕,所以時(shí)間比較緊迫。
策略
首先需要讓電腦完成對(duì)老板面部的深度學(xué)習(xí)。然后在我的辦公桌上擺上一個(gè)網(wǎng)絡(luò)攝像頭,讓攝像頭對(duì)著通道,當(dāng)網(wǎng)絡(luò)攝像頭捕捉到老板的臉時(shí)就切換屏幕。
嗯,這是一個(gè)完美的項(xiàng)目。先取一個(gè)好名字,就叫Boss Sensor(老板探測(cè)器)好了。
Boss Sensor的簡(jiǎn)單結(jié)構(gòu)圖如下:
處理過(guò)程分為三步:
網(wǎng)絡(luò)攝像頭實(shí)時(shí)拍攝圖像
學(xué)習(xí)模型檢測(cè)和識(shí)別所拍攝圖像的人臉
如果識(shí)別結(jié)果是老板則切換屏幕
所需要的技術(shù)實(shí)現(xiàn)只有三項(xiàng):
拍攝人臉圖像
識(shí)別人臉圖像
切換屏幕
一步步完成之后整合就可以了。
拍攝人臉圖像
首先找一個(gè)網(wǎng)絡(luò)攝像頭,我用的是BUFFALO BSW20KM11BK攝像頭,大家隨便找個(gè)清晰度夠的就可以了。
較好不要用相機(jī)自帶的識(shí)別軟件裁剪人臉,因?yàn)楹竺娴纳疃葘W(xué)習(xí)過(guò)程還需要處理。所以,我用Python和OpenCV編寫(xiě)了一段裁剪人臉圖像的腳本,代碼在這里下載>>>
偷拍到的人臉圖像比我之前設(shè)想的更清楚
識(shí)別人臉圖像
接下來(lái),要用機(jī)器學(xué)習(xí)教會(huì)電腦識(shí)別老板的臉。
我們需要以下三個(gè)步驟:
采集圖像
圖像預(yù)處理
建立機(jī)器學(xué)習(xí)模型
讓我們一個(gè)接一個(gè)看一下。
采集圖像
首先,需要收集大量的圖片供電腦學(xué)習(xí)。一般來(lái)說(shuō)有三種大量收集圖片的方法:
谷歌圖片搜索
Facebook的圖像采集
從視頻里截圖
一開(kāi)始,我像電影里的特工一樣收集了各種搜索引擎上的老板照片,還有Facebook上老板自己上傳的照片,但說(shuō)實(shí)話(huà),沒(méi)有收集到足夠的圖像。所以,反正老板就在身邊,我就簡(jiǎn)單粗暴的拍攝了一段他的視頻,然后把視頻分解成大量的圖像。
圖像預(yù)處理
現(xiàn)在我有很多人臉圖像了,但還不能拿它們來(lái)建立學(xué)習(xí)模型,必須要裁剪掉與臉部不相關(guān)的部分。
我使用ImageMagick來(lái)提取人臉,你可以用別的圖像軟件來(lái)做。
總之,最后我收集了大量的人臉圖像,就像這樣:
估計(jì)我是全世界擁有最多老板頭像的人了,肯定比他爸爸媽媽要多的多。
現(xiàn)在可以準(zhǔn)備機(jī)器學(xué)習(xí)了。
建立機(jī)器學(xué)習(xí)模型
Keras框架用來(lái)建立卷積神經(jīng)網(wǎng)絡(luò)和神經(jīng)網(wǎng)絡(luò)培訓(xùn)。Tensorflow用來(lái)寫(xiě)Keras的后端。如果只識(shí)別臉部的話(huà),可以調(diào)用一些Web API比如微軟的Computer Vision API,但這次我決定自己來(lái)實(shí)現(xiàn),因?yàn)檫@個(gè)項(xiàng)目需要確保實(shí)時(shí)性。
網(wǎng)絡(luò)體系結(jié)構(gòu)大體如下,Keras非常方便,它可以很輕松的輸出這樣的結(jié)構(gòu):
至此,只要老板出現(xiàn)在攝像頭中,我就可以識(shí)別出他來(lái)了。
切換屏幕
最后一步,很簡(jiǎn)單,學(xué)習(xí)模型識(shí)別出老板的臉之后,把電腦屏幕換掉就好了。
我是程序員,所以我準(zhǔn)備了這樣一張圖:
電腦上只顯示這張圖片,這樣就可以假裝我在認(rèn)真工作了。
這張圖需要全屏顯示,所以我調(diào)用了PyQt庫(kù),代碼在這里下載>>>
一切工作都完成了。
成品
最后把分別實(shí)現(xiàn)的技術(shù)整合起來(lái)并驗(yàn)證,真的成功了!
“現(xiàn)在老板離開(kāi)了座位,正走向我的工位。”
“OpenCV已經(jīng)檢測(cè)出人臉,將人臉圖像發(fā)送給學(xué)習(xí)模型?!?/p>
“學(xué)習(xí)模型認(rèn)出了他,屏幕自動(dòng)切換。ヽ(‘ ?‘ )ノ”
源碼
這就是我的Boss Sensor,全部的源碼都放在github上了,可以在這里下載>>>
總結(jié)
結(jié)合網(wǎng)絡(luò)攝像頭的實(shí)時(shí)圖像采集和Keras深度學(xué)習(xí)框架,確實(shí)可以完成人臉識(shí)別。
在實(shí)踐過(guò)程中,我發(fā)現(xiàn)OpenCV的圖像精度不夠高,雖然不影響識(shí)別,但我準(zhǔn)備改用Dlib來(lái)提高精度,另外我想自己編寫(xiě)人臉檢測(cè)訓(xùn)練模型。
網(wǎng)絡(luò)攝像頭獲取的圖像不夠清晰,我準(zhǔn)備換個(gè)攝像頭。
唉,坑還是越挖越深啊~
End.
歡迎加入本站公開(kāi)興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/4443.html
摘要:深度學(xué)習(xí)的天賜和詛咒上面那個(gè)新學(xué)生的例子,其實(shí)很形象的表述了深度學(xué)習(xí)的特性。自動(dòng)創(chuàng)建無(wú)人能想到的功能,是深度學(xué)習(xí)的較大優(yōu)勢(shì),同時(shí)也是它的較大弱點(diǎn)因?yàn)榇蠖鄶?shù)時(shí)候,至少在語(yǔ)義上是存疑的。還有人對(duì)深度學(xué)習(xí)應(yīng)用在醫(yī)學(xué)和診斷中寄予厚望。 我們對(duì)深度網(wǎng)絡(luò)的黑盒效應(yīng)都很熟悉了。雖然沒(méi)有人知道黑盒子里到底經(jīng)歷了什么,然而深度學(xué)習(xí)的成功以及一系列驚人的失敗模式,提供了如何處理的數(shù)據(jù)的寶貴教訓(xùn)。本文作者Piek...
摘要:近日,外媒刊登了一篇機(jī)器學(xué)習(xí)與網(wǎng)絡(luò)安全相關(guān)的資料大匯總,文中列出了相關(guān)數(shù)據(jù)源的獲取途徑,優(yōu)秀的論文和書(shū)籍,以及豐富的教程。這個(gè)視頻介紹了如何將機(jī)器學(xué)習(xí)應(yīng)用于網(wǎng)絡(luò)安全探測(cè),時(shí)長(zhǎng)約小時(shí)。 近日,外媒 KDnuggets 刊登了一篇機(jī)器學(xué)習(xí)與網(wǎng)絡(luò)安全相關(guān)的資料大匯總,文中列出了相關(guān)數(shù)據(jù)源的獲取途徑,優(yōu)秀的論文和書(shū)籍,以及豐富的教程。大部分都是作者在日常工作和學(xué)習(xí)中親自使用并認(rèn)為值得安利的純干貨。數(shù)...
閱讀 2860·2021-10-14 09:50
閱讀 1217·2021-10-08 10:21
閱讀 3645·2021-10-08 10:16
閱讀 3062·2021-09-27 14:02
閱讀 3135·2021-09-23 11:21
閱讀 2108·2021-09-07 10:17
閱讀 406·2019-08-30 14:00
閱讀 2105·2019-08-29 17:26