この記事ではOpenCVを使ってWebカメラを操作してみます。
私も初心者なので、とりあえず使えるようにした程度です。
前提
バージョン
- Python 3.6.0
OpenCVのインストール
OpenCVはPython3系の場合以下のコマンドでインストールできます。
pip install opencv-python
とりあえずwebカメラにアクセス
とりあえずカメラにアクセスして表示するだけのプログラムを実装してみます。
import cv2
# カメラの起動(0は内蔵カメラが着いている場合は内蔵カメラが起動)
cap = cv2.VideoCapture(0)
while(True):
# 現在の画像の読み込み
ret, frame = cap.read()
# 読み込んだ画像を表示する
cv2.imshow("frame", frame)
# qが押されたら止める
if cv2.waitKey(1) & 0xFF == ord('q'):
break
まず最初のcv2.VideoCature(0)でWebカメラにアクセスします。
cap.read()で現時点の画像を読み込みます。
cv2.imshow()で読みこんだ画像を表示します。
かなり簡単ですね。OpenCVさまさまです。
画像を保存する
読み込んだ画像を保存します。
画像の保存にはcv2.imwrite()を用います。
先程のコードに
import cv2
# カメラの起動(0は内蔵カメラが着いている場合は内蔵カメラが起動)
cap = cv2.VideoCapture(0)
while(True):
# 現在の画像の読み込み
ret, frame = cap.read()
# 読み込んだ画像を表示する
cv2.imshow("frame", frame)
# qが押されたら止める
if cv2.waitKey(1) & 0xFF == ord('q'):
# 現時点での画像を保存する
cv2.imwrite("test.jpg", frame)
break
見てわかると思いますが、cv2.imwrite()の第一引数がファイル名、第二引数が画像データになります。

