How do I create and apply a vignetting correction mask?

7 visualizaciones (últimos 30 días)
Josh
Josh el 4 de Mzo. de 2014
Comentada: Josh el 7 de Mzo. de 2014
I am trying to correct for vignetting that appears in High Dynamic Range Images. In order to do so, I need to create some sort of vignetting correction mask that can be applied to the image in order to counteract the light falloff at the periphery of the image. I have an image of a uniform luminance surface that shows pixel vignetting, and the idea is to divide the entire image by the max pixel value to create an image where each pixel value is a ratio of the max value. In theory, if I divide the vignetted image by the newly created "ratio image", then the vignetting would be corrected. From reading other posts and answers, I am assuming I would have to convert the image to grayscale so that I am dealing with only one pixel value instead of the RGB values. If there is a way to do it without converting it to grayscale then that would be preferred. I know basic commands in matlab so any help would be greatly appreciated.
  1 comentario
Josh
Josh el 4 de Mzo. de 2014
I know that vignetting is also depends on aperture size, and I have all of the .jpeg and .RAW files used to compile the HDRI.

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 4 de Mzo. de 2014
No you do not have to convert to grayscale, but you do get a grayscale image because you do it one one color channel at a time. Essentially this:
% Divide the actual image by the modeled image.
correctedColorChannel = single(oneColorChannel) ./ single(noiselessBackgroundImage);
which is in the attached file. But first you have to create the model background image, which is created from your "blank shot" by the other attached file.
  1 comentario
Josh
Josh el 7 de Mzo. de 2014
Thank you for your quick response. I will try this and let you know how it works.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by