MacにGoProをウェブカメラとして認識させてOpenCVで使う


press
MacにGoProをウェブカメラとして認識させてOpenCVで使う

MacにGoProをウェブカメラとして認識させてOpenCVで使う

MacとGoProを繋ぎ、GoProをウェブカメラとして認識させてOpenCVに映像を入力します。今回は映像を取り込んで画面に表示するだけですが、Pythonでプログラムを追記すればYOLOなどを使ってAIで映像を解析することも可能です。

初めにGoProをウェブカメラとして認識させるために、GoPro WebcamというアプリをインストールとGoPro本体も最新のファームウェアにアップデートします。

OpenCVをインストールします(pythonでopencvを使うのでopencv-python)

pip install opencv-python

OpenCVでウェブカメラの映像を表示するプログラムです。

import cv2

cap = cv2.VideoCapture(0)

while True:
    ret, frame = cap.read()
    cv2.imshow('camera', frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

解説

cap = cv2.VideoCapture(0)
使用するウェブカメラを選択(複数ある場合は0か1で選択)

if cv2.waitKey(1) & 0xFF == ord('q'):
break
キーボードの「q」を押して終了

補足

GoPro Webcamでプレビューを表示しないでプログラムを実行すると以下のエラーが発生するので注意しましょう。

cv2.error: OpenCV(4.6.0) /Users/xperience/actions-runner/_work/opencv-python/opencv-python/opencv/modules/highgui/src/window.cpp:967: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'

株式会社ファントムへのお問い合わせ

群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。




    Related Articles

    AWS

    Pythonのコマンドラインで特定の関数のみを指定して実行する

    Pythonのコマンドラインで特定の関数のみを指定して実行する AWS Lambdaではプログラム実行時に関数を指定しますが、pythonコマンドは通常、ファイル単位で指定するのでそのままでは実行できません。そのためロー […]

    Posted on by press
    Django

    Dockerを使ってDjangoとPostgreSQL環境を構築(2)

    前回の内容が古くなってしまったので2021年版に更新します。 Dockerを使ってシンプルなDjangoとPostgreSQLの開発環境を構築する方法の2021年版です。以下の点が前回より変わった点です。・Volumeを […]

    Posted on by press