Hitfilm Tracking Compared To Mocha?

Hello all,

I was hoping you might be able to educate me with a discussion of how Mocha compares to the built-in Hitfilm tracking.  In my case at least, assume I would be using the Mocha plugin for Express 2017.

More specifically, how is Mocha better than Hitfilm tracking, what benefits would I receive by using Mocha?  

As is often the case, there is a ton of information available about Mocha, but most of it is quite detailed and technical and I'm having some difficulty sorting through all that to get to the bottom line.  Newbie friendly language is most appreciated where possible.

As a hypothetical case, let's say I'm tracking a face.  I know how to do this with Hitfilm tracking.  How  would the tracking process be improved by switching to Mocha?

Many thanks for your thoughts!

 

Comments

  • Hitfilm has a point tracker while Mocha is a plane tracker- it tracks textures. So it's difficult to answer, especially in english, but I try to do it.

    When it's about 2D I often use the Hitfilm tracker. Simple stabilization, overlays attach to movement and so on. When it comes to 2.5D or 3D there are limits using the point tracker. A face is a good example (but it is also very difficult to track): With the point tracker you can track e.g. the noise to do some overlay. This could be sort of a paint in mocha since mocha is looking for textures. But if you want to track some of the mimic of the face mocha shines. You can track the sides of the face, the head part and mocha will look for the texture and it's shear and movement. 

    Let's do another example: A driving truck and you want to replace a side with a commercial. Inside Hitfilm you can track all four points of the side, use a quad warp assigning that points and get a good result. But when at some part edges are not visible you have to make assumptions which can mess up the result. In Mocha you track that plane and assign a surface to it. This can be easier and faster since you do one track and not four.

    When it comes to rotoscoping mocha is the player. You track one thing and assign splines to it which then have the basic movement. So only a few keyframes are needed. With Hitfilm you would draw masks and keyframe them manually. The more complex, the more time mocha will save. Also I find it faster to draw complex splines with mocha than mask in Hitfilm so sometimes I use mocha only to draw mattes of screen objects.

    And last but most important: If it comes to 3D and you want to add something or replace something in your footage mocha is a must. You can do a camera solve which is then used to place the objects in 3D space and they sit where they have to be. If you do that manually in Hitfilm, which is possible, it can takes hours to get manually results from what mocha does in a few minutes.

    It really depends on what you want. Regarding the face: I made a fun video where I added Christmas hats to my soccer team when playing during Christmas party. That was done very fast inside Hitfilm since it was mainly 2D. Tracking the heads with a few adjustments, assigned the tracking data to points which are parent of the hats. The movement in z space was manually done by keyframing the scale. Mocha would track the side of a face e.g. but when it turns the track also "turns" or get lost. In that case I only needed the position of a head so a point tracker does the job very well.

    In another video I made a set extension. So I needed the movement and scale from different sides of the house to be extended. That was all done in mocha and then importing the plane and track data. With the point tracker that would have been a pain because all z-movement had to be faked and manually keyframed. So I didn't even try to do it without mocha.

    If you only need position data: Take the Hitfilm tracker which will do it fast. If you need complex structure movement or changes, take mocha. If you need 3D camera solve mocha ist the only choice.

    Also in mocha pro you have the insert, remove and stabilize module. The last one give far better results as exported tracking data used later in Hitfilm. Some inserts can also be done in Hitfilm of course but it takes more time and manual work. Also removes. But the modules in mocha give good results in less amount of time. And doing that for money time is even more important.

    I hope that helps a bit to get a better view on it.

  • Triem23Triem23 Moderator

    I think Juda did a pretty good breakdown, but I'll chime in.

    Hitfilm is one or two point tracking. It needs a small area of contrast to lock onto. Often, this is all one needs. Advantages are it's usually faster and the results of the track can be directly assigned to points and layers. Disadvantages, with fast camera movement, motion blur can throw off the track. Not true 3D data, and won't result in usable 3D position for certain camera moves. 

    Mocha attempts to track texture rather than a point. This means mocha deals with motion blur better, but has trouble with reflections. Mocha can return "true" 3D position. I use the quotes because, when you set a surface in mocha it's a bit like setting up a sheets of paper in the world. Mocha generates 3D based on how those papers move relatively to each other. But, mocha doesn't know the size of the papers or their true distances. There are multiple mathematical solutions to each solve, and the fact that is works as well as it does truly awes me.

    For complex camera moves, especially anything arcing, or moving while panning, mocha is the only way to get an accurate track. If a camera is doing a simple move--side to side, in or out--without arcing or panning, point tracking is enough. 

    Mocha has added value for roto. Like Juda said, Mocha is the best roto tool for Hitfilm. Using mocha can cut roto time by over 2/3!

    As Juda also mentioned, there's a Mocha Pro. I don't think that works with Hitfilm Express. This adds a neat stabilization module, an insert module (with 3D warping), a brilliant object removal module (make clean plates) and a neat lens distortion correction. Expensive tool, but worth it for me just for object removal. 

  • Hi guys, thanks very much for the detailed responses.  I'll be reading this multiple times to absorb as much as possible. You've both provided a big picture overview of the comparison between the two tracking methods which surely advances my education. 

    To make this a bit more newbie consumable, we might now limit the discussion to one task, face swapping.   What I mean of course is, tracking a face in the video, and then layering a new face on top which should follow the track.  As example, perhaps you've seen this video tutorial which covers face swapping using Mocha and AE.

    https://www.youtube.com/watch?v=Ib_Wmm-l-bY

    I assume the process would be similar or the same using the Mocha plugin for Hitfilm, yes?

    I find the Hitfilm tracker works pretty well for short clips, but the more complex the scene the more manual keyframing adjustments are involved.  At least in the hands of this novice, manual keyframing is both quite tedious and time consuming, and tends to introduce bumps and jerks in the track etc.  All in all I find this Hitfilm tracking very useful, but I'm at the point where I'm wondering what awaits me at the next level.

    Should I assume that, generally speaking, Mocha could deliver more accurate tracks over a longer period in, for example, a face swap?

    Thanks again for any comments you may care to share.

  • I don't think so - it depends of course on the footage itself, not the length. If done similar things (like the example above tracking multiple heads) with a point tracker over a longer footage. The length is not the point. On long tracks you can get drift inside mocha as well as with a point tracker.

  • Ok, let's play a game.  :-)  

    If you had a job doing face tracking all day everyday, and you could have Hitfilm tracking OR Mocha, one or the other, but not both...

    What's your choice?

     

  • edited March 18

    I would kill myself if I had a job where all day long I would  track faces, so there is no decision :)

    It depends on what to do with the tracking data itself. Face replacements or effects like robotic style face parts would probably better be done with mocha. If the actor has some points on his face and the goal is to blend some parts in it could be done with hitfilm, point trackers and quad warp. Anyway most would do that in mocha.You can ask another question which describes it better: Would you pay for mocha when it is not your job to track faces all day. Simple answer: Yes. I got it during the special offer beginning this year and I did not regret it while doing that mainly for hobby or additions for other people and not earning money from it (yet).

  •  Thanks for your ongoing comments Juda, very educational. 

    If it interests you, could you perhaps expand a bit on why you feel face swaps would probably be better done with Mocha?

    I'm not qualified like you guys are to consider all the many different tracking situations that can be involved in video editing, I just don't yet have the experience to understand many of these scenarios.  

    I'm hoping to focus the conversation a bit on face swapping, because that is a tracking task I do have some experience with, and so it should be easier for me to wrap my nube brain around that conversation. 

  • Triem23Triem23 Moderator

    Overall, mocha is probably better for face tracking because mocha can extrapolate 3D position data which will be more useful for face tracking. Point tracking is still 2D. Points can track position, z-rotation and scale. Often this can fake 3D position, but the planar track is going to give more useful data.

    Example: point tracking someone moving closer to the camera. So you need a two point track for scale. Great, but what do you track? Shoulders? The swing of the shoulders will cause scale jitters. Eyes? What if the actor turns his/her head? That will also translate into scale jitters. Now a planar track of the front of the face will more correctly track position and 3D rotation of head turns. It's the better tool for that job. 

  • That's a good example of different tools for different tasks on the same source clip.

    If you wanted to blur out the face, or do a beauty touch up and smooth the skin slightly, or turn their skin green without makeup, then you'd use mocha. It will supply the roto mask for all sizes of the face, you apply the effects you want: only the roto mask areas are affected.

    You want to put a floating text box above their head that gets bigger as they get nearer to the camera? Use Hitfilm 2 point tracker. Find those consistent 2 points - they will be there, even if you have to manually correct occasionally - and you get Scale values for your floating text box in 2D.

    You won't get that unless you do a 3D camera solve in mocha, which is whole lot more work to do for such a basic requirement.

    Many, many mocha tutorials can be done with the 2 point tracker, but when your only tool us a hammer, everything looks like a nail. For some (sellers of mocha, mainly) mocha is their hammer.

    When your only tool is a pair of nail-clippers, you have to get a bit more creative, but I'd rather trim my nails with a nail clipper than a hammer. :)

  • edited March 19

    Regarding your example footage I would have done that in Hitfilm. Here I did a stupid example, just looking for dancer on YouTube and picking one to track it:

    https://www.youtube.com/watch?v=4mrpWFHqNak

    All I did was tracking his head with Hitfilm point tracker, assigning the tracking data to a point and parenting that to the stop sign. That's all.

     

  • Thanks for the ongoing education!

    @Triem23 - you said...

    "Now a planar track of the front of the face will more correctly track position and 3D rotation of head turns."

    Let's see if I understand. 

    The video above, and your comment here, suggests that I would put a box around the entire face (instead of selecting points) and then mocha would track what happens to that box.  Yes?

    If the subject turns their head 25 degrees to the left, mocha would adjust the box to represent the new perspective, yes?  So would the face layer being added on top also then follow the mocha data and adjust 25 degrees to the left?

    Does the above generally describe what mocha would be doing?

    A little technical question.   I get that I would export the tracking data out of mocha, and import it in to Hitfilm.  What happens then?  Where does the data reside in Hitfilm?  Does it become a new layer which I then parent the replacement face to?

    Again, all your comments are much appreciated.

  • Why don't you try it with mocha hitfilm? That would answer most questions. I just wonder, I don't want to be rude...

  • You're not being rude Juda, that's a reasonable suggestion. 

    The thing is though, there are about a thousand different tools I could invest time and money in, and so before I dive in to any particular project I like to spend a little time learning about it. 

    Please remember, these are pretty advanced tools, and I'm a video nube.  I don't know what half the words in any particular video tools sales pitch actually mean.  So I have to dig a little harder than you do to get what's going on.

    Thanks for helping me dig, I appreciate you sharing your time the way you have.

  • I suggest watching the mocha tutorial of Axel which can be found on the tutorial page. There you see how data from mocha is imported and how you can work with it. Axels tutorials are always very good explanations and he also has good a nice sense of humor often in it.

  • Aha!  Thanks, yes, that's what I need.  I, um, somehow didn't know about the tutorial page.  Bookmarked!

  • Awesome, thanks for spoon feeding me the appropriate instruction.  I'll watch them all before any further discussion.  If you don't mind, I will hereafter refer to you as MochaGod.  :-)

  • I guess I'm far from it :)

  • Great new video on the subject by Javert...

    https://www.youtube.com/watch?v=Y7I6msr5RZo

Sign in to comment

Leave a Comment