Fisherfaces人臉識(shí)別---OpenCV-Python開發(fā)指南(44)

Fisherfaces原理

PAC方法是EigenFaces人臉識(shí)別的核心趴泌,它找到了最大化數(shù)據(jù)總方差特征的線性組合薯鳍。但是其具有明顯的缺點(diǎn)富寿,在操作過程中會(huì)損失許多人臉的特征信息见秽。因此在某些特殊的情況下盔然,如果損失的信息剛好是用于分類的關(guān)鍵信息桅打,必然導(dǎo)致結(jié)果預(yù)測(cè)錯(cuò)誤。

Fisherfaces采用LDA(Linear Discriminant Analysis愈案,線性判別分析)實(shí)現(xiàn)人臉識(shí)別挺尾。線性判別分析最早由Fisher在1936年提出,是一種經(jīng)典的線性學(xué)習(xí)方法站绪,也被稱為“Fisher判別分析法”遭铺。

其基本原理:在低維表示下,相同的類應(yīng)該緊密地聚集在一起恢准;不同的類別應(yīng)該盡可能地分散開魂挂,并且它們之間的距離盡可能地遠(yuǎn)。簡(jiǎn)單的概括馁筐,線性判別分析就是盡力滿足以下兩個(gè)要求:

  1. 類別間的差別盡可能地大
  2. 類別內(nèi)的差別盡可能地小

做線性判別分析時(shí)涂召,首先將訓(xùn)練集樣本集投影到一條直線A上,讓投影后的點(diǎn)滿足:

  1. 同類間的點(diǎn)盡可能地靠近
  2. 異類間的點(diǎn)盡可能地遠(yuǎn)離

做完投影后敏沉,將待測(cè)樣本投影到直線A上果正,根據(jù)投影點(diǎn)的位置判定樣本的類別,就完成了人臉識(shí)別盟迟。

Fisherfaces實(shí)現(xiàn)人臉識(shí)別

在OpenCV中秋泳,通過函數(shù)cv2.face.FisherFaceRecognizer_create()生成Fisherfaces識(shí)別器實(shí)例模型,然后應(yīng)用cv2.face_FaceRecognizer.train()函數(shù)完成訓(xùn)練攒菠,最后用cv2.face_FaceRecognizer.predict()函數(shù)完成人臉識(shí)別轮锥。

因?yàn)镕isherfaces人臉識(shí)別步驟與LBPH、EigenFaces代碼步驟一模一樣要尔,所以我們直接實(shí)戰(zhàn)通過Fisherfaces實(shí)現(xiàn)人臉識(shí)別舍杜。具體代碼如下所示:

images = []
images.append(cv2.imread("42_1.jpg", cv2.IMREAD_GRAYSCALE))
images.append(cv2.imread("42_2.jpg", cv2.IMREAD_GRAYSCALE))
labels = [0, 1]
recognizer = cv2.face.FisherFaceRecognizer_create()
recognizer.train(images, np.array(labels))
predict_image = cv2.imread('42_4.jpg', cv2.IMREAD_GRAYSCALE)
label, confidence = recognizer.predict(predict_image)
if label == 0:
    print("匹配的人臉為尼根")
elif label == 1:
    print("匹配的人臉為瑞克")
print("confidence=", confidence)

運(yùn)行之后,控制臺(tái)輸出如下:


1.png

通過Fisherfaces進(jìn)行人臉識(shí)別赵辕,其confidence返回值也在0到20000之間既绩,只要低于5000,都被認(rèn)為是相當(dāng)可靠的識(shí)別結(jié)果还惠。這里饲握,0就是完全匹配。

訓(xùn)練圖像:


42_1.jpg
42_2.jpg

測(cè)試圖像:


42_4.jpg
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市救欧,隨后出現(xiàn)的幾起案子衰粹,更是在濱河造成了極大的恐慌,老刑警劉巖笆怠,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件铝耻,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蹬刷,警方通過查閱死者的電腦和手機(jī)瓢捉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來办成,“玉大人泡态,你說我怎么就攤上這事∮芈” “怎么了某弦?”我有些...
    開封第一講書人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)而克。 經(jīng)常有香客問我刀崖,道長(zhǎng),這世上最難降的妖魔是什么拍摇? 我笑而不...
    開封第一講書人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任亮钦,我火速辦了婚禮,結(jié)果婚禮上充活,老公的妹妹穿的比我還像新娘蜂莉。我一直安慰自己,他們只是感情好混卵,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開白布映穗。 她就那樣靜靜地躺著,像睡著了一般幕随。 火紅的嫁衣襯著肌膚如雪蚁滋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,488評(píng)論 1 302
  • 那天赘淮,我揣著相機(jī)與錄音辕录,去河邊找鬼。 笑死梢卸,一個(gè)胖子當(dāng)著我的面吹牛走诞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蛤高,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蚣旱,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼碑幅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起塞绿,我...
    開封第一講書人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤沟涨,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后异吻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體裹赴,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年涧黄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了篮昧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赋荆。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡笋妥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出窄潭,到底是詐尸還是另有隱情春宣,我是刑警寧澤,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布嫉你,位于F島的核電站月帝,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏幽污。R本人自食惡果不足惜嚷辅,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望距误。 院中可真熱鬧簸搞,春花似錦、人聲如沸准潭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)刑然。三九已至寺擂,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間泼掠,已是汗流浹背怔软。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留择镇,地道東北人爽雄。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像沐鼠,于是被迫代替她去往敵國(guó)和親挚瘟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子叹谁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354

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