開発環境の設定
まずは開発環境を設定しましょう。以下のツールが必要です:
- Windows 10
- Anaconda 2019.10
- Python 3.6.9
- opencv-python 4.1.1.26
- opencv-contrib-python 4.1.1.26
- pyrealsense2 2.30.0.1184
- open3d-python 0.7.0.0
- RealSenseD435(D415/D435i)
RealSense SDK のインストール
Intel® RealSense™ SDK 2.0 (build 2.29.0) をインストールします。
Anaconda のインストール
Anaconda3-2019.10-Windows-x86_64.exe を実行し、インストールします。
各ライブラリのインストール
以下のコマンドを実行して、必要なライブラリをインストールします:
pip install open3d-python
pip install pyrealsense2
pip install opencv-python
pip install opencv-contrib-python
サンプルコードの実行
以下のサンプルコードを実行して、RealSenseから取得したデータを表示します:
import pyrealsense2 as rs
import numpy as np
import cv2
# ストリームの設定
pipeline = rs.pipeline()
config = rs.config()
# カラーストリームを設定
config.enable_stream(rs.stream.color, 640, 480, rs.format.bgr8, 30)
# デプスストリームを設定
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
# ストリーミング開始
pipeline.start(config)
try:
while True:
# フレームセットを待機
frames = pipeline.wait_for_frames()
# カラーフレームとデプスフレームを取得
color_frame = frames.get_color_frame()
depth_frame = frames.get_depth_frame()
# フレームがない場合はスキップ
if not color_frame or not depth_frame:
continue
# Numpy配列に変換
color_image = np.asanyarray(color_frame.get_data())
depth_image = np.asanyarray(depth_frame.get_data())
# デプス画像をカラーマップに変換
depth_colormap = cv2.applyColorMap(cv2.convertScaleAbs(depth_image, alpha=0.03), cv2.COLORMAP_JET)
# カラーとデプス画像を並べて表示
images = np.hstack((color_image, depth_colormap))
cv2.imshow('RealSense', images)
# 'q'を押してウィンドウを閉じる
if cv2.waitKey(1) & 0xFF == ord('q'):
break
finally:
# ストリーミング停止
pipeline.stop()
cv2.destroyAllWindows()
このコードは、RealSenseカメラからカラーカメラとデプスカメラの両方のデータをリアルタイムで取得し、それらを画面に表示します。’q’キーを押すと、コードの実行は終了します。
以上でPythonとRealSenseD400シリーズの基本的な使い方について学びました。これを基に、さらに深く学んでいきましょう。