1. An image processing apparatus for receiving an image and executing a job for the image, comprising: a segmenting section, arranged to segment the input image into image regions having different attributes; a first detector, arranged to detect a corresponding image from a first memory by search for an image of each of the segmented image regions, and to acquire, when the corresponding image is detected, an object ID of the detected image; a storing section, arranged to store the image of the image region, the corresponding image of which is not detected, in the first memory by adding a unique object ID to the image; a generator, arranged to generate schema information which includes location information of the image regions and the object IDs of the images of the image regions, and indicates a layout of the input image; and a registering section, arranged to register history information including at least the schema information in a second memory.