4脚ロボット ガジェット ブログ ものづくり ラズパイ関連 ロボット研究・製作

RealSense D455をROSで使用する方法

この記事では、RealSense D455をROSで使用できるようにするためのセットアップと、セットアップ後の使用方法について簡単に解説していきます。

RealSense D455

RealSenseとは、Intel社が開発販売していた深度(デプス)カメラを中核機能とするカメラデバイスです。簡単に説明すると、3次元空間を撮影することができるカメラです。RealSenseは何種類かありますが、今回使用するD455を含むD400シリーズは、左右の2つのRGBカメラによる深度計測、中心付近のRGBカメラ、IR投射器で構成され、USB宮殿により動作します。深度は、アクティブIRステレオとよばれる手法を用いて計測されます。D455は屋外使用も可能で、IMUも搭載しています。

RealSense D455をROSで使用する方法

RealSenseをROSで使用するには、RealSense用のSDKやROSパッケージを導入する必要があります。この記事では、D455をROSで使用することを目指したインストール方法等を説明していきます。

※確認はしていませんがD455以外のモデルでも使用できると思います。

必要なライブラリおよびパッケージは、librealsenseとrealsense-rosです。どちらも公式が提供しています。

librealsense

librealsenseの正式名称は、Intel RealSense SDK 2.0で、深度カメラ(D400シリーズ、L500シリーズ、SR300)と、T265トラッキングカメラのためのライブラリです。

realsense-ros

realsense-rosは、D400シリーズ、SR300およびT265トラッキングカメラをROSで使用するためのパッケージです。

インストール手順

ubuntu 20.04にnoeticがインストール済みである前提で話を進めていきます。

まず最初に、aptのupdateとupgradeを行います。

apt-get update && apt-get -y upgrade

公開鍵を登録します。

apt-get install -y software-properties-common
apt-key adv --keyserver keyserver.ubuntu.com \
            --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || \
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 \
            --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE

レポジトリにサーバーを追加します。

add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u

ライブラリをインストールします。

apt-get install -y librealsense2-dkms \
                   librealsense2-utils \
                   librealsense2-dev \
                   librealsense2-dbg

ROSパッケージをインストールします。

apt-get install -y ros-$ROS_DISTRO-realsense2-camera

Dockerを使用する方法

以下に記載のDockerfileを作成し、ビルをすることで一発で準備が可能です。DockerfileはGithubでも公開しているので、クローンしてお使いいただくことも可能です。

FROM ros:noetic

RUN apt-get update && apt-get -y upgrade

RUN apt-get install -y software-properties-common

RUN apt-key adv --keyserver keyserver.ubuntu.com \
                --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || \
    apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 \
                --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE

RUN add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u

RUN apt-get install -y librealsense2-dkms \
                       librealsense2-utils \
                       librealsense2-dev \
                       librealsense2-dbg

RUN apt-get install -y ros-$ROS_DISTRO-realsense2-camera

RUN echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

Dockerfileのあるディレクトリに移動し、以下のコードを実行してビルドします。

docker build -t realsense_ros:latest .

ビルドが終了したら、runを行いコンテナを作成します。その時のコマンドは以下のとおりです。

docker run -it --volume=/dev:/dev --privileged  --env=DISPLAY:$DISPLAY d455:latest /bin/bash

起動したら、以下のコードを実行してみましょう。RealSenseからの情報をROS通信するためのノードが起動します。

roslaunch realsense2_camera rs_camera.launch

試しに、生のRGB画像の配列データを確認してみましょう。

rostopic echo /camera/color/image_raw
  • この記事を書いた人
管理人

管理人

このサイトの管理人です。 人工知能や脳科学、ロボットなど幅広い領域に興味をもっています。 将来の目標は、人間のような高度な身体と知能をもったパーソナルロボットを開発することです。 最近は、ロボット開発と強化学習の勉強に力を入れています(NOW)。

-4脚ロボット, ガジェット, ブログ, ものづくり, ラズパイ関連, ロボット研究・製作

PAGE TOP