Time to be with your loved ones

Time to be with loved ones

by sat

submit your photo


Hall of Fame
View past winners from this year

Please participate in Meta
and help us grow.

Take the 2-minute tour ×
Photography Stack Exchange is a question and answer site for professional, enthusiast and amateur photographers. It's 100% free, no registration required.

What are deflicker algorithms used to deflicker stills that should be composed to a timelapse movie?

(Flickering caused by shutterspeed adjustments in sunset/sunrise shots...)

share|improve this question
    
Are you asking for a definition, or for specifics of algorithms, or for software recommendations? –  MikeW Feb 4 '13 at 10:10
1  
I'm asking for a definition. So as: gather the avergage luminance of a stack of stills, than compute blahblah ;-) –  matcauthon Feb 4 '13 at 10:13
    
If you want an algorithm, I could right one in python. –  Onlyjus Feb 4 '13 at 17:59
add comment

2 Answers

up vote 7 down vote accepted

I have no idea what algorithms commercial software uses for this task, but I'll happily make one up for you:

  1. Find the luminance of frame 0 by summing pixel values.

  2. For each frame (i): subtract frame (i+1) from frame (i), take the mean of these delta values. To account for movement, remove any pixels with delta greater than some threshold (set based on the noise level) and recompute the mean delta. Add this delta to the luminance of image (i-1) and s

  3. Now we should have an array of absolute brightness levels of each image in the sequence. For each value compute the moving average, that is replace value (i), with (sum(k = i-w to k = i+w) luminance(k)) / 2w for some window size w. Choose w based on the amount of flickering. For the first and last w frames of the sequence you can just use a constant target luminance (there aren't enough frames available to calculate an average).

  4. Transform each image from it's original luminance to the new target luminance (the result of the moving average operation).

Do this independently for all colour channels and you'll also smooth any changes in colour.

share|improve this answer
add comment

If you like programing, I found a link to a python project that will do exactly what you want. It will also interpolate between frames if you are missing a couple.

https://sites.google.com/site/timelapsepy/

share|improve this answer
    
Oo. Sweet. I will have a look at that! –  matcauthon Feb 4 '13 at 18:19
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.