How can I reduce exposure and white balance flicker in a timelapse on Linux?

Asked 5/29/2018

8 views

2 answers

0

I’m assembling a timelapse from thousands of photos shot over a long period. Because the weather and lighting changed, the frames have noticeable differences in exposure and color/white balance, which causes visible flicker in the final video. I’ve already tried some ImageMagick adjustments, but the brightness and color still vary too much between frames. Is there a way on Linux to better normalize exposure and color across the image sequence for timelapse output?

Originally by Photography Stack Exchange contributor. Source · Licensed CC BY-SA 4.0

Photography Stack Exchange contributor

8y ago

2 Answers

1

There are some products that normalize exposures for timelapses over arbitrary frames or time duration. In other words, it will adjust each exposure so that the overall brightness will vary only over a minimum duration or frame count. (Which, depending on how rapidly lighting varies, might result in no perceptible change at all.)

There are a number of deflicker filters for the ancient open-source program AviSynth, at least one of which I've used before with satisfactory results. If your footage is 4k, the 32-bit version will probably "run out of memory" trying to process it though. (There are some more recent 64-bit builds, and possibly some 64-bit deflicker plugins, but development of AviSynth became so fragmented around the time of transition to 64-bit, that it may not be worth it to try to figure it all out.)

AviSynth aside, the google search keywords you want are "timelapse deflicker". There are myriad plugins for just about any editor you might be using, such as ReelSmart Motion Blur.

There's another option though. This is the one I use, mostly to achieve smoother timelapses, but also as a side-benefit reduces the strobing effect you describe and I've also struggled with: Rather than taking photos at some interval and then combining into, say, 24fps - I shoot the scene as a very long normal (e.g. 24 or 60 fps) video, up to 4 hours with my particular equipment. I then iteratively overlap frames in post, which compresses time in a very smooth and natural way. For example, the first pass overlaps frames 1 and 2, 3 and 4, etc. Then I take that output and do the same thing again, which has the effect of evenly overlapping frames 1-4, 5-8, etc. This way, the footage speeds up 2x, 4x, 8x, 16x, etc. The final playback speed can be different than the original, of course, resulting in a different final multiplier.

This can be done with AviSynth trivially easy (in memory without intermediate files and iterative encoding losses). That is, if it doesn't "run out of memory" as noted earlier. It can also be done with, say, Premiere. (Note that for the Premiere, simply speeding up the video with the "overlap frames" option, doesn't exactly do that and the results aren't nearly as good. It can be fairly easily tricked into doing that though, also without intermediate files, it just takes more manual intervention.)

Another tip, I also run an artificial motion-blur pass on the original footage first, before iteratively combining them. (With a simulated "360 degree" shutter blade for continuous motion blur.) This avoids the "splayed deck of cards" appearance that can result with this approach, when subjects and/or the camera moves rapidly. This can also produce smoother results for photo timelapses, but only if the motion is slow and/or subtle. (If too great, the artificial motion-blur looks bad and...artificial.) If you shoot in 60 fps originally, it significantly reduces motion-blur artifacting (technically by "250%" vs 24 fps). But is obviously more of a strain on equipment capability/capacity.

Good luck!

Originally by user85980. Source · Licensed CC BY-SA 4.0

user85980

6y ago

0

AI Answer

Generated from our catalog & community — verify before relying on it.

Yes. What you’re seeing is typical timelapse flicker, and the usual fix is a deflicker workflow rather than applying the same global ImageMagick adjustment to every frame.

Deflicker tools analyze brightness over neighboring frames and smooth exposure changes over a chosen time span or frame count, so overall luminance changes more gradually. This can greatly reduce visible jumps in brightness, though very rapid real-world lighting changes may still remain.

One community-suggested option is using deflicker filters with AviSynth. These tools are designed specifically for timelapse exposure normalization and can give satisfactory results. Be aware that older 32-bit builds may run into memory limits with high-resolution footage such as 4K, so a 64-bit workflow is preferable if available.

For white balance/color variation, similar temporal grading or batch color correction may be needed in addition to exposure deflickering. In practice, a timelapse-specific deflicker tool or video post workflow is usually more effective than basic per-image auto-corrections.

UniqueBot

AI

8y ago

Your Answer