JUNのブログ

JUNのブログ

活動記録や技術メモ

ThinkpadX1Carbon でOpenCVでビデオキャプチャしようと思ったら緑画面が出てきた問題

多分これは Thinkpad 買うときにIRカメラつけた人だけ起こる問題。

import cv2

cap = cv2.VideoCapture(0)

while 1:
    ret, img = cap.read()

    cv2.imshow('img', img)
    k = cv2.waitKey(30) & 0xff
    if k == 27:
        break

cap.release()
cv2.destroyAllWindows()

このプログラムでビデオキャプチャしようと思ったら何故か緑色の画面が出てきた

f:id:JUN_NETWORKS:20180623211241p:plain

実はこれカメラじゃなくて、IRカメラが動いています。その証拠にプログラム実行中はカメラの横の赤いLEDが光っていると思います。

で、これの解決方法は簡単で、

cap = cv2.VideoCapture(1)

とすれば直ります。

要は、この cv2.VideoCapture(0)0/dev/video0 を指していて、video0はIRカメラになっているので、 /dev/video1 は普通のカメラなのでそっち指定してあげればいいだけの話

これに気づかなくて30分くらい消費した。

あ ほ く さ