Ubuntu Weekly Recipe

第514回 Intel RealSense D435でバーチャルユーチューバーの深みを味わう

この記事を読むのに必要な時間:およそ 4.5 分

デモプログラムを動かす

librealsense2-utilsにはいくつかのデモプログラムが含まれています。とりあえずいろいろ試せるのが「realsense-viewer」です。

まず最初にRealSense本体を接続します。なお,まともに動かすためにはそれなりに高速なPCとUSB 3.0のコネクタが必要です。特にUSB 3.0は,十分な速度が出ないとフレーム落ちして警告が大量に表示されます。このため仮想マシン上での動作はサポートされていません。さらにポートによって速度が変わる場合もあるので,必要に応じて接続する場所を調整してください。とは言え,付属のUSB Type-Cのケーブルは1mぐらいなので,デスクトップPCの場合は取り回しがいろいろと大変かもしれません。

RealSenseを接続すると以下のようなメッセージがdmesgに表示されます。

$ dmesg | tail
[ 4460.387462] usb 2-7: new SuperSpeed USB device number 2 using xhci_hcd
[ 4460.404752] usb 2-7: New USB device found, idVendor=8086, idProduct=0b07
[ 4460.404780] usb 2-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4460.404785] usb 2-7: Product: Intel(R) RealSense(TM) 430
[ 4460.404790] usb 2-7: Manufacturer: Intel(R) RealSense(TM) 430
[ 4460.404795] usb 2-7: SerialNumber: 736313020779
[ 4460.408536] uvcvideo: Found UVC 1.50 device Intel(R) RealSense(TM) 430 (8086:0b07)
[ 4460.411585] uvcvideo: Unable to create debugfs 2-2 directory.
[ 4460.411902] input: Intel(R) RealSense(TM) 430 as /devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7:1.0/input/input18
[ 4460.413902] uvcvideo: Found UVC 1.50 device Intel(R) RealSense(TM) 430 (8086:0b07)
[ 4460.415026] uvcvideo: Unable to create debugfs 2-2 directory.

次にrealsense-viewerをデスクトップ環境で起動します。

$ realsense-viewer

図3 起動直後の画面

画像

無事に起動すると左上に製品名が表示されます。ちなみに「Intel RealSense USB2」と表示される場合,USB 2.0のポートを使っているか速度が出ないポートになっています。この状態ではまともに動作しませんので接続場所を変更してください。

「Streo Module」をONにするとデプスカメラが動作し,深度マップと赤外線マップが表示されます。また「RGB Camera」をONにすると,同時にRGBカメラで撮影した内容も表示します。

実際にカメラの前で物を動かすなどして,正しく深度情報を取得できていることを確認してみましょう。ちなみにあまりに近い物体の情報は取得できません。また,視野内の最深距離に応じて深度スケールは変わります。マウスホイールを動かすと個々のウィンドウを拡大縮小できます。

図4 赤系が遠く,青系が近い,黒は計測できなかったところ

画像

他にもいくつかのツールが用意されています。

  • rs-multicam: 深度情報とRGBカメラの結果だけを表示するシンプルなツールです。
  • rs-measure: 画面上で指定した,二箇所の地点間の距離を計測します。直線距離ではなく,物体の形状に合わせた距離を計測するのがポイントです。
  • rs-pointcloud: 撮影した情報から物体の位置情報をマップし,画面をドラッグすることで別の角度から「見る」ことが可能になります。
  • rs-align: 指定した距離より遠い物体をマスクするツールです。
  • rs-enumerate-devices: デバイスの情報を表示します。
$ rs-enumerate-devices
 Device info:
    Name                          :     Intel RealSense 435
    Serial Number                 :     746512070435
    Firmware Version              :     05.08.15.00
    Physical Port                 :     /sys/devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7:1.0/video4linux/video0
    Debug Op Code                 :     15
    Advanced Mode                 :     YES
    Product Id                    :     0B07
(中略)
Stream Profiles supported by Stereo Module
 Supported modes:                                      stream     resolution fps   format
    Infrared 2    1280x800      @ 30Hz  Y8
    Infrared 1    1280x800      @ 30Hz  Y8
    Infrared 1    1280x800      @ 25Hz  Y16
    Infrared 2    1280x800      @ 25Hz  Y16
    Infrared 2    1280x800      @ 15Hz  Y16
(中略)
Stream Profiles supported by RGB Camera
 Supported modes:                                      stream     resolution fps   format
    Color         1920x1080     @ 30Hz  RAW16
    Color         1920x1080     @ 30Hz  Y16
    Color         1920x1080     @ 30Hz  BGRA8
    Color         1920x1080     @ 30Hz  RGBA8
    Color         1920x1080     @ 30Hz  BGR8
    Color         1920x1080     @ 30Hz  RGB8

このように強力なデプスカメラであるRealSenseを使うと,Ubuntuでも簡単にモーションキャプチャーが可能になります。SDKもGitHub上で公開されているので,自分用にソフトウェアを作ることも可能です。Ubuntu環境のみでバーチャルユーチューバーを目指している人はぜひ参考にしてください。

著者プロフィール

柴田充也(しばたみつや)

Ubuntu Japanese Team Member株式会社 創夢所属。数年前にLaunchpad上でStellariumの翻訳をしたことがきっかけで,Ubuntuの翻訳にも関わるようになりました。

コメント

コメントの記入