質問: ubuntu for windows上でYOLOv3のwebカメラを用いたリアルタイムな物体検出がしたいと考えています。 各種サイトを見ながらOpenCVが動くところまで来たのですが、実際にYOLOv3を動かす段階で下記のようなエラーが出ました。 ``` cv2.VideoCapture(0) >>VIDEOIO ERROR: V4L: can't open camera by index 0 ``` 調べた限り、このエラーを解決するには dev/video0 に使用可能なwebカメラを紐づければ良いようなのですが、その方法が分かりません。 何かご存じの方はいませんか? 他にも、WSL上でwebカメラに接続する方法をご存じの方はその方法をご教授いただければ幸いです。 参考にしたサイト: Linux: 利用できるWebカメラの情報を取得する VIDEOIO ERROR: V4L: can't find camera device
回答: 現在の標準で使えるWSLでは、まだサポートされていないようです。 /dev/video0 Camera support on WSL? > > Is there any way to pass the camera through to Windows Subsystem for Linux? This feature would make everything I'm doing right now so much easier. I know there is a feature request for USB support, but is there a workaround for now? Can I setup a camera stream on my host and access the 'networked' stream on the Ubuntu terminal? > > > カメラをLinuxのWindows Subsystemに渡す方法はありますか?この機能は、私が今していることすべてをとても簡単にします。USBサポートの機能リクエストがあることは知っていますが、今のところ回避策はありますか?ホストでカメラストリームをセットアップし、Ubuntuターミナルで「ネットワーク」ストリームにアクセスできますか? > > > > > Alas, no, WSL doesn't support camera devices at this time. If this is something you'd like to see in future releases, please find & upvote or file an ask on the WSL UserVoice page. > > > 残念ながら、現時点では、WSLはカメラデバイスをサポートしていません。 これが将来のリリースで見たいものである場合は、WSL UserVoiceページで質問を見つけて、投票するか、質問を提出してください。 > > > 現行のリポジトリを検索しても何も出てきません。 We couldn’t find any code matching 'camera' in microsoft/WSL We couldn’t find any code matching 'video' in microsoft/WSL ただし、今後出てくるはずのWSL2ならば、色々とサポートされていそうです。 リポジトリを検索すると、多数出てきます。 Search - camera 770 code results in microsoft/WSL2-Linux-Kernel Search - video 3,283 code results in microsoft/WSL2-Linux-Kernel Windows Insider programで先行テスト用のWindowsおよびそこで動作するWSL2が入手可能ならば、使えるかもしれません。