1. A non-transitory computer-readable medium having stored thereon computer-readable instructions that when executed by a computing device cause the computing device to: read a plurality of image files, wherein the plurality of image files contain image data defining a plurality of overlapping images; define a dual adjacency mesh for an image mosaic based on an arrangement of the plurality of overlapping images, wherein the dual adjacency mesh is defined as a plurality of nodes and edges that connect a pair of the plurality of nodes, wherein a node is defined for each image of the plurality of overlapping images and an edge is defined between each node of a pair of images of the plurality of overlapping images that overlap, wherein a seam of the image mosaic crosses an edge of the dual adjacency mesh in one-to-one correspondence to define a plurality of seams, wherein each seam is defined between an external endpoint and a branching point or between a pair of branching points, wherein the external endpoint is defined on a boundary of the image mosaic between a pair of overlapping images, wherein the branching point is defined as a minimum point with respect to a min-path distance calculated between at least three nodes of the plurality of nodes; and control presentation of the image mosaic in a display of a first device, wherein the image mosaic is created from the plurality of overlapping images based on the plurality of seams defined from the defined dual adjacency mesh.