Structure from Motion (SfM) photogrammetry can be used to extract 3D point cloud data and generate digital elevation models (DEMs) from optical camera sensors. The SfM process involves feature detection, feature matching between images, sparse reconstruction to estimate camera positions and an initial 3D geometry, dense reconstruction using multi-view stereo to generate depth maps and a dense point cloud, and texturing to create 3D models. The resulting products include sparse and dense point clouds, DEMs, and textured 3D models. While powerful, SfM has limitations for scenes with featureless surfaces, repetitive patterns, or thin structures. Open-source SfM software includes WebODM, OpenMVG,