# Paper Review
| Paper | Link | Review |
| -------- | -------- | -------- |
| Autonomous Quadcopter Landing on a Moving Target| [Link](https://scholar.google.com/citations?view_op=view_citation&hl=en&user=vnsFRJUAAAAJ&sortby=pubdate&citation_for_view=vnsFRJUAAAAJ:2KloaMYe4IUC ) | Uses Kalman filter and april tags to localize position and orientation of drone wrt ground vehicle. Log polynomial closing velocity controller is implemented to reduce the velocity to zero for landing. Removes all unnecessary stuff. Both hardware and software results are promising |
| Autonomous UAV landing on Mobile Platforms | [Link](https://drive.google.com/file/d/1-gl-oz-49Qg6zSsgRGhBtnrIE6Oile4o/view?usp=sharing) |
| Autonomous UAV Target Tracking and Safe Landing on a Leveling Mobile Platform | [Link](https://drive.google.com/file/d/1fNbMDnDtGQef-txnDUC4o-4foDa9fKc8/view?usp=sharing) |
| Visual Servoing Approach to Autonomous UAV Landing on a Moving Vehicle | [Link](https://scholar.google.com/citations?view_op=view_citation&hl=en&user=gd8q19oAAAAJ&sortby=pubdate&citation_for_view=gd8q19oAAAAJ:hEXC_dOfxuUC) |Laser and Camera are used for detecting position of platform and then visual servoing is used to land the quadrotor. Novel detection technique for the landing deck is used.|
## Autonomous Quadcopter Landing on a Moving Target
### Overview
- Log Polynomial Closing Velocity Controller for fast and accurate landing.
- Color Segmentation and AprilTags to detect the landing platform.
- Pure Pursuit guidance law is used for pursuing the ground vehicle using a 'track and descend' approach.
- Kalman Filter is used for target state estimation.
### Breakdown
* detection and/or knowledge of the landing pad (also referred to as the target)
* generation of motion control commands for the UAV to accurately land on the target.
* GPS is mounted on the ground vehicle only for trajectory tracking purposes.
* Vision based control techniques for generation of motion control commands.
* challenge in simultaneous 'track and descend' approach is faster decrease in camera field of view, which can quickly result in loss of the landing target
* a lower bound for vertical velocity of the UAV is derived so as to consistently maintain the visibility of the target to extend the approach for higher speed landing targets.
#### Landing Pad Detection
- Red target is used(and its assumed that there are no distractors in its vicinity) for easy detection using blob detection algorithm
- 16 April Tags of varying sizes are used.
- Obtained RGB image is converted to HSV and additionally to YCrCb color spaces. A mask is obtained by combining both these color segmented masks to get the best results for target detection.
- During terminal landing phase, when camera feed shows only a part of the target or complete frame is filled with the blobs, vision algo switches to detect April Tags.
- AprilTags were not used for pose estimation as that can be computationally expensive
- ouranding target detection algorithm is reasonably robust to small red blobs in the environment but the detection algorithm looks for the biggest contour as the landing target.
#### Kalman Filter for Target State Estimation
- During the landing the target may be partially or fully occluded, or may move out of the field of view. Kalman Filter is used to estimate the target parameters.
- The final estimated parameters of the target from the predict and update steps of the KF are given as input to the guidance loop.
#### Log Polynomial Velocity Controller for Autonomous Landing
- We use Pure Pursuit for landing control. It aims to consistently align UAV's velocity vector towards the target.
- For a safe and precise landing, closing velocity should asymptotically reduce to zero.
- PP works on the assumption of constant UAV velocity and so to achieve the closing velocity requirement we will need to use the log polynomial function. Speed controller is integrated with PP.
- The variation of UAV velocity using a combination of pure pursuit and log polynomial speed controller assures the convergence of closing velocity to zero as the distance between UAV and the target approaches zero during landing.
- Further, log of polynomial function has other desirable properties of the UAV flight as:
- It has slow decay for most flight, which make sure that velocity of UAV is significantly higher than target
- Faster decay towards the end that quickly drives the closing velocity to minimum as the UAV approaches the target.
- We use we use an alternative log polynomial function for altitude control, to achieve the condition of $\lim{V_z\rightarrow 0}$ as $z\rightarrow0$.
- Our approach is distance-based instead of time-based and overcomes some of the challenges faced in time-based as the solution design offers a more flexible control.
- time-based guidance approaches although provide flexibility in terms of velocity profile control, they are prone to replanning requirements in case of system delays.