A Python wrapper for the ORB-SLAM3 feature extraction algorithm.
Note This package's pre-built binaries are only available for AMD64 architectures.
pip install python-orb-slam3
There are a few steps to follow to install this package from the source code, please refer to the CI configuration file here for more details.
import cv2 from matplotlib import pyplot as plt from python_orb_slam3 import ORBExtractor source = cv2.imread("path/to/image.jpg") target = cv2.imread("path/to/image.jpg") orb_extractor = ORBExtractor() # Extract features from source image source_keypoints, source_descriptors = orb_extractor.detectAndCompute(source) target_keypoints, target_descriptors = orb_extractor.detectAndCompute(target) # Match features bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True) matches = bf.match(source_descriptors, target_descriptors) # Draw matches source_image = cv2.drawKeypoints(source, source_keypoints, None) target_image = cv2.drawKeypoints(target, target_keypoints, None) matches_image = cv2.drawMatches(source_image, source_keypoints, target_image, target_keypoints, matches, None) # Show matches plt.imshow(matches_image) plt.show()
This repository is licensed under the GPLv3 license.
A Python wrapper for the ORB-SLAM3 feature extraction algorithm.
Copyright (C) 2022 Johnny Hsieh
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.