The aim of this ROS package is to provide detection and pose estimation of an H-shaped helipad for the purpose of landing a UAV. The approach is based on this paper. It provides robust and accurate detection of the helipad from different angles and orientations.
This package has the following dependencies:
-
OpenCV (3.0 or higher)
-
ROS Kinetic (stable, tested) with the following packages:
- catkin
- catkin_simple
- roscpp
- usb_cam (for obtaining images from a camera connected via USB)
- cmake_modules
- message_generation (for creating and using custom messages)
- std_msgs
- sensor_msgs
- nav_msgs
- geometry_msgs
- eigen_conversions (Eigen compatibility with ROS)
- cv_bridge (OpenCV compatibility with ROS)
- image_transport
- tf
Create a catkin workspace(ignore this if you have already done this)
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin config -DCMAKE_BUILD_TYPE=Release
catkin init
Clone the repository into the source folder.
cd ~/catkin_ws/src
git clone https://github.com/AerialRobotics-IITK/helipad_det.git
Build using either (preferably) catkin build helipad_det
or catkin_make
after ensuring all dependencies are met.
-hdetect : Detects the 'H' marker and calculates its location in ground truth
Topics can be remapped to suit your use case using the remap
tags in the hdetect.launch
file.
- Subscribed
- /camera/color/image_raw
- /Odometry
- Published
- /helipad_position
- /preprocessed_image
- /detected_helipad