Smoothing camera animation - filter trackers or smooth movement after solve?

Hi,

I am trying to create a camera animation that is like first person walking in the woods, looking off to the right and left at times. I decided to just film myself walking in my hallway, camera in front of me, and then solving that so that I could then import into a 3D enviroment (Blender, Unreal Engine)

Here is overhead view of the camera animation

https://youtube.com/shorts/ykLpEEVvuLM

It is at times jerky (partly due to real jerkiness, partly due to suboptimal tracking), and I would like the camera move to be a bit less energetic/wobbly. How best to do this? Should I filter the trackers, or apply stabilizaton after the fact?

Now, the end goal is to have a first person camera view that also casts shadows. So the ultimate question is, how best to transfer this camera data to a character animation, so that I would have animated character walking the way I walked, with head turning as camrea? This way I would be able to catch shadows and have the animated character invisible. I suppose that should be separate post.

Or maybe better yet - how to skip camera solve and make good character animation from the start (with camera attached to head) that really captures nuances of this sort of casual walk in the “woods”?

thanks!

Hi! Interesting Idea first of all

For the jerky Camera: I’d bake the solution to an empty, which you then parent the camera to. (makes less problem with AXIS orientation later on) Then you go to the graph editor of the baked animation of the empty, and from there, there are different ways how you can smooth it:

  1. CTRL + A (selecting all keyframes), Set interpolation to Bezier, then hit X (for delete) and select “Clean Keyframes”, and delete the keyframes that make the curve noisy by hand
  2. CTRL + A and ALT O, smooths the curves via algorithm, but you have less control

Then for the walk cycle, you can either animate it yourself with a custom rig or go to Mixamo.com and download a walk cycle.

Once you have your walk cycle you do the following:

1: Select the Bone responsible for head movement
2: Delete all it’s keyframes
3: Add a “Track To” bone constraint and select the Empty the camera is baked too

Finish

If you want a less destructive workflow then do:
1: Add the track to constraint to the head, and keyframe it with zero influence for the walk cycle
2: Push the walkcycle down on the NLA track
3: Make a new animation, just for the Head! And set the track to constraint influence to 1. Set a keyframe, just for the head!!!
4: Push the Head Movement down on the NLA track, make sure that the Head Animaiton is above the Walk cycle in the NLA editor
5: set the blending mode of the Head Movement NLA strip to “combine”

and finish

Hope that helps :smiley: If the head bone does not have the right rotation, play a bit around with the track axis of the constraint or rotate your empty

Ok, lots to internalize here. Will give it a try! What I did in meantime was in keyframe graph editor reduced amplitude of sinusoids where I notice too muich sway. And in jerky parts selected keyframes and used Smooth function.

thanks again!

You can also try other methods.

  1. Camera extraction using smartphone app (development seems to have stopped, but it works)

Include links in your post

  1. Using Addon to artificially create camera movements
    https://github.com/EatTheFuture/camera_shakify