Spatial Journalism

An End-to-End Guide to Photogrammetry with Mobile Devices

A 3D model of Freeman Alley in New York City's Lower East Side. The walls are covered with colorful graffiti, stickers and posters.

A 3D model of Freeman Alley in New York City's Lower East Side created using photogrammetry. In this guide, we'll cover the process of capturing, processing and delivering models like this to the web.

3D storytelling techniques have the potential to make journalism more understandable by helping to visualize everything from the real world to abstract concepts. Constructing 3D models with photogrammetry allows journalists to share objects and environments with their audiences in a comprehensive, immersive way that can’t be achieved with photography or videography alone.

Over the past several years, the R&D team at The Times has worked to simplify the production of photogrammetry-driven stories. We have supported our newsroom’s publication of large-scale 3D environments — such as “Hear a Harlem Choir Rejoice Again,” “Chinatown, Resilient and Proud” and “The New Corporate Campus” — and, along the way, honed our tools and processes.

Sophisticated 3D experiences can be expensive and complex productions, often requiring the use of specialized equipment such as mirrorless cameras and drones, as well as a fair amount of custom coding. Fortunately, the latest generation of smartphones contain powerful cameras, processors and apps that make it increasingly possible for anyone with a little technical proficiency to create publication-quality 3D models. 

With the support of Online News Association’s Journalism 360 grant, we have spent the last six months developing a process for how journalists can best use these powerful tools to report stories with greater depth. This resource compiles what we've learned into a series of guides, demos and open-source software tools that we hope will aid anyone seeking to capture, process and deliver high-quality 3D models.

By Jonathan Cohrs, Mint Boonyapanachoti, Sukanya Aneja, Willa Köerner, Minkyoung Kim

Demos:

  1. Model Viewer: A model loaded with Google's Model Viewer library.
  2. Sketchfab: A model loaded with Sketchfab's Viewer API that uses annotation points and GSAP animation library to scroll through a camera path.
  3. Three.js: Scroll Controls: A glTF model with an imported camera path controlled via scroll.
  4. Three.js: 3D Tiles: A large model loaded as 3D Tiles with preselected points of interest.

Open-Source Software Release: As a complement to our photogrammetry guides, we are releasing two open-source libraries for creating interactive 3D stories. (Note that these libraries are used in the 3rd and 4th demos above.)

  1. Three-Story-Controls: This library is a collection of Three.js camera control schemes and helper components.
  2. Three-Loader-3DTiles: This library is a Three.js 3D Tiles loader based on the Cesium open tile specification. The core technology is built off of Loaders.gl, in which release version 3.0 includes some of our work.

Related Projects