Improving Sonar Image Patch Matching via Deep Learning
This work addresses sonar image matching for Autonomous Underwater Vehicles, enabling improved tracking and SLAM, but it is incremental as it applies existing CNNs to a specific domain.
The paper tackled the problem of matching sonar images, which is challenging due to noise and viewpoint issues, by using Convolutional Neural Networks (CNNs) to learn a matching function, achieving an AUC of 0.91 for binary classification and 0.89 for matching scores, outperforming classical methods like SIFT (AUC 0.61-0.68).
Matching sonar images with high accuracy has been a problem for a long time, as sonar images are inherently hard to model due to reflections, noise and viewpoint dependence. Autonomous Underwater Vehicles require good sonar image matching capabilities for tasks such as tracking, simultaneous localization and mapping (SLAM) and some cases of object detection/recognition. We propose the use of Convolutional Neural Networks (CNN) to learn a matching function that can be trained from labeled sonar data, after pre-processing to generate matching and non-matching pairs. In a dataset of 39K training pairs, we obtain 0.91 Area under the ROC Curve (AUC) for a CNN that outputs a binary classification matching decision, and 0.89 AUC for another CNN that outputs a matching score. In comparison, classical keypoint matching methods like SIFT, SURF, ORB and AKAZE obtain AUC 0.61 to 0.68. Alternative learning methods obtain similar results, with a Random Forest Classifier obtaining AUC 0.79, and a Support Vector Machine resulting in AUC 0.66.