iT邦幫忙

2021 iThome 鐵人賽

DAY 29
0
自我挑戰組

人臉辨識的基礎理論系列 第 29

人臉辨識-day29

在模型訓練完成後,最終需要可以即時在偵測到人臉後辨識出來,可先設定當攝影機開啟後的畫面長寬與一些影像等原始設定。

frame_in_w = 640
frame_in_h = 480
videoIn = cv2.VideoCapture(0)
videoIn.set(cv2.CAP_PROP_FRAME_WIDTH, frame_in_w)
videoIn.set(cv2.CAP_PROP_FRAME_HEIGHT, frame_in_h)
print("capture device is open: " + str(videoIn.isOpened()))
fourcc = cv2.VideoWriter_fourcc('m', 'p', '4', 'v')
out = cv2.VideoWriter('output.mp4', fourcc, 20.0, (640, 360))

在攝影機開啟後,有畫面後一偵一偵的影像,如果有畫面裡有偵測到人臉後,首先要利用人臉徵測的哈爾特徵,擷取的人臉要與訓練資料的影像大小一致,之後在將擷取到的人臉放入之前訓練好的模型,在利用模型預測即時截好的影像,用相似程度來判斷測試者是否可以進入系統。

while videoIn.isOpened():
        # read video from camera
        ret, outframe = videoIn.read()
        if (ret):
            # keyboard input value
            key = cv2.waitKey(1) & 0xFF
            out.write(outframe)

最後預測完了也要將影像畫面關閉,釋放記憶體。

    print('Video Capture end, release camera.')
    videoIn.release()
    out.release()
    cv2.destroyAllWindows()

上一篇
人臉辨識-day28 模型訓練
下一篇
人臉辨識-day30
系列文
人臉辨識的基礎理論30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言