Machine vision algorithms#

This section describes provides a non-exhaustive list of entry points for common machine vision algorithms supported by the toolbox. Consider these as some starting points for exploration.

Linear 2D filtering
  • Convolutional filtering: convolve, smooth

  • Filter kernels: Gauss, DGauss, DoG, Laplace, LoG, Sobel

  • Edge detection: canny

  • Scale-space: scalespace, pyramid

  • Gradient estimation: gradients, direction

Nonlinear 2D filtering
  • Mathematical morphology: morph, open, close, dilate, erode

  • Hit or Miss filtering: hitormiss, thin, triplepoint

  • Rank filter: rank, medianfilter

  • Distance transform: distance_transform

  • Image similarity: similarity

Feature extraction
  • Whole image features
    • Simple statistics: stats, hist, mean, median, std, var, etc.

    • Histogram analysis: hist, h, cf, cdf, pdf, peaks

  • Region features
    • Segmentation:
      • Thresholding: otsu, triangle, threshold, threshold_adaptive, threshold_interactive

      • MSER features: MSER

      • Color k-means: kmeans_color

    • Connected component (blob) analysis: blobs

  • Line features
  • Point features:
    • Harris corners: Harris

    • Scale-orientation invariant features: SIFT, SURF, BRISK, ORB, etc.

    • Feature matching: FeatureMatch

  • Text features (OCR): ocr

  • Fiducial features (AR tags, AprilTags, etc.): fiducial, Fiducial

Image retrieval
Camera models
Multiview geometry
  • Stereo vision: stereo_simple, stereo_BM, stereo_SGBM

  • Rectification: rectify_homographies

  • Bundle adjustment: BundleAdjust

Point cloud processing
Visual servoing
  • Position-based: PBVS

  • Image-based: IBVS