What interpolation method does the demosaic function use?
5 views (last 30 days)
Show older comments
Hi,
RGB = demosaic(I, sensorAlignment);
MATLAB Help says:
"The demosaic function uses interpolation to convert the two-dimensional Bayer-encoded image into the truecolor image, RGB, which is an M-by-N-by-3 array."
What method does it use? There are many methods of interpolation, like nearest-neighbor, bilinear, gradient, etc... I have written a demosaicing script myself using bilinear interpolation. Results are a little bit better, but time effort to demosaic the image is very high in comparison to the built-in function (more than 10x higher).
0 Comments
Answers (3)
Robert
on 4 Dec 2014
Today, I had the same question and got the following response from Matlab Tech support... Hope this helps...
...
This algorithm is based on the following research paper.
Malvar, H.S., L. He, and R. Cutler, "High quality linear interpolation for demosaicing of Bayer-patterned color images", ICASPP, 2004.
This paper is available on the web and you can access it using the following link. http://research.microsoft.com/en-us/um/people/lhe/papers/icassp04.demosaicing.pdf
This paper explains the algorithm as well as shows different weights or filter coefficients used in the interpolation method (on page 2 and 3).
0 Comments
Mischa Kim
on 14 Apr 2014
Edited: Mischa Kim
on 14 Apr 2014
Daniel, demosaic uses "...gradient-corrected linear interpolation..." (from the documentation). Check out ref. [1] on the corresponding Simulink documentation web page for more info.
See Also
Categories
Find more on Computer Vision with Simulink in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!