A method comprising: receiving a plurality of survey photographic images of a customizable product having one or more markers affixed upon the customizable product, wherein each of the plurality of survey photographic images depicts the same customizable product from a different survey camera position; the method being characterised in that it comprises: automatically determining, based on the plurality of survey photographic images, determined camera positions relative to the customizable product for capturing photographs of the customizable product; storing associations between the determined camera positions and customizable attributes of the customizable product including a particular association that indicates that a particular determined camera position is associated with a particular customizable attribute; obtaining a plurality of non-survey photographic images of the same customizable product without at least some of the one or more markers, including a particular non-survey photographic image taken from a certain camera position that is near the particular determined camera position relative to the customizable product; based on determining that the particular non-survey photographic image is from the certain camera position that is near the particular determined camera position relative to the customizable product, and based on the particular association, storing first data representing the particular non-survey photographic image in association with second data identifying the particular customizable attribute; wherein the method is performed using one or more computing devices. receiving a plurality of survey photographic images of a customizable product having one or more markers affixed upon the customizable product, wherein each of the plurality of survey photographic images depicts the same customizable product from a different survey camera position; the method being characterised in that it comprises: automatically determining, based on the plurality of survey photographic images, determined camera positions relative to the customizable product for capturing photographs of the customizable product; storing associations between the determined camera positions and customizable attributes of the customizable product including a particular association that indicates that a particular determined camera position is associated with a particular customizable attribute; obtaining a plurality of non-survey photographic images of the same customizable product without at least some of the one or more markers, including a particular non-survey photographic image taken from a certain camera position that is near the particular determined camera position relative to the customizable product; based on determining that the particular non-survey photographic image is from the certain camera position that is near the particular determined camera position relative to the customizable product, and based on the particular association, storing first data representing the particular non-survey photographic image in association with second data identifying the particular customizable attribute; wherein the method is performed using one or more computing devices. automatically determining, based on the plurality of survey photographic images, determined camera positions relative to the customizable product for capturing photographs of the customizable product; storing associations between the determined camera positions and customizable attributes of the customizable product including a particular association that indicates that a particular determined camera position is associated with a particular customizable attribute; obtaining a plurality of non-survey photographic images of the same customizable product without at least some of the one or more markers, including a particular non-survey photographic image taken from a certain camera position that is near the particular determined camera position relative to the customizable product; based on determining that the particular non-survey photographic image is from the certain camera position that is near the particular determined camera position relative to the customizable product, and based on the particular association, storing first data representing the particular non-survey photographic image in association with second data identifying the particular customizable attribute; wherein the method is performed using one or more computing devices.