Based on readings about LIDAR, I have a minor refinement for our transform process to think about in the event that we scale up significantly. If we try to do accurate heights over large distances, we are going to begin to run into errors associated with the curvature of the Earth. A pointcloud from the Equator to the North pole, for example, will have thousands of miles of bulge in the middle. On a flat plane, a simple transform for the Local Coordinate System (LCS) would be fine, but on a spherical surface being mapped from an LCS by control points at the edge, the center points bulge downward at about (distance^2)*(2*10^-8) meters (derived from [1] for r=6371km). For a 100m wide LCS this is trivial. For a 1km wide LCS this is only about 1.96cm, while for a 10km wide LCS (corresponding to a GLOBE data capture, for example) this rises to as much as 1.96m. A quasi-sphere like Earth will be more complex, but the it turns out the math is already handled in ArcGIS. You can't correct for curvature while transforming an LCS to WGS84 in a 7-variable Helmert transform directly, but you can if you have an intermediate step using the ECEF (Earth Centered, Earth Fixed) coordinate system, which represents points as X-Y-Z dimensions from the center of the Earth. This mapping will curve the points, distorting them in relation to each other, to match reality. One just has to make sure that these transforms are done at a high precision, to avoid introducing additional error.
Steps:
1) Reproject GPS'd GCPs from WGS84 to ECEF.
2) Fit Helmert parameters for point cloud control points to ECEF ground control points, and transform point cloud based on these parameters, creating an ECEF point cloud.
3) Reproject point cloud from ECEF back to WGS84.