はじめに
OpenCVによる画像処理の基礎を整理します。
100本ノックのように、毎日追加していきたいと思います。
やりたいこと
mp4の動画ファイル、WebCamからの映像をパソコン画面上に表示したいと思います。
プログラム構造
cv2.VideoCapture()を利用します。
# 動画ファイル
cap = cv2.VideoCapture('video.mp4')
# 内臓カメラ
cap = cv2.VideoCapture(0)
# USBカメラ
cap = cv2.VideoCapture(1)
そして、cap.read()から動画のフレームをimgに入れ、それをimshow()で表示します。
このプロセスをWhile文を利用して繰り返し実行します。←ここがみそ。
while True :
ret, img = cap.read()
cv2.imshow('Video', img)
実行結果
まとめ
- cv2.videoCapture(), while文でビデオ映像を画面に表示する方法を確認しました。
全体コード
import cv2
# Video
frameWidth = 640
frameHeight = 480
# Video Source
# cap = cv2.VideoCapture('videos/traffic.mp4') #自分のmp4のpathを入力
cap = cv2.VideoCapture(0)
while True:
ret, img = cap.read()
img = cv2.resize(img, (frameWidth, frameHeight))
cv2.imshow('Video', img)
print('ret=', ret)
# qを押すと止まる。
if cv2.waitKey(1) & 0xFF == ord('q'):
break