Method of and apparatus for editing images

Abstract: There is disclosed an image editing method and apparatus wherein low resolution image data among hierarchically encoded image data are decoded, the decoded low resolution image data are subjected to editing processing, editing data representative of the editing processing are stored, the hierarchically encoded image data are decoded to obtain original image data, and the decoded original image data are subjected to the editing processing in accordance with the stored editing data.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to an image editing method and apparatus using hierarchic images. Related Background Art In a conventional method of editing a plurality of images stored in an image data base which stores data sequentially, the necessary images are read from the data base and written in frame memories. The images are processed on the frame memories for the enlargement, reduction rotation, layout or other processes, and thereafter they are combined together and written in another frame memory. With the conventional method, original images themselves are used in editing. As the image data quantity and size become large, it takes an unpractically long time to edit images. A long editing time causes a slow response to an instruction from an operator so that the operator may sometimes lose patience. Images to be edited are first searched from a plurality of page data stored in the image data base and then transmitted. In this case it is required to display and transmit the whole image data in order to see and check it, thereby posing a problem of a long search and transmission time. British Patent Application GB-A-2128843 discloses an image imposition apparatus wherein the original image data is condensed prior to being displayed on a monitor screen, such compression being necessary as the complete image data is not appropriate for display purposes. European Patent Application EP-A-0152355 discloses a method of hierarchical encoding and its use in an apparatus designed to display a high resolution image of a portion of another image. The present invention has been made in consideration of the above problems. It is an object of the present invention to provide an efficient image editing method and apparatus, and in particular to provide an image editing method and apparatus capable of readily obtaining the processing results in response to an instruction from an operator even for complicated editing processing. The present invention provides an image editing method for editing image data, comprising the steps of: displaying a low-resolution representation of the image to be edited using low-resolution data; editing the displayed image interactively in accordance with instructions of an operator by performing transformations on said low-resolution image data; storing procedure data defining the transformations instructed by the operator; wherein the image data is received in a hierarchically encoded form and comprises entropy encoded low resolution image data and at least one set of entropy encoded difference data, said difference data representing the difference between a low resolution image and a high resolution image; wherein said entropy encoded low-resolution data is decoded to perform said displaying and editing steps; and wherein the method further comprises the steps of reconstructing the high resolution image by decoding the encoded low resolution data and the encoded difference data, and transforming the reconstructed high resolution image in accordance with the stored procedure data. The above and other objects and advantages of this invention will become apparent from the following detailed description when read in connection with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram showing an embodiment of this invention; Fig. 2 is a block diagram of an encoder; Fig. 3 is a block diagram of a decoder; Fig. 4 shows an example of editing; Fig. 5 shows an example of an image stored in frame memories 6 and 7; Fig. 6 illustrates the image cut-out and synthesis; Fig. 7 shows the format of data in a history memory; and Fig. 8 is a flow chart illustrating the editing operation. DETAILED DESCRIPTION OF THE EMBODIMENT Fig. 1 is a block diagram showing an embodiment of an image editing apparatus of this invention. In Fig. 1, reference numeral 1 represents a control unit (CPU) for controlling the operation of the entirety of the image editing apparatus, 2 a keyboard from which an operator enters various commands for editing images, 3 a display unit for displaying images and characters, 4 a reader for photoelectrically reading an original image and supplying the image data to the apparatus, 5 a data base constructed of a magnetooptical disc or the like capable of storing a plurality of image data pages, 6, 7 and 8 a frame memory constructed of a semiconductor memory or the like capable of storing at least one image data page or frame, 9 an encoder for encoding image data, 10 a decoder for decoding encoded image data, and 11 a history memory for storing editing procedure data. The description will be given below for the case where images are read with the reader 4 and stored in the data base, a plurality of image data (in the example two pages) are read from the data base and synthesized together, and the synthesized image data are stored in the data base 5. A plurality of original image data inputted by the reader 4 are hierarchically encoded by the encoder 9. The encoded data are sequentially stored in the data base 5 in the order starting from the low resolution encoded data. Next, in accordance with an instruction by an operator from the keyboard 2, two images to be synthesized are searched from a plurality of images stored in the data base 5. The lower resolution encoded data (first stage images) of the two searched image data are first read and decoded by the decoder 10. The decoded low resolution image data of two pages are stored in the frame memories 6 and 7 correspond to the reduced images of two pages to be synthesized. While monitoring the image data in the frame memories 6 and 7 displayed on the display unit 3, an operator enters an editing command from the keyboard 2 to conduct synthesizing processing, the editing procedure data of this processing being stored in the history memory 11. After completion of the editing processing by using the reduced images, the encoded image data of two pages for all hierarchic stages are read from the data base 5 and decoded by the decoder 10 to form the original images. The original images are stored in the frame memories 6 and 7. Then, under control of CPU 1, the original images are edited in accordance with the editing procedure data stored in the history memory 11. The edited results are stored in the frame memory 8. The edited image data stored in the history memory 8 are hierarchically encoded by the encoder 9 and stored in the data base 5 in the order starting from the lower resolution encoded data. As described above, an operator instructs to edit images by using hierarchically encoded data of lower resolution stored in the data base 5, thereby allowing high speed editing. In addition, the image data of low resolution are used in searching image data, thereby allowing high speed search. Fig. 2 is a block diagram showing the structure of the encoder 9 which is constructed of frame memories 12, 14 and 16, reduction circuits 13 and 15, and encoder units 17, 18 and 19. Original image data outputted from the reader 4 or frame memory 8 to be hierarchically encoded are stored in the frame memory 12. The original image data stored in the frame memory 12 are reduced by 1/2 both in the vertical and horizontal directions by the reduction circuit 13. The reduced image data are stored in the frame memory 14. Reducing the size may be performed by sampling the image at a sampling rate of 1/n (in this case, n = 2) both in the vertical and horizontal directions, or by filtering the image using a low-pass filter, high pass filter, or recursive filter, subjecting the obtained value to a threshold processing, and thereafter sampling it. Any other reducing method may be used instead. The 1/2 size image data stored in the frame memory 14 are further reduced by 1/2 both in the vertical and horizontal directions and stored in the frame memory 16. Therefore, the image stored in the frame memory 16 is the original image reduced by 1/4 in both the vertical and horizontal directions stored in the frame memory 12. The image data stored in the frame memory 16 are subjected to an entropy encoding at the encoder unit 17 by means of an arithmetic encoding method, to thereby output encoded data 101 of the first stage. While referring to the image stored in the frame memory 16, the encoder unit 18 causes the image data stored in the frame memory 14 to be subjected to the entropy encoding, to thereby output encoded data 102 of the second stage. Similarly, while referring to the image data stored in the frame memory 14, the encoder unit 19 causes the image data stored in the frame memory 12 to be subjected to the entropy encoding, to thereby output encoded data 103 of the third stage. The image data hierarchically encoded as above are sequentially stored in the data base 5 in the order starting from the lower resolution encoded image data. Although the above embodiment uses as the encoding method the entropy encoding, other methods may also be used. Further, the hierarchically encoded image data to be stored in the data base 5 may be transmitted to another system via a communication line. Fig. 3 is a block diagram showing the structure of the decoder which is constructed of decoder units 20, 21 and 22, and frame memories 23, 24 and 25. Encoded data 201 of the first stage (lower resolution) among the hierarchically encoded data stored in the data base 5 are inputted to the decoder unit 20 and decoded. The decoded results are stored in the frame memory 23 to thereby output decoded image data 301 of the first stage. In order to produce a reduced image to be used for the editing processing in response to an instruction from an operator, the decoding processing is stopped at this stage and the image data 301 are stored in the frame memories 6 and 7. Also in performing the image search, the image data 301 of the first stage are used. The following processes are carried out thereafter in order to reproduce an original image. Encoded data 202 of the second stage among the hierarchically encoded data read from the data base 5 are inputted to the decoder unit 21. While referring to the image data stored at the first stage operation in the frame memory 23, the decoder unit 21 decodes the encoded data 202. The decoded results are stored in the frame memory 24 to thereby output decoded image data 302 of the second stage. Encoded data 203 of the third stage among the hierarchically encoded data read from the data base 5 are inputted to the decoder unit 22. While referring to the image data stored in the frame memory 24, the decoder unit 22 decodes the encoded data 203. The decoded results are stored in the frame memory 25 to thereby output image data 303 of the third stage. The image data thus stored in the frame memory 25 correspond to the original image prior to encoding. The image data 303 read from the frame memory 25 are also used by CPU 1 for the real editing processing after the editing processing by an operator using reduced images. As the reduced images for use with the editing processing, the hierarchic images of the first stage have been used in the above embodiment. Images of other stages may also be used. Further, in the above embodiment, although a hierarchic image having three stages has been used, an image having any number of stages may also be used. As described above, by encoding and decoding hierarchically and using low resolution hierarchic image data, high speed editing processing can be attained. Further, by using low resolution image data, high image search can be attained. Furthermore, by decoding hierarchic image data of higher resolution, an original image can be efficiently reproduced. Figs. 4 to 8 illustrate examples of an editing method. The description will be given below in connection with the flow chart shown in Fig. 8 for the case where as shown in Fig. 4 desired portions of two original images (1) and (2) are cut out and synthesized to an image (3). Encoded data of two images of the first stage read (802) from the data base 5 in response to an instruction (801) from the keyboard 2 are decoded by the decoder 10 and stored in the frame memories 6 and 7 (803). These operations are illustrated in Fig. 5 (1) and (2). Namely, the original image reduced by 1/4 in both the vertical and horizontal directions is stored as the reduced image in the frame memories 6 and 7. CPU 1 causes the image data stored in the frame memories 6 and 7 to be written in an internal memory 26 and displayed on the display unit 3 (804), to thereafter perform an editing processing in accordance with the instructions from the keyboard 2 (805). The reduced image as it is may be displayed on the display unit 3, or an enlarged image of the reduced image may be displayed so as to match the size of the display unit 3. In the example of the editing processing shown in Fig. 6, a rectangular area A defined by a diagonal interconnecting two points (0.1, 0.1) and (0.9 and 0.5) on the original image (1) and another rectangular area B defined by a diagonal interconnecting two points (0.2, 0.6) and (0.9. 0.9) on the original image (2) are cut out and synthesized to an image (3) such that the upper left corner of the rectangular area A cut out from the original image (1) is set at a point (0.2, 0.2) and the upper left corner of the image B cut out from the original image (2) is set at a point (0.3, 0.7). The original images (1) and (2) correspond to the reduced images stored in the frame memories 6 and 7, and the image (3) corresponds to an image subjected to cut-out and synthesis. A point (x, y) represents the coordinate values of the image. The coordinate information, image cut-out instruction, and image synthesis instruction are entered by an operator from the keyboard 2. The editing operations carried out by the operator, including the area designating coordinate values, alignment position coordinate values, are stored in the history memory 11 (806). The history memory 11 is written, as shown in Fig. 7, with an object image ID, an editing code representative of cutting out in a rectangular shape, the coordinate values representative of the cut-out starting point, the size of the rectangular area, and the coordinate values representative of the synthesis alignment position. The written values are not related with the size of an image, but are normalized vectors both in the vertical and horizontal directions using as an origin the upper left corner of an image. After completion of the editing processing by an operator using the reduced images, encoded data for use in reproducing the original image data to be edited are read from the data base 5 under control of CPU 1, decoded by the decoder 10, and stored in the frame memories 6 and 7 (807). In accordance with the editing procedure data stored in the history memory 11, the image data having the size of original images stored in the frame memories 6 and 7 are edited to produce an edited image which is developed on the frame memory 8 (808). After obtaining the edited image of the original size, the edited image data are hierarchically encoded by the encoder 9 and sequentially stored in the data base 5 in the order starting from the lower hierarchic image data (809). In the editing stage manually performed by an operator, reduced images having less data quantity are used thereby allowing high speed editing. The editing procedure data are written by relative values so that similar operations to those performed by the operator can be carried out in real time for the images of the original size without the aid of the operator. As described so far, high speed editing processing can be attained by using lower resolution hierarchic image data stored in the data base. Also by using the lower resolution hierarchic image data, high speed image search can be attained. In the above description, as an example of editing images, desired portions of two original images are cut out and synthesized. Editing image is not limited to the above example only, but various editing processings are possible such as a rotation processing for the whole or part of an image, a magnification/reduction processing of an image, a synthesis processing for an image with characters, symbols or the like. Also in such editing processings, the similar effects such as high speed processing can be obtained by using image data decoded from the lower resolution encoded data of the first stage among the hierarchically encoded image data, upon an editing instruction from an operator. The present invention has been described by using the preferred embodiment. The invention is not limited thereto, but various changes and modifications are possible without departing from the scope of the appended claims.

Claims: An image editing method for editing image data, comprising the steps of: displaying (804) a low-resolution representation of the image to be edited using low-resolution data; editing (805) the displayed image interactively in accordance with instructions of an operator by performing transformations on said low-resolution image data; storing (806) procedure data defining the transformations instructed by the operator; wherein the image data is received in a hierarchically encoded form and comprises entropy encoded low resolution image data and at least one set of entropy encoded difference data, said difference data representing the difference between a low resolution image and a high resolution image; wherein said entropy encoded low-resolution data is decoded to perform said displaying and editing steps; and wherein the method further comprises the steps of reconstructing (807) the high resolution image by decoding the encoded low resolution data and the encoded difference data, and transforming (808) the reconstructed high resolution image in accordance with the stored procedure data. An image editing method according to claim 1, wherein said transformations include at least one of enlargement, reduction and rotation. An image editing method according to any preceding claim, wherein said transformations include synthesis with data defining another image. An image editing apparatus for editing image data, comprising: display means (3) for displaying (804) a low-resolution representation of the image to be edited using low-resolution data; editing means (1,2,26) for editing (805) the displayed image interactively in accordance with instructions of an operator by performing transformations on said low-resolution image data; storage means (11) for storing (806) procedure data defining the transformations instructed by the operator; wherein the image data is received in a hierarchically encoded form and comprises entropy encoded low resolution image data and at least one set of entropy encoded difference data, said difference data representing the difference between a low resolution image and a high resolution image; wherein said apparatus further comprises means (20) for decoding the entropy encoded low-resolution data; and wherein the apparatus further comprises means (10) reconstructing (807) the high resolution image by decoding the encoded low resolution data (201) and the encoded difference data (202, 203), and transforming (808) the reconstructed high resolution image in accordance with the stored procedure data. An image editing apparatus according to claim 4, wherein said transformations include at least one of enlargement, reduction and rotation. An image editing apparatus according to either of claims 4 or 5, wherein said transformations include synthesis with data defining another image.

Inventors: HIRABAYASHI YASUJI, KATAYAMA AKIHIRO, HIRABAYASHI, YASUJI, KATAYAMA, AKIHIRO, HIRABAYASHI, YASUJI, C/O CANON KABUSHIKI KAISHA, KATAYAMA, AKIHIRO, C/O CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1990
Main classification: H04N1
IPC codes: H04N1, G06T11