MATLAB tools for digitizing video files and calibrating cameras

data viewer 2

  • Reads from AVI, mp4 and MOV movie files
  • Zooms in or out to any degree
  • Configurable automatic marker tracking
  • Displays up to 9 video streams
  • When in calibrated mode, displays the line of zero residual for the 2nd point given a 1st point
  • Allows user-specified video stream offsets
  • Works with videos of different frame rates
  • Change the gamma of the video images
  • Load, view and modify previously digitized points or whole projects
  • Export camera view information to Maya
  • Requires MATLAB 7 or newer (full or student version) up to and including R2018a; the Image Analysis toolbox is required for marker centroid identification
  • Current versions require a MATLAB distribution with the mmreader or VideoReader function, an older version using aviread() is also available

Citation – a description of the digitizing package and some of the inner workings is published in Bioinspiration and Biomimetics; please cite this paper when you publish work using this software.

Downloadable package with the MATLAB code and some documentation  – Last updated (August 28, 2018), now compatible with MATLAB R2018a and and with a major feature bump as DLTdv7. Thanks to Delyle Polet, Dimitri Skandalis, Elliot Immler, Kenneth Welch, Yoojoong Choi and Suzanne Kane for contributing bug fixes! –

Development version – to get the latest version in development see the DLTdv BitBucket repository.

Here’s an older version that works with MATLAB versions that have aviread() instead of mmreader() or VideoReader():

Sample data: Calibrated video of a bat flying in a wind tunnel (29 megabytes)


The mp4 versions of these should play on most recent computers, if they do not then a recent version of Quicktime player should work for the Quicktime versions or an AVI player with the appropriate codecs available for the files in AVI containers. Note that the tutorial is from a much older version; new tutorials are coming but for now these will still help.

Tutorial 1: basic operations and 2d tracking: mp4 (31 megabytes) -or- Quicktime (31 megabytes) -or- DivX5 avi (29 megabytes)
Tutorial 2: 3D digitizing: mp4 (31 megabytes) -or- Quicktime (31 megabytes) -or- DivX5 avi (35 megabytes)
Tutorial 3: 3D calibration: mp4 (40 megabytes) -or- Quicktime (40 megabytes) -or- XviD avi (35 megabytes)