人臉檢測

寫在前面

  • 態(tài)度決定高度烘浦!讓優(yōu)秀成為一種習(xí)慣疚脐!
  • 世界上沒有什么事兒是加一次班解決不了的,如果有县昂,就加兩次0构瘛(- - -茂強(qiáng))

人臉識別一般步驟

  • 人臉檢測
  • 人臉特征提取
  • 人臉識別
    本文主要介紹人臉檢測

人臉檢測

人臉檢測就是從一張圖片中檢測出人臉的過程
這里主要看兩種檢測方式,一種是dlib一種是 mtcnn
文本對于其原理不再贅述倒彰,想了解原理的可以參考原論文审洞,如果有時間,后邊會專門介紹原理

dlib

dlib是c++開發(fā)開源的的機(jī)器學(xué)習(xí)庫
廢話不多說待讳,直接看下效果


face_detect
import dlib
import cv2
# 初始化dlib人臉檢測器
detector = dlib.get_frontal_face_detector()
#2.使用官方提供的模型構(gòu)建特征提取器
predictor = dlib.shape_predictor("/Users/songyaheng/Downloads/shape_predictor_68_face_landmarks.dat")
img = cv2.imread("/Users/songyaheng/Downloads/faces.JPG")
faces = detector(img,1)
for k,d in enumerate(faces):
    cv2.rectangle(img,(d.left(),d.top()),(d.right(),d.bottom()),(0,255,0),3)
cv2.imshow("capture", img)
cv2.imwrite("/Users/songyaheng/Downloads/faces2.JPG", img)
cv2.waitKey(0)

mtcnn

face_detect
import tensorflow as tf
import align.detect_face as detect_face
import cv2
gpu_memory_fraction=0.0
with tf.Graph().as_default():
    gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=gpu_memory_fraction)
    sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options, log_device_placement=False))
    with sess.as_default():
        pnet, rnet, onet = detect_face.create_mtcnn(sess, None)
#face detection parameters
minsize = 20 # minimum size of face
threshold = [ 0.6, 0.7, 0.7 ]  # three steps's threshold
factor = 0.709 # scale factor
img = cv2.imread("/Users/songyaheng/Downloads/faces.JPG")
bounding_boxes, _ = detect_face.detect_face(img, minsize, pnet, rnet, onet, threshold, factor)
for face_position in bounding_boxes:
    face_position=face_position.astype(int)
    cv2.rectangle(img, (face_position[0],
                          face_position[1]),
                  (face_position[2], face_position[3]),
                  (0, 255, 0), 2)
cv2.imwrite("/Users/songyaheng/Downloads/faces3.JPG", img)
cv2.waitKey(0)

另一組對比

原圖(圖片來自百度圖片)

這次我們從明暗程度對比


檢測對比

利用mtcnn是一個都沒能識別出來芒澜,所以對于一些背光的照片來說,還是利用dlib相對來說比較好一點(diǎn)
那么問題來了创淡,在人臉識別中痴晦,不同明暗程度的人臉即使是一個人,所提取的人臉特征向量也是相差很大的琳彩,所以要想提高人臉識別的精準(zhǔn)度誊酌,對于人臉圖片的曝光度歸一化還是相當(dāng)重要的部凑,我們?nèi)绾螝w一化這種背光度較高的臉呢?
我們可以先通過dlib把人臉提取出來碧浊,然后通過算法改變這個圖片的像素值砚尽,然后把人臉變亮,這樣我們就可以拿到歸一化的人臉了辉词,所以難點(diǎn)就放在了我們?nèi)绾伟巡煌毓舛鹊娜四槡w一化到相對統(tǒng)一的人臉曝光度上呢必孤?如下圖


轉(zhuǎn)換人臉亮度值

比較暗的就是上邊dlib提取的三個原始圖片的,
我們在看一組圖
對比圖

從該圖上可以看出瑞躺,該算法能夠?qū)⒈容^暗的圖變得亮一點(diǎn)敷搪,比較亮的圖變得暗一點(diǎn)。也就是又一個相對統(tǒng)一的亮度值
我們最終提取出來的人臉應(yīng)該是這樣的:


提取的人臉

提取的人臉

這些提取的人臉都基本擁有相對統(tǒng)一的曝光度幢哨,而且更接近于人的皮膚顏色赡勘。

算法

首先我們提取人臉區(qū)域,提取后的人臉我們首先計(jì)算平均的亮度值捞镰,然后基于人體膚色的RGB和平均的RGB值闸与,我們采用一種歸一化方式,這種歸一化方式可以把輸入的人臉RGB值相對歸一化到該膚色RGB值上岸售,其實(shí)就是一種映射關(guān)系

比較簡單的就是
映射公式

其中S(x)就是原始圖像空間践樱,T(x)就是人體膚色空間

本文采用的就是該方法進(jìn)行映射計(jì)算的

到此我們的人臉檢測部分已經(jīng)基本結(jié)束
下期我們將介紹基于以上提取出來的人臉進(jìn)行特征提取,歡迎關(guān)注凸丸。

如果對人臉識別拷邢,圖像處理等方面有興趣,歡迎一塊學(xué)習(xí)
QQ:458798698
微信號:songwindwind

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末屎慢,一起剝皮案震驚了整個濱河市瞭稼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌腻惠,老刑警劉巖环肘,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異集灌,居然都是意外死亡悔雹,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進(jìn)店門绝页,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荠商,“玉大人,你說我怎么就攤上這事续誉±趁唬” “怎么了?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵酷鸦,是天一觀的道長饰躲。 經(jīng)常有香客問我牙咏,道長,這世上最難降的妖魔是什么嘹裂? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任妄壶,我火速辦了婚禮,結(jié)果婚禮上寄狼,老公的妹妹穿的比我還像新娘丁寄。我一直安慰自己,他們只是感情好泊愧,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布伊磺。 她就那樣靜靜地躺著,像睡著了一般删咱。 火紅的嫁衣襯著肌膚如雪屑埋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天痰滋,我揣著相機(jī)與錄音摘能,去河邊找鬼。 笑死敲街,一個胖子當(dāng)著我的面吹牛团搞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播聪富,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼莺丑,長吁一口氣:“原來是場噩夢啊……” “哼著蟹!你這毒婦竟也來了墩蔓?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤萧豆,失蹤者是張志新(化名)和其女友劉穎奸披,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體涮雷,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡阵面,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了洪鸭。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片样刷。...
    茶點(diǎn)故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖览爵,靈堂內(nèi)的尸體忽然破棺而出置鼻,到底是詐尸還是另有隱情,我是刑警寧澤蜓竹,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布箕母,位于F島的核電站储藐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏嘶是。R本人自食惡果不足惜钙勃,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望聂喇。 院中可真熱鬧辖源,春花似錦、人聲如沸希太。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽跛十。三九已至彤路,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間芥映,已是汗流浹背洲尊。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留奈偏,地道東北人坞嘀。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像惊来,于是被迫代替她去往敵國和親丽涩。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容