An apparatus for generating a model for pose estimation of a system, the apparatus comprising a processor circuitry, the processor circuitry being configured to: obtain training data for a plurality of locations, said training data comprising at least one image captured by an image capturing device, and respective poses of said at least one image captured by said image capturing device, wherein a respective pose of an image comprises a respective location and orientation of the image capturing device during capture of the image; generate from said training data at least one data sample for each of said captured images, wherein a data sample for an image comprises an assignment of said image and at least one other image selected from said training data to respective poses; train a neural network with a data set comprising said data samples to estimate a respective pose of a localization image from: said localization image; at least one additional image from said training data; and a respective pose of each of said at least one additional image; wherein said generating at least one data sample comprises: selecting at least one reference image from said training data; selecting at least one proximate image having a pose proximate to a pose of said at least one reference image from said training data; and assigning said at least one reference image and said at least one proximate image to respective poses of each proximate image relative to each reference image; wherein a pose node of said at least one reference image is denoted a reference node and a pose node of said at least one proximate image is denoted a proximate node; wherein the proximate nodes are located within a specified distance from one or more reference nodes. obtain training data for a plurality of locations, said training data comprising at least one image captured by an image capturing device, and respective poses of said at least one image captured by said image capturing device, wherein a respective pose of an image comprises a respective location and orientation of the image capturing device during capture of the image; generate from said training data at least one data sample for each of said captured images, wherein a data sample for an image comprises an assignment of said image and at least one other image selected from said training data to respective poses; train a neural network with a data set comprising said data samples to estimate a respective pose of a localization image from: said localization image; at least one additional image from said training data; and a respective pose of each of said at least one additional image; wherein said generating at least one data sample comprises: selecting at least one reference image from said training data; selecting at least one proximate image having a pose proximate to a pose of said at least one reference image from said training data; and assigning said at least one reference image and said at least one proximate image to respective poses of each proximate image relative to each reference image; wherein a pose node of said at least one reference image is denoted a reference node and a pose node of said at least one proximate image is denoted a proximate node; wherein the proximate nodes are located within a specified distance from one or more reference nodes. said localization image; at least one additional image from said training data; and a respective pose of each of said at least one additional image; wherein said generating at least one data sample comprises: selecting at least one reference image from said training data; selecting at least one proximate image having a pose proximate to a pose of said at least one reference image from said training data; and assigning said at least one reference image and said at least one proximate image to respective poses of each proximate image relative to each reference image; wherein a pose node of said at least one reference image is denoted a reference node and a pose node of said at least one proximate image is denoted a proximate node; wherein the proximate nodes are located within a specified distance from one or more reference nodes. selecting at least one reference image from said training data; selecting at least one proximate image having a pose proximate to a pose of said at least one reference image from said training data; and assigning said at least one reference image and said at least one proximate image to respective poses of each proximate image relative to each reference image; wherein a pose node of said at least one reference image is denoted a reference node and a pose node of said at least one proximate image is denoted a proximate node; wherein the proximate nodes are located within a specified distance from one or more reference nodes.