The present invention contains subject matter related to Japanese Patent Applications JP 2006-252238 filed in the Japanese Patent Office on Sep. 19, 2006, the entire contents of which being incorporated herein by reference.
1. Field of the Invention
The present invention relates to an information processing apparatus, method and program and, in particular, to an information processing apparatus, method, and program that allows grouping contents properly and creating new contents.
2. Description of the Related Art
In recent years, various clustering technologies have been proposed for grouping recorded contents in machines such as an HDD (Hard Disk Drive) recorder and a personal computer. By sorting recorded images by using the technology, contents may be created like an album of photographs shot by a silver salt camera.
Storing photographs shot by a silver salt camera may include dividing the photographs into albums or pages based on events, shot places and dates, for example. A user can lay out photographs with closer relationships regarding events, places, dates or the like on each page in accordance with the size of the page or the number of photographs.
By the way, a technology has been proposed that converts film images of shot photographs to electronic images, saves and manages them as electronic data by adding additional information such as the shot dates and places thereto and stores the photograph film recording the images in association with the electronic data (refer to JP-A-10-143631).
However, in an HDD recorder or a personal computer, it is difficult to sort contents such as photographs and moving images properly in accordance with a request by a user unlike an album for photographs shot by a silver salt camera.
Accordingly, it is desirable to allow sorting multiple images into meaningful groups.
According to an embodiment of the present invention, there is provided an information processing apparatus including clustering means for performing clustering on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images, and grouping means for grouping the images such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images.
The metadata may describe the shot times when the images are shot. The distance may refer to the time interval between the shot times. The clustering means may be caused to perform clustering on the multiple images by connecting the images in a binary tree structure so as to reduce the number of nodes among the images with smaller time intervals between the shot times based on the shot times when the images are shot. The grouping means may be caused to group the images by dividing the binary tree to which the images are connected into subtrees to which a predetermined or smaller number of images are connected.
The information processing apparatus may further include correcting means for correcting the numbers of images contained in adjacent subtrees of the divided subtrees when the numbers of images, which are shot within a predetermined time range and are contained in the adjacent subtrees, are unbalanced.
The metadata may describe shot places where the images are shot. The distance may refer to the physical distance between/among the shot places.
The metadata may describe a keyword relating to each of the images. The distance may refer to the degree of similarity between/among the keywords.
The information processing apparatus may further include creating means for creating contents in which the grouped images are laid out in groups.
The creating means may be caused to define the layout of the images in the contents to display the contents based on the number of the grouped images.
The information processing apparatus may further include display control means for controlling the display of contents.
According to another embodiment of the invention, there is provided an information processing method including the steps of performing clustering on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images, and grouping the images such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images.
According to another embodiment of the invention, there is provided a program including the steps of performing clustering on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images, and grouping the images such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images.
According to another embodiment of the invention, clustering is performed on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images, and the images are grouped such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images.
Before describing embodiments of the invention below, correspondences between constituent features of the invention and embodiments described and illustrated in the specification and drawings will be described as follows. This description is for ensuring that embodiments supporting the invention are described and illustrated in the specification or drawings. Therefore, embodiments described or illustrated in the specification or a drawing but not described herein as an embodiment corresponding to constituent features of the invention, if any, do not mean that they do not correspond to the constituent features. Conversely, embodiments described herein as those corresponding to the constituent features do not mean that the embodiments do not correspond to constituent features excluding the constituent features.
An information processing apparatus according to an embodiment of the invention includes clustering means (such as a clustering section 91 in
The metadata may describe the shot times when the images are shot. The distance may refer to the time interval between the shot times. The clustering means may be caused to perform clustering on the multiple images by connecting the images in a binary tree structure so as to reduce the number of nodes among the images with smaller time intervals between the shot times based on the shot times when the images are shot (such as step S13 in
The information processing apparatus may further include correcting means (such as a correcting section 93 in
The metadata may describe shot places where the images are shot. The distance may refer to the physical distance between/among the shot places.
The metadata may describe a keyword relating to each of the images. The distance may refer to the degree of similarity between/among the keywords.
The information processing apparatus may further include creating means (such as a contents creating section 55 in
The creating means may be caused to define the layout of the images in the contents to display the contents based on the number of the grouped images (such as step S18 in
The information processing apparatus may further include display control means (such as a display control section 53 in
An information processing method according to another embodiment of the invention includes the steps of performing clustering on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images (such as step S13 in FIG. 13), and grouping the images such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images (such as step S16 in
A program according to another embodiment of the invention includes the steps of performing clustering on multiple images so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images (such as step S13 in
An HDD recorder 1 in
The external device that supplies AV signals may be an external device connected thereto through “i.LINK (Registered Trademark of Sony Corporation)”, a digital BS (Broadcasting Satellite) tuner or a digital CS (Communications Satellite) tuner, a digital video camera, a digital still camera or a scanner, for example.
A drive 4 is connected to the HDD recorder 1 as required. A removable medium 5 is installed to the drive 4 as required to exchange data therebetween. The removable medium 5 may be a magnetic disk (including a flexible disk), an optical disk (including a CD-ROM (Compact Disk-Read Only Memory) and a DVD (Digital Versatile Disk)), a magnetooptical disk, or a semiconductor memory.
The HDD recorder 1 in
The codec 11 decompresses digital video signals of the AV signals supplied from an external device, not shown, and supplies them to the NTSC decoder 16.
The sampling rate converter 12 converts the sampling rate for digital audio signals of the AV signals supplied from an external device, not shown, to a different sampling rate. The sampling rate converter 12 supplies the converted digital audio signals to the switching section 15.
The analog input processing section 13 selects one of analog signals supplied from an analog tuner, not shown, and a line tuner, not shown, based on the signal, which is supplied from the control section 20, indicating an operation by a user on the operating section 19. The analog input processing section 13 supplies analog video signals of the selected analog signals to the NTSC decoder 16. The analog input processing section 13 further supplies analog audio signals of the selected analog signals to the A/D converter 14.
The A/D converter 14 A/D converts the analog audio signals supplied from the analog input processing section 13. The A/D converter 14 supplies the digital audio signals resulting from the A/D conversion to the switching section 15.
The switching section 15 selects one of the digital audio signals supplied from the sampling rate converter 12 and the digital audio signals supplied from the A/D converter 14 based on the signal, which is supplied from the control section 20, indicating an operation from a user on the operating section 19. The switching section 15 supplies the selected digital audio signals to the NTSC decoder 16.
The NTSC decoder 16 converts the digital video signals supplied from the codec 11 or the analog video signals input from the analog input processing section 13 to digital video signals in NTSC scheme. The NTSC decoder 16 synthesizes the converted digital video signals in NTSC scheme and the digital audio signals supplied from the switching section 15.
In order to record video signals and voice signals input to the HDD recorder 1, the NTSC decoder 16 supplies the digital AV signals, which are the synthesized signals, to the encoder 17. On the other hand, in order to reproduce the video signals and voice signals input to the HDD recorder 1 directly without recording, the NTSC decoder 16 supplies the digital AV signals, which are the synthesized signals, to the NTSC encoder 22 and the D/A converter 23, which will be described later.
The encoder 17 performs encoding processing based on a predetermined scheme such as MPEG (Moving Picture Experts Group) scheme on the digital AV signals supplied from the NTSC decoder 16. The encoder 17 supplies the compressed and encoded signal data resulting from the encoding processing to the recording/reproducing section 18.
The recording/reproducing section 18 may be configured as a hard disk or an optical disk, for example. The recording/reproducing section 18 records the signal data supplied from the encoder 17. The recording/reproducing section 18 supplies the recorded signal data to the decoder 21. In other words, the recording/reproducing section 18 reproduces the recorded signal data.
The operating section 19 may include operation buttons, keys and a touch panel, for example. A user operates the operating section 19 to input an instruction to the HDD recorder 1. The operating section 19 supplies the signal indicating an operation by a user to the control section 20 in accordance with the operation by the user.
The control section 20 may include a microprocessor and controls the entire HDD recorder 1 based on the signal, which is supplied from the operating section 19, indicating an operation by a user.
The decoder 21 performs decoding processing based on the scheme corresponding to the scheme above, such as MPEG (Moving Picture Experts Group) scheme on the signal data supplied from the recording/reproducing section 18. The decoder 21 supplies digital video signals of the expanded and decoded digital AV signals resulting from the processing to the NTSC encoder 22. The decoder 21 further supplies digital audio signals of the expanded and decoded digital AV signals resulting from the processing to the D/A converter 23.
The NTSC encoder 22 converts the digital video signals supplied from the decoder 21 to video signals in NTSC scheme. The NTSC encoder 22 supplies the converted video signals to the monitor 2.
The D/A converter 23 D/A converts the digital audio signals supplied from the decoder 21. The D/A converter 23 supplies the audio signal resulting from the conversion to the speaker 3.
This construction allows the HDD recorder 1 to record or reproduce input video signals and voice signals.
The recording/reproducing section 18 includes an image database (DB) 31, a template database (DB) 32, a contents database (DB) 33 and a dictionary database (DB) 34. The image database 31, template database 32, contents database 33 and dictionary database 34 will be called image DB 31, template DB 32, contents DB 33 and dictionary DB 34, respectively, hereinafter.
The image DB 31 stores image data, which is data of an image supplied from the encoder 17 in
The template DB 32 records a background template and a layout template. The background template is data of a background image to be the background of the image placed on a scrapbook, which is contents recorded in the contents DB 33, when the scrapbook is displayed. The layout template is information defining the layout of images in a scrapbook. The template DB 32 records a background template and metadata indicating the attribute thereof with a correspondence therebetween.
The contents DB 33 records data of the scrapbook, which is contents including grouped images are laid out in groups. The details of the contents will be described later.
The dictionary DB 34 records, as words, data of a dictionary such as a Japanese language dictionary, an English-Japanese dictionary, a Japanese-English dictionary and a synonym dictionary.
The control section 20 includes a selecting section 51, a recording/reproducing control section 52, a display control section 53, a metadata extracting section 54, and a contents creating section 55.
The selecting section 51 supplies the information indicating the detail operated by a user based on the signal, which is supplied from the operating section 19, indicating the operation by a user. For example, the selecting section 51 may supply information describing an image or contents selected by a user to the recording/reproducing control section 52 based on the signal, which is supplied from the operating section 19, indicating an operation by a user selecting an image or scrapbook displayed on the monitor 2.
The selecting section 51 selects predetermined image data from image data of the image loaded to the recording/reproducing control section 52.
The recording/reproducing control section 52 controls the recording or reproduction to be performed by the recording/reproducing section 18. The recording/reproducing control section 52 loads data of image data, a background template, a layout template or a scrapbook from the recording/reproducing section 18. For example, the recording/reproducing control section 52 may load image data stored in the recording/reproducing section 18 based on the information, which is supplied from the selecting section 51, indicating a detail operated by a user.
The recording/playing control section 52 supplies the loaded image data, background template, layout template or scrapbook to the contents creating section 55.
The display control section 53 controls the decoding processing by the decoder 21 based on the image data or the data of a scrapbook, which is loaded from the recording/reproducing control section 52.
The metadata extracting section 54 extracts metadata added to image data loaded to the recording/reproducing control section 52. The metadata extracting section 54 supplies the extracted metadata to the contents creating section 55.
The contents creating section 55 creates a scrapbook, which is contents in which grouped images are laid out in groups. The contents creating section 55 includes a computing section 71 and a template setting section 72.
The computing section 71 includes a clustering section 91, a grouping processing section 92 and a correcting section 93.
The clustering section 91 performs clustering on images based on a predetermined condition for grouping images, that is, creating a cluster of images. The condition for creating a cluster of images may be selected by a user from prepared multiple conditions. For example, the clustering section 91 may perform clustering on images based on the metadata supplied from the metadata extracting section 54. More specifically, the clustering section 91 may create one cluster containing image data of images to which metadata describing one same event is added, for example.
The clustering section 91 performs clustering on multiple images to be grouped so as to more strongly connect the images at a closer distance based on the distances determined by metadata of the images. The metadata here may describe the shot times when the images are shot. The distance between images may refer to the time interval of the shot times between the shot images. In other words, for example, the clustering section 91 may perform clustering on the images by connecting the images in a binary tree structure so as to reduce the number of nodes among the multiple images contained in one cluster with smaller time intervals of the shot times based on the shot times when the images are shot.
For example, in the binary tree structure, the strength of the connection among images increases as the number of nodes among the images decreases. The processing of creating the binary tree structure will be described later.
The grouping processing section 92 groups images such that the number of images of each group can be equal to or lower than a predetermined number of images in accordance with the strength of connection among the images. For example, the grouping processing section 92 may group images by dividing the binary tree to which the images are connected in one cluster into subtrees to which a predetermined or smaller number of images are connected.
More specifically, the grouping processing section 92 determines, from the viewpoint of the top node of a binary tree to which images are connected, whether the number of images connected by the node is higher than the predetermined number of images or not. If so, the binary tree is divided into two binary trees with the child node of the node as the top to group the images. The grouping processing section 92 performs the same processing on the divided binary trees.
The correcting section 93 corrects the numbers of images contained in adjacent subtrees of the divided subtrees when the numbers of images, which are shot within a predetermined time range and are contained in the adjacent subtrees, are unbalanced. In other words, the correcting section 93 corrects the number of images contained in adjacent groups in time of the groups of grouped images, which are images shot in a predetermined time range, when the numbers of images, which are contained in the adjacent groups, are unbalanced.
More specifically, the correcting section 93 corrects the number of images contained in adjacent binary trees of the divided binary trees when the numbers of images, which are images shot within a predetermined time range and are contained in the adjacent binary trees, are unbalanced. For example, when the difference between the numbers of images, which are images in one cluster, that is, images shot in predetermined ten minutes in a predetermined event and are contained in adjacent two binary trees is equal to or higher than a predetermined threshold value, the correcting section 93 corrects the numbers of images contained in the adjacent binary trees by connecting the binary tree containing the lower number of images and the binary tree, which is closer in distance to, that is, at a smaller time interval from the binary tree containing a lower number of images of the two binary trees resulting from the division of the binary tree containing the higher number of images.
The template setting section 72 causes the recording/reproducing control section 52 to load, from the recording/reproducing section 18, the background template in accordance with the metadata supplied from the metadata extracting section 54. The template setting section 72 further causes the recording/reproducing control section 52 to load, from the recording/reproducing section 18, the layout template in accordance with the number of grouped images resulting from the grouping by the grouping processing section 92. The template setting section 72 sets the loaded background template and layout template in a created cluster.
The contents creating section 55 causes the contents DB 33 of the recording/reproducing section 18 to record, through the recording/reproducing control section 52, the scrapbook in which grouped multiple images are laid out in groups and the background template and layout template are set.
In
In the example in
The clustering section 91 performs clustering on images based on the metadata describing the events added to the images p1 to p25.
More specifically, as shown in
For example, the images contained in each of the cluster created in this way are entirely managed by a folder for each cluster. More specifically, the images p1 to p12 are managed by a folder under the name, “WEDDING CEREMONY”. The images p13 to p19 are managed by a folder under the name, “VIEWING OF CHERRY BLOSSOMS”. The images p20 to p25 are managed by a folder under the name, “RECREATIONAL TRIP”. For example, the information describing the images belonging to each of the clusters may be recorded in the recording/reproducing section 18.
Next, details of the processing of creating a binary tree structure to be performed by the clustering section 91 will be described.
With Reference to
In
When the image p1 obtained by the first shot is inserted to a tree (that is, when the image p1 becomes the target of clustering) before the clustering is performed, the image p1 itself becomes the root node as shown in
When the image p2 shot subsequently to the image p1 is inserted to the tree, a node n1 is newly created as shown in
The shot time of the image p1 is recorded as the minimum time of the node n1, and the shot time of the image p2 is recorded as the maximum time. Alternatively, as the time of a node, the average value (or middle time) of the shot times of two child nodes of the node, which is the parent node of them, may be recorded.
When the image p3 shot subsequently to the image p2 is inserted to the tree, and when the time interval tdp2p3 between the shot time of the image p3 and the shot time of the image p2 is smaller than the time interval tdp1p2 between the shot time of the image p2 and the shot time of the image p1, as shown in
The shot time of the image p2 is recorded as the minimum time of the node n2, and the shot time of the image p3 is recorded as the maximum time. Here, the maximum time of the node n1, which is the parent node of the node n2, is overwritten by the shot time of the image p3.
When the image p4 shot subsequently to the image p3 is inserted to the tree, and when the time interval tdp3p4 between the shot time of the image p4 and the shot time of the image p3 is larger than the time interval tdp2p3 between the shot time of the image p3 and the shot time of the image p2 and the time interval tdn2maxp4 between the shot time of the image p4 and the maximum time of the node n2 is larger than the time interval tdp1n2min between the minimum time of the node n2 and the shot time of the image p1, as shown in
The minimum time of the node n1 is recorded as the minimum time of the node n3, and the shot time of the image p4 is recorded as the maximum time.
When the image p5 shot subsequently to the image p4 is inserted to the tree, and when the time interval tdn1maxp4 between the shot time of the image p4 and the maximum time of the node n1 is larger than the time interval tdp4p5 between the shot time of the image p5 and the shot time of the image p4, as shown in
The shot time of the image p4 is recorded as the minimum time of the node n4, and the shot time of the image p5 is recorded as the maximum time. Here, the maximum time of the node n3, which is the parent node of the node n4, is overwritten by the shot time of the image p5.
Currently, the binary structure includes the nodes n1 to n4 containing the five images p1 to p5.
Since the images contained in each of the nodes are images connected to the node directly or indirectly through another node, the images contained in the node n3 are the five images p1 to p5 in the created tree as shown in
In this way, every time an image is newly inserted, images at a smaller time interval between the shot times or an image and a node at a smaller time interval between the shot time and a preset time are connected to hang from one same node.
The same processing is performed also when shooting is performed repetitively and the images p6 to p100 are inserted to the tree. Then, finally, the binary tree structure as shown in
The processing may be performed in realtime every time shooting is performed or may be performed on images recorded in a predetermined folder, for example, based on an instruction by a user.
Next, the processing of creating a scrapbook in the HDD recorder 1 will be described.
The control section 20 of the HDD recorder 1 starts processing when the operating section 19 is operated and when the control section 20 obtains an instruction for the processing of creating a scrapbook.
In step S11, the selecting section 51 supplies information indicating clustering is to be performed based on metadata to the recording/reproducing control section 52 based on a signal indicating an operation by a user for selecting to perform clustering based on metadata, which is supplied from the operating section 19. The metadata extracting section 54 extracts the metadata added to the image data recorded in the image DB 31 through the recording/reproducing control section 52 based on the information supplied to the recording/reproducing control section 52. The metadata extracting section 54 supplies the extracted metadata to the contents creating section 55.
In step S12, the clustering section 91 of the computing section 71 performs clustering on images based on the metadata is supplied from the metadata extracting section 54. More specifically, the clustering section 91 creates one cluster containing images with the metadata describing one same event.
More specifically, for example, the clustering section 91 causes the recording/reproducing control section 52 to load image data of the images p1 to p25 recorded in the image DB 31. The clustering section 91 obtains from the recording/reproducing control section 52 the image data of the image p1 to p12 with “WEDDING CEREMONY”, which is one of the metadata, supplied from the metadata extracting section 54 and creates one cluster.
In step S13, the clustering section 91 performs clustering on the images by connecting the images to a binary tree structure so as to reduce the number of nodes between images at a smaller time interval between the shot times based on the shot times when the multiple images are shot to be contained in one cluster. For example, the clustering section 91 creates the binary tree structure containing the images p1 to p12 in the manner described with reference to
In step S14, the template setting section 72 of the contents creating section 51 loads the background template with the metadata corresponding to the metadata added to the clustered image data. For example, the template setting section 72 causes the recording/reproducing control section 52 to load the background template based on “WEDDING CEREMONY”, which is the metadata of the images p1 to p12, from the recording/reproducing section 18.
In step S15, the template setting section 72 sets the loaded background template.
In step S16, the grouping processing section 92 of the computing section 71 performs grouping processing of grouping images.
Now, with reference to
In step S31, the grouping processing section 92 determines, from the viewpoint of the top node, whether the number of images connected by the node is higher than a predetermined number of images or not.
In other words, in step S31, the grouping processing section 92 determines, from the viewpoint from the node nil in
On the other hand, if it is determined in step S31 that the number of images contained in the node is equal to or lower than the predetermined number of images, the processing ends.
The predetermined number of images here is the upper limit value of the number of images to be laid out on each page of the scrapbook to be created and is set in accordance with the maximum number of images to be laid out on each page of a recorded layout template or the total number of the recorded layout templates.
In step S32, the grouping processing section 92 divides a binary tree. For example, the grouping processing section 92 divides the binary tree connected by the node nil in
In step S33, the grouping processing section 92 determines, from the viewpoint of the tops of the divided binary trees, whether the numbers of images connected by the nodes are higher than a predetermined number of images or not.
In other words, in step S33, the grouping processing section 92 determines, from the viewpoint of the node n10, whether the number of images connected by the node n10 is higher than four or not. Since the number of images from the viewpoint of the node n10 is the seven images p1 to p7, the number is determined as being higher than four, which is the predetermined number of images. Thus, the processing returns to step S32.
In step S33, the grouping processing section 92 further determines, from the viewpoint of the node n9, whether the number of images connected by the node n9 is higher than four or not. Since the number of images from the viewpoint of the node n9 is the five images p8 to p12, the number is determined as being higher than four, which is the predetermined number of images. Thus, the processing returns to step S32.
In this way, the processing in step S33 is performed on each of the divided binary trees.
In the second step S32, the grouping processing section 92 divides the binary tree. For example, the grouping processing section 92 divides the binary tree connected by the node n9 in
In the second step S33, the grouping processing section 92 determines, from the viewpoint of the node n6, whether the number of images connected by the node n6 is higher than four or not. Since the number of images from the viewpoint of the node n6 is the three images p1 to p3, the number is determined as not being higher than four, which is the predetermined number of images. Then, the processing ends. The grouping processing section 92 further determines, from the viewpoint of the node n8, whether the number of images connected by the node n8 is higher than four or not. Since the number of images from the viewpoint of the node n8 is the four images p4 to p7, the number is determined as not being higher than four, which is the predetermined number of images. Then, the processing ends. Since it is difficult for the grouping processing section 92 to divide the image p8 and the number is not higher than the predetermined number, four, the processing ends. The grouping processing section 92 further determines, from the viewpoint of the node n7, whether the number of images connected by the node n7 is higher than four or not. Since the number of images from the viewpoint of the node n7 is the four images p9 to p12, the number is determined as not being higher than four, which is the predetermined number of images. Then, the processing ends.
In this way, the grouping processing section 92 divides the binary tree structure containing the images p1 to p12 into the group of the images p1 to p3, the group of the images p4 to p7, the group of the image p8 only and the group of the images p9 to p12. The grouped images are laid out in groups on pages of the scrapbook.
Referring back to the flowchart in
In step S18, the template setting section 72 sets the loaded layout template for each page to each page.
In step S19, the contents creating section 55 lays out multiple images in groups, and the scrapbook having the background templates and layout templates set is supplied to and recorded in the contents DB 33 of the recording/reproducing section 18 through the recording/reproducing control section 52. Then, the processing ends.
In the example in
In the example in
In this way, the HDD recorder 1 can create a scrapbook in which multiple images sorted in meaningful groups are laid out.
Note that the scrapbook may be a new image data combination created from image data or may be edited data that is data for specifying the position for displaying images with reference to image data.
Having described that the clustering section 91 more strongly connects images shot at shot times at a smaller time interval based on the metadata describing the shot times of the images, the clustering section 91 may more strongly connect images shot at shot places apart by a shorter physical distance based on the metadata describing the shot places of the images. Alternatively, the clustering section 91 may more strongly connect images having keywords, which relate to the images, with a higher degree of similarity based on the metadata describing the keyword relating to the images.
Furthermore, a scrapbook may be linked with other multiple scrapbooks. More specifically, for example, scrapbooks may be linked with each other by associating predetermined metadata added to images laid out in the scrapbooks. Furthermore, for example, scrapbooks in which a same image is laid out may be linked.
When the numbers of images laid out on pages of a created scrapbook are unbalanced, the number of images on each page may be corrected. For example, when a page on which one image is laid out and a page on which six images are laid out are continuous in a created scrapbook though the shot times are close to some extent in one same event, the number of images laid out on each of the pages may be corrected such that the numbers of the images laid out on the pages can be three and four. In other words, in the grouping processing as described above, the number of images may be corrected to balance the numbers of images to be laid out on pages.
Since the processing in steps S51 to S53 in the flowchart in
In step S54, the correcting section 93 determines whether the numbers of images, which are images shot in a predetermined time range, contained in adjacent binary trees of the divided binary trees are unbalanced or not. More specifically, for example, the correcting section 93 may determine whether the difference between the numbers of images, which are images in one cluster, that is, images shot in predetermined ten minutes in a predetermined event and are contained in adjacent two binary trees is equal to or higher than a predetermined threshold value or not. Here, the predetermined threshold value is the value determined by a user and is three, here, for example. If it is determined that the number of images contained in the adjacent nodes is three or higher, the processing moves to step S55.
For example, when the time interval between the shot time t8 of the image p8 and the shot time t12 of the image p12 is 10 minutes or shorter in
In step S55, the correcting section 93 corrects the numbers of images contained in the adjacent binary trees, and the processing ends.
More specifically, in step S55, the correcting section 93 may divide the image p9 connected by the node n7 and the binary tree having the node n4 at the top, as shown in
On the other hand, if it is determined in step S54 that the difference between the numbers of images contained in the adjacent binary trees is not three or higher, the processing ends.
In this way, the HDD recorder 1 can correct the number of images on each page when the numbers of images laid out on pages of a created scrapbook are unbalanced.
Thus, images sorted to meaningful groups are laid out on pages of a scrapbook in consideration of the balance in numbers of images to be laid out on the pages.
Next, the processing of displaying a scrapbook in the HDD recorder 1 will be described.
The control section 20 in the HDD recorder 1 may start processing when the operating section 19 is operated and the control section 20 obtains the instruction for the scrapbook display processing, for example.
In step S71, the selecting section 51 supplies the information describing a display pattern of a list for displaying scrapbooks to be selected by a user to the recording/reproducing control section 52 based on the signal, which is supplied from the operating section 19, indicating an operation by a user for selecting a display pattern of a list for displaying scrapbooks to be displayed on the monitor 2.
In step S72, the recording/reproducing control section 52 loads all recorded scrapbooks from the recording/reproducing section 18. The recording/reproducing control section 52 supplies the display data for displaying a list of the scrapbook to the display control section 53 based on the information describing the list display pattern for displaying the supplied scrapbooks to be selected by a user. The HDD recorder 1 causes the monitor 2 to display a list of the scrapbooks under the control of the control section 20.
In step S73, the selecting section 51 supplies the information indicating one scrapbook from the list of the scrapbooks to be selected by a user to the recording/reproducing control section 52 based on the signal, which is supplied from the operating section 19, indicating the operation by a user for selecting one scrapbook from the list of the scrapbooks displayed on the monitor 2.
In the example in
In the example in
In this way, one scrapbook can be selected from a displayed list of scrapbooks.
Referring back to
In step S75, on the other hand, the recording/reproducing control section 52 determines whether the displayed page is the last page of the scrapbook or not. If so in step S75, the processing ends.
If not in step S75, the processing moves to step S76.
In step S76, under the control of the control section 20, the HDD recorder 1 causes the monitor 2 to display the next page in the selected scrapbook, and the processing returns to step S75.
In this way, the HDD recorder 1 can cause to display a scrapbook.
Having described that a scrapbook is created from image data, a scrapbook may be created from scrapbooks.
When the creation of contents is controlled in this way, the contents can be created from multiple images. Furthermore, multiple images can be sorted in meaningful groups when clustering is performed on images such that the images at a closer distance can be more strongly connected based on the distance determined by the metadata of the multiple images to be grouped and images are grouped such that the number of images of each of the groups can be equal to or lower than a predetermined number of images in accordance with the strength of the connection among images.
The present invention is not limited to an HDD recorder but is applicable to any apparatus that can record or reproduce an image and/or contents, such as a personal computer.
The series of steps in the processing may be implemented by hardware or software. When the series of steps in the processing is implemented by software, a program included in the software is installed from the removable medium 5 to the control section 20.
The steps describing the program stored in the removable medium 5 herein apparently include processing to be performed chronologically in the described order but not necessarily include processing to be performed chronologically. The steps may include processing to be performed in parallel or separately instead.
According to the embodiments of the invention, contents can be created from multiple images. According to the embodiments of the invention, multiple images can be sorted into meaningful groups.
The embodiments of the invention are not limited to the described embodiments, but various changes may be made to the invention without departing from the scope and spirit of the invention.
It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof.
Number | Date | Country | Kind |
---|---|---|---|
2006-252238 | Sep 2006 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6754389 | Dimitrova et al. | Jun 2004 | B1 |
7298895 | Loui et al. | Nov 2007 | B2 |
7440638 | Nagahashi et al. | Oct 2008 | B2 |
7477805 | Ohtsuka et al. | Jan 2009 | B2 |
7646895 | Haupt et al. | Jan 2010 | B2 |
7716259 | Aridome et al. | May 2010 | B2 |
20050141849 | Tsue et al. | Jun 2005 | A1 |
20060056737 | Ohtsuka et al. | Mar 2006 | A1 |
20060222244 | Haupt et al. | Oct 2006 | A1 |
20060279555 | Ono | Dec 2006 | A1 |
20100073396 | Wang et al. | Mar 2010 | A1 |
20100088617 | Watanabe | Apr 2010 | A1 |
Number | Date | Country | |
---|---|---|---|
20080089593 A1 | Apr 2008 | US |