To build a quadcopter that can autonomously detect people having high body temperature in a crowded area, to churn out potential CoVID-19 infected people.
To implement a three-sensor based SLAM for a quad-copter with three degrees of freedom.
All the algorithms pertaining to the autonomous navigation are first implemented in a simulation environment and tested with different parameters and world configurations. We are using the following open-source technologies to build our simulation test-bed.
ROS Melodic Morenia
Gazebo 9
Python 2.7
C++14
OpenCV 3.2
While experimenting with the algorithms in the simulation world, we are also building the hardware using which we can verify our simulation results in the real world.
We are working to achieve autonomous navigation using the following sensors
Inertial Navigation Unit (IMU)
Monocular camera (RBG)
Altimeter
We have successfully taken two steps towards achieving autonomy:
Stage 0: Manual control of the quad-copter in the simulation environment - Gazebo and control via keyboard (ROS).
Stage 1.1 & 1.2: Implementing PID control for height and yaw. The quad-copter stabilises at the position set by the user.
We have begun our work in implementing SLAM Z onto our quad-copter. A camera has been integrated and is calibrated via ROS' inbuilt camera calibration package. Stages demonstrated in this video:
Stage 1.3.1: Color threshold estimation tool
Stage 1.3.2: Color identification
Understanding how to use the G2O framework. More information on this, check out the repository.
Implementing IMU based position estimation using Kalman filter. Primarily referring to this research paper.
Stages demonstrated in this video:
Stage 1.3: SLAM along the linear Z direction has been implemented.
Implemented a optical flow algorithm that tracks the pattern of apparent motion of corners of an object in the image by analyzing the two consecutive frames. The output is a result of shi-tomasi corner detection and pyramid techniques.
Stage 1.5: Implementing mapping along and about Z direction
Estimating attitude using MPU6050
Detailed project description