From TouchDesigner Documentation
Jump to: navigation, search


THe kinectCalibrate component allows for calculating the in- and extrinsics of a projector in relation to a Kinect device making it possible to project onto the scene captured by the kinect. The theory is the same as camSchnappr. Where camSchnappr has a 3D Object that mirrors a physical object, this component uses the point cloud as a real-world reference. Projecting a checkboard, the component detects the corners in the color image of the kinect and retireves the 3D positions of these checkerboard corners from the poincloud data. Both sets of data (2D positions of corners in projector image and 3D pos of corners in pointcloud) are the variables needed by openCV's calibrateCamera function to solve for the position of the camera - in this case the projector. The Kinect's position in this setup is assumed to be at the root.

PythonIcon.pngPalette:kinectCalibration Ext

Parameters - Kinect Projector Calibration Page

Help Help - Opens this page.  

Version Version - THe version of the component.  

Kinect Version Kinectversion - - Choose between Kinect2 and Kinect Azure.

  • Kinect2 version2 -
  • Kinect Azure azure -

Sensor Sensor - In case of a Kinect Azure multiple devices can be connected to the same computer. Choose the device you want to calibrate here.  

Open Open - Open the user interface.  

Close Close - Close the user interface.  

Parameters - Calibration Page

Output Monitor Monitor - Select the output index of the projector.  

Monitor Resolution Monitorres - - The resolution of the projector. This is automatically retrieved.

  • Monitor Resolution Monitorresw - The horizontal resolution of the projector.
  • Monitor Resolution Monitorresh - The vertical resoltuion of the projector.

Gridscale Gridscale - The scale of the checkerboard being projected during calibration.  

Grid Level Gridlevel - The level of the checkerboard being projected during calibration. Adjust this if the kinect camera has trouble detecting the corners.  

Grid Resolution Gridres - - The resolution of the projected checkerboard. The resolution is determined by internal corners horizontaly and vertically. A checkboard with 9 horizontal and 6 vertical squares is considered to have a resolution of 8 by 5.

  • Grid Resolution Gridresw -
  • Grid Resolution Gridresh -

Open Checkerboard Openchecker - Opens the output of the checkerboard on the selected projector.  

Close Checkerboard Closechecker - Closes the output of the checkerboard.  

Reset Reset - Reset the calibration.  

Get Point Pair Getpointpair - Collect a point pair from the camera.  

Pointpairs Collected Pointpairs - Amount of succesfully collected point pairs.  

Calibrate Calibrate - Calibrate the camera after colelcting sufficient number of point pairs.  

Message Message - Any message returned from the calibration routine.  

Open Pointcloud Openpointcloud - Open the pointcloud view on the projector. This is projecting the pointcloud back onto the physical environment. A good test if the system is well calibrated.  

Close Pointcloud Closepointcloud - Close the pointcloud output.  

Show Pointcloud Showpointcloud - Toggle if the pointcloud should be shown in the output.  

Show Skeleton Showskeleton - Toggle if the skeleton of a single person should be shown in the Pointcloud output. When testing this will project the skeleton points back onto the person detected.  

Parameters - OpenCV Page






CALIB_FIX_K1 Fixk1 -  

CALIB_FIX_K2 Fixk2 -  

CALIB_FIX_K3 Fixk3 -  

CALIB_FIX_K4 Fixk4 -  

CALIB_FIX_K5 Fixk5 -  

CALIB_FIX_K6 Fixk6 -  

Operator Inputs

  • Input 0 - Color camera input.
  • Input 1 - Pointcloud camera input.
  • Input 2 - Depth camera input.

Palette • Palette:arcBallCamera • Palette:arcBallGeometry • Palette:audioAnalysis • Palette:audioSet • Palette:battery • Palette:blendModes • Palette:bloom • Palette:cameraBrowser • Palette:camSchnappr • Palette:changeColor • Palette:changeToColor • Palette:checker • Palette:chromaKey • Palette:colorThreshold • Palette:compareComp • Palette:convolve • Palette:cornerPinSOP • Palette:customAttributes • Palette:dent • Palette:depthExtract • Palette:dilate • Palette:equalizer • Palette:feedback • Palette:feedbackEdge • Palette:firmata • Palette:geoPanel • Palette:gestureCapture • Palette:graphPlot • Palette:histogram • Palette:hsvBlur • Palette:imageSearch • Palette:julia • Palette:kantanMapper • Palette:kinectCalibration • Palette:kinectPointcloud • Palette:leapPaint • Palette:lightTunnel • Palette:mandelbrot • Palette:mesh • Palette:monochrome • Palette:motionSense • Palette:moviePlayer • Palette:multiLevel • Palette:multiMix • Palette:noise • Palette:onScreenKeyboard • Palette:opticalFlow • Palette:particlesGpu • Palette:pixelate • Palette:pixelRelocator • Palette:pointGenerator • Palette:pointillize • Palette:pointMerge • Palette:pointRender • Palette:pointRepack • Palette:pointTransform • Palette:pointWeight • Palette:popDialog • Palette:probe • Palette:projectorBlend • Palette:pushPins • Palette:puzzle • Palette:radialBlur • Palette:remotePanel • Palette:rgbaBlur • Palette:rgbaDelay • Palette:rgbContrast • Palette:search • Palette:searchReplace • Palette:sharpen • Palette:softenAlpha • Palette:solarize • Palette:sopRender • Palette:stitcher • Palette:stoner • Palette:superFormula • Palette:sweetSpotPreviz • Palette:TDVR • Palette:transitMap • Palette:twirl • Palette:vectorScope • Palette:virtualFile • Palette:waveformMonitor • Palette:webBrowser • Palette:xyScope

The component types that are used to render 3D scenes: Geometry Component contain the 3D shapes to render, plus Camera, Light, Ambient Light, Null, Bone, Handle and other component types.

The width and height of an image in pixels. Most TOPs, like the Movie File In TOP can set the image resolution. See Aspect Ratio for the width/height ratio of an image, taking into account non-square pixels.

Each SOP has a list of Points. Each point has an XYZ 3D position value plus other optional attributes. Each polygon Primitive is defined by a vertex list, which is list of point numbers.

A built-in panel in TouchDesigner that contains a library of components and media that can be dragged-dropped into a TouchDesigner network.