An image processing apparatus for generating a virtual viewpoint image, comprising: a first identifying means for identifying a specific object information indicating a three-dimensional position and a size of the specific object in a three-dimensional space, wherein the specific object is included in at least one of a plurality of captured images of a target scene captured respectively from different directions by a plurality of imaging apparatuses ; a second identifying means for identifying viewpoint information indicating a three-dimensional position of a virtual viewpoint in the three-dimensional space, wherein the virtual viewpoint corresponds to the virtual viewpoint image relating to the target scene; a determining means for determining, based on the specific object information identified by the first identifying means and the viewpoint information identified by the second identifying means, a three-dimensional position of a virtual object in the three-dimensional space, wherein the virtual object is to be displayed in the virtual viewpoint image and is not included in the plurality of captured images; and a generation means for generating the virtual viewpoint image by performing rendering based on: (i) a model of the specific object according to the three-dimensional position and the size indicated by the specific object information identified by the first identifying means; (ii) the virtual object according to the three-dimensional position determined by the determining means; and (iii) the viewpoint information identified by the second identifying means, wherein the determining means is configured to determine the three-dimensional position of the virtual object such that an image of the specific object and an image of the virtual object do not overlap in the virtual viewpoint image. a first identifying means for identifying a specific object information indicating a three-dimensional position and a size of the specific object in a three-dimensional space, wherein the specific object is included in at least one of a plurality of captured images of a target scene captured respectively from different directions by a plurality of imaging apparatuses ; a second identifying means for identifying viewpoint information indicating a three-dimensional position of a virtual viewpoint in the three-dimensional space, wherein the virtual viewpoint corresponds to the virtual viewpoint image relating to the target scene; a determining means for determining, based on the specific object information identified by the first identifying means and the viewpoint information identified by the second identifying means, a three-dimensional position of a virtual object in the three-dimensional space, wherein the virtual object is to be displayed in the virtual viewpoint image and is not included in the plurality of captured images; and a generation means for generating the virtual viewpoint image by performing rendering based on: (i) a model of the specific object according to the three-dimensional position and the size indicated by the specific object information identified by the first identifying means; (ii) the virtual object according to the three-dimensional position determined by the determining means; and (iii) the viewpoint information identified by the second identifying means, wherein (i) a model of the specific object according to the three-dimensional position and the size indicated by the specific object information identified by the first identifying means; (ii) the virtual object according to the three-dimensional position determined by the determining means; and (iii) the viewpoint information identified by the second identifying means, wherein the determining means is configured to determine the three-dimensional position of the virtual object such that an image of the specific object and an image of the virtual object do not overlap in the virtual viewpoint image. <EOS>