Main
Photo Portfolio
Baseball
ShutterSounds Blog
Projects
Resumé (pdf)
About

Exampe 7: Edge-sensing bilinear 2 interpolation

Edge-sensing Bilinear 2
Edge-sensing Bilinear 2

Edge-sensing Bilinear 2 is an alternative implementation of the Edge-sensing bilinear algorithm, calculating an intensity gradient from a 5x5 cross pattern rather than the 3x3 block of immediately adjacent pixels.

Edge-sensing Bilinear 2 resized 3x
(Resized 3x for clarity)

Algorithms

Choose an algorithm from the left. Feel free to send suggestions/links for new ones to thedailynathan at gmail.

Shown here is the original image for reference, and the simulated Bayer raw data which the different algoriths are run on. The simulated Bayer data is generated by taking only green, red, and blue values from the corresponding pixel in a 2x2 GRGB Bayer pattern. Assuming the image used is a 100% crop taken from an image with the top-left pixel (at position 0,0) being a first green photosite (G1), this should be a fairly accurate representation of the actual raw data (assuming of course, that a camera using a Bayer filter sensor was used, and ignoring any compression losses due to compression to 24-bit true color and possible JPEG lossy compression).

Note that this demo does not quite work as effectively with resized images (this demo resizes images greater than 300x300 for performance reasons), or images not generated from a camera using a Bayer sensor. In these cases, resolution can approach or exceed that of a Bayer sensor and anti-aliasing (AA) filter combination, and severe mosaicing artifacts should be expected to appear, no matter the algorithm.

Pixel-binned
Original image
Pixel-binned
Simulated Bayer raw data