Photogrammetry in 3D modelling is the process of converting multiple photos of an object or environment into a digital 3D representation.
What do I need?
All you really need is a camera, this doesn’t have to be a state of the art device, however if your photos aren’t clear the quality of the result will be affected. A device with manual control over aperture, exposure time, and ISO is highly preferable.
Consistent, diffuse lighting, without harsh shadows is important for quality results as well.
Many applications exist for converting the photos into a 3D model, or mesh. If you would like to do the entire process yourself I recommend Meshroom as it is free, open-source, and intuitive software. After the process is complete you may want to modify or view the mesh in a modelling program such as Blender.
If you are taking photos for someone else to work with you won’t require any special software.
Step 1: Shooting
Setting up the object
An overcast day is one of the best times for capturing environments. Inside where you can control the lighting try to have the object evenly lit without harsh shadows and no very dark spots. The surface should ideally be rough and textured, a glossy surface can completely throw off photogrammetry software. An evenly coloured surface has no detail to track, so markers such as small dots of blu-tack, stickers, or drawn spots help.
Taking the photos
While shooting there are a few things to keep in mind to ensure quality results.
Avoid flares, harsh shadows, and smooth reflective surfaces.
Before starting ensure you have set your device to manual mode so that the ISO (camera sensitivity), exposure time, and aperture where applicable, will not change between photos. The values to use will depend on the scene, as long as things appear sufficiently lit we are ready to proceed.
Try to avoid casting a new shadow on the object as you move around it as best as you reasonably can. Each photo should contain about 80-90% of the same content as the photo before, the order in which they are taken is not important. If the area you are shooting is somewhat large you may move in and out to have close up detail and more distant shots to help stitch the smaller ones together. Try to avoid capturing detail far outside of the wanted area.
For smaller single objects shoot the entire circumference, then move up and loop around it again. More photos is never a bad thing.
Step 2: Processing the Photos
Import the photos
After capturing is complete, copy all the photos into a new folder, and drag that folder into the Meshroom window over the left, under “Images”.
Meshroom will attempt to detect the camera specifications from the files metadata, if the photos are all marked with a red aperture symbol this means it has failed. A more well known camera is more likely to be detected automatically. Adding your camera specifications manually can be done and is not difficult if you can find the necessary information. Whether or not Meshroom has this data you may still continue, though a green symbol meaning the data was found can lead to better quality results.
Save your project so that Meshroom has a location to store progress in case anything goes wrong part way through the operation.
Hit “Start” up the top and let Meshroom process the images, this will take a long time and put load on both your CPU & GPU. After the process is complete, look at the “Graph Editor” down the bottom. Select the final node, labelled “Texturing”, where you can find the output path listed under its properties.
Import the .obj into blender and switch to render view (hold z, move mouse upward) to view the textured model.