基于matlab实现的人脸检测
作為一個(gè)圖像處理的初學(xué)者,一直想寫(xiě)一個(gè)人臉檢測(cè)的程序,經(jīng)過(guò)多次嘗試,發(fā)現(xiàn)不管是在C站上找的開(kāi)源代碼,還是自己手?jǐn)]的代碼,總是那么不盡人意。后來(lái)經(jīng)過(guò)查閱資料,發(fā)現(xiàn)matlab內(nèi)置有一個(gè)人臉檢測(cè)的檢測(cè)器函數(shù),精度非常高。如果對(duì)人臉檢測(cè)不求甚解,但求實(shí)用的話,這種方法非常適合。
話不多說(shuō),直接上代碼:
faceDetector = vision.CascadeObjectDetector(); % 構(gòu)造檢測(cè)器對(duì)象。 image = imread('Copy_of_Lena.bmp'); % 讀取包含面部的圖像。 facebox = step(faceDetector, image); % 開(kāi)始檢測(cè),將結(jié)果存儲(chǔ)到facebox變量中 finalImage = insertShape(image, 'Rectangle', facebox,'LineWidth',5); figure; imshow(finalImage);識(shí)別效果:
?多人也可以精準(zhǔn)檢測(cè)
?注:圖像如有侵權(quán),請(qǐng)私聊作者
擴(kuò)展:如果想學(xué)習(xí)vision.CascadeObjectDetector()函數(shù)的話,可以用help打開(kāi)幫助文檔或者open打開(kāi)源程序進(jìn)行查看
? ? ?CascadeObjectDetector()函數(shù)本質(zhì)上是matlab用人臉訓(xùn)練集經(jīng)過(guò)訓(xùn)練得到的函數(shù)。為了方便對(duì)于其他物品的識(shí)別,matlab還為我們提供了trainCascadeObjectDetector函數(shù)可以自己去訓(xùn)練機(jī)器進(jìn)行識(shí)別。trainCascadeObjectDetector的具體用法,請(qǐng)讀者自行調(diào)用幫助文檔進(jìn)行學(xué)習(xí),在此不在擴(kuò)展了。
?
總結(jié)
以上是生活随笔為你收集整理的基于matlab实现的人脸检测的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 兴业银行信用卡积分怎么兑换现金,不能直接
- 下一篇: matlab平面抛射方程,MATLAB