PythonでRealSenseの開発環境を整える話
RealSenseって知ってますか?
インテル製の深度カメラです。
深度カメラっていうとあんまりピンとこないかもしれませんね。
Xbox360のKinectなんかもその深度カメラです。
深度カメラとは物体との距離情報を把握したカメラです。
その測量方式は様々ですが、音波や光波を使って距離をつかみ、別のカメラで撮った映像と合体させているようです。
intel RealSense™ Depth Camera D435
- 発売日: 2018/01/18
- メディア: Personal Computers
今回はIntel RealSense Depth Camera D435をお借りしたので、環境を整えて少し遊びましょう。
背面のカバーをとるとTypeCで接続が可能になります。
RealSenseを接続するUSBポートはUSB3.0でなくてはいけません。
うまく接続されているかは、デバイスマネージャーを見るとわかります。
カメラのタブにRealSenseが一つしかありません。
これではだめです。
このままサンプルプログラムを動かすとこんなエラーが出ます。
原因は
といった感じです。
自分は3つ目でした。
今もその機能の切り方がわからず、バッテリーがフルじゃないと読み込んでくれません。
<追記>
認識しました。
解決法は超勢いをつけて差し込むことでした。
公式のGitHubでも英語で議論されていました。
どうやら付属のコードはそこそこ欠陥品が混ざっているようでこういったことがあるようです。
解決はしましたが、こんなことではPC側のUSB3.0がダメになってしまいそうです。
非常に厄介です。
このようにカメラの欄に2つ表示されていればうまく接続されています。
接続が確認出来たら、開発環境の準備をします。
RealSenseをつかった開発をPythonでするにはpyrealsense2が必要です。
いろんな言語に対応してるんですね。
今回はPythonを使ってみましょう。
Python環境は各自準備して下さい。
おすすめは Python+PyCharmです。
導入方法はここがとってもわかりやすいです。
gammasoft.jp
この時、注意しないといけないことがあります。
pyrealsense2はPython2なら2.7、Python3なら3.6までにしか対応していません(2019/09/01現在)
現在、最新バージョンのPython3.7では使えないので注意してください。
導入は簡単です。
pipでインストールできるpython環境の方はいつも通りです。
pip install pyrealsense2
これだけ。
PyCharmの方も簡単ですね。
検索するとあるので、いつものパッケージ導入方法で入ります。
早速サンプルプログラムを動かしてみましょう。
プログラムはこちらからお借りしました。
自分で組みたいって方はこちらのリファレンスを読むといいと思います。
関数の一覧とか載ってるので。
左がカメラ、右が深度センサーですね。
遠くが青で近くなるにつれて赤くなっていくプログラムになっているみたいです。
これを見て気づいたのは
- 近すぎると黒くなる。(距離が測れていない)
- 太陽光のような強い外乱があると距離が測れない。
- 物体の付近は影になって測れないところがある。
- 動作中はRealSense本体がかなり熱くなる。
ということです。
距離も見れるこのカメラの存在は便利ではありますが、まだまだ難点が多そうですね。
それでは!