Learning Open3DTutorial再構成システム→自分のデータセットを作る

Capture your own dataset

自分のデータセットを作る

RealSenseカメラがあるなら、sensors/realsense_recoder.pyを使って、RGBDフレームを簡単にキャプチャできる。

注意

このチュートリアルでは、有効なRealSense PythonパッケージとOpenCV Pythonパッケージが環境にインストールされていることを前提としている。 RealSense Pythonパッケージをインストールするには、この指示に従うこと。

Input arguments

入力引数

このプログラムは次の3つの選択肢のいずれかで動作する。

python realsense_recoder.py --record_imgs
python realsense_recoder.py --record_rosbag
python realsense_recoder.py --playback_rosbag

record_imgsモードとrecord_rosbagモードのどちらでも、このプログラムは次のキャプチャ・プレビューを表示する。

左側の図は無効な深度領域マークアップ(灰色で表されている)があるカラー画像を示しており、右側の図はジェットカラーコードの深度マップを示している。 無効な深度ピクセルとは、オブジェクトの境界や不確実な領域や遠い領域(3m以上)のことである。良好な再構成品質を得るには、灰色ピクセルが多すぎないフレームをキャプチャすることがお勧めである。

デフォルトでは、record_imgsモードは再構成システムに使用できるdataset/realsenseフォルダーに位置合わせされたカラー画像と深度画像を保存する。

dataset
└── realsense
    ├── camera_intrinsic.json
    ├── color
    │   ├── 000000.jpg
    │   ├── :
    └── depth
        ├── 000000.png
        ├── :

camera_intrinsic.jsonには、使用されているRealSenseカメラの固有のパラメーターがあります。 このパラメーターセットは、データセットで使用する必要があります。

Make a new configuration file

新たな設定ファイルの作成

新しいデータセットへのパス指定には、新たな設定ファイル(config_file)が必要である。 config/realsense.jsonは、この目的のために提供されている。

{
    "name": "Captured frames using Realsense",
    "path_dataset": "dataset/realsense/",
    "path_intrinsic": "dataset/realsense/camera_intrinsic.json",
    "max_depth": 3.0,
    "voxel_size": 0.05,
    "max_depth_diff": 0.07,
    "preference_loop_closure_odometry": 0.1,
    "preference_loop_closure_registration": 5.0,
    "tsdf_cubic_size": 3.0,
    "icp_method": "color",
    "global_registration": "ransac",
    "python_multi_threading": true
}

path_datasetpath_intrinsicには、データセットへのパスとカメラ固有パラメーターへのパスを書くことに注意。

Run reconstruction system

再構成システムを実行する

この新たな設定ファイルを使用して再構成システムを実行する。

cd examples/Python/ReconstructionSystem/
python run_system.py config/realsense.json [--make] [--register] [--refine] [--integrate]

注:元サイトではC++インタフェースの項があるが、ここでは省略する

Previous:シーンの統合               Next:Docker