Image Processing Methods - ISET/isetcam GitHub Wiki


Image processing methods

The ip structure records, as named methods, the choices made at each step from raw sensor voltages to a rendered image. Each is set with ipSet and can be read back with ipGet.

Demosaicking

ipSet(ip,'demosaic method', methodName) selects how missing color-filter samples are interpolated at each pixel:

  • 'bilinear' — the default; simple bilinear interpolation of the missing channels.
  • 'adaptivelaplacian' — an edge-adaptive method using the Laplacian operator.
  • 'nearestneighbor' — nearest-neighbor interpolation.
  • 'pocs' (Projection Onto Convex Sets) — an iterative, edge-aware method.

t_ipDemosaic in Image processing, color, metrics, and displays compares these directly on the same sensor data.

Sensor-to-internal color space conversion

ipSet(ip,'conversion method sensor', methodName) selects the linear transform from sensor color channels into the ip's internal color space (commonly XYZ). 'MCC Optimized' fits this transform using a Macbeth Color Checker target — see GUI utilities for the MCC selection tools this relies on, and examples/image/s_ipSensorConversion.m (see Examples) for computing such a transform directly.

Illuminant correction

ipSet(ip,'correction method illuminant', methodName) selects how the image is white-balanced:

  • 'none' — no correction.
  • 'gray world' — assumes the scene average is neutral.
  • 'white world' — assumes the brightest point is neutral.
  • 'manual matrix entry' — a user-supplied correction matrix.

Internal color space

ipSet(ip,'internalCS', name) / ipGet(ip,'internal color space') select the calibrated color space used internally for color-balancing calculations (for example 'stockman' or 'XYZ'); see ipGet(ip,'internal cmf') for the corresponding wavelength functions.

Back to Image processing.