# 3.3 Using Survey Data in PFTrack

This document is part of *Level 3. Advanced Matchmoving Strategies* in PFTrack of The Pixel Farm Training Academy’s PFTrack course. Find out more and register for the next available live class.

When survey data is available from the location of a shoot, feature tracks can have a specific 3D position (survey coordinates) even before solving for camera motion. PFTrack’s Survey Solver node utilises these survey coordinates to estimate the camera motion.

Even when 3D tracker positions are initially unknown, you may be able to generate survey coordinates if appropriate data from the set is available, such as a LIDAR scan or a geometric model of the set, survey photos or a solved camera viewing the same scene.

This article provides an overview of how to use these different kinds of survey data in the Survey Solver node.

### Contents

– Entering Survey Coordinates

– Coordinates Matter

– Solving the Camera

03. Generating Survey Coordinates from LIDAR

– Importing LIDAR Data

– Attaching Trackers to LIDAR Points

04. Generating Survey Coordinates from Solved Cameras

– Defining 3D Positions

– Solving the Camera

– Generating Survey Coordinates from Survey Photos

## Tutorial Footage

To learn this tutorial you will need to download and use the footage below.

**Footage: PFTClocktower.zip**

**01. The Survey Solver Node**

The Survey Solver node is used to solve for camera motion when 3D coordinates are known for specific features of the scene, or in cases where such coordinates can be generated. 3D coordinates can be obtained in many ways, ranging from measuring features on location to LIDAR scans, survey photos or a geometric model of (parts of) the set.

The Survey Solver node is usually used in combination with User Track nodes, rather than Auto Tracks, to ensure that trackers coincide with known 3D positions.

**02. Using Survey Coordinates**

One of the most straightforward and low-tech ways of getting survey coordinates from a set would be to measure the location of specific (trackable) features in a shared coordinate system.

### Entering Survey Coordinates

If survey coordinates are available, they can be assigned to trackers in the Survey Solver’s *Trackers* tab.

By providing an *Uncertainty* value where precise measurements might not have been possible, you allow the Survey Solver to deviate from the survey coordinates in order to get a better result.

You can also specify multiple survey coordinates in an ASCII file to use in the Survey Solver. The screenshot below shows the contents of such a file:

### Coordinates Matter

When using survey coordinates from external sources, make sure to specify the correct coordinate system to allow PFTrack to convert them correctly into its internal left-handed system.

### Solving the Camera

Once a sufficient number of 3D positions have been assigned to trackers, the camera can be solved in the usual way by clicking *Solve All*.

**0****3. Generating Survey Coordinates from LIDAR**

**3. Generating Survey Coordinates from LIDAR**

Another way to assign 3D coordinates to trackers is to attach them to a LIDAR data point.

### Importing LIDAR Data

LIDAR data can be imported into the Survey Solver node by clicking the *Import* button in the node’s *LIDAR* tab.

### Attaching Trackers to LIDAR Points

Once LIDAR data has been imported, trackers can be attached to LIDAR points to generate survey coordinates. Select a tracker in the *Trackers* tab, then click the *Attach* button to attach the tracker to LIDAR. Navigate to the corresponding LIDAR point in a perspective or orthographic view, then click with the left mouse button to attach the tracker to the point.

Repeat these steps for as many trackers as possible. Once you have survey coordinates for a number of trackers, you can track the clip by clicking *Solve All*.

**0****4. Generating Survey Coordinates from Solved Cameras**

**4. Generating Survey Coordinates from Solved Cameras**

*Note*: The following example uses the PFTClocktower1 and PFTClocktower2 clips from the *Level 2. Extended Matchmoving in PFTrack* class, which are available for download above. PFTClocktower1 has been solved using auto tracks and a Camera Solver node, PFTClocktower2 will be solved using survey coordinates generated from PFTClocktower1.

If you already have a solved camera viewing the same scene, it can be used to generate survey coordinates for further cameras. Connect the solved camera to as an **additional** input (not the first input) to the Survey Solver node and make sure the *Already solved* checkbox for that camera is checked.

### Defining 3D Positions

To assign a 3D position for a tracker, select the tracker and switch to the already solved clip. Click *Set Position* and place the tracker in a suitable frame.

Once you have placed the tracker in two or more frames its position in the solved clip will be triangulated and the tracker’s survey coordinates and uncertainty value updated accordingly.

### Solving the Camera

Once enough 3D positions have been generated, you can click *Solve All*. The primary camera will then be solved into the same coordinate system as the already solved one.

### Generating Survey Coordinates from Survey Photos

Instead of using an already solved moving camera to generate survey coordinates for a clip, you could also follow the steps outlined in this chapter using a solved scene created from still images.

However, with the Photo Survey and Scene Solver nodes, PFTrack has dedicated tools to solve moving cameras with the help of survey photographs.

**05. Generating Survey Coordinates from a Geometric Model**

During the *Level 3. Advanced Matchmoving Strategies in PFTrack* live class, a geometric model of a structure on set has been used to generate survey coordinate.

The model must be imported into the Survey Solver node from either an Autodesk FBX 2010, Open Alembic or Wavefront OBJ file, and aligned with the camera in one frame.

Survey coordinates can then be created for trackers that would lie on the geometric object’s surface. Select the appropriate trackers and click *Generate Survey* to obtain 3D positions for the trackers. Then click *Solve All* to solve the camera motion.

**06. Conclusion**

This document provided an outline of how survey coordinates can be generated and used in PFTrack’s Survey Solver node. Knowing 3D positions of trackers before the camera has been solved can provide shortcuts for many tasks in matchmoving. For example, as there is only one mathematical solution to making 3D positions match the 2D trackers, the scene is automatically oriented to the survey coordinate system.