Dienstag, 12. August 2014

Better video stabilization in Blender


Blender has got a great tracking tool, which can also be used to compensate unwanted camera movements. A common use case is represented by the intention to make a shaky handheld video look stable.

A very good introduction to the basics of Blender's stabilizing features is found here.

Though if you try to deshake a video you will encounter the Problem that the algorithm compensates all camera movement. This is fine if you are going to stabilize a steady shot like it is shown in the tutorial above, but in most cases there is some intended movement like a camera pan that should be preserved while annoying jittering needs to be removed.

To make this kind of selective video stabilization possible I have written a small addon which applies a rudimentary highpass filter to a selected tracking marker. After the filter is applied, only the fast, jittering moves are represented by the marker so that you can use it to get much better stabilization results!

You can download it on BlenderArtists and I have a quick example comparing the standard and highpass stabilization for you:

Please notice that the wobbliness is caused by the rolling shutter of my camera und thus not introduced by Blender ;-)

Using the addon is very simple:
Find a good feature and track it, just like in the tutorial.
When you have done this, select the marker and use the addon whose UI is located on the bottom of the Clip Editor's tool panel.


The numeric value represents the range of frames over which the motion is smoothed. A higher value makes slower motions being stabilized, too. Usually a value between 5 and 15 gives good results.
The Apply operator filters the selected marker in the scene's frame range (the start and end frame that are found in the timeline window's header).
Please make sure that the marker is tracked/keyframed for every frame in that range; otherwise the addon will fail.

Now a second trackpoint is created. Simply use it for 2d stabilization instead of the original track.
You can also repeat the procedure for a second track point and use it for rotation stabilization!

That's it. Have fun!

Montag, 23. Juni 2014

Skin Softening

In the last Blender tip I stated that I would write something about frequency extraction. Here is one useful technique which depends on that.

Although I am not a fan of skin retouching in general because I believe a human's natural and individual appearance is most appealing and candid, I am sure that some of you might like to soften an actress' or actor's skin sometimes. The main difficulty doing this is that you want to obtain a smooth looking skin without making it look like wax and to get an idea how achieve this, it is useful to understand what we are really trying to do here:

Do we really want to Soften the whole skin, as the term softening refers to removing every detail that is smaller than the user-specified blur radius?
No, we don't. We want the skin to look gentle and clean, not smooth! So it is not our Intention to remove every feature, but only the ones that are annoying, while keeping the detail which make the skin look natural.
Here we can benefit from the fact that the bad features like little flecks are bigger than the skinpores that should be kept - which leads us to frequency extraction.

We want to create a little node setup that blurs the image while preserving the edges, but keeps the small scaled details. This is surprisingly simple:

Let us go through this step by step:
As described in an earlier post, we use the two Gamma nodes to work in a gamma corrected color space. After the Gamma node, the tree is split into two branches: The lower one blurs the the image but keeps the edges. Using the Color Sig value we can control which details will be blurred and the Space Sig controls the blur amount. This branch alone creates this:

To recover the little details, the upper branch compares the raw image with a version that is less blurred than the one from the lower branch by subtraction. The output is an Image containing only the features that were blurred and the Space and Color Sig values enable us to control which details will be there. In the end, the two branches are added up and we get the final result.
I have exaggerated the rather subtle effect a bit to show it more clearly.

 Be careful: Because we have removed a whole layer of details, if the image gets rescaled to a size where the recovered details are lost, there is only the blurred surface left. So this technique is mainly suitable where the result will not be scaled in an unregulated way!

Now, of course it makes sense to apply this nodeset selectively to skintones using color keying. Have fun!

Sonntag, 22. Juni 2014

Till death do you part - Bis dass der Tod Euch scheidet

I have noticed that Camgaroo, a german Video-Magazine, has uploaded the entries of their annual "Camgaroo Award".
In 2009 we carried off the first Prize with a short short called "Bis dass der Tod euch scheidet"; Incredible that five years have passed since then already!

By the way: All Editing and Effects tasks were done in Blender!

Mittwoch, 18. Juni 2014

The Jacob Conspiracy - Turn The Page

I have just found a Music Video where I did a background replacement in the one of the last shots - the one showing the woman walking onto the bar.
I like the lighting in the video!

The Jacob Conspiracy - Turn The Page (Acoustic Live) from Cedric Letsch on Vimeo.