A computer-implemented method for image registration, the method comprising: establishing a three-dimensional reference model of a scene; acquiring a target image of the scene, the target image being captured with a sensor (706, 1214, 1306); determining a viewpoint of the sensor (706, 1214, 1306) that captured the target image using one or more three-dimensional geoarcs, wherein the viewpoint of the sensor (706, 1214, 1306) is determined relative to the three-dimensional reference model; and generating a composite three-dimensional representation of the scene by associating data from the target image with data from the three-dimensional reference model, wherein the viewpoint of the sensor (706, 1214, 1306) is used to perform the association; and wherein the step of determining the viewpoint of the sensor further comprises: identifying one or more feature pairs in the three-dimensional reference model; identifying one or more feature pairs in a target image; for each feature pair in the target image, associating the feature pair in the target image with one of the feature pairs in the three-dimensional reference model, estimating an angle (θ) associated with the feature pair in the target image, generating a three-dimensional geoarc surface (910, 912) associated with the three-dimensional reference model, wherein the geoarc surface (910, 912) represents relationships between the feature pair in the target image and the estimated angle (θ); and identifying locations in three-dimensional space relative to three-dimensional reference model where two or more three-dimensional geoarc surfaces (910, 912) overlap. establishing a three-dimensional reference model of a scene; acquiring a target image of the scene, the target image being captured with a sensor (706, 1214, 1306); determining a viewpoint of the sensor (706, 1214, 1306) that captured the target image using one or more three-dimensional geoarcs, wherein the viewpoint of the sensor (706, 1214, 1306) is determined relative to the three-dimensional reference model; and wherein the viewpoint of the sensor (706, 1214, 1306) is determined relative to the three-dimensional reference model; and generating a composite three-dimensional representation of the scene by associating data from the target image with data from the three-dimensional reference model, wherein the viewpoint of the sensor (706, 1214, 1306) is used to perform the association; and wherein the viewpoint of the sensor (706, 1214, 1306) is used to perform the association; and wherein the step of determining the viewpoint of the sensor further comprises: identifying one or more feature pairs in the three-dimensional reference model; identifying one or more feature pairs in a target image; for each feature pair in the target image, associating the feature pair in the target image with one of the feature pairs in the three-dimensional reference model, estimating an angle (θ) associated with the feature pair in the target image, generating a three-dimensional geoarc surface (910, 912) associated with the three-dimensional reference model, wherein the geoarc surface (910, 912) represents relationships between the feature pair in the target image and the estimated angle (θ); and identifying locations in three-dimensional space relative to three-dimensional reference model where two or more three-dimensional geoarc surfaces (910, 912) overlap. identifying one or more feature pairs in the three-dimensional reference model; identifying one or more feature pairs in a target image; for each feature pair in the target image, associating the feature pair in the target image with one of the feature pairs in the three-dimensional reference model, estimating an angle (θ) associated with the feature pair in the target image, generating a three-dimensional geoarc surface (910, 912) associated with the three-dimensional reference model, wherein the geoarc surface (910, 912) represents relationships between the feature pair in the target image and the estimated angle (θ); and associating the feature pair in the target image with one of the feature pairs in the three-dimensional reference model, estimating an angle (θ) associated with the feature pair in the target image, generating a three-dimensional geoarc surface (910, 912) associated with the three-dimensional reference model, wherein the geoarc surface (910, 912) represents relationships between the feature pair in the target image and the estimated angle (θ); and wherein the geoarc surface (910, 912) represents relationships between the feature pair in the target image and the estimated angle (θ); and identifying locations in three-dimensional space relative to three-dimensional reference model where two or more three-dimensional geoarc surfaces (910, 912) overlap.