Image Construction, Manipulation, and Compression Using Nothing but Code
Behold, my epic educational video is complete!
The Mexican Convolution
Coming Soon
Engage Warp!

The Original Image
For Homework 5, we designed a program that would take user input and perform simple transformations or "warps" on an image.
Homework 6 - Super Sampling and Bilinear Interpolation
Written by Austin Hines | Sunday, 15 November 2009Overview
This project was designed to explore techniques that can be used to enhance the appearance of image warping results including Bilinear Interpolation and Super-Sampling.
Super-Sampling Using Filt Files
For this project, I used a novel method to perform super-sampling that calculates the number and weight of the subpixel points based on a user-specified .filt file similar to the ones used in Assignment 4, Convolution Filtering.
The number of sub-pixel sampling points is then equal to kernelSize2.

Sines Original

Sines with Warp Only

Supersampling and Billinear interpolation
Box Filter - 9 Sample Points

Supersampling and Billinear interpolation
Box Filter - 81 Sample Points
Supersampling and Billinear interpolationTent 3 Filter - 9 Sample Points
Supersampling and Billinear interpolationTent Filter - 25 Sample Points
Supersampling and Billinear interpolationBell Filter - 81 Sample Points
Other Fun Results
The ability to specify a custom .filt file can produce interesting results when the filt files are not originally intended to blur the image.

Sobel Horizontal

Sobel Vertical
For Assignment 2, we paired up in teams and created High Dynamic Range (HDR) Photos. You can check out our final work here:
http://www-viz.tamu.edu/courses/viza654/09fall/homework/Hines/hw02/index.html
There will be a contest among the other members of our class to see who has the best photo.
Our final photos are also listed below this post.
What is a High Dynamic Range photo?
Currently, most commonly available image display and capture technology can only display a certain limited range of the light values in a scene at any given time. Values that go over this range are simply mapped to "white," and values under this range are mapped to "black."
An example of this would be person a sitting inside in front of a window on a sunny day. If you focused on the scene outside, the scene inside would be mostly dark. However, if you focused inside, the light from the window would be completely blown out.
These limited luminance-range images don't normally look weird to us because our eyes work the same way. Muscles in our eyes expand and contract our iris to let in more or less light in order to reveal the details of whatever part of an environment we're looking at.
Since this process is mostly unconsious, however, traditional photos cannot replicate the "full beauty" and detail of certain vistas that we might experience in person.
High Dynamic Range photos attempt to compensate for this by combining multiple exposures of the same scene into one image. Each of these exposures capture different ranges of luminance values so that the full light value range can be represented. While the values of the final HDR image are still out of the display range of our modern devices, we can then "tone map" the image and compress the brightness values so that the details our eyes would reveal by expanding and contracting are maintained.
