CardtoTrack v7.1

This location is for Registered Users Only.
Perhaps you need to login or register.
Contributor: Alexey Kuchinski & Helge Stang
Finding position in 3D space based on Geometry,World position pass or manual method. Reconcile 3D position to CornerPin and Roto node
10.0, 9.0, 8.0, 7.1, 7.0, 6.3 or later
Linux, Mac, Windows
14 Feb 2017

how to:


  • fixed broken connection in CardToTrack Gizmo


  • scene size added
  • grid hue/opacity added
  • stabilization function added
  • improved estimation for card passing the Camera origin
  • CProject Gizmo reworked
  • BUG fixes(and probably few new added :))


Extract files into your plugin directory.

Paste those lines to your please:

r.addCommand('CardToTrack gizmo', 'nuke.createNode(\'CardToTrack\')',icon='my.png')







Older versions:



          added aditional input to the Gizmo 'Extra' and pulldown choice:

  1. Geometry - if you have a Geometry of the scene you can pick the exact position in one click
  2. Wpos pass - if you have a World position pass you can pick the exact position in one click. (it has to match Nuke World xyz, shuffled to 'rgb')
  3. Card - now it is possible to connect external Card to the gizmo and run the calculation (supports animated and static cards)

          fixed BUG causing colorization of the viewer if the scene is huge

          grid look is changed, added Green external grid to mark the position in huge scene, the size of the card is the size of the white grid with the magenta center

          CardToTrack command is sitting now in the Gizmo itself and there no need to inport it separately


          now compatible to Nuke9.08 and higher

          help and tooltips added

          grid color adjustment added


           fixed Roto animation update, thanks Magno!


           fixed CardToTrack gizmo error, thanks Mike!


CardToTrack command(not exist anymore as a separated command and included in the gizmo it self v6.5)

allows you to extract 2D tracking data from position of your card in 3D space of Nuke, it use Reconcile3D as a basis but in addition to 2d position you will have also rotation and scale.As a result you can have a CornerPin, CornerPin(extra matrix), tracked Roto node(extra_matrix). You can extract from static and moving cards. Can be used within CardToTrack gizmo or standalone.

CardTroTrack gizmo

helps you to find position of the object in 3D space and including CardToTrack command as well.

CProject gizmo - replacing CornerPin, added more user friendly interface

V 06.0

1 huge improvement in a speed, you will get the calculation almost instantly (thanks to Helge Stang) 

2 including CardToTrack group for easy finding position in 3D space

3 new node created instead of the CornerPin (CProject), with additional features. if CProject is not installed - a CornerPin will be generated.


Known BUG v6.00, fixed in v6.03:

Right after creation of Roto you have to click on the Root layer of freshly created Roto node, so something will be update there and it will remember the animation. Working on solving the problem.


Do not cross the Camera origin, calculation will fail in this case, to avoid - keep your card small. In the end result it is not important how big your card was.




Short explanation about how to use it ( sorry for my terrible English :) :


In V.03    --It is possible extract also a corner pin.

In V 03.1  --fixed BUG. Reconcile was not always connected to BG Image.

                  --Added check box 'Translation only' - if checked - will calculate only 2D position (exactly as Reconcile do) - as result you willl have a Tracker node.

In V 03.2  --2D position of corners in corner pin will exactly match corners of the card in 3D space.

In V 04.0  --It is possible extract CornerPin with transformation animated in 'extra matrix'. (can be used later in Roto or GridWarp matrix).

In V 04.1   --fixed BUG. If a Card had an Animation it was not tracked properly.

In V04.2   --fixef BUG. In some cases tracking points were not positioned on corners of the Card.

In V05.1   --possible to create tracked Roto node (extra_matrix)

in V05.2   -- hopely final cleanups of the code :) . No need anymore to connect a texture to the Card (before Nuke was rising an error if a Card had no texture)



Please login in order to download these files.


# Alexey Kuchinski 2012-04-25 04:10
upps, found some mistake in v1.0, fixing now, will upload soon v2.0
Sorry for that
# Diego Ramos 2012-12-10 10:52
I think this great, but I dont know how this works..could you make a tutorial? :-)
# Alexey Kuchinski 2012-12-10 11:46
Hi Diego, i definitely will, just do not have time right now. Generally you need to position your card in the right place, than select your camera + select your BG + select this card and run the script. this works exactly as Reconcile3D node, just instead of axis you have a card.
It also will support moving/scaling/ rotation of the card (but will not work with card connected to Transform node or with animation in Extra matrix)
Hope it is enough for now, soon (hopefully) will post Tutorial :-)
# Alexey Kuchinski 2012-12-10 15:05
Here we go :-)
Hope my English is good enough
# Julian Lojek 2012-12-12 01:44
So this is what you do at night. :-) Thanks, will come in handy. Good work!
# Falk Hofmann 2012-12-12 05:35
nice one Alexey!
seems to be much faster than using cards with a scanline render.
# kim sihyun 2012-12-13 02:06
this is super useful scripts
# li zhaohui 2012-12-22 11:07
I'm interested in your nuke plugin package, especially MassivePanel, whether it can be shared.My English is very bad....
Thank you!
[email protected]
# Patrick David 2013-01-04 08:56
This is amazing, however is it just me or does Nuke's motionblur not seem to work properly on matrix transformations ?
# Alexey Kuchinski 2016-02-28 08:59
Hi Patrick, Sorry for the late answer, it should work, sometimes the re some kind of Gimble lock and the animation flipps. Happenning if you rotating to the point behind tracked card(more than 180 degrees), or if you passing the card with the Camera.
# Alexey Kuchinski 2016-02-28 09:01
New Version (v6.0) finally have got what was missing all the time - SPEED!!!
the calculation happening almost instantly.
Huge thanks to Helge Stang for this improvement.
# Mike Connolly 2016-02-29 00:28
Brilliant mand, thank you.

But with CardToTrackGizm o I get:

unable to sample node at given location (1496.4, 1014.8) for the current context (may be zoomed in or have a ROI set)

I'm either all zoomed out, or zoomed in with viewer (as per the video), I don't have an ROI, base size is same as image.

Please advise

NukeX 9.0v8 OSX
# Alexey Kuchinski 2016-02-29 03:46
Hi, Mike.

Never had this error before, can you please send me a script please? maybe i will be able to recreate that.
[email protected]

exchange plate to constant if cant send the video.
thank you.
# Alexey Kuchinski 2016-02-29 04:03
OOO Crap!!!
just downloaded my own upload. the gizmo had disconnected camera inside, will re-upload...... now
# Magno Borgo 2016-02-29 20:53
The roto "bug" can be solved using:


after you create everything, it will force it to update the node ui
# Alexey Kuchinski 2016-03-01 07:54
Huge thanks!
will try this one and update the submission.
Thanks again Magno!
# Alexey Kuchinski 2016-03-01 17:47
Did anybody else expierence problem Mike had with CardToTrack gizmo?

unable to sample node at given location (1496.4, 1014.8) for the current context (may be zoomed in or have a ROI set)

trying to solve it but can not recreate the error, would like to know if it is some local problem or a gizmo is not working for other people as well.
thank you
# Alexey Kuchinski 2016-03-05 09:20
Hi there, seems like Foundry did change some TCL rules from version 9.08 and higher, so i am expecting you will have issues with CardTo Track gizmo, will fix the problem as soon as will have 9.v08
sorry for inconvinience
(it should run fine on lower versions though)
FIXED in version 6.04
if your viewer is looking redish - go inside of gizmo and put clamp after blue NoOp node - it is just preview issue, FIXED in version 6.05
# Travis Button 2016-05-28 20:37
Hey Alexey. Came across this thread because of a recent issue I started having on the "Magic Carpet" 4 point multi-gradient gizmo I've been using from Nukepedia for years. I have made a few adjustments over time to make it better but apparently this same bug was introduced via Nuke 9.0v8 for that gizmo as well. What exactly was your fix? The bug is producing really odd terminal errors and sporadically working/not working in the gui. My error is from a TCL expression pulling rgb values from a Crop node. Example: [sample Crop4 red 10 10 8 8]. I have tried a number of things to fix it to no avail. Any ideas?
# Alexey Kuchinski 2016-05-29 07:42
Hi Travis, not sure if it is connected to your problem, what happened in my Gizmo is that i was sampling the rgb value of certain node using python command inside of NoOp node.
the output of NoOp node was not connected to nothing
That was okay till Nuke 9.08, in Nuke 9.08 as turned out to be - if node is not connected to the main tree of the gizmo it is not evaluated (at least for me the solution was just to connect the bloody node to the tree with a merge node and set the mix value to zero)

maybe you can send me a group that errors and i will have a look
# Travis Button 2016-05-29 16:54
Thanks for the reply, Alexey. In a roundabout way, it does sound like the same problem. I have a crop node that is feeding values to a constant and half the time (depending on which node you're viewing) the constant gets the value it is supposed to and the other half of the time it returns 0. Like yours, it's pulling RGB values, in my case from a crop node using TCL. I can literally open them up sideXside Nuke9v6 it works fine and Nuke 9v8 it's broken the same way you report. I tried your fix with the merge node as well as a shufflecopy to get it connected to the main tree and it worked for a second and then it didn't. Extremely buggy. I reported this to the foundry and sent sample script so hopefully I'll hear from them tomorrow. I can send you the script/group if you give me your email. Thanks again!
# Alexey Kuchinski 2016-05-29 17:00
have to say that i also had a plenty errors with nuke expressions
inside of groups and funny enough too frequently i was solving the problem without fully understanding why for example : the simple line as input1.translat e.x is just refusing to work from time to time
(many times solution was to turn the expression into python)
my mail is
lam[email protected]
# Marco Masotti 2017-02-14 15:51
Hi, Alexey!
I can't use this gizmo on Nuke 10.0v5 (unknown command type when I click on the tab on top).
Anyway after a Copy and Paste it works but when I click "go" it doesn't export correctly the CProject. I only get a normal corner pin. Of course would be the same add some framehold or other but your CProject was very good. Can you help me in this case?
Thank you very much! Awesome job!
+1 # Alexey Kuchinski 2017-02-14 16:20
Hi Marco, thank you.
i do not work with Nuke 10, still on 9.
But i did run a simple test on 10,0v3 and everything went just fine.
Did you just download the gizmo or you used it before on lower version?
are you sure your CProject gizmo is in your plugin folder?

can not check for Nuke 10,0v5 since i do not have an access to it right now, sorry.
# Marco Masotti 2017-02-14 16:56
Thanks, Alexey,
It's the first time that I use it.
I've placed the folder inside .nuke and I've also put the lines into
+1 # Alexey Kuchinski 2017-02-14 17:46
please dive inside of CartToTrack gizmo, check if StabSwitch1 is connected to ScanlineRender1 Camera input, if not - reconnect please.
maybe the Gizmo was corrupted on Upload, checking it now, if yes, will re upload ASAP.
thank you
# Alexey Kuchinski 2017-02-14 19:03
Hi Marco,
re uploaded newer version, hope that will fix the problem.
worked on Nuke 10.0v03.
Thank you for reporting!
# Marco Masotti 2017-02-15 09:24
Hi, Alexey!
Thanks for the support!
Unfortunately, it's still not working :-|
There's always the CardToTrack: Unknown command error message.
+1 # Alexey Kuchinski 2017-02-15 10:04
Hi, good morning,
Which tab are you clicking?
are you talking about the CardToTrack menu?
if yes, press "x" , type CardToTrack - it should bring the node.
if you managing to bring the node probably something in your went wrong check if you did mistype something.
running out of ideas :D
# Marco Masotti 2017-02-15 10:36
Good morning!
I was talking about the button on the bar on top (near to "help").
also trying to execute with "x" and typing CardToTrack, nothing.
I just copied and paste the three lines above in the :D
maybe there's something strange with this nuke version.
I will keep you updated about it!
I hope the problem is just me 8)
+1 # Alexey Kuchinski 2017-02-16 07:21
Hi, it seems that Nuke is not loading the CardToTrack gizmo on startup, do you have some other ........ stop stop stop!!!!
just re read your first post: I've placed the folder inside .nuke

you have to put only files inside of .nuke folder, not a folder with files inside!!! nuke will not access the folder you pasted in, nuke will look into .nuke folder only
i think we are done here :)
# Marco Masotti 2017-02-16 09:18
Hi, Alexey!
Wow, I feel so dumb :o other gizmos I have are working inside their folder. Sorry for the waste of time :D
Thanks again! You did a great and useful gizmo!
# Alexey Kuchinski 2017-02-16 11:49
Hi Marco, glad we solved it!
# Sven Akelian 2017-10-02 12:22
Thanks Alexey,
Can you elaborate on using the now builtin Card2Track Command ?

I'm connection my card to the extra slot, setting the gizmo to "I have a card", but this does not work :(
# Alexey Kuchinski 2017-10-02 12:32
hi Sven.
are you getting some error message?
is your camera connected
do you have animation in your camera
frame range.......
too many things can go wrong
havw you seen tutorial?
you can send me script as well
# Alexey Kuchinski 2017-10-02 12:32
hi Sven.
are you getting some error message?
is your camera connected
do you have animation in your camera
frame range.......
too many things can go wrong
havw you seen tutorial?
you can send me script as well
# piotr hurny 2018-01-30 15:56
Hello Alexey, long time no see.

I have an issue with you script.

I am using Nuke 10.5v2 on windows 7.

The gizmo freezes nuke when I press GO!

Its not responding and I wonder why.

I am not using any undistort nodes for the BG.

Can you help me or explain why does it freeze up ?


# piotr hurny 2018-01-30 16:01
Quoting piotr hurny:
Hello Alexey, long time no see.

I have an issue with you script.

I am using Nuke 10.5v2 on windows 7.

The gizmo freezes nuke when I press GO!

Its not responding and I wonder why.

I am not using any undistort nodes for the BG.

Can you help me or explain why does it freeze up ?



Never mind its just very slow. Took about 5 mins but it works! :)
# Blic cer 2018-04-01 01:15
It's one of the greatest gizmos!!!
# Adrian Rivera 2018-05-03 18:26
Hi, love your gizmo!

I was wondering if you could add another feature in your next version, information that comes in the corner pins and roto node come from undistorted sources due 3d camera and reconcile3d information, would there be a way to also export position information already distorted, say as if there would be an undistorted lensdistortion node in the BG input after the plate, so the gizmo could take that information, copy it and then apply a the distortion into the information, it would would be great specially for the roto node since you normally roto in the distorted plate
# Alexey Kuchinski 2018-05-03 21:00
Hi Adrian, thank you for your comment.
a corner pin has points and it is theoretically possible to calculate
their position affected by some lens distortion.
Problem 1 : it is complicated from numerous reasons.
Problem 2: everything between points will be not properly distorted since it will be linearly interpolated between points and will not correspond to the lens distortion.

I will recommend to you to do your masks on undistorted footage and apply the distortion to mask later on.

or, and frankly that is my preferred way : just mask the distorted footage and add 2-3 additional keyframes fo fix possible drift.It will do in the most cases.
# Adrian Rivera 2018-05-03 21:27
I see, thank you for the quick response! :)

You have no rights to post comments

We have 2265 guests and 67 members online