A method comprising: receiving , by a processor , a first image captured by an image capture device of a mobile apparatus, the first image corresponding to surroundings of the mobile apparatus, accessing , by the processor, a first plurality of artificial images , each artificial image of the first plurality of artificial images respectively being a projection of a three-dimensional model , from a perspective of a camera viewpoint having a predetermined position and pose, onto a two-dimensional plane, wherein said artificial image is associated with an image position and image pose corresponding to said predetermined position and pose; determining , by the processor, one or more first image attributes respectively for one or more sections of the first image; identifying , by the processor, more than one artificial image of the first plurality of artificial images having one or more artificial image attributes that substantially match the one or more first image attributes for corresponding sections of the more than one artificial image and the first image; and determining , by the processor, a location and/or pose of the mobile apparatus based at least in part on the image position and/or the image pose associated with the identified more than one artificial image; wherein the more than one artificial image comprises a set of artificial images selected from the first plurality of artificial images, and determining a location of the mobile apparatus comprises assigning a weight to each artificial image of the set of artificial images based at least in part on a matching score indicating a level of match between first image attributes and artificial image attributes of the artificial image, and determining the location of the mobile apparatus based on the image position and/or the image pose and weight associated with each artificial image of the set of artificial images. receiving , by a processor , a first image captured by an image capture device of a mobile apparatus, the first image corresponding to surroundings of the mobile apparatus, accessing , by the processor, a first plurality of artificial images , each artificial image of the first plurality of artificial images respectively being a projection of a three-dimensional model , from a perspective of a camera viewpoint having a predetermined position and pose, onto a two-dimensional plane, wherein said artificial image is associated with an image position and image pose corresponding to said predetermined position and pose; determining , by the processor, one or more first image attributes respectively for one or more sections of the first image; identifying , by the processor, more than one artificial image of the first plurality of artificial images having one or more artificial image attributes that substantially match the one or more first image attributes for corresponding sections of the more than one artificial image and the first image; and determining , by the processor, a location and/or pose of the mobile apparatus based at least in part on the image position and/or the image pose associated with the identified more than one artificial image; wherein the more than one artificial image comprises a set of artificial images selected from the first plurality of artificial images, and determining a location of the mobile apparatus comprises assigning a weight to each artificial image of the set of artificial images based at least in part on a matching score indicating a level of match between first image attributes and artificial image attributes of the artificial image, and determining the location of the mobile apparatus based on the image position and/or the image pose and weight associated with each artificial image of the set of artificial images. <EOS>