Image Convert Grayscale¶
Class: ConvertGrayscaleBlockV1
Source: inference.core.workflows.core_steps.classical_cv.convert_grayscale.v1.ConvertGrayscaleBlockV1
Convert color (RGB/BGR) images to single-channel grayscale images using weighted luminance conversion to reduce dimensionality, prepare images for operations that require grayscale input (thresholding, morphological operations, contour detection), reduce computational complexity, and enable intensity-based image analysis and processing workflows.
How This Block Works¶
This block converts color images to grayscale images by combining the color channels into a single intensity channel. The block:
- Receives a color input image (RGB or BGR format with three color channels)
- Applies weighted luminance conversion using OpenCV's BGR to grayscale algorithm:
- Uses the standard formula: Grayscale = 0.299R + 0.587G + 0.114*B (for RGB) or weighted BGR combination
- Weights green channel most heavily (58.7%) as human eye is most sensitive to green
- Weights red channel moderately (29.9%) and blue channel least (11.4%)
- Creates a perceptually balanced grayscale representation that preserves visual information
- Converts the three-channel color image to a single-channel grayscale image:
- Reduces image from 3 channels (RGB/BGR) to 1 channel (grayscale)
- Each pixel becomes a single intensity value between 0 (black) and 255 (white)
- Preserves spatial information while removing color information
- Reduces memory usage and computational complexity
- Preserves image dimensions (width and height remain the same)
- Maintains image metadata and structure
- Returns the single-channel grayscale image
Grayscale conversion transforms color images into intensity-only images where each pixel represents brightness rather than color. The weighted luminance formula ensures the grayscale image perceptually matches the brightness distribution of the original color image. This conversion is essential for many computer vision operations that require single-channel input, such as thresholding, morphological transformations, edge detection, and contour analysis. The output retains spatial information and intensity relationships while removing color information, enabling intensity-based processing and analysis.
Common Use Cases¶
- Preprocessing for Thresholding: Convert color images to grayscale before applying thresholding operations (e.g., prepare images for binary thresholding, convert before adaptive thresholding, grayscale before Otsu's method), enabling color-to-threshold workflows
- Morphological Operations: Prepare color images for morphological transformations that require grayscale input (e.g., convert before erosion/dilation, grayscale for opening/closing, prepare for morphological operations), enabling color-to-morphology workflows
- Contour Detection: Convert color images to grayscale before contour detection and shape analysis (e.g., prepare for contour detection, convert before shape analysis, grayscale for boundary extraction), enabling color-to-contour workflows
- Edge Detection: Prepare color images for edge detection algorithms that work on grayscale images (e.g., convert before Canny edge detection, grayscale for Sobel operators, prepare for edge detection), enabling color-to-edge workflows
- Noise Reduction: Reduce dimensionality for noise reduction operations that work on single-channel images (e.g., convert before filtering, grayscale for denoising, prepare for noise reduction), enabling color-to-filtering workflows
- Feature Extraction: Convert color images to grayscale for intensity-based feature extraction (e.g., prepare for SIFT/keypoint detection, convert for texture analysis, grayscale for pattern recognition), enabling color-to-feature workflows
Connecting to Other Blocks¶
This block receives a color image and produces a grayscale image:
- Before threshold blocks to convert color images to grayscale before thresholding (e.g., convert color to grayscale then threshold, prepare color images for binarization, grayscale before binary conversion), enabling color-to-threshold workflows
- Before morphological transformation blocks to prepare color images for morphological operations (e.g., convert color to grayscale for morphology, prepare for erosion/dilation, grayscale before morphological operations), enabling color-to-morphology workflows
- Before contour detection blocks to convert color images to grayscale before contour detection (e.g., convert color to grayscale for contours, prepare color images for shape analysis, grayscale before contour detection), enabling color-to-contour workflows
- Before classical CV blocks that require grayscale input (e.g., prepare for edge detection, convert for feature extraction, grayscale for classical computer vision operations), enabling color-to-classical-CV workflows
- After image preprocessing blocks that output color images (e.g., convert preprocessed color images to grayscale, grayscale after color enhancements, convert after color transformations), enabling preprocessing-to-grayscale workflows
- In image processing pipelines where grayscale conversion is required for downstream processing (e.g., convert color to grayscale in pipelines, prepare images for single-channel operations, reduce dimensionality for processing), enabling grayscale conversion pipeline workflows
Requirements¶
This block works on color images (RGB or BGR format with three color channels). The input image must have multiple color channels. If the input is already grayscale, the conversion will still be applied but will result in the same grayscale output. The conversion uses standard luminance weighting to create perceptually balanced grayscale images that preserve brightness information while removing color information.
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/convert_grayscale@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
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 Image Convert Grayscale in version v1.
- inputs:
Camera Calibration,Image Blur,Stability AI Outpainting,Blur Visualization,Background Color Visualization,Polygon Zone Visualization,Image Contours,Bounding Box Visualization,Camera Focus,Absolute Static Crop,Crop Visualization,Reference Path Visualization,Stability AI Inpainting,Polygon Visualization,Contrast Equalization,Morphological Transformation,Roboflow Visual Search Classifier,Image Threshold,SIFT Comparison,Trace Visualization,Image Slicer,Color Visualization,Camera Focus,Stability AI Image Generation,Image Convert Grayscale,Circle Visualization,QR Code Generator,Contrast Enhancement,Morphological Transformation,Perspective Correction,Heatmap Visualization,Halo Visualization,Auto Rotate on Edges,Polygon Visualization,SIFT,Icon Visualization,Label Visualization,Dynamic Crop,Rich Label Visualization,Label Visualization,Keypoint Visualization,Halo Visualization,Image Preprocessing,Image Slicer,Line Counter Visualization,Text Display,Grid Visualization,Model Comparison Visualization,Mask Visualization,Background Subtraction,Ellipse Visualization,Classification Label Visualization,Stitch Images,Relative Static Crop,Corner Visualization,Triangle Visualization,Pixelate Visualization,Depth Estimation,Roboflow Visual Search,Dot Visualization - outputs:
Image Blur,Track Class Lock,Mask Edge Snap,Crop Visualization,VLM As Detector,Object Detection Model,Polygon Visualization,Roboflow Visual Search Classifier,Detections Stabilizer,Image Slicer,Qwen3.5-VL,Image Convert Grayscale,CLIP Embedding Model,Semantic Segmentation Model,VLM As Classifier,Motion Detection,SAM 3 Interactive,Keypoint Detection Model,Clip Comparison,YOLO-World Model,Buffer,SIFT,OC-SORT Tracker,Label Visualization,MoonshotAI Kimi,Label Visualization,Instance Segmentation Model,Perception Encoder Embedding Model,Email Notification,Keypoint Detection Model,BoT-SORT Tracker,Pixel Color Count,Single-Label Classification Model,Background Subtraction,Ellipse Visualization,Stitch Images,Corner Visualization,Triangle Visualization,Qwen-VL,Camera Calibration,Seg Preview,Google Gemini,Polygon Zone Visualization,LMM For Classification,Camera Focus,PP-OCR,SIFT Comparison,Trace Visualization,Object Detection Model,Color Visualization,Llama 3.2 Vision,Llama 3.2 Vision,SAM3 Video Tracker,Dominant Color,Morphological Transformation,SAM2 Video Tracker,Google Vision OCR,Google Gemma API,Google Gemma,Polygon Visualization,Icon Visualization,Rich Label Visualization,Qwen2.5-VL,Twilio SMS/MMS Notification,Keypoint Visualization,OpenAI,Image Slicer,OpenAI,Keypoint Detection Model,Clip Comparison,Object Detection Model,Qwen 3.6 API,Instance Segmentation Model,Single-Label Classification Model,Mask Visualization,Moondream2,OpenAI,Byte Tracker,Instance Segmentation Model,Roboflow Visual Search,VLM As Detector,Stability AI Outpainting,Blur Visualization,Multi-Label Classification Model,Frame Delay,Bounding Box Visualization,Absolute Static Crop,Roboflow Dataset Upload,OpenAI,Anthropic Claude,Reference Path Visualization,Google Gemini,Detections Stitch,Event Writer,CogVLM,VLM As Classifier,Barcode Detection,Contrast Enhancement,Template Matching,QR Code Detection,Perspective Correction,Semantic Segmentation Model,Halo Visualization,Multi-Label Classification Model,Dynamic Crop,OpenRouter,OCR Model,GeoTag Detection,Halo Visualization,Line Counter Visualization,Time in Zone,Multi-Label Classification Model,LMM,Relative Static Crop,Depth Estimation,SAM 3,ByteTrack Tracker,Dot Visualization,GLM-OCR,Florence-2 Model,EasyOCR,Background Color Visualization,Qwen3.5,Google Gemini,Image Contours,Roboflow Dataset Upload,MoonshotAI Kimi,Segment Anything 2 Model,Qwen 3.5 API,Stability AI Inpainting,Contrast Equalization,Morphological Transformation,Image Threshold,Camera Focus,SAM 3,Stability AI Image Generation,Instance Segmentation Model,Circle Visualization,Google Gemini,Roboflow Vision Events,Single-Label Classification Model,Heatmap Visualization,Cosmos 3,Auto Rotate on Edges,SAM 3,Anthropic Claude,SORT Tracker,Image Preprocessing,Qwen3-VL,Gaze Detection,Anthropic Claude,Text Display,Image Stack,Grid Visualization,Model Comparison Visualization,Florence-2 Model,Classification Label Visualization,SmolVLM2,Pixelate Visualization
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Image Convert Grayscale in version v1 has.
Bindings
-
input
image(image): Input color image (RGB or BGR format with three color channels) to convert to grayscale. The image will be converted from three-channel color (RGB/BGR) to single-channel grayscale using weighted luminance conversion (weights: green 58.7%, red 29.9%, blue 11.4%) to create a perceptually balanced grayscale representation. The output will have the same width and height but only one channel (grayscale intensity values 0-255). Original image metadata and spatial dimensions are preserved. If the input is already grayscale, the conversion will still be applied but will result in the same grayscale output. Use this block before operations that require grayscale input such as thresholding, morphological operations, contour detection, or edge detection..
-
output
image(image): Image in workflows.
Example JSON definition of step Image Convert Grayscale in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/convert_grayscale@v1",
"image": "$inputs.image"
}