An information processing method comprising steps of: dividing (S406) a plurality of images into a plurality of image groups based on time information indicating a time corresponding to each of the plurality of images; matching, in a case where the number of the plurality of image groups obtained by dividing the plurality of images in the dividing step is smaller than a predetermined number (S413:YES), the number of the plurality of image groups with the predetermined number by performing first processing for increasing the number of the plurality of image groups (S414), and matching, in a case where the number of the plurality of image groups obtained by dividing the plurality of images in the dividing step is larger than the predetermined number (S413:NO), the number of the plurality of image groups with the predetermined number by performing second processing for decreasing the number of the plurality of image groups (S415); and for each image group obtained by the processing in the matching step, laying out (S416-S420) in a template at least one image from said image group, characterized in that the first processing in the matching step comprises sub-steps of: dividing (S1101) the plurality of image groups according to a division criterion into sub-image groups corresponding in number to a sub-image group division count larger than the predetermined number, deleting (S1102) a sub-image group that satisfies a condition for excluding, combining (S1103) the remaining sub-image groups according to an integration criterion into the plurality of image groups until the number of image groups matches the predetermined number. dividing (S406) a plurality of images into a plurality of image groups based on time information indicating a time corresponding to each of the plurality of images; matching, in a case where the number of the plurality of image groups obtained by dividing the plurality of images in the dividing step is smaller than a predetermined number (S413:YES), the number of the plurality of image groups with the predetermined number by performing first processing for increasing the number of the plurality of image groups (S414), and matching, in a case where the number of the plurality of image groups obtained by dividing the plurality of images in the dividing step is larger than the predetermined number (S413:NO), the number of the plurality of image groups with the predetermined number by performing second processing for decreasing the number of the plurality of image groups (S415); and for each image group obtained by the processing in the matching step, laying out (S416-S420) in a template at least one image from said image group, characterized in that the first processing in the matching step comprises sub-steps of: dividing (S1101) the plurality of image groups according to a division criterion into sub-image groups corresponding in number to a sub-image group division count larger than the predetermined number, deleting (S1102) a sub-image group that satisfies a condition for excluding, combining (S1103) the remaining sub-image groups according to an integration criterion into the plurality of image groups until the number of image groups matches the predetermined number. dividing (S1101) the plurality of image groups according to a division criterion into sub-image groups corresponding in number to a sub-image group division count larger than the predetermined number, deleting (S1102) a sub-image group that satisfies a condition for excluding, combining (S1103) the remaining sub-image groups according to an integration criterion into the plurality of image groups until the number of image groups matches the predetermined number. <EOS>