SIFT Comparison¶
v2¶
Class: SIFTComparisonBlockV2
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.classical_cv.sift_comparison.v2.SIFTComparisonBlockV2
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
Compare SIFT descriptors from multiple images using FLANN-based matcher.
This block is useful for determining if multiple images match based on their SIFT descriptors.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/sift_comparison@v2
to add the block as
as step in your workflow.
Properties¶
Name | Type | Description | Refs |
---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
good_matches_threshold |
int |
Threshold for the number of good matches to consider the images as matching. | ✅ |
ratio_threshold |
float |
Ratio threshold for the ratio test, which is used to filter out poor matches by comparing the distance of the closest match to the distance of the second closest match. A lower ratio indicates stricter filtering.. | ✅ |
matcher |
str |
Matcher to use for comparing the SIFT descriptors. | ✅ |
visualize |
bool |
Whether to visualize the keypoints and matches between the two images. | ✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow
runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to SIFT Comparison
in version v2
.
- inputs:
Identify Changes
,Relative Static Crop
,Background Color Visualization
,Line Counter Visualization
,OpenAI
,Roboflow Dataset Upload
,Grid Visualization
,LMM For Classification
,Object Detection Model
,Llama 3.2 Vision
,Camera Focus
,Color Visualization
,Roboflow Dataset Upload
,Pixel Color Count
,Label Visualization
,CSV Formatter
,Dot Visualization
,Bounding Box Visualization
,Detections Consensus
,Template Matching
,Single-Label Classification Model
,OCR Model
,Google Vision OCR
,JSON Parser
,Dynamic Crop
,Clip Comparison
,Identify Outliers
,Model Comparison Visualization
,Anthropic Claude
,Depth Estimation
,Corner Visualization
,SIFT Comparison
,Line Counter
,SIFT Comparison
,Camera Calibration
,Keypoint Visualization
,Mask Visualization
,Image Threshold
,VLM as Detector
,Halo Visualization
,Florence-2 Model
,Polygon Zone Visualization
,Google Gemini
,Polygon Visualization
,Image Preprocessing
,Instance Segmentation Model
,SIFT
,Twilio SMS Notification
,Dynamic Zone
,Reference Path Visualization
,Roboflow Custom Metadata
,Blur Visualization
,Image Contours
,VLM as Detector
,Pixelate Visualization
,Keypoint Detection Model
,OpenAI
,Ellipse Visualization
,Crop Visualization
,Stitch Images
,Line Counter
,Stitch OCR Detections
,Florence-2 Model
,CogVLM
,Image Slicer
,LMM
,Webhook Sink
,Perspective Correction
,Email Notification
,Multi-Label Classification Model
,Image Blur
,Stability AI Image Generation
,Image Convert Grayscale
,Stability AI Inpainting
,Model Monitoring Inference Aggregator
,Triangle Visualization
,Classification Label Visualization
,Trace Visualization
,Distance Measurement
,VLM as Classifier
,Absolute Static Crop
,VLM as Classifier
,Circle Visualization
,Slack Notification
,Local File Sink
,Image Slicer
- outputs:
Identify Changes
,Line Counter Visualization
,Background Color Visualization
,Relative Static Crop
,Barcode Detection
,Detections Stabilizer
,Object Detection Model
,Camera Focus
,Roboflow Dataset Upload
,Color Visualization
,SmolVLM2
,Object Detection Model
,Bounding Box Visualization
,OCR Model
,Clip Comparison
,Identify Outliers
,Model Comparison Visualization
,Anthropic Claude
,Corner Visualization
,Multi-Label Classification Model
,Qwen2.5-VL
,Keypoint Visualization
,QR Code Detection
,Mask Visualization
,Image Threshold
,VLM as Detector
,Florence-2 Model
,Polygon Zone Visualization
,Google Gemini
,Image Preprocessing
,Twilio SMS Notification
,Roboflow Custom Metadata
,Reference Path Visualization
,Blur Visualization
,Image Contours
,Keypoint Detection Model
,Ellipse Visualization
,Byte Tracker
,Crop Visualization
,Stitch Images
,Stitch OCR Detections
,LMM
,Webhook Sink
,Email Notification
,Image Blur
,Image Convert Grayscale
,Stability AI Inpainting
,Triangle Visualization
,Classification Label Visualization
,Keypoint Detection Model
,Time in Zone
,VLM as Classifier
,OpenAI
,Roboflow Dataset Upload
,Grid Visualization
,Gaze Detection
,LMM For Classification
,Llama 3.2 Vision
,Instance Segmentation Model
,Pixel Color Count
,Label Visualization
,YOLO-World Model
,Moondream2
,Dot Visualization
,Byte Tracker
,Detections Consensus
,Template Matching
,Single-Label Classification Model
,Google Vision OCR
,Dynamic Crop
,Depth Estimation
,SIFT Comparison
,SIFT Comparison
,Byte Tracker
,Camera Calibration
,Detection Offset
,Halo Visualization
,Clip Comparison
,Polygon Visualization
,Instance Segmentation Model
,SIFT
,Dynamic Zone
,CLIP Embedding Model
,VLM as Detector
,Pixelate Visualization
,Dominant Color
,Detections Stitch
,OpenAI
,Florence-2 Model
,CogVLM
,Image Slicer
,Perspective Correction
,Multi-Label Classification Model
,Time in Zone
,Stability AI Image Generation
,Model Monitoring Inference Aggregator
,Trace Visualization
,Single-Label Classification Model
,Buffer
,VLM as Classifier
,Segment Anything 2 Model
,Absolute Static Crop
,Circle Visualization
,Slack Notification
,Image Slicer
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
SIFT Comparison
in version v2
has.
Bindings
-
input
input_1
(Union[numpy_array
,image
]): Reference to Image or SIFT descriptors from the first image to compare.input_2
(Union[numpy_array
,image
]): Reference to Image or SIFT descriptors from the second image to compare.good_matches_threshold
(integer
): Threshold for the number of good matches to consider the images as matching.ratio_threshold
(float_zero_to_one
): Ratio threshold for the ratio test, which is used to filter out poor matches by comparing the distance of the closest match to the distance of the second closest match. A lower ratio indicates stricter filtering..matcher
(string
): Matcher to use for comparing the SIFT descriptors.visualize
(boolean
): Whether to visualize the keypoints and matches between the two images.
-
output
images_match
(boolean
): Boolean flag.good_matches_count
(integer
): Integer value.keypoints_1
(image_keypoints
): Image keypoints detected by classical Computer Vision method.descriptors_1
(numpy_array
): Numpy array.keypoints_2
(image_keypoints
): Image keypoints detected by classical Computer Vision method.descriptors_2
(numpy_array
): Numpy array.visualization_1
(image
): Image in workflows.visualization_2
(image
): Image in workflows.visualization_matches
(image
): Image in workflows.
Example JSON definition of step SIFT Comparison
in version v2
{
"name": "<your_step_name_here>",
"type": "roboflow_core/sift_comparison@v2",
"input_1": "$inputs.image1",
"input_2": "$inputs.image2",
"good_matches_threshold": 50,
"ratio_threshold": 0.7,
"matcher": "FlannBasedMatcher",
"visualize": true
}
v1¶
Class: SIFTComparisonBlockV1
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.classical_cv.sift_comparison.v1.SIFTComparisonBlockV1
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
Compare SIFT descriptors from multiple images using FLANN-based matcher.
This block is useful for determining if multiple images match based on their SIFT descriptors.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/sift_comparison@v1
to add the block as
as step in your workflow.
Properties¶
Name | Type | Description | Refs |
---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
good_matches_threshold |
int |
Threshold for the number of good matches to consider the images as matching. | ✅ |
ratio_threshold |
float |
Ratio threshold for the ratio test, which is used to filter out poor matches by comparing the distance of the closest match to the distance of the second closest match. A lower ratio indicates stricter filtering.. | ✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow
runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to SIFT Comparison
in version v1
.
- inputs:
Perspective Correction
,SIFT
,Image Contours
,Distance Measurement
,Depth Estimation
,SIFT Comparison
,SIFT Comparison
,Line Counter
,Pixel Color Count
,Line Counter
,Template Matching
- outputs:
Identify Changes
,Line Counter Visualization
,Background Color Visualization
,Roboflow Dataset Upload
,Grid Visualization
,Gaze Detection
,Detections Stabilizer
,Object Detection Model
,Color Visualization
,Instance Segmentation Model
,Roboflow Dataset Upload
,Pixel Color Count
,Label Visualization
,Dot Visualization
,Byte Tracker
,Object Detection Model
,Bounding Box Visualization
,Detections Consensus
,Template Matching
,Single-Label Classification Model
,Identify Outliers
,Model Comparison Visualization
,Anthropic Claude
,Corner Visualization
,SIFT Comparison
,Byte Tracker
,SIFT Comparison
,Multi-Label Classification Model
,Detection Offset
,Keypoint Visualization
,Mask Visualization
,Image Threshold
,Halo Visualization
,Polygon Zone Visualization
,Polygon Visualization
,Image Preprocessing
,Instance Segmentation Model
,Twilio SMS Notification
,Dynamic Zone
,Reference Path Visualization
,Roboflow Custom Metadata
,Blur Visualization
,Image Contours
,Pixelate Visualization
,Dominant Color
,Keypoint Detection Model
,Ellipse Visualization
,Byte Tracker
,Crop Visualization
,Stitch Images
,Stitch OCR Detections
,Image Slicer
,Webhook Sink
,Perspective Correction
,Email Notification
,Multi-Label Classification Model
,Image Blur
,Time in Zone
,Model Monitoring Inference Aggregator
,Triangle Visualization
,Trace Visualization
,Classification Label Visualization
,Keypoint Detection Model
,Single-Label Classification Model
,Segment Anything 2 Model
,Time in Zone
,Absolute Static Crop
,Circle Visualization
,Slack Notification
,Image Slicer
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
SIFT Comparison
in version v1
has.
Bindings
-
input
descriptor_1
(numpy_array
): Reference to SIFT descriptors from the first image to compare.descriptor_2
(numpy_array
): Reference to SIFT descriptors from the second image to compare.good_matches_threshold
(integer
): Threshold for the number of good matches to consider the images as matching.ratio_threshold
(integer
): Ratio threshold for the ratio test, which is used to filter out poor matches by comparing the distance of the closest match to the distance of the second closest match. A lower ratio indicates stricter filtering..
-
output
Example JSON definition of step SIFT Comparison
in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/sift_comparison@v1",
"descriptor_1": "$steps.sift.descriptors",
"descriptor_2": "$steps.sift.descriptors",
"good_matches_threshold": 50,
"ratio_threshold": 0.7
}