Keypoint Detection
Detect and visualize keypoints using SIFT, AKAZE, or ORB algorithms.
Usage
import cv2
import imvf
# Load image
image = cv2.imread("path/to/image.jpg")
# Create visualizer with specific algorithm
visualizer = imvf.KeypointVisualizer(algorithm="SIFT")
# Apply visualization
result = visualizer(image)
# Display results
cv2.imshow("Keypoints", result.keypoint)
cv2.imshow("Rich Keypoints", result.rich_keypoint)
cv2.waitKey(0)
Available Algorithms
SIFT (Scale-Invariant Feature Transform)
- Scale and rotation invariant
- High quality features
- Patented (free for research)
AKAZE (Accelerated-KAZE)
- Fast and efficient
- Scale and rotation invariant
- Open source
ORB (Oriented FAST and Rotated BRIEF)
- Very fast
- Rotation invariant
- Free and open source
Result Structure
The KeypointResult dataclass contains:
keypoint: Basic keypoint visualizationrich_keypoint: Detailed keypoint visualization with size and orientation
Use Cases
- Image matching and alignment
- Object recognition
- 3D reconstruction
- Camera tracking
- Panorama stitching
See Also
- API Reference - Complete API documentation
- KeypointResult - Result type details
- OpenCV Feature Detection