Edge Detection

Prev Next

The Edge Detection operator is a real-time image processing filter that detects and highlights edges in video content. It identifies areas of rapid intensity change (boundaries between objects, textures, and shapes) using mathematical gradient algorithms. This effect is useful for creating stylized visuals, generating masks for compositing, or analyzing image structure.

Image


When to Use Edge Detection

  • Stylized video effects: Create sketch-like, neon outline, or technical blueprint aesthetics
  • Mask generation: Generate alpha channels based on edge structure for compositing
  • Motion graphics: Add dynamic edge overlays to footage for broadcast or music videos
  • Technical analysis: Visualize object boundaries and image structure
  • Rotoscoping assistance: Highlight edges to guide manual masking workflows

Parameters

Algorithm Settings

Parameter Default Description
Algorithm Sobel Select the edge detection algorithm to use. See algorithm comparison table below.
Output mode Edges Only Select how the detected edges should be displayed. See output modes table below.

Algorithms

Edge detection algorithms work by analyzing how quickly pixel brightness changes across an image. Areas with rapid change (high gradients) indicate edges. Different algorithms use different mathematical approaches to calculate these gradients, each with their own strengths and trade-offs between speed, accuracy, and noise sensitivity.

Algorithm Description Best For
Sobel Good balance of noise immunity and edge detection. Recommended for most uses. General purpose
Prewitt Similar to Sobel with simpler weights. Slightly faster but more noise-sensitive. Fast processing
Laplacian Detects edges in all directions simultaneously. Good for fine detail but sensitive to noise. Fine detail
Roberts Cross Fast computation, good for high-contrast edges. Best for clean source material. High-contrast sources
Scharr Enhanced Sobel with better rotational symmetry. Best accuracy for diagonal edges. Precision work

Output Modes

Mode Description
Edges Only White edges on black background. Pure edge detection output.
Edges Colored Colored edges on black background. Uses the edge color settings.
Overlay Edges overlaid on original image. Combines detection with source footage.
Edge Alpha Original image with edge strength as alpha. Useful for compositing workflows.
Edges as Alpha Original RGB with edges controlling alpha. Keeps color while using edges for transparency.

Edge Thresholds

Parameter Range Default Description
Minimum threshold (%) 0-100 5 Edges below this threshold will be discarded. Increase to reduce noise.
Maximum threshold (%) 0-100 50 Edges above this threshold will be fully visible. Creates soft edges between min and max.
Edge strength (%) 0-500 100 Multiplier for edge detection sensitivity. Values over 100 boost weak edges.

Threshold Behavior Explained

The minimum and maximum thresholds work together to control edge visibility:

Scenario Result
Edge < Minimum Completely hidden (black)
Edge between Min and Max Gradual fade from hidden to visible
Edge > Maximum Fully visible (white or colored)

Tip: A larger gap between minimum and maximum creates softer, more gradual edges. A smaller gap creates harder, more defined edges.

Edge Color

These settings are available when Output mode is set to "Edges Colored" or "Overlay".

Parameter Range Default Description
Red 0-255 255 Red component of the edge color
Green 0-255 255 Green component of the edge color
Blue 0-255 255 Blue component of the edge color

Reset to white: Button to reset edge color to white (255, 255, 255).

Overlay Settings (Advanced)

These settings are only available when Output mode is set to "Overlay".

Parameter Range Default Description
Overlay opacity (%) 0-100 100 Opacity of edges when overlaid on original image
Preserve original alpha No/Yes Yes Keep the original image's alpha channel in overlay mode

Additional Options (Advanced)

Parameter Range Default Description
Invert edges No/Yes No Invert the edge detection result. Swaps black and white.
Edge glow 0-100 0 Adds a glow/expansion effect around detected edges
Show original (debug) No/Yes No Bypass edge detection and show original image. Useful for comparison.

Keyboard Shortcuts

Key Action
F1 Set output mode to Edges Only
F2 Set output mode to Edges Colored
F3 Set output mode to Overlay
F4 Set output mode to Edge Alpha
F5 Set output mode to Edges as Alpha
F6 Cycle through algorithms
F7 Toggle Invert edges
F8 Toggle Show original

Workflow Tips

Starting Point

  1. Set algorithm to Sobel (best all-around choice)
  2. Set output mode to Edges Only to see raw detection
  3. Adjust minimum threshold to remove noise (start around 5-10%)
  4. Adjust maximum threshold to control edge intensity (start around 50%)
  5. Fine-tune edge strength if edges are too weak or too strong

For Clean Source Material

  • Use Roberts Cross for fastest processing
  • Lower minimum threshold (2-5%) to capture subtle edges
  • Keep edge strength at 100%

For Noisy Source Material

  • Use Sobel or Scharr for better noise immunity
  • Increase minimum threshold (10-20%) to filter noise
  • Consider reducing edge strength slightly

Creating Stylized Effects

Neon/Glow Effect:

  • Output mode: Edges Colored
  • Set edge color to bright neon (e.g., cyan: R=0, G=255, B=255)
  • Increase edge glow (30-60%)
  • Lower minimum threshold for more detail

Sketch/Line Art Effect:

  • Output mode: Edges Only
  • Invert edges: Yes (for white background with dark lines)
  • Higher minimum threshold (15-25%) for cleaner lines
  • Lower maximum threshold for harder edges

Subtle Edge Enhancement:

  • Output mode: Overlay
  • Lower overlay opacity (20-40%)
  • Preserve original alpha: Yes
  • Adjust edge color to complement footage

For Compositing/Masking

Generating Edge-Based Alpha:

  • Output mode: Edge Alpha or Edges as Alpha
  • Adjust thresholds to capture desired edge detail
  • Use as input to other compositing operators

Isolating Specific Edges:

  • Increase minimum threshold to keep only strong edges
  • Use edge strength to fine-tune sensitivity
  • Edge Alpha mode preserves original colors

Technical Notes

Algorithm Comparison

Algorithm Speed Noise Immunity Diagonal Accuracy Best For
Sobel Fast Good Good General purpose
Prewitt Fast Moderate Good Clean sources
Laplacian Fast Low Excellent Fine detail
Roberts Cross Fastest Low Moderate High-contrast edges
Scharr Fast Good Excellent Precision work

Algorithm Details

  • Sobel/Prewitt/Scharr: Use 3×3 convolution kernels to compute horizontal and vertical gradients, then combine them
  • Laplacian: Uses second-order derivatives to detect edges in all directions simultaneously
  • Roberts Cross: Uses 2×2 diagonal kernels for fast edge approximation

Performance

  • Single-pass GPU kernel execution
  • GPU-accelerated via CUDA
  • Real-time at 1080p/4K on modern GPUs
  • Minimal memory overhead (single render buffer)

Requirements

  • Input image with valid dimensions
  • GPU with CUDA support

Troubleshooting

No edges visible:

  • Check that edge strength is not set to 0%
  • Lower the minimum threshold
  • Ensure Show original (debug) is set to No
  • Verify input has sufficient contrast

Too much noise in output:

  • Increase minimum threshold to filter weak edges
  • Try Sobel or Scharr algorithm instead of Laplacian or Roberts Cross
  • Reduce edge strength if amplifying noise

Edges too thick or bloated:

  • Reduce edge glow setting
  • Increase minimum threshold
  • Decrease edge strength

Edges too thin or broken:

  • Decrease minimum threshold
  • Increase edge strength
  • Use a smaller gap between min and max thresholds
  • Try Laplacian algorithm for finer detail

Edge color not changing:

  • Ensure Output mode is set to "Edges Colored" or "Overlay"
  • Edge color settings are hidden in other output modes

Overlay settings not visible:

  • Overlay opacity and Preserve original alpha only appear when Output mode is "Overlay"

Edges look different than expected algorithm:

  • Each algorithm has different characteristics
  • Use F6 to cycle through and compare
  • See algorithm comparison table for guidance

Original image showing through:

  • Check that Show original (debug) is set to No
  • In Overlay mode, reduce overlay opacity for more edge visibility
  • Switch to Edges Only mode to see pure detection

Alpha channel issues:

  • In Overlay mode, toggle Preserve original alpha based on your needs
  • Edge Alpha and Edges as Alpha modes modify the alpha channel differently
  • Verify downstream operators are respecting alpha