關于how-old.net這個頁面,其實其工作主要分為以下的三個部分:
- Extracting the gender and age of the people in these pictures.
- Obtaining real time insights on the data extracted above.
- Creating real time dashboards to view the above results.
而黑體字的這一部分,則是年齡識別的核心。其主要組成則是微軟協同工作的一個project,稱之為牛津計劃(project oxford)。
關于PO,人臉檢測的部分是有一個網頁版的demo的,如下l:
Microsoft Project Oxford Demo Face(http://www.projectoxford.ai/demo/face#verification)
Microsoft Project Oxford How-to detect faces from an image(http://www.projectoxford.ai/doc/face/How-To/detectface)
上圖就是PO里關于人臉檢測的一個例子,稍微熟悉face detection的人都知道人臉檢測是要使用到關鍵點的。上面這個右側的代碼就是檢測到了這些關鍵點。
其實就how-old.net這個程序本身,它只是用來測試的,關于年齡這一部分已經封裝成模型了
它只需要針對進入的新人臉提了特征之后直接判斷年齡,也就如下面這段代碼所示:
然后,來到關鍵的部分,也就是如何利用attribute(這里主要指age of the face)。
貼一下官方的原話:
Age (Attribute)
Age is one of the attributes that describes the age of a particular face. The age attribute is optional in thedetection results, and can be controlled with a detection request by specifying the analyzesAge parameter as 'true'.
For more details, please refer to the guide Face - Detection.
face detection api參考頁面
Microsoft Azure Intelligent Service developer portal(https://dev.projectoxford.ai/docs/services/54d85c1d5eefd00dc474a0ef/operations/54f0375749c3f70a50e79b82)
不過一路下來,發現微軟僅僅只是提供了api ,并沒有專門列出參考文獻,說明使用的是什么時候的論文去檢測人臉的年齡。
簡單看了下PO有關人臉識別API的部分,涉及到人臉處理的時候,在離線部分僅能對人臉進行標定,訓練以及測試都必須在微軟端完成。如此看來,官方有意做成黑箱的形式,即你只需要提供輸入,官方負責輸出。
目前人臉處理的那部分,微軟PO的網頁沒有給出公開資源。
不過有一句還是要提一下,年齡檢測和性別檢測,看起來雖然很特殊,但是實質依然是最傳統的分類問題,也是使用最傳統的方法去處理:特征提取、訓練/測試。
howold的制作人之一,在福布斯發表了一篇簡短解釋工作原理的文章
《How Does How-Old.Net Work?》(http://www.forbes.com/sites/quora/2015/05/05/how-does-how-old-net-work/)
其中,關于年齡識別的部分,是這么寫的:
For age detection and gender detection, they are just classic regression and classification problems in machine learning. It involves facial feature representation, collecting training data, building regression/classification models and model optimization. There are plenty of publications in this area.
如果你僅僅是想要知道年齡識別具體怎么工作,那直接搜索3~5年內3CV,以及PAMI、IJCV之類刊物上的關鍵詞即可。
但是如果你想要知道howold具體使用了什么算法,那么有兩種方法:
1)你直接和上面那位作者交流,他的聯系方式在文章里有
2)你需要一個直接在微軟的,或者是用了Azure的人,來現身說法,說明一下
不過說老實話,現在來看,age識別,并不是一個很麻煩的事情。
延伸閱讀:
- 聽微軟官方講述How-old.net背后的技術故事
- 10大原因解密How-Old為何能刷爆朋友圈!
- 只要一天就可以搭建測年齡網站How-Old.net?
- 全網刷屏how-old.net 微軟病毒爆發流行技能get
- How-Old.net這個“黃色網站”是怎樣測年齡的?
- 微軟How-Old.net體驗:威廉王子只有24歲 鞏俐比我小10歲