Support Website Contact Support Blog

Historic Imagery Scans - 335 megapixel grayscale photogrammetry

At work, we are often asked to translate historic nadir imagery into maps. This is most often 9" film collected in large, metric cameras from as early as 1950. It is unique use-case for Pix4D, and it works relatively well even though it was not exactly designed for the task. Our workflow normally leverages Pix4D’s powerful step 1 and 2 for “Aero-Trianulation” and “Point Cloud Generation” while step 3 is normally outsourced to meet our client’s specs for final deliverables.

First, the inputs are 9" square film scanned at 12.5 microns resulting in usable imagery that is approximately 18300x18300 pixels. In total, that’s a little under 335 megapixels in TIFF uncompressed format. Sometimes each image (“frame”) is almost 1GB! Our projects range in size from 20 frames to over 500. These frames have data strips that must be removed prior to processing, and they must be uniformly sized (number of pixels) and centered prior to processing. Most frames were flown at traditional map scales, however the resulting GSD of the scan is normally between 3" and 24" depending on the lens and scanner.

Upon importing the frames, I often do not have any geolocation information, so the locations are all set to 0. The camera model is changed to reflect the scan pixel size (12.5 micron) and the focal length in mm, normally 152.4 or 6". I normally choose the UTM zone that the frames were taken in for uniform processing data downstream.

Step 1 is often run at 1/2 or 1/4 scale because the high resolution scan is sometime better than the film quality, and I generate the orthomostic for the quality report. I also use All Prior Internal calibration for these metric low-distortion cameras. When step 1 is complete, I analyze the strength of the triangulation and the low-resolution ortho to accurately determine the location of the project and common features that exist on both historic and recent aerial imagery. The photo below shows some weak areas that may need a few MTP’s in order to increase the number of 2D keypoint matches.

The ray cloud is where I do most of my work to georeference the project. I apply at least 5 GCPs, and sometime upwards of 20 in order to strengthen the project’s accuracy, especially in X/Y. Since these images were typically flown at 40/60 side/front overlap, there are many “holes” of ATPs were 3 frames don’t cover. The GCP’s are commonly intersections of dirt roads that have not been moved or changed between historic and recent aerial imagery. Google Earth is an excellent reference for GCP’s, and using the path feature, elevations are accessible as well. This method is roughly meter-level accurate, and that is good enough for our purposes.

After reoptimizing my project and generating a new quality report, I also look for any irregularities in any of the control points that I have selected, or for any odd patterns in the low-resolution DSM. If there are any problems, I may add additional GCP’s or MTP’s and then rematch and optimize. Step 2 and 3 are run next with fast settings for step 2. Step 3 generates the final orthomosaic.

Sometimes our clients require the delivery of individual orthorectified frames and seamline shapefiles of the frames used in the final orthomosaic. In that case, we use a 3rd party software like orthovista. We use the external orientations and the camera file generated from step 1, and then we clean the point cloud to generate a clean DSM used for the individual orthophotos. Unfortunately the DSM can only be generated where there is overlap or points from step 2, so occasionally we must merge and feather the edges with an existing DEM for the exterior photos of the project.

Pix4D’s workflow offers a few significant advantages over other traditional software. It does not rely on any previous georeferencing of the frames or control in order to calibrate cameras. It allows quick refinement of positioning of step 1 through the reoptimize button. It generates its own point cloud and DEM from the photos instead of relying on a current elevation model.

Pix4D also has some limitations though that force us to use 3rd party software to process what we need. Traditional photogrammetry has always used DTM/DEM’s for orthorectification, not DSM’s. It results in building “lean” that is normal in this industry. Buildings and vegetation cause brief and irregular sharp elevation changes of points in step 2, so step 3 generates too many artifacts that show up in the final orthomosaic. No amount of filtering or smoothing will remove tall buildings from the DSM in step 3, so we are often forced to do external ground classification on the point cloud before bringing it back in to run step 3 on a smooth DTM. In addition, some of these projects that cover several hundred if not several thousand square miles. The fixed minimum zoom can be challenging to view the entire project at once, and the maximum range of the viewer can also be challenging. Maybe that could be changed, at least for customers using the large-frame add-on.


Hi Nathan,

Wow. Nice! Thank you for sharing with us your historical project.

Your workflow is great! Thanks for sharing it.
As a general comment, we do not recommend this to our users, because first, you need to have the large frame add-on in order to process these high-resolution images, then the calibration would be tricky and might not work for other users since most of these pictures tend to have very low overlap and the camera calibration could be problematic. But don’t get me wrong what you are doing is awesome!

Regarding the processing, in order to fill the hole that you get in your point cloud, we can suggest you reduce the minimum number of matches to “2”. This should improve your point cloud and therefore your DSM.

Hope to see you at our User Conference ;).

Best regards