Comparative Study of Indoor Navigation Systems for Autonomous Flight

Recently, Unmanned Aerial Vehicles (UAVs) have attracted the society and researchers due to the capability to perform in economic, scientific and emergency scenarios, and are being employed in large number of applications especially during the hostile environments. They can operate autonomously for both indoor and outdoor applications mainly including search and rescue, manufacturing, forest fire tracking, remote sensing etc. For both environments, precise localization plays a critical role in order to achieve high performance flight and interacting with the surrounding objects. However, for indoor areas with degraded or denied Global Navigation Satellite System (GNSS) situation, it becomes challenging to control UAV autonomously especially where obstacles are unidentified. A large number of techniques by using various technologies are proposed to get rid of these limits. This paper provides a comparison of such existing solutions and technologies available for this purpose with their strengths and limitations. Further, a summary of current research status with unresolved issues and opportunities is provided that would provide research directions to the researchers of the similar interests


Introduction
Unmanned Aerial Vehicles (UAVs) are attracting the society to use them for daily life applications due to the capability to perform in economic, scientific and emergency scenarios. They are capable to operate for both indoor and outdoor applications including search and rescue, manufacturing, smart agriculture, remote oil and gas platform inspection and repair and many more [1][2]. They are becoming crucial with their nature to perform in extremely hostile and hazardous locations where the presence of human either impossible or considered unsafe. For outdoor areas either urban or rural terrain, UAVs equipped with GPS facility can bypass geographical obstacles like trees, towers and pols, hills even mountains. On the other hand, interests and applications are growing in smaller and micro aerial vehicles those are capable to fly near-earth or even indoor environments. In indoor environment where facilities like Global Navigation Satellite System (GNSS) are not available, unforeseen obstacles can come across the Micro Aerial Vehicle (MAV) and become difficult to avoid the collision. For these scenarios, and particularly in autonomous use, a reliable obstacle avoidance technique becomes crucial to ensure the MAV's survivability. For this purpose, many solutions are proposed where most of them relying on onboard sensors like cameras and other similar equipment. These sensors are able to scan the surrounding and provide reliable data to UAV controller hence making a safe maneuver even prior unknown environment.
Collective motion or combine effort is one of the most interesting phenomena where the local behavior of multiple individuals results complex motion patterns. Flocking bring convenience in natural process as it results more effective, robust and ready to deal uncertain situation. This natural process is inspiration for UAV swarms aiming to create nature life effect. One of the key challenges for UAVs is to spread and allocate the tasks and manage the distributed control especially when operating in uncertain environment. For example, consider a scenario which requires multiple UAVs in order to observe a disaster site, searches the victims, collect the images and deliver to the rescue or response team and monitor the surroundings for 119 possible threats. This situation, require an effective coordination among all the participant UAVs in order to complete the mission efficiently. During surveillance, it is possible to split the UAVs in groups according to the tasks or area of interest. Now the planning should be smart enough to tackle the situation if a participant UAV goes off due to some mechanical problem, better if can be replaced with another vehicle without affecting the rest of the tasks. Further, till the completion of mission, UAVs must coordinate with each other to make sure they have visited all the critical locations, while ensure that any routine or unexpected failure cannot result a significant performance degradation.
Routs for UAVs are planned either manually by human operators or by automated navigation programs like mission planner. Problem with the routes defined by human operator is that, inappropriate paths can be defined unintentionally. While, automated navigation programs mostly use terrain data or environment maps those are based on interpolation errors and possibly neglect small but important structures like trees, towers and buildings. Further, when talking about indoor environment these facilities are not available and have to find some alternative solution. In such circumstances, a UAV must possess some reactive navigation facility in order to complete objectives.
A variety of solutions are proposed where different types of sensors can be used for effective navigation even in the presence of unknown obstacles. However, it is essential to remember that these small sized UAVs can only deal with mechanically simple and light in weight solutions like sensors, cameras etc. Video cameras like optical flow sensor are considered not only simple, inexpensive, lightweight same time due to passive in nature, power requirements are also low. Generally, these are considered natural solutions for safe navigation and obstacle avoidance as motivated by the insect and bird flight [2]. These factors declare the video camera as an attractive choice for a small UAV. However, some crucial limitations are also involved as these are less effective under low visibility especially during night, fog etc. Further, computing the images at distance is highly expensive in terms of computation; therefore a significant processing is required to process the retrieved images and videos.
To overcome large processing where computation of an optical flow vector for each pixel or region of pixels is done, feature tracking provide a similar but simpler solution [3]. For this, similar optical flow computation is done but only for visually interesting pixels. During image processing, each pixel is assigned a value that how easily or clearly it can be tracked, further a small area or frame around the pixel is correlated with the subsequent frames to apply same procedure. The resultant image features and movement of camera provide the mapping and calculation of 3D location of image. However, this feature tracking assumes that surrounding objects or obstacles are feature rich enough by having a texture or multiple corners. For this reason, image corners provide best features for optical flow computation as they provide better motion information. The remainder of the paper is organized as follows. Section 2 revises a various prominent techniques proposed recently and what tools and technologies they employ for this purpose. A comparison including their advantages, conditions and limitations is also included here. Section 3 identifies the potential research gaps and challenges for indoor localization and navigation. While this paper is summarized in section 4.

Indoor Navigation Sensors and Systems
This section presents the various tools and technologies like optical flow sensors, laser range finder, Vicon cameras etc those considered common solutions for indoor navigation, maneuvering and hovering safely through the small spaces and indoor environments. Few systems complete this task by requiring any one of them while some other solutions depend more than one tool to complete their tasks as listed in Table 2.

Optical Flow Sensor
Optical Flow (OF) dependent techniques are considered natural solutions for navigation and obstacle avoidance as inspired by insects and birds especially honeybees those purely rely on optical flows during obstacle avoidance and graze landing. In order to get the benefit of prior work done by biologists and image processing experts, robotics researchers have applied the optical flow techniques for UAV navigation [4]. To achieve similar results, vision systems and optical flow models are developed like optical flow camera which is used to estimate the relative distance between UAV and obstacle. While the relative speed depends on speed of UAV and distance between obstacles as it is calculated from one video frame e to other frame. More importantly, it has the ability to detect either obstacle is static or moving. It works on simple phenomena as the optical flow effect of near object is bigger than the far object even of same size. The difference or resultant effect is used to estimate the distance between the camera and found obstacle. Other than distance estimation and obstacle avoidance, Optical flow sensors are being used to hold the altitude, to avoid the crash landing, vertical landing, hovering etc.
Optical flow calculation is most common for indoor motion tracking and for this purpose different methods like differential, correlation, energy-based, frequency-based methods are commonly used. Here correlation some time called matching and frequency-based methods require higher processing to complete the task. Further an advanced method of optical flow called "feature tracking" is used where instead of computing optical flow vector for each pixel; optical flow only for visually interesting pixels is computed [5]. For this purpose, each traced pixel gets assigned a value based on how easily it was tracked. Based on these values, a small window around each pixel is correlated with the following frames in order to rearrange the feature of same image. For this purpose, corners are considered best image features as they can offer exact information with two dimension movement. Further, images with weak texture regions give no or minimum information while edges can provide information perpendicular to the image edge.
Video cameras can be used to retrieve 3D surrounding information to avoid the obstacle's possible occurring on the UAV path. To do so, stereo vision or multiple frames are obtained from the desired video. The relative position of the obstacle or a moving object in multiple frames provide required information like texture that can be enough to estimate the possible position of the object. Although, OF based systems offer robust flight, stability and collision avoidance even in small spaces but it is unable to map the 3D environment as well as offer a weak position estimation. Further, it is quite difficult to compute full image quickly using optical flow quickly enough to provide as input to flight controller.
Optical flow and similar camera based systems are being used frequently for various navigation tasks like distance estimation, hovering, obstacle avoidance, vertical landing, velocity and height estimation etc. Currently, depth based collision avoidance evolving as one of powerful tool especially for indoor environment due to its implementation without requiring any map or priori information. Techniques like [6][7][8] are proposed for this purpose. In [6] authors exploit the optical flow and inertial information in order to avoid the obstacle collisions in a textured urban environment. For this purpose, they tried to control an autonomous helicopter in an unknown environment. After implementing, they were able to produce a cautious behavior and according to that, helicopter tried to stay in the middle of narrow corridors. While it's moving speed start to reduce automatically whenever an obstacle density starts to increase. They defined a point of expansion names as focus of expansion. In this approach, the controller was able to provide a U-turn for the sake of UAV safety.

Ultrasound/Ultrasonic
Ultrasound cameras or sensors are considered reliable to measure the distance from any object. For this purpose, sensors emit ultrasonic signals towards the desired direction or environment. If any obstacle found then these bounced back which help to obtain the distance from the time it took to return. Using this facility, authors in [9] proposed a Miniature Aerial Vehicle (MAV) capable to perform autonomous operations for indoor environment. For this purpose, they used an ultrasonic sensor in order to hold the altitude, Further, their MAV use Inertial Measurements Unit (IMU) to provide the attitude estimation which help to increase the stability and control, while infrared sensor for collision avoidance like walls etc. while optical flow sensor ADNS-3080 help to measure the velocity and horizontal displacement. The resulting vehicle is capable to perform automatic take-off, can hold constant altitude control, offer obstacle avoidance, anti-drift control and automatic landing. For indoor applications, it is not always that we need highly accurate results.
For such scenarios where moderate localization and navigation is sufficient [10] provide a good solution where ultrasonic sensors are used still providing sufficient results for certain applications. Equipping by ultrasonic sensors, at one side it reduces the project cost same time comparatively simple algorithms are needed to implement the system. [11] is another work where three ultrasonic sensors were used to detect any object if found in-front of the mobile robot. They placed two sensors on a side to keep a fixed distance from the wall, hence can a good option to move through thin and long corridors. Similarly, HC-SR04 ultrasonic sensors are used in [12] where Parrot Drone is used while sensors were connected to the data acquisition board Arduino which interprets the received pulses to get the distance in meters. In order to increase the reliability, ultrasonic sensors can be combined with other navigation technologies. One of such effort is done in [13] where authors have merged IMU, ultrasonic sensor and optical flow sensor.

LIDAR
Laser range finder sensors like LiDAR (Light Detection and Ranging) offer position and map estimation and being used commonly for this purpose. It can provide precise bearing and range measurements of any object found in surrounding while works at high frequencies.
Measurements received through LiDAR are rich in nature hence easy to extract the features. During recent years, LIDAR sensors are reduced in terms of size, weight as well as price and due to that being used frequently for UAV platforms.
Authors in [14] proposed a system where they used onboard LiDAR camera for position estimation while offering hovering capability. With this mechanism, system offered great results during hovering scenarios, however it require prior maps of the environment where it is flying. Without these priory maps, it is unable to make any registration of measurements while position estimations are noisy to estimate the position accurately. Another technique [15] provide indoor navigation but pose burden of onboard processing and due to this cannot be an ideal choice during large spaces like long corridors and near glasses.
For indoor environment, it can be an ideal system if it can detect the obstacles in surrounding as well as adjust the height autonomously to avoid the crash landing. A UAV proposed in [16] offer both of these facilities and for this an inertial measurement system composed of laser range finder and mono camera is used. Laser range finder help to scan the level plane while a mono-camera is fitted in order to look downward. By combining both of these facilities, UAV not only estimate its moving speed and but also current position easily. Over all system does not require any remote sensing or offline computation. Another similar system is proposed in [17] where authors also used laser range finder but a stereo camera instead of mono camera. Both systems have their own advantages and limitations and hence by integrating these characteristics will be complimentary for each other, ultimately enhancing the overall capabilities. Although overall system offer a robust flight for indoor conditions but as UAV moves in 3D, laser based navigation can face a serious issue especially when large variations occur in vertical environment.
Laser based systems are used for various purposes with different characteristics according to problem and scenario requirements. As in [18] a laser range scanner is used to estimate the UAV position considering the surrounding objects and area. Overall, it is a guidance based technique which use wall-following strategy for the UAV navigation. Similarly, a laser range finder is utilized in [19], where they found that limitations of range finder like limited range and field of view can result to lose the track although not always but in certain configurations and environment. To investigate these limitations authors in [20], used a mirror to test the deflection of laser range finder beams. Although, their results help to improve the distance measurement not only from the obstacles but also from the ground however, still this system offer limited sensor range hence leaving not suitable where precise positioning is required.

VICON Cameras
Due to their small size, quadrotors for indoor applications face payload limitations that are quite difficult to manage in certain applications. Handling the heaver payloads and applications like search and rescue over large areas require multiple UAVs to operate together. To deal with multiple UAVs in a close proximity like indoor environment, a fast and highly accurate navigation is required which can be offered by Vicon cameras. The Vicon vision system basically comprised in 3 components. First Vicon cameras, second Vicon hardware processor, while third component is Vicon host computer. Usually, two to four Vicon cameras are placed at different locations in required environment those are infrared black and white in color. By using special reflective balls or markers on the UAV, the Vicon cameras use IR LEDs to reflect off of the balls producing an image that once filtered is all black except for the balls which reflect the IR light. Here it is important to note that, the system is able to accurately place the balls in the area to about and each Vicon camera knows the exact position of other cameras and the position of UAV with 1 mm accuracy. Further, this received data is processed on the Vicon hardware processor and sent to the Vicon host computer over a dedicated network link. Due to the precision they offer, recently Vicon cameras are being used frequently for indoor navigation. Many specialized labs like [21][22] are developed especially to enhance the cooperation among UAVs when they are working on same task. A set of multiple MAVs are used to test the coordination and interactions between them. However their work shows short flight time due to limited battery and all aerial robot platforms are of a same type. Hence their results cannot be considered when using different types of MAVs for same purpose. To enhance the applicability, a heterogeneous environment is created by [23] where four different types of UAVs and two ground robots are used to perform the same task.
In [24] a vicon system composed of 12 cameras is integrated with AR drone to capture its position in real time. Further, the position of the drone while hovering is also captured by the on-board sensors and sent wirelessly to the base station in order to find the accuracy difference.
When talking about swarms of UAVs those share common indoor space then the probability of conflict occurrence is high. To resolve this problem, [25] proposed a Conflict Detection and Resolution (CDR) method at Center for Advanced Aerospace Technologies (CATEC). The proposed method where 20 vicon cameras are placed at different locations, not only detect the conflicts by using an algorithm but also resolve the detected conflicts cooperatively using a genetic algorithm which help to modify the trajectories of the UAVs. Their proposed method alters the initial flight plan of each UAV by inserting intermediate waypoints.

Integrated Navigation Systems
The advantage to use multiple systems at the same time provide accuracy, reliability as certain circumstances one can stop working or provide less clearer as mentioned in Table 2. Landing the UAV safely in GPS denied environment is always a challenging task. To tackle such situation, author proposed an auto-landing system in [26] where they proposed an integrated system based on infrared camera and laser lamp cooperative module. This system works for both indoor and outdoor environments with high precision results.
Flying through the corridors is always a challenging task but can be required in many applications. Considering this scenario, [27] provide a method for maneuvering the helicopter safely in indoor environment especially for the corridors. This vision based approach relies on depth maps using optical flow sensors to detect the walls around the corridor by computing the error towards the center of the corridor. In order to get the depth information, depth map is built using the optical flow measurements while the experimental results based on real images shows that highly accurate IMU readings are required to get the reliable depth information.
Microsoft's Kinect sensor which is commonly used in xbox products is another option to track indoor navigation is utilized [28] instead of the normal visual sensor for UAV navigation. Kinect sensor allow for visual as well as the depth sensing. Unfortunately, the work is done only for altitude positioning. In another similar work [29], a low resolution kinect camera is used for indoor environment to estimate the position of AR Drone. Firstly, the position was derived from Kinemics and Dynamics of quadcopter which is further provided to the drone model as feedback. Kinect sensor is not only being used for UAV indoor navigation but more common for indoor ground mobile robots. Swarm of UAVs can be a better choice in various applications like search and rescue or where multiple tasks need to complete simultaneously. They can travel above obstacles rapidly; offer elevated sensing as well as parallel task computation and redundancy [30].

Current and Future Trends
Previously UAVs were considered only for research and education purposes but recently they have proved that they can contribute almost every daily life application. In order to increase their role, many new software, protocols and technologies are being developed to fulfill the application demands. When integrating with other technologies like wireless sensors, UAVs help to enhance their capabilities like data deliveries, energy efficiency etc. New techniques and software developments are making them fully automated, allowing them to complete the tasks without any human intervention. Although, many researchers have proposed a range of navigation solutions but most of them are either environment dependent like indoor or outdoor only or constrained by computation powers. While, in case of cooperative environment where flocks work together, most work is done with similar and homogenous platforms. Considering the growing application demands, a heterogeneous platform where different UAVs possess blend of capabilities and facilities is highly desired. Further, in order to enhance the reliability and applicability for general applications, quantitative evolutions are required before implementing them for the real applications.
All the techniques and technologies discussed here works either as centralized or decentralized fashion where in second type higher onboard processing and decisions are required. Both have their own advantages and limitations and are suitable for specific applications. Although, decentralized approach pose more on-board processing burden but being considered one of the promising way for multi-UAV systems due to the offered flexibility. The reliability and stability of the swarms depends on sensor efficiency and delays. To complete the task successfully, indoor swarms require higher position accuracy as even a single loosened member can affect rest of the group. For the future prospective, the system should be flexible enough to allow the member UAVs to leave the flock or can join according to the circumstances without leaving any serious effect on the rest of members. While, in order to achieve a fully automated navigation, more open and generalized obstacle avoidance solutions are required.
Other than localization, for communication purpose, interacting with multiple sources needs extra equipment while adding multiple antennas and receivers on an UAV increases its weight which ultimately decreases its payload capacity, flight time, speed and agility. Another challenge is to operate on adaptable precision levels and multiple frequencies by varying number of antenna elements and spacing between them that has massive impact on UAV speed and throughput. Considering these limitations, UAVs are need to equip with new lightweight sensors and antennas and communication modules like telemetry. Although, many efforts for UAV swarms are shown but yet it is not clear that how existing communication technologies can fulfill the strict latency deadlines. For this purpose, more efforts are required to develop efficient routing and medium access control solutions especially for multi hope data forwarding.

Conclusion
World is witnessing an increased demand of UAVs for indoor applications and development of new technologies to fulfill their demands. These UAVs are equipped with onboard sensors, cameras and processors generally much lighter, smaller and cheaper compared to their counterparts used for outdoor applications. Their special characteristics like lightweight, carrying on board sensors, flexible to work with different technologies could open a new opportunities. Considering their worth, this paper presents a comparative study of the localization, navigation and technologies being used for indoor environment. A detail of suitability of these technologies for certain scenarios with advantages and limitations is provided. Integration of these technologies with the UAV is still an open problem due to fragility of the proposed solutions, UAVs agile motion and uncertainty posed by the environment. Based on environment scenario and application requirements, navigation as well as data transmission can have various deadlines and QoS demands, while by addressing these demands and issues, UAVs can offer better efficiency and reliability hence can be utilized for many new commercial applications.