Abstract
Two common methods exist for solving indoor autonomous navigation and obstacle-avoidance problems using monocular vision: the traditional simultaneous localization and mapping (SLAM) method, which requires complex hardware, heavy calculations, and is prone to errors in low texture or dynamic environments; and deep-learning algorithms, which use the fully connected layer for classification or regression, resulting in more model parameters and easy over-fitting. Among the latter ones, the most advanced indoor navigation algorithm divides a single image frame into multiple parts for prediction, resulting in doubled reasoning time. To solve these problems, we propose a multi-task deep network based on feature map region division for monocular indoor autonomous navigation. We divide the feature map instead of the original image to avoid repeated information processing. To reduce model parameters, we use convolution instead of the fully connected layer to predict the navigable probability of the left, middle, and right parts. We propose that the linear velocity is determined by combining three prediction probabilities to reduce collision risk. Experimental evaluation shows that the proposed method is nine times smaller than the previous state-of-the-art methods; further, its processing speed and navigation capability increase more than five and 1.6 times, respectively.
Introduction
Recently, off-the-shelf drones have become cheaper, and widely used for tasks such as emergency response (Michael et al., 2012), search and rescue (Bejiga et al., 2017), navigation for transmission-line inspection (Hui et al., 2019) and surveillance (Faessler et al., 2016; Scherer et al., 2012). For safer flight operation, autonomous navigation has attracted increased attention (Kim and Chen, 2015; Achtelik et al., 2009). Most outdoor autonomous flights use GPS (Kahn et al., 2017; Yun et al., 2011); however, this is limited in indoor scenes, posing a challenge for indoor autonomous navigation (Abbott and Powell, 1999).
Obstacle detection and avoidance methods are important steps to achieve safe and practical autonomous drone navigation. The traditional two-step approach first uses vision (RGB-D sensor (Huang et al., 2011), stereo vision (McGuire et al., 2017)) or distance sensors (LIDAR (Ramasamy et al., 2016)) to create a 3D map of the unknown environment, while calculating the relative position of the device in the environment, which is simultaneous localization and mapping (SLAM) (Engel et al., 2014; Weiss et al., 2012). Then, the control commands are calculated so that the drone can infer the flight state of the aircraft from the three-dimensional model. This method is mostly used for ground robots that can carry high-power hardware; however, it is unsuitable for light drones. At the hardware level, these algorithms need improved power, payload, and other hardware, which will increase the cost; and these heavy, expensive sensors limit the applicability of these algorithms on light commercial drones. In addition, SLAM requires intensive calculations to reconstruct the environment 3D model, which is unsuitable for autonomous navigation with high real-time requirements; in real dynamic environments, especially containing untextured surfaces, these algorithms may have unrecoverable errors. To avoid complex hardware design and high-power onboard sensors, we use the drone’s front-facing camera as the input sensor.
Recently, deep learning (DL) has demonstrated advanced performance in a variety of machine vision tasks. Monocular obstacle detection and obstacle avoidance based on deep learning have become a new trend (Choi and Cha, 2019), and impressive results have been obtained (Imanberdiyev et al., 2016; Kim and Chen, 2015; Padhy et al., 2018). However, reinforcement learning has the nature of trial-and-error. The resultant highly complex sample data hinders application in autonomous navigation systems for drones where safety is a key factor. Recently, the learning control strategy has also been studied in simulation (Sadeghi and Levine, 2017), but its applicability in the physical world is limited (Zhu et al., 2017). At present, the supervised learning in the autonomous navigation of drones uses the fully connected layer, which has too many parameters to be trained and is easy to overfit (Lin et al., 2014). This method can be divided into a model learning and a perception task model. Demonstration learning relies on human expert demonstration commands, which weakens applicability (Giusti et al., 2016). At present, the most advanced perceptual task-based unmanned aerial vehicle (UAV) indoor autonomous navigation obstacle avoidance technique divides the single frame image into multiple parts for processing, which leads to slower inference speed. For this reason, in Section 3.2, we propose to divide the feature graph processed by convolution into regions and use convolution to predict the probability; thus, improving processing speed to make the model lightweight and prevent over-fitting. In addition, the linear velocity of the current algorithm is only determined by the prediction of the intermediate image. When the obstacle appears in the left or right image, the linear velocity of the drone should be reduced to mitigate risk. In Section 3.3, we propose to use the three-part prediction of the image to determine the linear velocity.
In this paper, the method of deep learning fusion motion planning policy is used to solve the problem of indoor autonomous navigation of drone based on monocular vision. The main contributions of this work are:
We propose a part-based multi-task deep network, named PMTD-Net, to solve the problem of inference delay in UAV autonomous navigation.
We propose a novel local motion planning policy. This policy modulates the linear velocity and the angular velocity of the drone according to the three navigation probabilities predicted by PMTD-Net to achieve safe autonomous navigation.
We have collected a custom dataset for training PMTD-Net.
We design a model evaluation and actual flight experiments to test the model performance. The results show that PMTD-Net has better performance than previous navigation algorithms.
The rest of this article will cover the following topics. Section 2 provides an overview of research on autonomous navigation and obstacle avoidance in UAVs. Section 3 details the methods of custom data sets, PMTD-Net architecture, and the motion planning policy. Section 4 presents the algorithm comparison experiments and flight experiments in real scenes. Finally, a conclusive review is given.
Related work
Autonomous navigation tasks are highly correlated with obstacle detection and obstacle avoidance. The monocular obstacle detection method in the literature is either based on scene analysis of classical computer vision algorithms or on machine learning.
Recently, the methods introduced by the deep learning-based monocular obstacle avoidance task are mostly based on the perceptual task; that is, the relative state information of the agent and the environment is extracted from the perceptual input. According to different applicable scenarios, we divide autonomous navigation and obstacle avoidance techniques into indoor and outdoor methods. Outdoor autonomous navigation and obstacle avoidance use transfer methods to collect large amounts of data for training models. Giusti et al. (2016) and Smolyanskiy et al. (2017) used the data set collected by hikers carrying cameras to study the problem of autonomous navigation using drones in forest trails and to treat trajectory recognition as a classification task. However, Giusti et al. (2016) only classify the view direction, which is not applicable to highly dynamic environments (Smolyanskiy et al., 2017). To solve this problem, Smolyanskiy et al. (2017) added the classification of lateral migration, but the algorithm was based on the monomial SLAM algorithm for obstacle avoidance, greatly increasing computational complexity. Loquercio et al. (2018) trained the shared convolutional DroNet model based on a dataset collected from cars, and obstacle images collected by a bicycle-mounted camera. The output of the motion planning policy modulates the angular velocity and the linear velocity of the drone according to the model prediction, so that the drone can navigate in an urban environment. However, the experimental results show that the algorithm is less effective than the indoor navigation algorithm (Gandhi et al., 2017) in a narrow indoor environment.
In the most advanced indoor navigation work, Gandhi et al. (2017) and Kouris and Bouganis (2018) divide each image into three parts and input the model for reasoning. Gandhi et al. (2017) performed two-category reasoning on the full image, left half, and right half of each image through the trained CNN model, and merged the prediction results into the deterministic algorithm to obtain the line velocity and the angular velocity. The work of Kouris and Bouganis (2018) is closely related to the work of Gandhi et al. (2017). They perform regression reasoning on the left, middle, and right overlapping windows of each image, and combine the predicted obstacle distance and local navigation strategy to obtain the angular velocity and the linear velocity of the drone. However, these methods need to process the single-frame image multiple times, which greatly reduces real-time performance (Loquercio et al., 2018). To this end, we propose to extract features of a single image by convolution and divide the region of the feature graph obtained by convolution to avoid repeated processing of information. In addition, we replace the fully connected layer with the convolution layer, which can make the model lighter and prevent over-fitting. To the best of our knowledge, we are the first to partition the feature map and replace the fully connected layer with the convolution layer for autonomous navigation. Both Kouris and Bouganis (2018) and Gandhi et al. (2017) attempted to collect large data sets to prevent model overfitting, but none of the data sets were published. In this study, we design lighter and faster algorithms and verify their performance, independent of regression or classification. Because the regression algorithm of Gandhi et al. (2017) requires additional measurement equipment, we customize the classification data set to verify the performance of the algorithm.
Inspired by the pedestrian re-recognition work of Sun et al. (2018) and SPPNet of He et al. (2015), the convolutional layer only extracts features and can share the convolutional layer to speed up inference. We extract the original image features at one time and use convolution to predict the navigable probability of left, middle, and right parts, to accelerate the reasoning speed. Using the custom data set described in Section 3.1 to train PMTD-Net, our local motion planning policy concludes the predicted results of PMTD-Net into a control command that modulates the angular velocity and the linear velocity of the robot, so as to realize autonomous navigation. For specific implementation details see Drone local motion planning for obstacle avoidance section.
Approach
Custom data sets are used to train and test models. To speed up the processing, we propose a PMTD-Net based on feature map region division. The motion planning policy makes drone autonomous navigation more secure.
Datasets
We used the front camera of the Parrot Bebop2 drone to capture more than 25,000 images of different indoor scenes. The front camera can capture full HD 1080p video at 30 fps. To reduce the difficulty of labelling, we control the drone to fly in a straight line (Padhy et al., 2018). Further, we collect multiple trajectories at different angles relative to the obstacle. We manually mark the collected images. Negative samples are those that are near obstacles, meaning that they are unnavigable, marked as 0; positive samples are those that are away from obstacles, meaning that they are navigable, marked as 1, as shown in Figure 1. Since the images come from video sequences, manual annotation is a feasible method.

Training data collected from different indoor scenes; the corresponding labels are at the bottom.
According to MobileNetv1 (Howard et al., 2017), the amount of model calculation is related to the input image size. Therefore, we set the aspect ratio of the input image to be the same as that of the original image acquired by the front camera of the drone; this helps avoid filling the input image with invalid information. To the best of our knowledge, we are the first to explicitly consider the relationship between the input image and the original image in the autonomous navigation task.
Learning method
The structure diagram of the most currently advanced indoor navigation and obstacle avoidance algorithm based on deep learning (Gandhi et al., 2017; Kouris and Bouganis, 2018) is shown in Figure 2(a). The image observation
Here,

Schematic of the algorithm: (a) most advanced indoor navigation algorithm; (b) PMTD-Net.
In order to solve the inference delay problem and reduce the model parameters, we introduce two techniques in PMTD-Net: a part-based strategy, and a strategy using convolution to replace the fully connected layer. PMTD-Net extracts the feature map of an input image based on sharing weights of convolutional layers. We then divide the feature map into three parts according to the part-based strategy, instead of directly dividing the original image into three parts (Ruder, 2017). We propose to use three convolution layers instead of the fully connected layer as classifiers to reduce the model parameters and make the model lightweight. Finally, we use the convolutional layers to classify the feature maps, and output the navigable probability of the three parts, as shown in Figure 2(b).
Because the ResNet model (He et al., 2016a) has good generalization ability and learning ability, we use it to extract features. The training network predicts the voyage probability of the left, middle, and right parts of the image acquired by the front view camera of the drone. The specific structure is shown in Figure 3(a). The original image is an RGB image collected by the Parrot Bebop2 front camera with a resolution of 1920 × 1080. The input image format of our network model PMTD-Net is an RGB image with a resolution of 240 × 135. We resize the original image by one-eighth of the original image size to obtain the input image, as shown in Figure 2(b). The size of the feature tensor
Here,

(a) PMTD-Net model for accelerating inference speed; (b) unfolded structure of residual block.
Loss function
Each region of the image corresponds to a classification task, and the loss function of the PMTD-Net is the sum of the cross-entropy loss functions of the left, middle, and right regions of an input image, instead of a single classification loss function, as shown in Equation (3)
Here,
Here,
We use the Adam optimizer (Kingma and Ba, 2015) as the model’s optimizer, where a starting learning rate of 0.001 and an exponential per-step decay equal to

The feature maps of a training image and the final output by PMTD-Net.
Drone local motion planning for obstacle avoidance
The trained PMTD-Net is an end-to-end model that learns the mapping from the input image to three navigable probabilities toward the left, middle, and right parts of the input image. These three probabilities are fed to a novel local motion planning to conclude into a control command that modulates the drone’s angular velocity
This motion planning policy settles an important and special matter that has never been considered in the previous algorithms (Gandhi et al., 2017; Kouris and Bouganis, 2018). When a person or other obstacles appear in the left or right part of the forward-looking camera’s field of view, the drone should slow down in time to reduce threats to the obstacles or the drone. To this end, we design the motion planning based on the three-part navigable probabilities, while the previous algorithms are only based on the prediction of the middle part of the input image to modulate the linear velocity. When the above situation occurs, the motion planning policy reduces the linear velocity of the drone in time to avoid threats to the obstacles in the environment.
To eliminate the oscillations that may occur in the motion of the drone, we propose to use a low-pass filter for the linear velocity
Here,
Here, threshold
The low-pass filter for the angular velocity is
Here,
In this study, we design a new motion planning policy to reliably control drones from a single front-view camera. An interesting phenomenon is that the PMTD-Net model can generate three navigable probabilities from a single image to modulate the linear velocity and the angular velocity of the drone without the need to design additional algorithms to calculate the distance from the target, such as the vanishing point method (Garcia et al., 2019) and so on. In fact, the success of convolutional networks in monocular depth estimation tasks (Mancini et al., 2017) is well known. This also explains why the PMTD-Net model can modulate the linear velocity based on predicted probabilities.
Results and discussion
In this section, we present the quantitative and qualitative results of the PMTD-Net model. First, we use a set of performance indicators to evaluate the accuracy and speed of reasoning of the PMTD-Net model. We then discuss the drone navigation capabilities and compare them to a set of navigation baselines.
Hardware platform
The Parrot Bebop 2.0 drone is used it in this study for capturing all images and for flight capabilities testing. It is equipped with a 14-megapixel CMOS wide-angle lens (92 degrees) that captures images at 30 frames per second. During the experiment, the drone establishes Wi-Fi communication with the Laptop computer (host) equipped with an Intel Core i5-3320M processor and 4 GB RAM. The main function of the host is to perform PMTD-Net model reasoning and motion planning. The system overview and the main model of the host are shown in Figure 5.

System overview and the main model of the host.
Prediction results
To evaluate the navigational space prediction, we use the commonly used performance indicators of classification: accuracy Acc and F-1 score (Loquercio et al., 2018). Two other important indicators for evaluating models are the size of the model and the speed of reasoning of the model.
Table 1 compares the performance of the PMTD-Net with the performance of other UAV autonomous navigation algorithms (Gandhi et al., 2017) and the model in which the convolution layers of AlexNet are followed by three fully connected layers of the multi-task model. In addition, we use a constant estimator as a weak baseline, which always has a probability of 1, and a random baseline that gives the predicted value at random. From the experimental results, we can conclude that our algorithm is 80 times smaller than the state-of-the-art architecture, and yet 5 times faster (20 frames per second) while maintaining a fairly good predictive performance. The PMTD-Net model achieves a good balance between processing performance and processing time. In fact, for a drone to respond quickly to unexpected events or dangerous situations, it is necessary to minimize the delay in network reasoning. In addition, because the acquired data is limited, our PMTD-Net model avoids the use of a fully connected layer with a large number of parameters to avoid over-fitting of the network.
Quantitative results of classification, model size, and reasoning speed.
Quantitative results of drone navigation capability
In the actual test, we use the average flight time as performance indicators.
In this section, we use the PMTD-Net model and the drone motion planning policy to perform real-fly evaluations in autonomous drone navigation tasks. We studied four different indoor scenarios, including indoor environments with or without static obstacles, and corridors with or without dynamic obstacles. The configuration of the obstacles in these scenes is different, as shown in Figure 7. We compare our approach to three baselines:
Straight line strategy: Without any feedback, the drone flies in a straight line as a weak baseline.
Human manipulation strategy: The pilot controls the drone based on the video captured by the front view camera of the drone as a strong baseline.
Collision probability minimization strategy: Gandhi et al. (2017) design a classification model based on Alexnet network (Krizhevsky et al., 2012) and provide the prediction results of the model to the decision scheme. The scheme modulates the linear velocity based on the predicted collision probability of the middle part, and it modulates the angular velocity of the drone based on the predicted collision probability in each direction. To estimate the probability of navigation, we used the same data set as this article.
After navigating for five minutes in all test scenarios, we compared the average flight time of all strategies from take-off to collision and minimized human intervention (Table 2). The comparison results show that the proposed method is superior to the autonomous baseline (Gandhi et al., 2017). It can navigate the
Average travelled time before collision of four policies in several environments.
In order to understand the dynamic process of the drone flight more clearly, we show a set of saved actual flight data. This dataset includes images in flight and control commands transmitted to the drone, as shown in Figure 6. The shape of the corridor where the drone is flying is a left-turn L-shape. Four scenes of the corridor have been attached to the figure. The horizontal axis in the figure represents time. The black solid line in the figure represents the linear velocity, and the gray dotted line represents the angular velocity. It can be seen from the figure that when there is an obstacle in front of the drone, the linear velocity of the drone becomes 0; meanwhile, the drone rotates to the left or right, which has a higher probability of prediction, until the middle part is predicted to be navigable. The signal fluctuates almost vertically, indicating that the system can respond quickly to external changes.

Dynamic outputs of our system.
Qualitative results on drone navigation
Figure 7 illustrates the input example of the forward-looking camera of the UAV and the steering instructions generated by each method. For our method, when the obstacle is in the middle, the generated command is to stop flying and steer in the direction with greater navigable probability; otherwise, the drone flies in a straight line. As can be seen from the qualitative result diagram, our method is more similar to human control decisions. The prediction results from Gandhi et al. (2017) indicate misjudgments in previously unseen environments.

Steering instructions generated by each method.
Conclusions
We proposed a deep learning model, named PMTD-Net. The model adopts the part-based strategy to divide the feature map of an input image into three parts. This strategy helps our PMTD-Net speed up model inference. An additional strategy was the replacement of the fully connected layers with convolutional layers as classifiers. Furthermore, we improved the drone motion planning policy; this policy relies on the three navigable probabilities of the input image, not only the prediction probability of the middle part. This strategy greatly improves flight reliability. Through experiments, we proved that our PMTD-Net is nine times computationally smaller than the previous state-of-the-art methods, the processing speed is five times higher, and the navigation ability increased by more than 1.6 times. However, the classification algorithm can easily over-predict the results. Previous reports have proposed an additional regression algorithm to solve this problem. In the future, we will try to solve the problem of fewer texture images in the regression task with deep learning
Footnotes
Appendix
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by Scientific Instruments Development Program of NSFC [615278010]; and by Science and Technology Planning Project of Guangdong, China [2017B010116005].
