colour_hdri.distortion.correct_vignette_2D_function#

colour_hdri.distortion.correct_vignette_2D_function(image: ArrayLike, characterisation_data: DataVignetteCharacterisation, function: Literal['Parabolic', 'Hyperbolic Cosine'] | str = 'Parabolic') NDArrayFloat[source]#

Correct the vignette of given image using given characterisation for a 2D function.

Parameters:
  • image (ArrayLike) – Image to correct the vignette of.

  • characterisation_data (DataVignetteCharacterisation) – Vignette characterisation data for given function.

  • function (Literal['Parabolic', 'Hyperbolic Cosine'] | str) – Correction function.

Returns:

Vignette corrected image.

Return type:

numpy.ndarray

Examples

>>> image = apply_radial_gradient(np.ones([5, 7]))
>>> characterisation_data = characterise_vignette_2D_function(image)
>>> np.around(correct_vignette_2D_function(image, characterisation_data), 3)
array([[-0.   ,  0.122,  0.597,  0.747,  0.781,  1.08 , -0.   ],
       [ 0.   ,  0.413,  0.676,  0.82 ,  0.76 ,  0.576,  0.   ],
       [ 0.   ,  0.468,  0.759,  1.103,  0.838,  0.611,  0.   ],
       [ 0.   ,  0.439,  0.709,  0.858,  0.801,  0.628, -0.   ],
       [-0.   ,  0.193,  0.742,  0.913,  1.049, -0.477, -0.   ]])