Compilations and designs may be created from a set of images. For example, a collage may be automatically created from a set of images selected from a user. The collage may allow more images to be viewable in a smaller space. A user may create a collage to be placed, in a book of photographs, a greeting card, or a poster.
The drawings describe example embodiments. The following detailed description references the drawings, wherein:
A collage may be created from a group of images to combine them in an overlapping aesthetically pleasing manner. A collage may created in a manner that automatically prioritizes collage images and positions within the collage shape to increase the likelihood that more important images and more interesting portions of images appear more prominently to a viewer. For example, a collage may be created to appear in the shape of a collage template, such as a circular, rectangular, or diamond shaped collage template, and an importance level map may be associated with the collage template that indicates areas of the collage template shape likely to appear more prominent to a viewer. Images may be assigned a priority by a user, or a processor may automatically determine a priority for an image or an area of an image. The images may be placed within the collage shape in a manner that places images with higher priorities in more prominent areas of the collage shape.
The apparatus 100 may include a processor 101 and a machine-readable storage medium 102. The processor 101 may be any suitable processor, such as a central processing unit (CPU), a semiconductor-based microprocessor, or any other device suitable for retrieval and execution of instructions. In one embodiment, the apparatus 100 includes logic instead of or in addition to the processor 101. As an alternative or in addition to fetching, decoding, and executing instructions, the processor 101 may include one or more integrated circuits (ICs) or other electronic circuits that comprise a plurality of electronic components for performing the functionality described below. In one implementation, the apparatus 100 includes multiple processors. For example, one processor may perform some functionality and another processor may perform other functionality.
The machine-readable storage medium 102 may be any suitable machine readable medium, such as an electronic, magnetic, optical, or other physical storage device that stores executable instructions or other data (e.g., a hard disk drive, random access memory, flash memory, etc.). The machine-readable storage medium 102 may be, for example, a computer readable non-transitory medium.
The machine-readable storage medium 102 may store collage images 105, collage image priority scores 106, and collage shape importance level map 107. The machine-readable storage medium 102 may include instructions 104 executable by the processor 101 to create a collage from the collage images 105. The instructions 104, collage images 105, college image priority scores 106, and collage shape importance level map 107 may be stored in the, same storage or in separate storages, such as storages accessible to the processor 101 via a network.
The collage images 105 may be any suitable images for creating a collage, such as photographs or artistic images. A collage may be created from the collage images 105 or a portion of the collage images 105. In some cases, a user may upload the collage images 105 or mark already uploaded images 105 that the user selects for the collage.
The collage image priority scores 106 may include scores indicating a relative priority between the images. The collage image priority scores 106 may be provided by a User. For example, a user may select collage images and indicate which of the selected images have a higher priority to be more visible in the collage. In some cases, the image priority scores may be automatically determined. For example, the processor 101 or a separate processor may analyze the collage images 105 to determine regions of interest within the collage images 105 and prioritize the regions of interest relative to one another. An image may have multiple regions of interest were the regions of interest have different priority levels. For example, an image may include a person and a background, and the face may have a first priority level, the body may have a second priority level, and the background may have a third priority level. In some cases, the collage image priority scores 106 include a priority determined based on both user input about the priority of an image as a whole and automatically determined priority information about regions of interests within the images.
The collage shape importance level map 107 may include information indicating levels of priority within a collage shape. For example, a collage template may be in the shape of a circle, and the center of the circle may have a higher priority level than the outer portions of the circle. The collage shape importance level map 107 may be stored as coordinates of the collage shape associated with priority levels. The collage shape. importance level map 107 may be stored, for example, as a table of location coordinates where the coordinates are associated with priority levels. The processor 101 may create the collage shape importance level map 107, or it may be created by a separate processor. In some cases, a user may indicate important areas of a collage shape template.
The instructions 104 may include instructions executable by the processor 101 to create a collage of the collage images 105 within a collage shape using the collage image priority scores 106 and the collage shape importance level map 107. For example, the instructions 104 may include instructions for determining the location, scale, and orientation of the collage images within the collage. The scale of the collage images may be determined based on the priority of the images. For example, a higher priority image may have a larger scale so that the items in the image appear larger. The size of a higher priority image may also he larger. The orientation may be adjusted so that higher priority images are more vertical. The location of the images may be based on the collage shape importance level map 107 such that higher priority images and images with higher priority regions of interest appear at more important areas of the collage shape. The collage images 105 may be positioned such that higher priority images and regions of interest are more visible and not as hidden by overlapping adjacent images.
The instructions 104 may include instructions for creating the collage in any suitable manner. The instructions 104 may include instructions for creating candidate collages and comparing parameters of the candidate collages to select one of the candidates for the actual collage. For example, the amount of the collage shape covered by the images and the priority and placement of the visible portions of the images may be compared between the candidate collages.
Beginning at 201, a processor identifies a region of interest within an image and assigns a priority to the region of interest. A region of interest may be a region of the image that is determined to be of greater interest than other regions of the image. The regions of interests may be used to determine which portions of images to be visible in a collage such that they are not covered by overlapping adjacent images. The region of interest may be based on the content of the image. For example, a face in a photograph may be found to be a region of interest, and a background portion may not be found to be a region of interest.
A relative priority may be assigned to the region of interest. For example, a saliency map of the image may be analyzed by a processor to identify regions of interest and assign priorities to them. The saliency map may show the differences between pixels in the image such that areas of greater contrast or particular types of contrast may be given a greater priority. In some implementations, a user may provide information to be used to calculate the priority level of images and regions of interest, such as by selecting a person to indicate that images of that person should be of higher priority. The priority may in some cases be based on a priority of the image as a whole. For example, a user may provide a priority level for the image, such as marking the image as the one the user prefers, or a priority may be assigned to an image based on its content. For example, images of a particular subject may be assigned a higher priority. In some implementations, a region of interest in the image may be assigned the priority of the image as a whole, or the priority of the image may he factored into the priority of the region of interest.
In one implementation, an image may have multiple regions of interest. For example, an image may have two people where the face of each of the people is identified as a region of interest. The priority of the regions of interest in an image may differ. For example, the eyes of a person may have a first priority level, the torso may have a second priority level, and the background have a third priority level.
Proceeding to 202, a processor determines a position of the image within a collage shape based on the visibility of the region of interest, region of interest priority, and an importance level map of the collage shape. For example, the processor may determine a collage position for the image such that image is placed within the collage shape based on the priority of the image. Positioning the image may involve determining the size, scale, orientation, depth, and location of the image in the collage. The collage shape may be automatically selected or selected by a user. In some cases, a user may provide a custom collage shape for the collage.
The location of the image may be determined based on an importance level map of the collage shape. The processor may determine are importance level map for the collage shape, may receive it from user input, or may retrieve it from a storage. For example, a processor may analyze a collage shape template to determine priority levels for different areas of the shape. In some implementations, the priority levels may be determined based on the distance from the edge. For example, the center of the shape may be assigned a higher priority than areas close to the edge of the shape. The priority may be based on the context of the shape. For example, in a shape of a person, a face may be higher priority than the body. A user may indicate areas of the shape of greater priority. For example, a collage shape may be in the shape of a basketball player dribbling a basketball, and a user may indicate that the high priority areas are the basketball and the player's face.
The region of interest within the image may be considered in determining a position for the image. For example, the image may he placed in the collage such that the region of interest is visible, but other portions of the image may be covered by other images. A region of interest may not be visible because it appears to be covered by another image, such as because it is cropped to be a particular shape within the collage to allow for room for other images. The position of the image may be based on the priority of the region of interest. For example, the image may be placed in the collage such that a first region of interest in the image with a lower priority is not visible but a second region of interest with a higher priority is visible. An image or region of interest of higher priority may be positioned such that it is at a lower depth within the collage than an image or region of interest of lower priority.
The location of the image within the collage shape may be determined based on the priority of the region of interest. For example, a region of interest with a greater priority may be placed within the location in an area of the collage shape determined to be more prominent based on the importance level map associated with the collage shape. An image may have multiple regions of interest with different priorities, and the image may be placed within the collage shape such that the portion of the image with a higher priority is positioned in a more important area of the collage shape and the portion of the image with a lower priority is positioned in a less important area of the collage shape.
The orientation of the image may be determined based on the priority of the region of interest. For example, the image may be positioned to be more vertical or to be positioned at an angle in the collage according to the priority. A higher priority region of interest may be oriented so that it appears more prominent or recognizable.
Positioning the image may include determining the amount of space to be used by the image. For example, the scale of the image may determine how large the image may be and how much space it will take on the collage shape. In one implementation, the scale of the image is based on the priority of the image. For example, a user may indicate that a particular image has a higher priority, and it may be sized to be larger than images of lower priorities. In one implementation, the size of the image is based on the priorities of the regions of interest in the image. For example, an image, including regions of interest with higher priorities may be larger than an image with regions of interest with lower priorities. In some cases, the scale of the image may be determined by the priority, and the size of the image is unchanged based on the priority, such that fewer areas of the image are visible.
The position of the image may be based on the position of other images in the collage. For example, the position may be based on the depth of the image if placed at a particular location within the collage. The location may be determined based on the other images that would overlap the image being placed or the images that the image being placed would overlap. The position may be based on the remaining amount of blank space in the collage and the location of the unused space.
Moving to 203 of
In one implementation, the processor continues the process and places a second image in the collage shape starting with step 201. The processor may place the images in the collage shape in any suitable order. In some cases, the processor may place the images in the collage based on a priority associated with the images. For example, an image with a higher priority or a region of interest with a higher priority may be placed in the collage before an image of lower priority. In one implementation, the images are sized based on priority, and the images are then placed in the collage shape in order of size.
In one implementation, multiple candidate collages are created. For example, collage images may be placed in multiple collages such that the images may be placed differently in the different candidate collages, and the candidate collages may be compared to select one of the candidate collages for the final collage. A score may be provided to the candidate collage, and the scores may be compared to determine which candidate collage to select.
The informativeness parameter 402 may be based on the regions of interests priorities 400 and the collage shape importance map 401. The informativeness parameter 402 may involve a computation of the regions of interest that are visible, such as where regions of interest are not hidden by overlapping images. For example, a collage with more regions of interest visible may receive a higher score than a candidate collage with fewer regions of interest visible. The priority of the regions of interest may be taken into account. For example, a candidate collage with higher priority regions of interest visible may receive a higher score than a candidate collage with fewer of the higher priority regions of interest visible to a viewer. The score may be based on a weighted value of regions of interest that are visible where the weight is based on the priority. The informativeness parameter 402 may be based on the position of the images within the college shape. For example, a candidate collage that includes more important regions of interest or more important images in areas of the collage shape that are given a higher priority on the collage shape importance map may receive a higher score. The informativeness parameter 402 may take into account image orientation, scale, size, location, and depth in relation to the priority of the image and regions of interest within the image
The coverage parameter 403 may be based on the amount of the collage shape covered by images. For example, one collage candidate may include additional space for filler than another candidate collage. The candidate collage that fills more of the collage shape space with images may receive a higher coverage score.
The collage may be finalized after the collage images are placed within the collage shape. For example, the collage images falling outside of the collage shape may be altered. In one implementation, the collage is cropped to form the collage shape. For example, images on the edge of the collage shape may be cropped. In some cases, an image may not reach to the edge of the collage shape in some areas, and a border or other background may be added to that area to provide filler for the portions of the collage shape not covered by collage images. In one implementation, pixels are added to create a blended transition between images where there is space between images in the collage. In some implementations, blended transitions are added between images where adjacent images touch one another.
The finalized collage may be output. For example, it may be display, stored, or transmitted. In some implementations, the finalized collage may be printed for a user or transmitted to a users electronic device. The finalized collage may be part of another design, such as where the collage is a portion of a greeting card or other product.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2012/027120 | 2/29/2012 | WO | 00 | 3/26/2014 |