Inspiration
To generate a true orthomosaic which it takes a lot of compute and time. In situations where the need is only to map out an area, example a disaster struck area, geometrical accuracy, compute, time are limiting factors. We found several techniques that did fast, low compute, orthomosaic-style mosaics and built a solution on top of theirs.
What it does
Builds a mosaic incrementally by approximating the ground as planar and applying homography to estimate where the incoming frames should be stitched with the current canvas using feature matching. A drone survey draws a lawnmower pattern over the region of interest, we process each strip of the lawnmower pattern as chunk and produce a mosaic and then use a merge-tree to merge the individual mosaic strips into the overall mosaic by using same homography and feature matching technique.
How we built it
AWS as cloud infrastructure and opencv for image processing. AI Disclosure - Minimax M3.1 Flash and Deepseek V4.1 Flash
Challenges we ran into
Different techniques were tried out for mosaic strip merging, but the canvas is sparse and big so several techniques like As-Projective-As-Possible (APAP), Moving DLT etc produced artificats inside the region of interest. These were scrapped in favor of simplistic approach of feature matching + homography. On the processing of the strips, a homography cannot capture all the transformations if the camera angle is not nadir. Even if the survey is done from high-altitude, ground relief plays an important part, as a high relief introduces parallax, which again breaks homography.
Accomplishments that we're proud of
By architecting the pipeline in such a way that all the steps actually form a DAG (merge-tree). This DAG makes it highly parallelized. Waiting would only happen when the inputs of a node are still being processed.
What we learned
Biggest learnings were in AWS and architecting the pipeline for opencv.
What's next for FauxMosaic: CPU-only mosaicking for rapid aerial survey
A "next" direction could be exploring how to merge large canvases with a flow matching technique, since flow in a local region could correctly capture all modes of transformation. APAP does that but we haven't been able to figure out how to stop the artifacts on large canvases.
Log in or sign up for Devpost to join the conversation.