1. 程式人生 > >無需看到你的臉就能認出你——實現Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues

無需看到你的臉就能認出你——實現Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues

今年年初Facebook AI Research釋出了一篇名為Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues的人物識別的文章。

正好公司mentor想搞一個類似的東西看看能不能做一個智慧相簿出來(有點像iphoto和新版的lightroom裡面那個根據人的id來分子相簿),於是就實現了一下。

由於使用了定製的caffe的matlab介面,所以想要跑通需要根據你自己的介面來改一下,還是需要折騰的~

其中feature資料夾下給出了我跑出來的test集上有臉的所有圖片的特徵向量和labels,可以直接訓練svm或者knn跑跑看。

在我的試驗中1nn(最鄰近)演算法居然比svm搞了快10個點。。。

轉載請說明轉自http://www.cnblogs.com/sciencefans/

整篇文章噱頭滿滿,總結一下有以下貢獻:

1.作者從flickr上收集了一個叫People In Photo Albums (PIPA)的資料庫,其中:1)標註了人的頭的位置,注意是頭的位置不是臉的位置;2)有一半的人都是沒有臉的;3)包含60000張圖,2000多個人;4)資料庫分成了三個子庫,train,valid和test,互不相交。

具體的一些例子如下:

2.文章提出了一個叫Pose Invariant PErson Recognition(PIPER) 的方法,其實就是搞了109個分類器(具體哪109個後面說),用了一個線性分數疊加來做最後的得分,這個model在上述PIPA的test集上得到了83.05%的準確率,如果只看有臉的圖片,準確率能夠到達93.4%。這個結果超過了deepface(只有89.3%)。

3.想不出有什麼別的貢獻了。

一句話總結這篇文章就是:提出了一個標註了頭部的資料庫,想了一種方法線性疊加了109個CNN-SVM模型來獲得了一個很好的identify效果。

下面具體來說一說這109個分類器:

109分類器=用人體的107個poselet(詳見參考文獻2)分別訓練出來的107個CNN(這一步是在Imagenet模型上finetune的,並不是直接訓練的)+1個global model(用整個身體來訓練一個CNN,一樣是finetune)+1個基於DeepFace(詳見參考文獻3)提出的特徵的SVM分類器。

這109個分類器都是神經網路的倒數第二層(fc7)作為特徵來訓練出的SVM。

怎麼組合這109個分類器給出的得分呢?首先計算圖片的每個poselet的啟用程度(得分程度),如果沒有啟用(得分很低),則使用global model來代替。計算公式如下:

其中Pi就是第i個poselet的svm對X的預測

Fi指的是訓練集中擁有第i個poselet的人物的集合,是所有identity的子集。

得到了Pi之後,就可以計算每個分類器的權重w了。

文章使用validation集合來計算得出w,方法還是svm:

對於任意一張圖j,它的第i個poselet分類器的得分是

一共有K個poselet分類器的話,一張圖就一共有K+1個得分(加上global model)

這樣就相當於一個圖可以用一個K+1維的向量表示,用這個特徵向量和來訓練出一個二分類SVM(label是j是否屬於y這個人)

最後每個分類器的權重就是最後這個SVM模型的權重w。

接下來就是實驗結果:

然後作者又用特徵做了一下聚類,得到了如下結果:

論文到這裡就結束了,我覺得搞這麼多分類器來做得分疊加是一個很簡單暴力的想法。

復現的時候我用Zeiler網路訓練了臉部和global兩個model,基於caffe框架在8顆Tesla K40m上跑了整整兩天。

其中global model是純粹根據頭部位置計算出的一個矩形區域,效果只做到了百分之三十多(最新更新,效果以做到69.59%)。但是臉部區域達到了和論文近似的效果——全部test集做cross validation得到了82%(91.68%),只看有臉的圖能達到91%(93.90%)。這一復現均超越了原文,我猜原因可能是我們的face feature比較好吧。

=======================

參考文獻

[1]Ning Zhang, et al, Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues

[2]L. Bourdev and J. Malik. Poselets: Body part detectors trained using 3D human pose annotations. In International Conference on Computer Vision (ICCV), 2009

[3]Y. Taigman, M. Yang, M. Ranzato, and L. Wolf. DeepFace: Closing the Gap to Human-Level Performance in Face Verification. In Conference on Computer Vision and Pattern Recognition (CVPR), 2014

相關推薦

無需看到認出——實現Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues

今年年初Facebook AI Research釋出了一篇名為Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues的人物識別的文章。 正好公司mentor想搞一個類似的東西看看能不能做一個智慧相簿出來(有點像iphoto

最詳細爬蟲入門教程!花半小時應該去爬一些小東西了!

爬蟲入門 request -a load() 簡單 agent urllib2 com 入門教程 爬蟲對目標網頁爬取的過程可以參考下面黑色文字部分: 首先訪問初始url,獲取其相應內容對相應內容進行解析,提取感興趣的信息和新的鏈接將上一步提取到的數據存儲,將獲取到

從一道簡單的“SpringBoot配置檔案”相關面試題,我知道的水平

面試要套路,也要技巧。別被背題目的兄弟們給忽悠了。 【你來發揮】你比較喜歡什麼技術,哪一種最熟? 一般自信的面試官都喜歡問這個問題,這次面試的小夥比較年輕,咱也裝回B,不然都對不起自己。 答: 我比較喜歡Spring,比較有趣。目的: 希望應聘者能夠有廣

只用一天搭建的論壇小程式!

歡迎大家前往騰訊雲+社群,獲取更多騰訊海量技術實踐乾貨哦~ 本文由達文西發表 筆者最近涉獵了小程式相關的知識,於是利用週末時間開發了一款類似於同事的小程式,深度體驗了小程式雲開發模式提供的雲函式、資料庫、儲存三大能力。關於雲開發,可參考文件:小程式·雲開發。 個人感覺雲開發帶來的最大好處是鑑權

不需要手動搜尋獲取專業相關的外文文獻的技巧

介紹一款由斯坦福大學成員開發的免費的文獻追蹤的軟體--Stork文獻鳥,連結為(http://t.cn/EzwtFCP)。 在科研過程中,查閱文獻與閱讀文獻是非常重要的。然而,查閱文獻與對相關領域文獻的跟進的能力使得像我一樣剛開始接觸科研的菜鳥力不從心。通常,我們瀏覽並且閱讀

原來幾行程式碼的Linux系統崩潰

其實很簡單: #include <stdio.h> int main() { while(1) { fork(); } return 0; }實際上程式碼很簡單,讓你的系統不斷的申請資

ASP.NET OSGI AJAX jQuery ----- 幫助別人得到他想要的,得到想要

sqlserver 2005 賬戶sa 密碼過期的處理方式 在查詢分查器中執行下面語句: alter login sa with password = 'zxf000' unlock, check_policy = off, check_expiration = of

1. 不吹不擂,第一篇提升對Bean Validation資料校驗的認知

> 喬丹是我聽過的籃球之神,科比是我親眼見過的籃球之神。本文已被 [**https://www.yourbatman.cn**](https://www.yourbatman.cn) 收錄,裡面一併有Spring技術棧、MyBatis、JVM、中介軟體等小而美的**專欄**供以免費學習。關注公眾號【**BAT

springboot2.0.6實現整合swagger2.9.2,良心版最新版,了複製用。

1、pom依賴: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s

的簡歷爭取到面試機會嗎?

最近我在幫朋友的公司招人,招人的第一步是要篩選簡歷,在這過程中,我發現雖然能收到很多簡歷,但實際能通過篩選能進入到技術面試流程的簡歷不多,估計10份裡不會超過4份能通過篩選。    如果沒法通過技術面試,那麼候選人尚且能收集面試題,回家繼續準備,畢竟他和麵試官也交流過,也不算

支付時代,出門帶支付

時代 生活方式 位置 成本 燈泡 輪廓 綁定 方式 效率 近幾年來,微信,銀聯,支付寶都在“刷臉支付”的領域內深耕,力求開發最適合大眾的產品來促進支付。針對支付的競爭和創新也是層出不窮,先是支付寶的消費到一體化的生活方式,再到微信利用其社交壟斷地位一個春晚就綁定了中國上億的

完這篇 完全操作git 遠端分支的增、刪、改、查了

最近專案中又用到了git所以在此總結一番,這篇主要針對的是怎麼建立遠端分支,如何刪除遠端分支。 首先,如何建立遠端分支。將一系列前期準備工作準備完成後(建立\新增ssh); 在終端鍵入 git branch -va 可以檢視本地分支與遠端分支的具體情況,當如果是一個新建的專案的時候,顯示,“ * ”號顯示的

iO開發 -Masonry學習,讓會用,一上手專案

在這裡問下大家,用的約束方式是哪種?近年來,約束這件事情在開發中的分量越來越重,不同機型的問世,使得原來使用係數的開發人員苦不堪言,一開始約束的使用讓很多人很不習慣,網上給出的Demo也層出不全,沒有人真正告訴你該怎麼來寫一個tableview,怎麼來寫一個scrollView,這對於不

如果不改需求還做朋友 不然我死給

java零基礎入門-核心語法篇(六) 流程控制 順序結構 順序結構就是從上到下,從左到有。如果不按照這個順序來,就會發生錯誤,我們來看看 順序錯誤 我們使用變數的順序,一般是首先宣告變數,再去使用變數,而如果你改變這個順序的話,先使用,再宣告,使用的時候就會報

還在靠“喂喂喂”來測語音通話質量嗎,完這篇文章掌握正確姿勢。

語音通話開發,對於一般開發者來說比較神祕,很多朋友不太清楚如何全面的評估第三方的音訊引擎,如何科學的選擇一家靠譜的語音通話服務供應商。 很多朋友還停留在這樣的初級階段:把demo調通,找幾個人喂喂喂……憑自己優異的聽覺感受一下。整個測試過程就完成了,廠商也就這麼“愉快”

懂了責任鏈模式,明白很多

前言 只有光頭才能變強。 文字已收錄至我的GitHub精選文章,歡迎Star:https://github.com/ZhongFuCheng3y/3y 最近在看專案程式碼的時候發現「責任鏈模式」,於是想花點時間來寫寫什麼是責任鏈模式。 不知道大家是怎麼學習設計模式的,一般我都是用到的時候,或者接觸到的

手把手教搭建一個加密貨幣交易模擬器,不用投錢

box NPU nec idp reat 監控 最簡 data- 自己 手把手教你搭建一個加密貨幣交易模擬器,不用投錢就能玩 大數據文摘,編譯:汪小七、黃文暢、小魚 我雖然不是交易員,但對加密貨幣的交易非常感興趣。然而,我不會在自己什麽都不清楚的時候就盲目投

在夏天到來之際,美麗的只需提前準備幾條短袖簡單到美麗動人

夏天短袖夏之美麗,風雨拂落,季節更替,繁花爛熳的春天在爭奇鬥艷中盡數落幕,緊接著,綠意濃濃、果實孕蘊、瓜果飄香的夏景,追趕著夏天的美麗的節拍,盡顯清麗秀美與溫馨暢爽。  在一個艷陽高照的夏日,走進果園,親近綠蔭,桃李滿枝掛,綠蔭中透著果香,園中桃李芳菲,果粒成熟誘人,真叫人垂涎欲滴,當一一摘下,放入口中時,甜

知道嗎?一把打開100000億新興市場的鑰匙攥著手裏!

pan 通訊 純粹 需要 的人 img 定律 智能 是我 這不是噱頭!現在數以萬計的公司都在做這把鑰匙,不論是微軟、谷歌、百度、IBM、facebook,還是華為、蘋果,他們都在做。只不過他們做了也不說,就如你手機裏就有這個鑰匙,可你並不知道。 這不是一個尋寶的遊戲

從完全零基礎教用Python開飯一款打飛機的遊戲!是個人學會

實現 裁剪 -i ext 想象 一點 換圖 結束 離開 默認圖片左上角為原點 (0,0)。 進群:125240963 即可獲取數十套PDF!要源碼也可以私信哦! 顯示窗口 如果我們這樣設定,當我們運行的時候,窗口會一閃而過,並不會出現我們想象的畫面。因為