The present application claims priority to and incorporates by reference the entire contents of Japanese Patent Application No. 2014-103840 filed in Japan on May 19, 2014.
1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing method, and a computer program product.
2. Description of the Related Art
In the present age, a DTP (Desktop Publishing), which is to generate a printed material by using a personal computer device, has been known. In the DTP, a line drawing software by which illustrations and parts are generated, an image processing software by which parts of a picture and the like are processed, and a layout software by which an arrangement of parts on a plane of paper is adjusted are used to generate a printed material. Specifically, software such as the Illustrator (registered trademark), the Photoshop (registered trademark), and the InDesign (registered trademark) are used to generate a printed material.
Japanese Patent No. 3998834 discloses a digital printmaking system in which input print method data is used to select layout data from a layout data memory area and the layout data selected by a selecting unit is used to obtain an output in printmaking.
Japanese Laid-open Patent Publication No. 2009-134580 discloses a document database system in which raster data of a document image (image data with no logical structure and the like) and document data are combined and retained, and associated document data is specified based on raster data of an input document image.
Here, there readily arises a big gap in work efficiency and quality of work result in DTP between professionals and beginners. To enable even beginners to be equivalent in work efficiency and quality to professionals, a way of recording a past DTP processing procedure and reusing the procedure for next work is considered. In realizing such an image processing system as explained, an input image, an output image obtained by performing a desired image processing on the input image, and a history of the image processing are associated with each other and stored in a storage unit. Then, an image processing whose usage frequency is high among every image processing stored in the storage unit is reused in next work.
If it is possible in the image processing system not only to suggest the image processing whose usage frequency is high but also to suggest the most suitable image processing procedure to the input image, the system becomes user-friendly. Besides, if it is possible to suggest a plurality of most suitable image processing procedures for the input image, an operator is able to compare suggested image processing procedures and select a desired image processing procedure and more user-friendly system is realized.
Since information concerning a logical structure is necessary for the layout, the digital printmaking system disclosed in Japanese Patent No. 3998834, while being applicable to a design on a plane of paper, has difficulty in performing the same task by using an inner structure of an image.
The document database system disclosed in Japanese Laid-open Patent Publication No. 2009-134580 can be a unit which obtains a logical structure that should essentially be held by the input image data by finding the pair of the raster image retained in advance and the logical structure. However, an element of the logical structure given to an area in the image does not determine the content of the image processing that should be performed on the element. Besides, only the association between the raster image and the document data is not sufficient to specify the image processing to be performed on the element. Therefore, the document database system disclosed in Japanese Laid-open Patent Publication No. 2009-134580 has a difficulty in specifying the image processing to be performed on the input image.
Therefore, there is a need for an image processing apparatus, an image processing method, and a computer program product capable of providing a user-friendly image processing function through an efficient use of past image processing procedures.
It is an object of the present invention to at least partially solve the problems in the conventional technology.
According to an embodiment, there is provided an image processing apparatus that includes a storage unit configured to store image processing cases each including a first input image, first attribute information indicating an attribute of the first input image, and processing procedure information; a retrieval processor configured to retrieve, from the storage unit, the image processing cases each including the first input image and the first attribute information which are respectively similar to a second input image and second attribute information indicating an attribute of the second input image; and an image processor configured to perform, on the second input image, image processing in accordance with the processing procedure information included in the image processing case selected by an operator among the retrieved image processing cases, and generate an output image.
According to another embodiment, there is provided an image processing method that includes storing, in a storage unit, image processing cases each including a first input image, first attribute information indicating an attribute of the first input image, and processing procedure information; retrieving, from the storage unit, the image processing cases each including the first input image and the first attribute information which are respectively similar to a second input image and second attribute information indicating an attribute of the second input image; and performing, on the second input image, image processing in accordance with the processing procedure information included in the image processing case selected by an operator among the retrieved image processing cases to generate an output image.
According to still another embodiment, there is provided a computer program product comprising a non-transitory computer readable medium including programmed instructions. The instructions, when executed by a computer, cause the computer to execute: storing, in a storage unit, image processing cases each including a first input image, first attribute information indicating an attribute of the first input image, and processing procedure information; retrieving, from the storage unit, the image processing cases each including the first input image and the first attribute information which are respectively similar to a second input image and second attribute information indicating an attribute of the second input image; and performing, on the second input image, image processing in accordance with the processing procedure information included in the image processing case selected by an operator among the retrieved image processing cases to generate an output image.
The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings.
An embodiment of an image processing apparatus according to the present invention will be explained in detail below with reference to the accompanying drawings.
Brief Overview
An image processing apparatus, which operates in accordance with an image processing program used by an operator, according to an embodiment records and reuses an image processing procedure by the operator. Since the image processing procedure strongly depends on the image, a method of retrieving an image processing case (DTP case) including a procedure that should be reused is changed depending on the kind of a current input image and the purpose of correction. It thus becomes possible to reuse the image processing procedure appropriate to the image and the operator's purpose of the processing.
Specifically, the image processing apparatus according to the embodiment records an image processing that a professional DTP operator performs on an image and stores, as one gathering (DTP cases 8 to 10) in a repository 11, a current input image 1 which is an image input currently, past input images 2 to 4 which are images input in the past, and image processing procedures 5 to 7 as illustrated in
As explained, the image processing apparatus according to the embodiment retrieves the DTP cases 8 to 10 respectively including the image processing procedures 5 to 7 which are performed on the current input image 1. As one example of a retrieval method, a “case based reasoning method” illustrated in
Hardware Configuration
As illustrated in
An image processing program (DTP application) to be executed by the image processing apparatus 19 is recorded in the storage unit 26 in the inside of the PC or in the storage device 23 on a network and expanded onto the memory 25 in an executable format as appropriate. Next, the storage device 23 or the image obtaining device 21 is driven to obtain a current input image and expand image information onto the memory 25. The CPU 24 operates the image information expanded onto the memory 25 and writes a result of the operation in the memory 25 in a predetermined method. In a case of finally outputting control point information (log to be explained later), information is stored in the internal storage unit 26 or the external storage device 23.
The image processing program may be provided by being stored in a file of an installable format or of an executable format in a computer-readable storage medium such as a CD-ROM and a flexible disk (FD). The image processing program may be provided as a computer program product by being stored in a computer-readable storage medium such as a CD-R, a DVD, a Blu-ray Disk (registered trademark), and a semiconductor memory. The image processing program may be provided in a form of being installed via a network such as the Internet. Besides, the image processing program may be provided by being preloaded in a ROM and the like in the device. Here, DVD is an abbreviation for “Digital Versatile Disk”.
Software Configuration
The storage unit 26 illustrated in
The user interface 31 obtains, from a user, information for controlling each processing through an interaction with the user. The processing controller 32 is provided with a recording processor 39 that records an image on which an image processing is performed, an image processing procedure, accompanying information, and the like. The processing controller 32 controls a flow of a series of an image processing and an image processing on the memory 25. Besides, the processing controller 32 is provided with a retrieval processor 40 that uses a distance scale indicating a similarity, calculated by the distance scale calculator 33, among DTP cases to retrieve DTP cases which are similar to the current input image. The image processor 41 performs an image processing corresponding to the image processing procedure of the DTP case selected by the operator on the current input image to generate an output image. The display controller 42 presents the retrieved DTP cases and the like to the operator via the user interface 31 displayed in the display unit.
The distance scale calculator 33 calculates a distance indicating a similarity among DTP cases. The image processing composer 34 uses image processing procedure information to compose an image processing to use. For the scene recognizer 35, a method illustrated in S. N. Parizi et. al., “Reconfigurable Models for Scene Recognition” (Internet URL: http://ieeexplore.ieee.org/xpl/login.jsp?reload=true&tp=&ar number=6248001&url=http %3A %2F %2Fieeexplore.ieee.org %2Fxpls % 2Fabs_all.jsp %3Farnumber %3D6248001) can be used, for example.
The image feature extractor 36 extracts image feature that constitutes a part of query (order or inquiry) in the DTP case retrieval. The image feature extractor 36 extracts predetermined some image features from the current input image and a past input image associated with a DTP case. As just one example, the image feature extractor 36 extracts image features by using a color histogram, a correlogram, and a SIFT (Scale Invariant Feature Transform), for example. While image feature to be used may have various feature data and configurations, a discriminator formed in combination with discriminators for multiple features is configured for each target image kind, a combination of feature data is selected in accordance with a result of scene recognition by the scene recognizer 35, and a high-precision model can thereby be configured.
The preference recording unit 37 records a result of a selection by the user. The image processing recording unit 38 records a processing executed by the operator in the DTP application.
An operation flow of the DTP application of recording an image processing and an operation procedure used by the operator in a log file is illustrated in the flowchart in
In the flowchart in
Next at step S3, the recording processor 39 obtains, from the image collection DB stored in the storage unit 26, a current input image specified by the operator via an image inputting operation and causes the processing to move to step S4. At step S4, the recording processor 39 of the processing controller 32 records image information of the current input image obtained from the image collection DB in the log file of the storage unit 26.
At step S5, an image property vector that defines the current input image is generated through an image analyzing processing which will be explained later with reference to
At step S7, the recording processor 39 records an annotation corresponding to an annotation inputting operation by the operator in the log file of the storage unit 26. Annotation is an example of text information.
When a registration button (Register THIS Case) 52 on the sub window 50 is operated by the operator, the recording processor 39 records the annotation input in the annotation input area 53 or the annotation item selected by the operator in the log file of the storage unit 26.
Next at step S8, the recording processor 39 records image processing information indicating the image processing used by the operator in the log file of the storage unit 26. Besides, the recording processor 39 records, in the log file of the storage unit 26, operation procedure information indicating a procedure of the operation of the application by the operator at step S9. The recording processor 39 repetitively performs the operation of recording the image processing information at step S8 or the operation of recording the procedure information of the application operation at step S9 each time when the operator performs the image processing operation or the application operation until an operation of ending the processing by the operator is detected at step S10. Thus, the current input image, the image property vector, the annotation, the image processing information, and the operation procedure information are associated with each other and stored as DTP case data in the log file of the storage unit 26.
The CPU 24 ends the processing of the flowchart in
Next, the image analyzing processing at step S5 in the flowchart in
In other words, the image analyzing processing integrates respective outputs of the three processings, i.e., the contrast problem extraction process, the color problem extraction process, and the sharpness problem extraction process and generates an image property vector that defines the current input image at step S24. The generated image property vector is stored in the log file of the storage unit 26 by the recording processor 39 at step S6.
Next, an operation flow, at a learning phase, of the contrast problem extraction process at step S21 in the flowchart of
In the case of the image processing apparatus 19, the operator selects a small amount of image data (learning data) at random from the massive image collection DB to provide the teacher data automatically to the training images to be input. The CPU 24 recognizes the learning data selected at random as image data to be acquired as knowledge at steps S31 and S32 in the flowchart of
The operator next performs an operation of inputting answer information that indicates either high contrast or low contrast with respect to the selected learning data. The CPU 24 detects an average contrast of images divided into low contrast (low average contrast) at steps S33 to S36. The CPU 24 detects an average contrast of images divided into high contrast (high average contrast) at steps S37 to S40. The CPU 24 then calculates a contrast threshold and a contrast correction amount from the low average contrast and the high average contrast at step S41. Specifically, when the low average contrast in a contrast distribution of low contrast image aggregation is Tlow and the high average contrast in a contrast distribution of high contrast image aggregation is Thigh, a contrast correction amount contrast_correction(I) when a new current input image I is provided is calculated in Equation (1) below.
The CPU 24 treats a calculating formula of the contrast threshold and the contrast correction amount calculated in Equation (1) as a contrast extraction model and stores the formula in the storage unit 26 (model repository) at step S42. The CPU 24 determines whether or not such a calculation processing of the contrast extraction model is performed with respect every image in the image collection at step S43. When determining that the calculation processing of the contrast extraction model is not performed with respect to every image (“No” at step S43), the CPU 24 causes the processing to return to step S31 and performs again the calculation processing of the contrast extraction model with respect to the image selected by the operator. When determining that the calculation processing of the contrast extraction model is performed with respect to every image (“Yes” at step S43), the CPU 24 directly ends the processing in the flowchart at the learning phase in
Next, the contrast extraction model as the calculating formula of the contrast threshold and the contrast correction amount is used at a recognizing phase of the contrast problem extraction process. An operation flow, at the recognizing phase, of the contrast problem extraction process at step S21 in the flowchart of
The CPU 24 then determines whether or not the average contrast C is larger in value than the high average contrast Thigh. When determining that the average contrast C is larger in value than the high average contrast Thigh (“Yes” at step S56), the CPU 24 causes the processing to move to step S58 and recognizes the current input image I as a high contrast image. The CPU 24 then calculates the contrast correction amount of the current input image I recognized as the high contrast image by using Equation (1) at step S60 and ends the processing in the flowchart at the recognizing phase in
On the other hand, when determining that the average contrast C is smaller in value than the high average contrast Thigh (“No” at step S56), the CPU 24 causes the processing to move to step S57. At step S57, the CPU 24 determines whether or not the average contrast C is smaller in value than the low average contrast Tlow. When determining that the average contrast C is larger in value than the low average contrast Tlow (“No” at step S57), the CPU 24 directly ends the processing in the flowchart at the recognizing phase in
In contrast, when determining that the average contrast C is smaller in value than the low average contrast Tlow (“Yes” at step S57), the CPU 24 causes the processing to move to step S59 and recognizes the current input image I as a low contrast image. The CPU 24 then calculates the contrast correction amount of the current input image I recognized as the low contrast image by using Equation (1) at step S60 and ends the processing in the flowchart at the recognizing phase in
Next, an operation of calculating the distance (distance scale) among the DTP cases by the distance scale calculator 33 will be explained. Each DTP case includes an input image, an output image, an image processing procedure from the input image to the output image, and else metadata (attribute information). Therefore, a feature vector V as feature data of each DTP case can be expressed in Equation (2) below.
V=(Vinput
In Equation (2), a symbol Vinput
When a feature vector of a first DTP case is V1 and a feature vector of a second DTP case is V2, a distance D between respective cases can be defined with an inner product of the V1 and V2 in Equation (3) below.
D=V
1
·V
2 (3)
A weighted distance DW, which is obtained by being weighted to any one of the past input image, the output image, the image processing procedure, and the attribute information, or to a combination of the past input image, the output image, the image processing procedure, and the attribute information, can be defined in Equation (4).
DW=V
1
WV
2 (4)
A weighting coefficient matrix W can be defined in Equation (5) below.
Here, the symbol WDinput
Here, the feature data is not limited to the feature vector as represented in Equation (2) and any information that represents a feature of a DTP case may be used. Besides, the distance among cases is not limited to the distance scale represented in Equation (3) and any information that indicates a similarity among cases may be used.
Next, an image scene identifying processing to be executed in the scene recognizer 35 is used together in the DTP application in the image processing apparatus 19. In other words, a result of a scene identification of the current input image or the output image is used as the attribute information. Hence, the attribute information is improved, enabling a definition of the distance scale based on the scene and a retrieval of DTP cases using the definition.
Next, a name of the image processing procedure is used as the attribute information in the image processing apparatus 19. In other words, an image processing is performed on the current input image to generate an output image in the DTP application. In the image processing apparatus 19, each of sharpness and saturation correction, which are image processing elements used on this occasion, and other image processing elements is assigned with a unique number. It is thus possible to form feature vector elements based on normalized appearance frequencies of those image processing elements in the DTP case.
For example,
In retrieving DTP cases based on whether or not a particular image processing element is used in the image processing apparatus 19, the retrieval processor 40 in
Next, the distance scale (feature data) among the retrieved DTP cases is used to rank and display a result of the retrieval in the image processing apparatus 19. The display controller 42 defines the distance among the DTP cases, and ranks and displays via the user interface 31 displayed in the display unit such as a monitor device, the result of the retrieval of the DTP cases in accordance with the distance index. It is thus possible to provide the operator with an image processing apparatus capable of easy selection of a desired image processing procedure.
The operator performs an operation of selecting a DTP case corresponding to an image processing that the operator wants to perform on the current input image in the DTP cases displayed in an order of the distance scale (order of feature data). When a DTP case is selected by the operator, the preference recording unit 37 stores information indicating the selected DTP case in the storage unit 26. The image processor 41 performs the image processing in accordance with the image processing procedure included in the DTP case selected by the operator on the current input image to generate an output image. The display controller displays the generated output image in the display unit. It is thus possible for the operator to obtain the output image on which the image processing in accordance with the image processing procedure selected by himself/herself is performed.
Next, the image processing that the operator currently performs is detected and DTP cases related to the image processing are retrieved from the DTP case database stored in the storage unit 26 in the image processing apparatus 19. Then the retrieval result is presented to the operator via the user interface.
Specifically, the CPU 24 monitors the image processing that the operator performs in the DTP application in the image processing apparatus 19. The CPU 24 then identifies the image processing element that the operator selects. For example, when the image processing element that the operator selects is assumed to be an image processing element A, the retrieval processor 40 retrieves DTP cases including the image processing element A from the storage unit 26. It is thus possible to present the DTP cases including the image processing element A to the operator.
Next, when the operator executes the image processing, the image processing recording unit 38 registers the current input image, the output image, the processing procedure information, and the attribute information written in text in the DTP case database of the storage unit 26 as an implemented DTP case in the image processing apparatus 19. Thus, a history of image processings (DTP cases) actually executed by the operator is stored in the DTP case database. The stored DTP cases are used for DTP retrieval. It is thus possible to present, to the operator, image processing procedures with high possibility of being desired by the operator.
Next, an implementation as a system including a unique interface independent of the DTP application is available in the image processing apparatus 19. For example, the image at an upper left in
Then preview images 68 on which respective image processing procedures associated with the DTP cases are performed on the current input image 65 input by the operator are presented. Images on the second tier from the top in
When there is no desired image in the retrieval result, the operator changes retrieval conditions for correlogram, histogram, and color descriptor, which are displayed adjacently to the current input image 65 in
As is clear from the explanation so far, the image processing apparatus according to the embodiment records an image processing which a professional DTP operator performs on an image and stores in the repository (storage unit 26) three, i.e. the current input image, the output image, and the image processing procedure as one gathering (DTP case), for example. When a current input image is newly provided, the image processing apparatus performs a retrieval from the repository by using image information of the current input image or accompanying information provided by the operator and lists relevant DTP cases. The image processing apparatus obtains process result images by applying respective image processing procedures included in the listed DTP cases to the current input image.
The image processing apparatus according to the embodiment performs a retrieval of DTP cases by using an image similarity (local low level image features) through a retrieval method such as a case based reasoning method, for example. In addition to this, the image processing apparatus performs a retrieval of DTP cases by using image content information (image content semantics) which is information of a subject and the like, and region feature (image region segmentation). Moreover, the image processing apparatus performs a retrieval of DTP cases by using a correction intension (enhancement intention) of the operator.
Hence, the image processing apparatus according to the embodiment is capable of retrieving, from past image processing procedures, an image processing procedure having high possibility of being desired by the operator with high precision and enhanced scalability. Therefore, it is possible to make efficient use of past image processing procedures and to improve user-friendliness of the image processing apparatus.
According to the embodiment, there is an advantage of providing a user-friendly image processing function through an efficient use of past image processing procedures.
Although the invention has been described with respect to specific embodiments for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.
Number | Date | Country | Kind |
---|---|---|---|
2014-103840 | May 2014 | JP | national |