What are the best photogrammetry software options for beginners?

Charles Lavigne
LlamaZOO Interactive
5 min readAug 24, 2017

I was browsing Quora last week and came across an unanswered question:

“What is the best and easiest photogrammetry software to begin with?”

Being in the middle of a very busy summer of projects for LlamaZOO, several of which involved us utilizing photogrammetry ourselves, I felt compelled to share our input — both out of a desire to hopefully help this lonely question-asker, but also as form of internal reflection.

Camera array for photogrammetry — Image from UMBC

For those less familiar, photogrammetry is the process of authoring a digital 3D asset using multiple photos of the original real world object. The input to photogrammetry is photographs, and the output is typically a map, a measurement, or in our case — a 3D model.

As an example, for Smart Shores (a virtual model of a Vancouver Island lake’s shoreline, designed to help visualize potential areas/impact of flood), we used thousands of individual aerial images of the lake’s shoreline from onboard a helicopter and UAV, and then used the magic of photogrammetry to incorporate all the images into one interactive and intricately accurate program.

Of course photogrammetry is not actually magic, but a process involving a series of complex algorithms and number of steps — each of which can be accomplished with a variety of software tools. Below are some of the photogrammetry software options that we’ve used ourselves, along with a few of our thoughts on the experience.

Task: White Balancing & Artefacts Correction

Software: Photoshop

After you’ve captured your images, but before you move on to reconstructing the individual images into a 3D model (photogrammetry processing), you’ll very likely need to do some white balancing and artefact correction for the originals.

White balancing is done to remove unrealistic colour casts, so that objects which appear a certain colour in person are displayed as that same colour in the photos. Artefact correction is done to fix any noticeable distortion of the images resulting from compression.

For both white balancing and artefacts correction, we used Photoshop.

Task: Photogrammetry Processing (Reconstruction)

Software: Agisoft PhotoScan

Photogrammetry processing, or reconstruction, is the true heart of the photogrammetry process. This is where all the individual images you captured are tied together (processed) into a complete 3D reconstruction of the original object(s).

In the simplest terms, think of a very complex 3D puzzle or the way your smartphone pieces together a panorama. Making this reconstruction possible is the reason images need to be captured from all angles of the real world object.

For photogrammetry processing we used Agisoft PhotoScan.

An example of Agisoft PhotoScan in action.

To elaborate a little bit on this choice, we found PhotoScan to deliver the best results based on comparison when using the highest qualities settings across several available packages. The only way it limited how many tiles (how large) of textures we could create was by our actual memory (hardware). This was very important because our typical PhotoScan coastal model for Smart Shores was absolutely massive (four 8k textures per 1 x .2 kilometre stretch of land). Of course textures of this size are vastly overkill for a typical video game model, but it made PhotoScan the right choice for us (we also use texture streaming along with some secret sauce, to be able to use such a larger number of textures).

The other reason we went with PhotoScan, was that it maintains coordinates in the export process, meaning we were able to embed latitudinal/longitudinal coordinates into the model (essential for creating an accurate visualization of GIS data such as lakes). PhotoScan also proved to have good process batching, and allows you to script custom processes using Python, and network processing across multiple machines — which is necessary with massive datasets.

As a side note, we’ve found that Autodesk’s photogrammetry tools are easier to use and quicker to get started with, but that their final results tend to be a little flatter and less defined — certainly a viable option for those with little or no 3D modelling expertise.

Task: Retopology, UVs, and Reduction

Software: Maya, Meshlab & Zbrush

Retopology is recreating an existing surface with more optimal geometry, UVs are two-dimensional texture coordinates that correspond with the vertex information for your geometry, and Reduction is the process of reducing the number of polys to make a 3D model less dense. After completing the photogrammetry reconstruction, you may need to make these edits to the 3D model(s) to ensure that they are indeed accurate, that textures can be applied to the correct surfaces, and that your program can run smoothly.

For these parts of the photogrammetry process, we primarily used Maya, with some supplemental use of Meshlab and ZBrush.

Retopology

Task: Baking textures

Software: Substance Designer & xNormal

Texture baking might sound delicious, but it’s actually the process of recording as an image some detail of the 3D mesh characteristics, allowing for less use of polygons. These images are then applied to model using a shader. The idea is to save on polygon count where you can, in exchange for using more texture memory, it’s an optimization balance always needing to be checked.

For baking textures, we used Substance Designer and xNormal.

This software list isn’t exhaustive, nor is the list of steps involved in the photogrammetry process. If you’re looking for something more detailed, I’d recommend checking out this excellent guide made by Unity Technologies, the creators of the Unity Game Engine.

As you might imagine, certain aspects of the photogrammetry process can be fairly demanding on a computer. It’s recommended that your computer’s configuration be:

  • Minimum 32GB of RAM (we use 64)
  • Nvidia video card with 4GB of vRAM (we use Quadros and/or GTX 1080 Ti)
  • 2TB hard drive

Photogrammetry is an exciting area with countless potential applications for organizations in mining, real estate, oil and gas, and beyond. If it’s becoming an area of interest for you or your business, I certainly recommend giving it a try yourself, or continuing to learn more.

At LlamaZOO we specialize in developing interactive 3D visualizations of complex structures and data, for Augmented Reality & Virtual Reality. We’re always eager to discuss potential projects, or share best practices, so please reach out and say hello.

--

--