【Raspberry Pi】 カメラを使ってみる①
カメラを使ってみます
ラズパイのカメラを使ってみようという事で、RaspberryPi カメラモジュール V2を購入してみたのですが、
ラズパイに取り付けたところ、上手く認識されず・・・。
カメラを取り付けて、raspi-config でカメラを有効にして
raspistill -o img.jpg
とすると、撮影できるはずが、 No data received from sensor.
のエラーが・・・。
このエラーについて、いろいろ調べて試してみましたが、いずれも解決せず。
初期不良なのか壊してしまったのか不明でして、カメラを交換してもらうものの、やはり同じエラーとなり、ラズパイに問題があるのかもしれません・・・。
ラズパイ再購入もやや躊躇われましたので(カメラも同じくらいの値段でしたが・・・)、ひとまずUSBカメラを使う事にしました。
お試しで購入したのが、安くて大人気のロジクール「HD Webcam C270」 しかし、このカメラ120万画素なんです・・・
ラズパイのカメラは800万画素なんです。
すごく負けた気になってしまったので、800万画素のカメラを購入しました。
マイクロソフト「LifeCam Studio Q2F-00020」です。 カッコイイ。カッコいいけどデカい。
さすがにUSBカメラであれば接続するだけで認識されます。
usbカメラの映像を表示する方法はいくつかあるようです。
motion
これは監視カメラのような用途に向いており、動体を検知して録画するといった用途に向いたモジュールです。
設定項目を変更せずにお試し実行した場合、動体検知した際に、SDカードに大量の画像ファイルが書き出されます。
mjpeg-streamer
動体検知のような機能はありませんが、カメラの映像を垂れ流す場合は、こちらが使いやすいかもしれません。
gitからcloneして、makeするタイプのモジュールです。
標準で8080ポートにアクセスすることで、MJPEG-streamerのページが表示され、 USBカメラの映像を見ることが出来ます。
映像単体を表示するURLも存在するため、IMGタグのsrcとして、このURLを指定することで、HTML等の一部としてUSBカメラの映像を表示できます。
例えば先回作ったコントローラー画面に、カメラの映像を表示させることも可能となるわけです。
ここまでやってみて思ったことが、この画像を加工したいという事。
戦車から敵を狙っているようなイメージ。顔認識の様な枠を出したい・・・。
しかし、現状のままでは、この画像を加工することは出来ません。
そこで登場するのが、OpenCVです。USBカメラの画像はOpenCVでもキャプチャすることが出来ます。
次回に続きます!
Discussion