GRADIENT-BASED DYNAMIC RANGE COMPRESSION

APPENDIX I: SOURCE CODE



If you are interested in seeing the algorithm in action, download all of the matlab files below. You should then open up one of the data files below using the load command, which will bring the high dynamic range images into memory under the name 'im'. Then, run reduceDR, which takes as its arguments an MxN (grayscale) or MxNx3 (color) image matrix, alpha, beta, s, and a filename prefix. The alpha, beta, and s parameters are all described in the methods section. If you want to print JPEGs in various sizes of the output at various steps, provide a string that will be prefixed to all the file names. (If you don't want to write these JPEGs, just leave off the fifth string argument.)

PRIMARY FUNCTION
reduceDR.m

SECONDARY (HELPER) FUNCTIONS (BY ME)
gradientAttenuator.m
poissonSolver2D.m
expand.m
reduce.m
min2.m
max2.m

SECONDARY (HELPER) FUNCTIONS (BY OTHERS)
dst.m
idst.m
tridisolve.m

HIGH DYNAMIC RANGE IMAGE DATA (.MAT FORMAT)
belgium.mat
sunshade.mat
lightson.mat
lightsoff.mat

PROJECT PRESENTATION
psych221final.ppt