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 Outliers
,Multi-Label Classification Model
,Single-Label Classification Model
,Classification Label Visualization
,Background Color Visualization
,Webhook Sink
,Dynamic Crop
,Mask Visualization
,Clip Comparison
,Google Vision OCR
,Twilio SMS Notification
,Absolute Static Crop
,Model Monitoring Inference Aggregator
,Stability AI Image Generation
,Florence-2 Model
,Image Blur
,LMM For Classification
,Roboflow Dataset Upload
,Identify Changes
,Line Counter
,CogVLM
,Circle Visualization
,OCR Model
,Crop Visualization
,Template Matching
,VLM as Detector
,JSON Parser
,SIFT Comparison
,OpenAI
,Stitch OCR Detections
,OpenAI
,Image Preprocessing
,Pixel Color Count
,VLM as Classifier
,Line Counter
,Model Comparison Visualization
,Stitch Images
,Bounding Box Visualization
,Keypoint Detection Model
,Perspective Correction
,SIFT Comparison
,Relative Static Crop
,Color Visualization
,Slack Notification
,Ellipse Visualization
,Reference Path Visualization
,Blur Visualization
,Pixelate Visualization
,Anthropic Claude
,Email Notification
,LMM
,Llama 3.2 Vision
,CSV Formatter
,VLM as Detector
,Keypoint Visualization
,Camera Focus
,Florence-2 Model
,Grid Visualization
,Image Convert Grayscale
,Image Threshold
,Trace Visualization
,Polygon Visualization
,Triangle Visualization
,Stability AI Inpainting
,Detections Consensus
,Halo Visualization
,Dot Visualization
,Polygon Zone Visualization
,Google Gemini
,Local File Sink
,Instance Segmentation Model
,Roboflow Custom Metadata
,VLM as Classifier
,Camera Calibration
,Object Detection Model
,SIFT
,Corner Visualization
,Image Contours
,Line Counter Visualization
,Roboflow Dataset Upload
,Image Slicer
,Image Slicer
,Label Visualization
,Distance Measurement
- outputs:
Multi-Label Classification Model
,Classification Label Visualization
,Background Color Visualization
,Dynamic Crop
,Clip Comparison
,Segment Anything 2 Model
,Absolute Static Crop
,LMM For Classification
,Image Blur
,Roboflow Dataset Upload
,CogVLM
,Circle Visualization
,OCR Model
,Clip Comparison
,Template Matching
,SIFT Comparison
,Multi-Label Classification Model
,OpenAI
,Stitch OCR Detections
,Detections Stitch
,QR Code Detection
,Pixel Color Count
,Detections Stabilizer
,VLM as Classifier
,Time in Zone
,Model Comparison Visualization
,Stitch Images
,Bounding Box Visualization
,Keypoint Detection Model
,Moondream2
,Color Visualization
,Slack Notification
,LMM
,Llama 3.2 Vision
,Instance Segmentation Model
,VLM as Detector
,Time in Zone
,Byte Tracker
,YOLO-World Model
,Barcode Detection
,Grid Visualization
,SmolVLM2
,Stability AI Inpainting
,Keypoint Detection Model
,Dot Visualization
,Google Gemini
,CLIP Embedding Model
,Dynamic Zone
,Roboflow Custom Metadata
,VLM as Classifier
,Gaze Detection
,Object Detection Model
,Corner Visualization
,Roboflow Dataset Upload
,Image Preprocessing
,Image Slicer
,Byte Tracker
,Label Visualization
,Identify Outliers
,Single-Label Classification Model
,Webhook Sink
,Mask Visualization
,Twilio SMS Notification
,Google Vision OCR
,Buffer
,Detection Offset
,Model Monitoring Inference Aggregator
,Florence-2 Model
,Stability AI Image Generation
,Identify Changes
,Crop Visualization
,VLM as Detector
,OpenAI
,Dominant Color
,SIFT Comparison
,Perspective Correction
,Relative Static Crop
,Ellipse Visualization
,Reference Path Visualization
,Blur Visualization
,Pixelate Visualization
,Anthropic Claude
,Email Notification
,Keypoint Visualization
,Camera Focus
,Single-Label Classification Model
,Qwen2.5-VL
,Florence-2 Model
,Trace Visualization
,Image Threshold
,Image Convert Grayscale
,Polygon Visualization
,Triangle Visualization
,Detections Consensus
,Halo Visualization
,Polygon Zone Visualization
,Instance Segmentation Model
,Camera Calibration
,SIFT
,Image Contours
,Line Counter Visualization
,Image Slicer
,Byte Tracker
,Object Detection Model
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[image
,numpy_array
]): Reference to Image or SIFT descriptors from the first image to compare.input_2
(Union[image
,numpy_array
]): 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:
Line Counter
,SIFT
,Image Contours
,SIFT Comparison
,Template Matching
,Line Counter
,Distance Measurement
,SIFT Comparison
,Pixel Color Count
- outputs:
Identify Outliers
,Multi-Label Classification Model
,Single-Label Classification Model
,Classification Label Visualization
,Webhook Sink
,Background Color Visualization
,Mask Visualization
,Twilio SMS Notification
,Segment Anything 2 Model
,Absolute Static Crop
,Detection Offset
,Model Monitoring Inference Aggregator
,Image Blur
,Roboflow Dataset Upload
,Identify Changes
,Circle Visualization
,Crop Visualization
,Template Matching
,SIFT Comparison
,Multi-Label Classification Model
,Stitch OCR Detections
,Image Preprocessing
,Pixel Color Count
,Detections Stabilizer
,Time in Zone
,Model Comparison Visualization
,Stitch Images
,Bounding Box Visualization
,Keypoint Detection Model
,Dominant Color
,Perspective Correction
,SIFT Comparison
,Color Visualization
,Slack Notification
,Ellipse Visualization
,Reference Path Visualization
,Blur Visualization
,Anthropic Claude
,Pixelate Visualization
,Email Notification
,Instance Segmentation Model
,Keypoint Visualization
,Time in Zone
,Single-Label Classification Model
,Byte Tracker
,Grid Visualization
,Trace Visualization
,Image Threshold
,Polygon Visualization
,Detections Consensus
,Triangle Visualization
,Keypoint Detection Model
,Halo Visualization
,Dot Visualization
,Polygon Zone Visualization
,Dynamic Zone
,Instance Segmentation Model
,Roboflow Custom Metadata
,Gaze Detection
,Object Detection Model
,Image Contours
,Corner Visualization
,Line Counter Visualization
,Roboflow Dataset Upload
,Image Slicer
,Byte Tracker
,Image Slicer
,Byte Tracker
,Label Visualization
,Object Detection Model
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
}