Three-dimensional flash LIDAR coupled with a 2D RGB camera on an aerial platform is an efficient data collection method for mapping wide-area terrain and urban sites with imagery draped over a 3D model. In order to assemble a seamless and geographically accurate mosaic product despite GPS/INS errors, frames of imagery require data-driven registration. In the approach described in this paper, all spatially overlapping frame pairs are registered, be they adjacent in time, within the same flight line, or across flight lines, and the alignment model accounts for parallax due to 3D structure. All pairwise registration constraints, along with GPS/INS measurements, are combined by least squares adjustment to estimate the pose of each frame. Registered LIDAR frames are then combined and regridded to a uniformly sampled DEM, which is then used to orthorectify and mosaic the RGB frames. Furthermore, in order to process and store hours of data efficiently, a control strategy partitions the entire terrain into moderate size tiles, within which the pairwise registration, least squares adjustment, and resampling are performed. In a flash LIDAR system designed to map 360 sq. km per hour at 1m resolution, the software will achieve near real-time throughput on a commercial PC.