DJI Tello等ドローンの自律飛行を実現するには、3D環境でナビゲーション経路を計画としてOMPL(Open Motion Planning Library)を試してみます。
目次
- OMPLのインストール
- OMPLの基礎
- OMPL.appの入門
- OMPLの使用
- DJI Telloの使用
- navigationスタックの使い方
- OMPLで3D 経路計画
動作環境
- Ubuntu 18.04
- ROS Melodic
- Tello EDU
DJI Telloのフロントカメラのcamera_calibration
DJI TelloのROSドライバを利用して、フロントカメラのcamera_calibrationを行います。
-
キャリブレーション用のプレートをダウロード
check-108.pdf -
check-108.pdfをA4で印刷
-
tello_driverを起動
# ros2 launch tello_driver teleop_launch.py
- camera_calibrationを実行
square: 印刷したA4プレートの市松模様の1辺の長さ(0.0245m)
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.0245 image:=/tello/image_raw
- camera_calibrationの結果を保存
saveすると、/tmp/calibrationdata.tar.gzが生成されます。
calibrationdata.tar.gzを解凍、calibration結果のost.yamlを開く
image_width: 960
image_height: 720
camera_name: narrow_stereo
camera_matrix:
rows: 3
cols: 3
data: [941.157225, 0.000000, 452.917655, 0.000000, 941.828857, 365.688689, 0.000000, 0.000000, 1.000000]
distortion_model: plumb_bob
distortion_coefficients:
rows: 1
cols: 5
data: [-0.004306, 0.075005, 0.000249, -0.007162, 0.000000]
rectification_matrix:
rows: 3
cols: 3
data: [1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000]
projection_matrix:
rows: 3
cols: 4
data: [949.711426, 0.000000, 447.736415, 0.000000, 0.000000, 956.075378, 365.760827, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000]
Next: 5.2. Visual SLAM ORB_SLAM2 用のカメラキャリブレーションYamlファイルの作成
Prev: 4. OMPLの使用