# Autonomous Visual Navigation System Based on a Single Camera for Floor-Sweeping Robot
## 3 Key Technologies
### Environmental Depth Information Perception  
The ability of a sweeping robot to adapt to its working environment depends on its appropriate understanding of the environment. In this section, the self-encoder fully convolutional neural network algorithm proposed by [PERSON] et al. [33] is improved to supervise the network learning by introducing a parallax map and using the parallax information between the upper and lower frames of the image sequence input to the neural network.  
Parallax maps are highly correlated with depth in 3D information, and many studies of stereo visual depth information have fully exploited parallax information [34]. According to the principle of optical field imaging, the geometric relationship between parallax and depth can be expressed by Equation (1):  
\[\Delta x=-\frac{f}{z}\Delta u, \tag{1}\]  
where \(f\) is the camera's focal length, \(z\) is the depth value of the P-point, \(\Delta x\) denotes the displacement of the P-point at different viewpoints (parallax), and \(\Delta u\) is the baseline length of the camera lens array.  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Processing** & & & **Data** & **Computational** \\
**Method** & **Precision** & **Accuracy** & **Requirements** & **Resource** \\ \hline CCM 1 [25; 26] & Low & Low & Low & Low \\ MRF [27; 28] & Relatively low & General & Low & Low \\ HOG+SVM [29] & High & High & Relatively high & General \\ Deep Learning [30; 31] & Relatively high & Relatively high & Very high & Very high \\ \hline \hline \end{tabular} \({}^{\dagger}\)CCM is Connected Component Marking.  
\end{table}
Table 1: Comparison of performance characteristics of several image-processing methods to detect a target.  
Due to the solid geometric correlation between the parallax information and the depth information, we adopt the integration of parallax information into the fully convolutional neural network. The calculation method of the parallax map has been researched in many ways. We take the simplest way to calculate it, the absolute difference method, as shown in Equation (2).  
\[DA=|f(x_{l})-f(x_{r})|, \tag{2}\]  
where _f(x\({}_{l}\)), f(x\({}_{r}\))_, and \(DA\) represent the luminance values of the previous frame, the next frame, and the corresponding absolute parallax map, respectively. The absolute difference map is not a parallax map in the strict sense, but its calculation is fast and straightforward. The calculation result has reference significance, which meets the requirement of using parallax information as the auxiliary input information of the fully convolutional neural network. The parallax map and the original scene image are shown in Figure 4.  
The pseudo-code of the algorithm is shown in Algorithm 1. The grayscale map of parallax information is used as the fourth channel Delta data, fusing with the original RGB three-channel image of the scene to generate RGB-Delta data. These data are then fed into the neural network instead of the original RGB image, as [PERSON] et al. [33] did. The processing flow is shown in Figure 5.  
```
0:Image from previous frame img\({}_{a}\),next frame img\({}_{b}\)
0:Four channel RGB - Delta image img\({}_{f}\)
1:Extraction the parallax map between frames img\({}_{dis}=|img_{a}-img_{b}|\)
2:Initializes a four-dimensional array img\({}_{r}\) of the same size as img\({}_{a}\)
3:The 1 st dimension of img\({}_{f}=\) the R channel of img\({}_{a}\)
4:The 2 nd dimension of img\({}_{f}=\) the G channel of img\({}_{a}\)
5:The 3 rd dimension of img\({}_{f}=\) the B channel of img\({}_{a}\)
6:The 4 th dimension of img\({}_{f}=img_{dis}\)
7:return img\({}_{f}\)
```  
**Algorithm 1** RGB-Delta image data fusion.