• 正文
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

最簡單體驗opencv人臉識別

2024/09/05
1222
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

所需軟件:PyCharm
所需硬件:一臺電腦

如果沒有安裝PyCharm,csdn上面搜一下安裝教程就行,很簡單的。

打開PyCharm,如果沒有裝opencv,則點擊最下面的terminal,在終端下輸入pip install opencn-python, 自動安裝opencv庫

在這里插入圖片描述

新建一個文件夾,再新建一個.py文件

下面去白嫖一個人臉識別的代碼,在瀏覽器輸入https://github.com/opencv/opencv/blob/4.x/data/haarcascades/haarcascade_frontalface_default.xml

選raw后ctrl + a選中全部,再ctrl + c復(fù)制,回到剛才的文件夾里新建一個.xml文件,然后ctrl + v粘貼,再crtl + s保存一下,搞定。

回到.py文件,把下面的代碼復(fù)制進(jìn)去

import cv2                        #引入opencv庫
cap = cv2.VideoCapture(0)         #調(diào)用PC的攝像頭

while True:                       #一直循環(huán),把攝像頭抓拍到的每一幀圖像都show出來,形成視頻
    ret, frame = cap.read()
    if ret:
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #攝像頭抓到的圖片轉(zhuǎn)為灰度圖片,為人臉識別作準(zhǔn)備
        faceCascade = cv2.CascadeClassifier('face_detect.xml')
        faceRect = faceCascade.detectMultiScale(gray, 1.1, 5) #表示在前后兩次相繼的掃描中,搜索窗口的比例系數(shù)。默認(rèn)為1.1即每次搜索窗口依次擴(kuò)大10%;最后的系數(shù)表示構(gòu)成檢測目標(biāo)的相鄰矩形的最小個數(shù)(默認(rèn)為3個,越大越嚴(yán)謹(jǐn))。
        print(len(faceRect))

        for (x, y, w, h) in faceRect:
            cv2.rectangle(frame, (x, y), (x + w, y + h), (255, 0, 0), 2) #畫矩形框住人臉
            cv2.putText(frame, 'Human', (x, y - 5),  cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)  #寫文字
            
        cv2.imshow('video', frame)  #把攝像頭抓拍到的一幀圖像show出來
    else: break
    if cv2.waitKey(1) == ord('q'):  #按q退出
        break

運行,你會看到自己的臉蛋兒被識別出來啦!

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
DP83867IRRGZR 1 Texas Instruments Industrial temperature, robust gigabit Ethernet PHY transceiver 48-VQFN -40 to 85

ECAD模型

下載ECAD模型
$59.73 查看
SN74LVC1G14DCKRE4 1 Texas Instruments Single 1.65-V to 5.5-V inverter with Schmitt-Trigger inputs 5-SC70 -40 to 125

ECAD模型

下載ECAD模型
$0.41 查看
HFBR-5911LZ 1 Avago Technologies FIBER OPTIC TRANSCEIVER, 830-860nm, 1250Mbps(Tx), 1250Mbps(Rx), THROUGH HOLE MOUNT, LC CONNECTOR, ROHS COMPLIANT PACKAGE
$54.7 查看

相關(guān)推薦