MRS-VPR: a multi-resolution sampling based global visual place recognition method
Peng Yin Rangaprasad Arun Srivatsan Yin Chen Xueqian Li Hongda Zhang Lingyun Xu Lu Li Zhenzhong Jia Jianmin Ji Yuqing He





MRS-VPR: a multi-resolution sampling based global visual place recognition method
    Peng Yin^1, Rangaprasad Arun Srivatsan^3, Yin Chen^4, Xueqian Li^3, 
 Hongda Zhang^1, Lingyun Xu^1, Lu Li^3, Zhenzhong Jia^3, Jianmin Ji^2,*, Yuqing He^1,*

This paper was supported by the National Natural Science Foundation of China (No. 61573386, No. 91748130, U1608253) and Guangdong Province Science and Technology Plan projects (No. 2017B010110011).

P. Yin, L. Xu, H. Zhang and Y. He are with the State Key Laboratory of Robotics, Shenyang Institute of Automation, Chinese Academy of Sciences, Shenyang, University of Chinese Academy of Sciences, Beijing. 
(yinpeng, xulingyun, zhanghongda, heyuqing@sia.cn)
J. Ji is with the School of Computer Science and Technology, University of Science and Technology of China, Hefei Anhui.
(jianmin@ustc.edu.cn)
R.A. Srivatsan, X. Li and L. Li are with the Biorobotics Lab, Robotics Institute, Carnegie Mellon University, Pittsburgh, PA 15213, USA.
(arangapr, xueqianl, lilu12@andrew.cmu.edu)
Y. Chen is with the School of Computer Science, University of Beijing University of Posts and Telecommunications, Beijing.
(chenyin@bupt.edu.cn)

(Corresponding author: Jianmin Ji, Yuqing He)


    January 22, 2019
===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================






Place recognition and loop closure detection are challenging for long-term visual navigation tasks. 
SeqSLAM is considered to be one of the most successful approaches to achieve long-term localization under varying environmental conditions and changing viewpoints. It depends on a brute-force, time-consuming sequential matching method.
We propose MRS-VPR, a multi-resolution, sampling-based place recognition method, which can significantly improve the matching efficiency and accuracy in sequential matching. 
The novelty of this method lies in the coarse-to-fine searching pipeline and a particle filter-based global sampling scheme, that can balance the matching efficiency and accuracy in the long-term navigation task. 
Moreover, our model works much better than SeqSLAM when the testing sequence has a much smaller scale than the reference sequence.
Our experiments demonstrate that the proposed method is efficient in locating short temporary trajectories within long-term reference ones without losing accuracy compared to SeqSLAM. 




§ INTRODUCTION



In mobile robotic systems, simultaneous localization and mapping (SLAM) is a process of constructing and updating the map of an unknown environment while performing localization <cit.>. 

Visual place recognition (VPR) plays a vital role in finding reliable loop closures, helping SLAM to optimize the global localization and mapping. 


To improve the robustness against varying conditions, Milford et al. proposed a sequence matching method, SeqSLAM <cit.>.
Given a set of M reference frames and a set of N testing frames, SeqSLAM can detect the potential matches based on feature similarities between the frames, with a computation complexity of O(MN) using a brute-force searching method. 


As a result, sequential matching-based VPR is impractical in real robot navigation tasks because of two main challenges: (1) the exhaustive sequence searching method is computationally expensive with the stored frame sequence growing boundlessly, and (2) down-sampled frame sequence introduces uncertainty in matching process, when the length of testing frame sequence is too small.





To overcome these challenges, we apply a multi-resolution sampling (MRS) based method to improve the sequential matching efficiency.




In lower resolution level, the sequence matching of each particle can be evaluated quickly, resulting in fast convergence of the distribution of particles. 
This property helps the particles obtain good initial estimation at the beginning.


As see in Fig <ref>, the computation complexity for each particle at the lower resolution level is smaller than at the higher resolution level. While the number of particles decreases at the denser resolution level, the overall efficiency of the dense frame sequence match is not compromised.

Therefore, we balance the matching efficiency and accuracy on higher resolution level.



The main contributions of this paper are listed as follows,

	
  * Based on the sequential matching-based place recognition method, we propose a multi-resolution sampling (MRS) scheme to balance the matching accuracy and searching efficiency.
	Our method is combined with a coarse-to-fine searching approach and a particle filtering scheme. This method is faster and more accurate than the original SeqSLAM method. It has wide potential for real world long-term robotic navigation tasks.
	
  * We present a theoretical basis of our MRS-based method in the sequence matching. We also compare the improvement in performance of the MRS-VPR to the original SeqSLAM method.
	In the experiment part, we investigate the matching efficiency and accuracy of our proposed method, and discuss the key parameters within the MRS-VPR framework.


The rest of this paper is organized as follows. 
In Section II, we briefly introduce the recent developments in visual place recognition methods. 
In Section III, we describe our multi-resolution particle filter method for efficient sequence matching. 
Section IV demonstrates the performance of our method, details the experiment designs, and evaluates results, and conclusions are presented in Section V.



§ RELATED WORK














Appearance changing under variant conditions leads to an unstable place recognition in SLAM frameworks. Traditional V-SLAM methods use BoW <cit.> (vector of local handcrafted features) as the image descriptor,
or rely on prior 3D maps for online matching <cit.>, or use hierarchical BoW <cit.>. 


FABMAP <cit.> uses Bayesian filtering to achieve long-term place recognition over 1000 km <cit.>. However, FABMAP cannot handle scenarios with variant changes in environmental conditions. Another family of appearance-based place recognition method, SeqSLAM <cit.>, uses a series of frame sequence to improve the robustness under variant environments.
Lowry el al. <cit.> assumed the differences caused by geometry features are relatively smaller than the differences caused by season-to-season appearance changes. They developed a Principal Component Analysis (PCA) <cit.> approach to remove the season-related features, and extract remaining features as the season-invariant descriptions.


Sequential matching-based methods are not practical in real world applications due to their computational complexity.
To improve the robustness in sequence matching, Naseer et al. <cit.> proposed an minimum cost flow-based data association, which could deal with non-matching image sequences that result from temporal occlusions or from visiting new places. Vysotska et al.  <cit.>, improved the work of Naseer et al. with GPS priors.


Even though there is a rich literature that focus on dealing with varying conditional problems <cit.>, very few works focus on improving the efficiency and accuracy of searching in long-term place recognition tasks <cit.>. 
Recently, with the development of deep learning for computer vision, Porav et al. <cit.> improved feature robustness against variant conditions by extracting reliable convolution layer features.

More recently, Sayem <cit.> proposed a Fast-SeqSLAM method, which improved the searching efficiency by utilizing an approximate nearest neighbor (ANN) as the initial estimate for potential matches. 
Since ANN in Fast-SeqSLAM still relies on single image feature similarities, the initial search efficiency may decrease when the original matching frame sequence is of a relatively long-time scale.
Liu and Zhang <cit.> applied a particle filter to improve the matching efficiency, where each particle represented a potential subset of the frame sequence <cit.>.
Rather than evaluating the whole frame sequence, they predicted the weights of multiple particles based on frame sequence similarities and the robot motion.
However, both the methods described above require a good estimation of the initial matched location. 



§ PROPOSED METHOD


Our work avoids the brute-force searching scheme in the traditional sequential matching methods by introducing a multi-resolution sampling approach, which combines a coarse-to-fine searching scheme and a particle filter method.
Each particle represents a potential frame sequence in reference frames.
As shown in Fig. <ref> and Algorithm <ref>, our method can be divided into following steps:

	
  * Set the initial resolution level. down-sample trajectories according to the current resolution level and the initial particles; (line 5∼6)
    
  * Update the particle status based on their evaluation results; (line 9∼18)
	
  * Update the current resolution level and particle indexes. If the map resolution reaches the maximum level, go to step 4; else, go to step 2; (line 20∼21)
	
  * Sort particles by their weightings, and predict the best particle. (line 24∼25)
















 §.§ Particle Initialization

In the particle initialization step, by setting the frame skipping interval as s=S_0, we can down-sample both the reference and the testing frame sequence into lowest map resolution level. 
At the lowest level, particles are sampled uniformly along the whole frame sequence.
Also, the initial number of particles P_init satisfies the following equation,

    P_init=M/Nτ,

where M and N are the frame sequence length of reference frames and testing frames respectively; τ is the hyper parameter, which determines the overlaps between one potential neighbor frame sequence. 
The overlap rate of the neighbor frame sequence can be calculated by

    Overlaps=τ-1/τ.

High overlaps will improve searching robustness, while reducing the matching time. 
In the experiment part, we will analyze the influence of the τ configuration in the place recognition task.

Initial particles are uniformly sampled from the reference frame sequence, as shown in the second row of Fig. <ref>. Therefore, the entire particle sets have the following format, 

    P={p_t^[1],p_t^[2],p_t^[3],...,p_t^[M]}
       p_t^i=[index_t^i, weight_t^i],

where index_t^i and weight_t^i represent the end index and particle weight of the predicted reference frame sequence respectively. 



 §.§ Particle Evaluation




For each particle, we use the sequential matching to evaluate their measurements.
The goal for sequential matching is to estimate the frame sequence similarity with a given testing and local reference trajectories, and then update the predicted particle status.
As shown in Algorithm <ref>, we use the pre-processed image data as the feature description. The feature distance is defined as the sum of absolute feature differences, similar to the original SeqSLAM <cit.>.
Although there are other feature extraction methods, this paper only focuses on the efficiency and accuracy in sequence matching. Thus, we only use the basic feature extraction method.



With the extracted features, the difference matrix can be calculated based on the feature distance between reference and testing trajectories.
As shown in Fig. <ref>, x-axis represents current testing frames t_N, and y-axis serves as potential reference frames t_M; 
the color of matrix cell represents the feature similarities, where darker colors imply relative place descriptions are more similar. Id_prev is the index of previous reference prediction, Id_new is the index of new predicted reference. 
Thus Id_new is searched within (Id_prev-Id_shift, Id_prev+Id_shift).


To assign weights from the current frame sequence match, we retrieve different trajectories for each potential reference index. At each end index, we apply different speed proportional constants V_test/V_ref∈( 0.8, 1.2) between testing and reference frames since the speed varies along the frame sequence. Thus the frame sequence similarity score can be evaluated by

    score(j, v)    = ∑_t=1^L_testD(t, j-v(L_test-t)), 
    
    	Id_new   = argmin_id score,

where D^L_test×[L_test+2· Id_shift] 
is the difference matrix, and L_test is the length of testing frames. 
Finally, the new index of the particle is updated according to the smallest frame sequence difference.






 §.§ Particle Filtering

In the particle filtering step, for each particle (potential frame sequence), we use the sequence matching scheme in Sec. <ref> to evaluate the frame sequence score based on Eq. <ref>. 
Then the new particle weighting ω̂_k^i is obtained by,

    ω_k^i=ω_k-1^i×1/1+e^-score_i,


After updating all particles, we normalize the weights of the particles by

    ω_k^i=ω̂_k^i/∑ω̂_k^i,

and calculate the effectiveness of particles N̂_eff as

    N̂_eff=1/∑(ω_k^i)^2.


On the same map resolution level, particles are re-sampled around effective particles when the particle efficiency N̂_eff is smaller than a given threshold thres_particle.
As shown in the third row of Fig. <ref>, finally, the particles will converge to potential matching targets.



 §.§ Map Updating


Since computation complexity of sequence matching grows with the resolution level, 
we need to restrict particle sampling area to guarantee the matching efficiency.
After particles reach the stabilized status on current map level, we compute the map coverage according to valid particles.
We define a map coverage rate M_cover, which indicates the current particle convergence level

    M_cover = M_cur/M_prev,

where M_cur and M_prev are current map coverage and previous map coverage separately.
If the convergence rate M_cover is shrunk below a given threshold (in our experiments, this threshold is arbitrarily chosen to be 50%), 
we update both sequence frames into higher resolution level. 







 §.§ Speedup Analysis


In this subsection, we investigate the computation complexity of our MRS-VPR method by comparing it with the original SeqSLAM. 

For SeqSLAM, the computation complexity is O(MN), where N and M are the  number of frames of testing and reference frame sequence, respectively.
For the MRS-VPR, we first generate P_init initial particles on the whole reference sequence space.
Then for map resolution level i, the computation complexity is O(P_init/2^iN_i), where N_i is the testing frame index on the i^th resolution level. N_i=N/2^l_max-i, while l_max is the maximum resolution level.
The computation complexity ratio between the original SeqSLAM method and our proposed MRS-VPR is,

    𝒞_Seq/MRS   =MN/∑_i=0^l_maxP_init/2^i· N_i
       = N/τ·2^l_max/l_max,

where we substitute for P_init from Eq. <ref>.
For example, if we set l_max=3 and τ=2.0, the computation complexity ratio will be 1.33N.




















§ EXPERIMENTS


In this section, we investigate the performance of our method in the long-term global place recognition task.


 §.§ Datasets

We use two datasets to test our method: the Nordland dataset <cit.>, which is a 728 km long train ride in northern Norway, covering the same route in four different seasons; a CMU day-night dataset, which is a 1 km indoor sequence generated from a phone based camera with variant dynamics and viewpoint differences. We manually collected the second dataset, since we could not find large indoor VPR datasets containing day-night conditions.
Table. <ref> shows the details about two datasets. 


We observe that the main differences between Nordland and CMU dataset are viewpoints (fixed or not) and the existence of dynamics objects. 
While the Nordland dataset is collected by mounting a camera in the cab of a train, the CMU dataset is collected with a hand-held mobile phone camera. With the CMU dataset, it is hard to guarantee a stable viewpoint along the route. In addition, CMU dataset has lots of dynamic objects in the indoor environment. Thus, it is even harder to find potential matches in CMU dataset, compared to the Nordland dataset.





















































































 §.§ Accuracy & Efficiency Analysis

To inspect the accuracy and efficiency of different algorithms, we leverage short-term testing frame sequence to match the relative long-term reference frame sequence.
For both CMU and Nordland datasets, the proportion between reference and testing frames number is 30, as shown in Table <ref>.

One important parameter in our method is the map depth. Fig <ref> shows the matching efficiency and accuracy of different methods in the CMU datasets. 
We see that, when the map resolution depth l_max={1,2,3}, the matching efficiency tends to improve with the growth of the map resolution depth, but the matching error is held at 2 frames. In contrast, the original sequential matching method took 723.56s, and the final error between predicted match and the best alignment matches is 10 frames.
However, when l_max=4, the testing frames at the lowest level only have 300/2^4∼ 19 frames. If the testing sequence is too small, the robustness of sequential matching against changing viewpoints and illuminations is lost;
and particles at the lowest resolution level cannot provide good estimations at the beginning. We also repeated the experiment on the Nordland datasets. It turns out that l_max=3 is a suitable map depth for both the datasets.



Another important parameter in our method is τ, which determines the initial number of particles. We investigate the matching performance under variant τ settings. 
As observed in Fig <ref>, with the increasing of τ, the particle effectiveness index N̂_eff decreases. This means that there will be more particles converging to the potential optimal index. 
But when τ is less than 1.0, the overlaps between two particles reduces to 0, and the particles are less likely to converge to optimal positions.
In addition, the matching time also increases with τ. 
In order to balance both efficiency and accuracy, we set τ within (1.5, 2.5), depending on the requirement of efficiency. 
In our experiment, the default τ value is 2.0.




Fig <ref> shows the area under curve (AUC) index; higher the AUC index indicate more accurate matching results.
Compared to traditional sequential matching method, our method is more stable under varying conditions; all the AUC indexes are above 80%. 
This indicates that the coarse-to-fine searching scheme can improve the initial estimation for the best sequence matching. 
In summary, our method has the potential to balance the efficiency and accuracy in the long-term place recognition under variant environmental conditions.



§ CONCLUSIONS


In this paper, we propose a multi-resolution particle filter-based sequence matching method. Our framework leverages coarse-to-fine searching methods to improve the robustness of place recognition, when the testing sequence is much smaller than the reference sequence (e.g. overlap ratio M/N > 30). 
The experiments on Nordland and CMU datasets show that our MRS-VPR framework outperforms the appearance based sequence matching method SeqSLAM in the long-term place recognition task. 
For the future work, we plan to combine the proposed place recognition method with topological maps to construct more robust reference maps for real robot long-term navigation task.



ieeetr












