title: Android實(shí)現(xiàn)人臉識別(人臉檢測)初識
categories:
- Android
tags: - 人臉識別
- 人臉檢測
- 相機(jī)處理
date: 2020-05-21 11:35:51
介紹
本篇文章主要介紹一下移動(dòng)端Android的人臉識別大致邏輯伴挚,后續(xù)文章會(huì)陸續(xù)放出干貨失暴,首先我們要明確兩個(gè)名詞
- 人臉檢測,即從一張照片中或者一個(gè)相機(jī)中返敬,檢測有沒有人臉的出現(xiàn),
- 人臉識別寥院,相對人臉檢測來說可以識別出照片或者視頻中的人臉位置劲赠,人臉特征,即常用的識別例如,門禁人臉識別對比凛澎,年齡識別霹肝,性別識別,活體檢測塑煎,
可以說在現(xiàn)在計(jì)算機(jī)視覺應(yīng)用中沫换,人臉識別尤為關(guān)鍵,我們可以想象到常見的美顏相機(jī)最铁,就是人臉識別為基礎(chǔ)讯赏,以及人臉特效啥的(某音常見的)
那么我們Android怎么實(shí)現(xiàn)自己的人臉識別呢
目前有幾個(gè)比較成熟的技術(shù),
camera原生api(已過時(shí)不推薦)- camera2 + FaceDetector(后面會(huì)詳細(xì)說)
- opencv(筆主采用的4.3.0版本)
- ARCore(Google service)
關(guān)鍵知識點(diǎn)
若要知道人臉識別冷尉,圖像的處理是必不可少的漱挎,那么相機(jī)等格式也是需要了解,其中有幾個(gè)關(guān)鍵點(diǎn)的知識需要有所了解
- nv21,YUV420這些原始數(shù)據(jù)格式(大致了解會(huì)用即可)
- Bitmap(bitmap type 格式RGB 565,RGB4444等雀哨,大致了解即可)
- 灰度化磕谅,二值化
圖像的二值化是將圖像上的像素點(diǎn)的灰度值設(shè)置為0或255,也就是將整個(gè)圖像呈現(xiàn)出明顯的黑白效果雾棺。
將256個(gè)亮度等級的灰度圖像通過適當(dāng)?shù)拈y值選取而獲得仍然可以反映圖像整體和局部特征的二值化圖像怜庸。在數(shù)字圖像處理中,二值圖像占有非常重要的地位垢村,
首先割疾,圖像的二值化有利于圖像的進(jìn)一步處理,使圖像變得簡單嘉栓,而且數(shù)據(jù)量減小宏榕,能凸顯出感興趣的目標(biāo)的輪廓。其次侵佃,要進(jìn)行二值圖像的處理與分析麻昼,首先要把灰度圖像二值化,得到二值化圖像馋辈。
所有灰度大于或等于閥值的像素被判定為屬于特定物體抚芦,其灰度值為255表示,否則這些像素點(diǎn)被排除在物體區(qū)域以外迈螟,灰度值為0叉抡,表示背景或者例外的物體區(qū)域
而人臉的特征,大家都懂答毫,一個(gè)鼻子兩個(gè)眼褥民,一張嘴2個(gè)耳朵,這些都是不同技術(shù)共同點(diǎn)洗搂,都是靠特征點(diǎn)去比對消返,然后檢測人臉
(感興趣的可以繼續(xù)了解圖像二值化后载弄,圖像加減法,色彩調(diào)節(jié)等撵颊,迷宮算法宇攻,等還挺有意思的)
關(guān)于這些知識點(diǎn),Android老鳥基本都了解倡勇,那么對后面的操作就比較簡單了逞刷,
-----知道這些那么針對你的需求可以繼續(xù)了
技術(shù)對比
如果你需要的是只需要測出人臉,屏幕中出現(xiàn)人臉的個(gè)數(shù)等译隘,而不需要關(guān)注人臉的其余信息,只需要知道人臉出現(xiàn)在了鏡頭中洛心,ok
那么你就可以方法二固耘,faceDetector,該技術(shù)的特征模型,是檢測眼睛词身,雙目間距厅目,眉眼特征來的,理論來講只需要知道雙眼坐標(biāo)法严,
就可以知道损敷,你相對鏡頭的角度,人臉的大致位置深啤,眉心中心點(diǎn)拗馒,等,(這種方法的好處是溯街,比如說現(xiàn)在疫情诱桂,戴口罩,ok呈昔,沒問題挥等,你帶口罩我也能認(rèn)出你來)
如果說你需要做比較詳細(xì)的人臉信息,可以采用opencv來比較靈活堤尾,圖像處理后肝劲,可以配合多種算法,各種成熟的模型郭宝,來做人臉識別辞槐,說白了就是對圖像處理后,拿到數(shù)據(jù)粘室,愛用什么算法算就用什么算催蝗,
愛用什么模型匹配,用什么模型匹配育特,對接起來比較簡單丙号,要精確可以簡單的提升精確度先朦,當(dāng)然,模型不同原理也不同比較常用就haar lbp等分類器
當(dāng)然項(xiàng)目的體積也會(huì)增加較多
好了犬缨,這篇文章先寫這么多喳魏,后續(xù)補(bǔ)充,
后面陸續(xù)補(bǔ)全怀薛,方法二和方法三的具體實(shí)現(xiàn)刺彩,
至于方法四,后面也會(huì)有demo和解讀枝恋,创倔,,比較厲害的一個(gè)東西