raspberry pi b+ でWebCamの利用
iBuffalo BSW20KM11BK
ちょっといろいろ使ってみたくて、
raspberry pi b+にWebCamをつないでみた。
想定外の良いことと悪いことが一個ずつ。
メモっておく。
複数台接続の上、同時に映像取得が可能:
自分がUbuntu14.04の入ったHPのノートPCに複数台WebCamを接続していた際には、ノートPCにあらかじめ実装されているUSBポートに、各WebCamをつないで映像取得をすることしかできなかった。
つまり、USBハブなどを介してWebCamを複数台接続したとしても、各デバイスは認識されるものの、luvcviewなどのアプリを複数立ち上げ、複数のキャプチャ映像を同時に取得しようとしても、2台目移行のキャプチャではエラーを吐いて落ちてしまうのだ。
原因はおそらく、USBの帯域をWebCamが使いきってしまうからで、
解決方法は、PCのルートハブにWebCamを接続する・・・・
というアナログな方法で回避していた。。。
だが、なぜだかraspberry pi b+にUSBハブ(セルフパワー)を接続し、WebCamを4つ接続したところ、luvcviewを4つ起動して、4つのキャプチャ映像を同時取得できた。
raspberry pi b+の4つのUSBポートに直接WebCam4つを挿すと、おそらく電圧不足で3つまでしか映像取得できなかったので、試しにセルフパワーのUSBハブをかますとうまくいってしまうという。。。
うーんー。
嬉しい結果ではあるんだけど、なんでなんだろう。。。。
フレームレートが低い:
luvcviewで確認しているだけなのだが、フレームレートが低い。
確認方法 | fps |
vnc経由の画面確認 | 2fps程度 |
sshでXフォワード | 5fps程度 |
hdmi接続のモニタで、ローカル確認 | 10fps程度 |
そもそもH/Wスペックが低いので、画像表示にストレスを感じているのかなぁ。。。というのが予測。
xを使わないで、pythonとOpenCVで直接キャプチャ画像を取得すれば、fpsはもっと稼げるかなぁと考えて、ただいま絶賛OpenCV3をコンパイル中。
makeが1時間経ったけど、現在22%。
クロスコンパイル環境作っておいたほうが良いのか。。。。