使用Python+OpenCV實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)處理人臉圖像的快速指南
目前我正在研究一個(gè)涉及人臉?lè)诸惖?span id="rrj7ppb" class='hrefStyle'>計(jì)算機(jī)視覺(jué)問(wèn)題。這通常意味著需要應(yīng)用深度學(xué)習(xí),因此在將圖像注入到我們的神經(jīng)網(wǎng)絡(luò)之前需要一個(gè)特殊的預(yù)處理階段。為了提高我們的模型精度,這是一項(xiàng)非常重要的任務(wù),通過(guò)以下幾個(gè)簡(jiǎn)單的步驟可以很好地完成。對(duì)于本文,我們使用OpenCV:一個(gè)高度優(yōu)化的計(jì)算機(jī)視覺(jué)開源庫(kù),在C++、java和Python中都可用。這是一篇簡(jiǎn)短的文章,包含了一些基本的指導(dǎo)原則、示例和代碼,你可以根據(jù)需求將它們應(yīng)用到人臉?lè)诸惢蜃R(shí)別問(wèn)題上。注意:本文中使用的所有靜態(tài)圖像都來(lái)自 圖片載入我們將使用imread()函數(shù)加載圖像,指定文件的路徑和mode,第二個(gè)參數(shù)對(duì)于動(dòng)態(tài)運(yùn)行通道和像素轉(zhuǎn)換非常重要。mode:https://docs.opencv.org/4.1.0/d4/da8/group__imgcodecs.html#ga61d9b0126a3e57d9277ac48327799c80img = cv2.imread('path/image.jpg', cv2.IMREAD_COLOR)要查看圖像,我們有imshow()函數(shù):cv2.imshow(img)
如果你寫的是類型(img),你會(huì)看到尺寸是(height, weight, channels)。我們的彩色圖像有3個(gè)通道:藍(lán)色,綠色和紅色(在OpenCV中按這個(gè)順序)。
我們可以輕松查看單個(gè)通道:# Example for green channelimg[:, :, 0]; img[:, :, 2]; cv2.imshow(img)灰度版本為了避免在人臉圖像分類中的干擾項(xiàng),使用黑白圖片是個(gè)好主意(也可能不是。┠憧梢詢烧叨荚囋嚕。為了得到灰度版本,我們只需要在圖像加載函數(shù)中指定,將適當(dāng)?shù)闹底鳛榈诙䝼(gè)參數(shù)傳遞:img = cv2.imread('path/image.jpg', cv2.IMREAD_GRAYSCALE)
現(xiàn)在我們的圖像有了一個(gè)單獨(dú)的通道!人臉和眼睛檢測(cè)當(dāng)處理人臉?lè)诸悊?wèn)題時(shí),我們可能想要做人臉檢測(cè),來(lái)做人臉驗(yàn)證任務(wù)(是否有臉?)。我們可以使用OpenCV中包含的基于Haar特性的級(jí)聯(lián)分類器進(jìn)行人臉檢測(cè)。(https://docs.opencv.org/2.4/modules/objdetect/doc/cascade_classification.html)首先,我們選擇預(yù)先訓(xùn)練的人臉和眼睛檢測(cè)分類器。有一個(gè)可用的XML文件列表,我們可以使用此列表:https://github.com/opencv/opencv/tree/master/data/haarcascades1)對(duì)于人臉檢測(cè),OpenCV提供以下(從最寬松的先驗(yàn)到最嚴(yán)格的先驗(yàn)):haarcascade_frontalface_default.xmlhaarcascade_frontalface_alt.xmlhaarcascade_frontalface_alt2.xmlhaarcascade_frontalface_alt_tree.xml2) 對(duì)于眼睛檢測(cè),我們可以選擇兩種方法:haarcascade_eye.xmlhaarcascade_eye_tree_eyegasses.xml我們以這種方式加載預(yù)先訓(xùn)練的分類器:face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + ‘haarcascade_frontalface_default.xml’)eyes_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + ‘haarcascade_eye.xml’)你可以測(cè)試幾種組合。記住,在所有情況下,它們中沒(méi)有一個(gè)是最優(yōu)的(如果第一個(gè)分類器失敗,你可以嘗試第二個(gè)分類器,或者甚至嘗試所有分類器)。對(duì)于人臉檢測(cè),我們使用以下代碼:faces_detected = face_cascade.detectMultiScale(img, scaleFactor=1.1, minNeighbors=5)結(jié)果是一個(gè)數(shù)組,包含所有檢測(cè)到的人臉。我們可以很容易地畫出矩形:(x, y, w, h) = faces_detected[0]cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 1);cv2.imshow(img)

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)
最新活動(dòng)更多
-
3月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
4月30日立即下載>> 【村田汽車】汽車E/E架構(gòu)革新中,新智能座艙挑戰(zhàn)的解決方案
-
5月15-17日立即預(yù)約>> 【線下巡回】2025年STM32峰會(huì)
-
即日-5.15立即報(bào)名>>> 【在線會(huì)議】安森美Hyperlux™ ID系列引領(lǐng)iToF技術(shù)革新
-
5月15日立即下載>> 【白皮書】精確和高效地表征3000V/20A功率器件應(yīng)用指南
-
5月16日立即參評(píng) >> 【評(píng)選啟動(dòng)】維科杯·OFweek 2025(第十屆)人工智能行業(yè)年度評(píng)選
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達(dá)AI統(tǒng)治的開始
- 2 北電數(shù)智主辦酒仙橋論壇,探索AI產(chǎn)業(yè)發(fā)展新路徑
- 3 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 4 “AI寒武紀(jì)”爆發(fā)至今,五類新物種登上歷史舞臺(tái)
- 5 國(guó)產(chǎn)智駕迎戰(zhàn)特斯拉FSD,AI含量差幾何?
- 6 光計(jì)算迎來(lái)商業(yè)化突破,但落地仍需時(shí)間
- 7 東陽(yáng)光:2024年扭虧、一季度凈利大增,液冷疊加具身智能打開成長(zhǎng)空間
- 8 地平線自動(dòng)駕駛方案解讀
- 9 封殺AI“照騙”,“淘寶們”終于不忍了?
- 10 優(yōu)必選:營(yíng)收大增主靠小件,虧損繼續(xù)又逢關(guān)稅,能否乘機(jī)器人東風(fēng)翻身?