motion tracking in synfig

Do you need motion tracking in synfig

  • yes I need it
  • no I don’t
  • don’t need it, but would love to have it

0 voters

If you have no idea what is video tracking please red this http://www.interactiondesign-lab.com/progetti/media/ws_videotracking.pdf.

There is no easy to use open source video tracker at all (except Cinelerra which not so flexible). So we can be FIRST!

Tracking/Match moving is critical feature for background/object replacement in VFX production.

workflow
For example you have canvas with imported image sequence. And you have few markers in this image which moves over time. You will:

Create “Motion Track” layer over image sequence
Move “Location” duck to one of locator.
Set block area rectangle (around location duck)
Set search area rectangle (around block area)
Set search steps for X and Y coordinates
Set frame which will be used to get block area. Can be even “current frame - 1”
Set mode from read to write. Track layer sets keyframe for “Location” param.
Go to next/previous frame
If no keyframes in current frame track layer automatically determines new position of marker and sets keyframe
If track layer is wrong you can manually move duck to right position
Go to next/previous frame
Repeat for each maker

Implementation
First of all we should check existence of keyframe in current frame. If it is here we will skip calculation.
Now we creating two Surfaces

for search area with X-steps x Y-steps resolution
for block area and render block area in appropriate frame with proportional resolution

Then we move block surface over search surface and calculating difference. Where difference is minimal is right position.
After determining new position layer moves location duck to new place and sets keyframe.

I’m not synfig code guru but seems this is right implementation. Hope I’ll get it work.
Actually I have no idea how to set/check keyframes and you to use surfaces. So help is very welcome.

If you have some thinks about tracking please leave it here.

Where’s the option for “Don’t need it, but would love to have it”? :slight_smile:

Also, I suspect that your approach would work well for lateral pans across an image, but not work so well for camera rotations. You’d need some 3d or quasi-3d setup to be able to warp the layers appropriately.

Akhil: I don’t need it but would love to have it.
If I’ve erased your or pixelgeek vote please vote it again. If you cannot, count with two votes of “yes”.
I agree with pixelgeek comment. Also you should define some kind of tolerance on the search routine. What would happen if at some frame the track points is loose (eg. covered by an object?). It should interpolate between past and future frames because maybe the track point is really static.

Good idea anyway! Useful to place cartoon characters and interact with live video without so much effort.

-G