This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Motion tracking, with layers etc.

Tags: None
(comma "," separated)
fidde88pven
Registered Member
Posts
6
Karma
0

Motion tracking, with layers etc.

Fri Apr 15, 2011 3:04 pm
Hi!

Is'nt there time to implement a motion tracking ability into KDEnlive?
If I have missed some info about this, plz redirect me to it?

OpenCV and other "plugins", is it possible to implement something like that?
User avatar
sunab
Registered Member
Posts
247
Karma
0
OS
Possible it is... Motion estimation computation is already implemented in MLT (kdenlive backend), at this time I think only one the facedetect plugin is using it, but blacklisted by default for some reason (probably stability problems).

At this time I don't think anyone is working on a motion tracking plugin.

sunab.
dekiii
Registered Member
Posts
11
Karma
0
libmv :) it was meant to be a motion tracking library to use with Blender but i think a plugin could be made using that library...
fidde88pven
Registered Member
Posts
6
Karma
0
I, for one, would donate 200-300$ for such a function...

Sad that no one is working on it!
drosky
Registered Member
Posts
56
Karma
0
I know this isn't the desired solution, but as a work-around, Cinelerra has motion tracking and motion stabilization that works quite well, and the CV version can import and render DNxHD, which now makes it easy to include Cinelerra into a workflow without significant generational degradation. At least there's a solution on Linux without having to resort to wine/avisynth.
ddennedy
Registered Member
Posts
1315
Karma
1
The latest versions of frei0r, mlt, and Kdenlive have restored and improved the facedetect and facebl0r effects. These are very canned effects - shapes and blurs. Yes, Mlt also has motion-tracking capability that is used in the Auto Mask effect. It too is very constrained to simply pixelizing a region of interest.

What exactly do you want to do with the motion-tracking? Do you want a mask to track the motion? We only recently added rotoscoping, but it is not yet tracking motion nor fully integrated as a filter mask. It is one thing to track motion, but it is another to integrate it with other things.


drosky
Registered Member
Posts
56
Karma
0
The two uses I've had for it have been compositing something on top of a moving object (essentially motion driven rotoscoping), and image stabilization. Having a mask track the motion of an object is also a good use, but in my own projects I don't have as much of a need for that.

In Cinelerra, for example, the motion plug-in can track the motion of an individual portion of a clip and write the motion vectors to a file. One use for this is to read the vectors back in to control the position of another track. Using this, you can, for example, composite a flame or sparks or something on top of a moving object that wasn't burning in the original video without having to manually adjust the positions of every frame. This type of rotoscoping isn't perfect - for example, if an object is effectively changing shape by being rotated in the scene, it may require a lot of manual tweaking to achieve a good effect, but there are still a lot of cool things you can do with it.

In conjunction with the above, Cinelerra has one other feature that helps make this easier that I wish kdenlive had - which is the ability to automatically composite tracks the way programs like Gimp and Photoshop composite layers. Kdenlive's requirement to place a transition to do compositing is a bit more cumbersome and poses some limitations.

The second, and actually most common thing I use it for is image stabilization. The motion plug-in has a mode where it accumulates the calculated motion and applies it to the source track in a manner that keeps the detection block in the same place, effectively stabilizing the video. My guess is that this is the application that the majority of people are looking for.

P.S. I've seen the recent rotoscope effect in kdenlive, and it would be great if it had the ability to do motion tracked rotoscoping. I haven't seen much information on it. I've tried attaching it to a clip, but there are only a few controls and it's not clear how to use it.
ddennedy
Registered Member
Posts
1315
Karma
1
Thanks, that helps a lot.
Your call for automatic compositing echos many other calls.
Think of the current Rotoscoping effect as simply an animatable bezier alpha channel drawing tool. So, you composite a clip over itself, and put Rotoscoping effect along with other effects to do a filter mask.


drosky
Registered Member
Posts
56
Karma
0

Re: Motion tracking, with layers etc.

Thu Apr 21, 2011 11:20 pm
I tried compositing a clip over itself and placing a few effects. When I place the rotoscoping effect, I only see three controls (invert, feathering, and feather passes) and I don't see any area to draw bezier curves nor any keyframing. I am using kdenlive 0.7.8 at the moment - am I missing something, or does it require kdenlive 0.7.9?

In any case, for motion tracking, if you have time, you might want to install Cinelerra to get familiar with the capabilities of its motion plug-in. That set of capabilities would probably be a good first set of capabilities to target in a similar plug-in for kdenlive, whether you do it all in one plug-in like Cinelerra, or prefer to implement it in separate effects for image stabilization, motion directed compositing, motion tracking mask, etc. Personally, I think it might be easier for users to implement these capabilities as separate effects - Cinelerra's single do-it-all motion plug-in can be pretty daunting at first.
fidde88pven
Registered Member
Posts
6
Karma
0
Thanks for you replies.

"In Cinelerra, for example, the motion plug-in can track the motion of an individual portion of a clip and write the motion vectors to a file. One use for this is to read the vectors back in to control the position of another track. Using this, you can, for example, composite a flame or sparks or something on top of a moving object that wasn't burning in the original video without having to manually adjust the positions of every frame. This type of rotoscoping isn't perfect - for example, if an object is effectively changing shape by being rotated in the scene, it may require a lot of manual tweaking to achieve a good effect, but there are still a lot of cool things you can do with it."

This is pretty much what I want from such a tool. And, yes, the stabilization...

Once tried Cinelerra, but it is very unpleased with my clips, it doesn't support it i'd guess...
markoc
Registered Member
Posts
342
Karma
1
In the distant future, I plan to work a bit on an stabilization plugin, but I have quite a few other things to finish first.
Have already studied some of the existing code, like mjpegtools and transcode stabilizers, but this is a quite complex problem, so I don't promise anything soon.
drosky
Registered Member
Posts
56
Karma
0
Yes, I can understand this is a complex set of capabilities, and it isn't the only thing people are asking for. I actually don't mind having two tools in my workflow anyway. It's not too often that one tool can do everything one needs for complex content creation. I've mostly switched over to kdenlive as the main assembly tool, but there are still some things it can't do that other tools can.

fidde88pven, yes, Cinelerra is limited in terms of input formats. It does well with DV and MPEG2, and the CV version can load DNxHD, so if I want to use both tools in my workflow and I'm starting with HD footage, the first thing I do is transcode to DNxHD, then I have clips that can be easily loaded into both tools. Even kdenlive does much better with DNxHD than directly working with MTS files. For standard def, Cinelerra shouldn't have any problem loading DV files. The CV version of cinelerra can render through ffmpeg using yuv4mpeg and pipes, so you can render to any format supported by ffmpeg - I use DNxHD since I'm usually bringing the footage back into kdenlive.


Bookmarks



Who is online

Registered users: Bing [Bot], blue_bullet, Google [Bot], Yahoo [Bot]