Image coding method and image coding apparatus

Abstract: In high efficiency coding of motion image signal in transmission or recording of the motion image signal, plural predict signals are determined by independently compensating a motion of reproduction signals of plural frames positioned before a frame to be coded. A linear combination of these predict signals is used as a predict signal. An error of the frame to be coded and the predict signal is coded. As a result, the distortion of the predict signal, that is, the predict error is reduced, and the coding efficiency is enhanced.

Description: The present invention relates to an image coding method for high efficiency coding of motion image signals in transmission or recording of motion image signals and an apparatus for performing the method. In the image coding apparatus, recently, along with the development of television telephone and television conference system, various high efficiency coding technologies have been realized. In particular, the coding technology making use of the inter-frame predict coding is widely used in the image coding apparatus. The inter-frame predict coding system is to determine a predict signal by predicting a frame to be encoded from another frame, and encode a predict error which is a difference between the frame to be encoded and the predict signal. A simple way of doing this is to code using the previous frame or the following frame or a linear combination of the two as a template and encoding the error signal. This is the method disclosed in EP-A-0424026, and 0 395 440, in which the signal with the least error is used as the template. US-A-4 703 351 discloses an apparatus for coding a motion image signal in a present field using prediction data of the past three fields. This is done using linear combinations of pixels surrounding the pixels to be coded in said previous fields, and no motion compensation is carried out. The predict signal can also be determined in the following manners. (1) A reproduced signal of a frame before the intended frame to be encoded is delivered from a memory of a local decoder, and it is compensated for motion to obtain a predict signal. (2) A reproduced signal of a frame before the intended frame to be encoded and a reproduced signal of a frame after the intended frame are delivered from memories of a local decoder, and after they are compensated for a motion, a mean value of them is determined as a predict signal. In the method of (2), in other words, a frame located between two reproduction signals apart from each other by two frames or more is determined by motion compensating frame interpolation, and this frame is used as the predict signal. Such image coding apparatus is disclosed in EP-A- 0 397 402 and in "Video Coding with Motion Compensated Interpolation for CD-Rom applications" from A.Puri et al (in Signal Processing Image Communication Vol 2 pp 127-144). This conventional image coding apparatus is explained below. The motion picture signals entering the image coding apparatus are subjected to two types of predict methods alternately on a frame by frame basis. The predict method is the manner of determining the predict signal. The first predict method is to read the reproduction signal two frames before from a frame memory of a local decoder, and compensate it for motion to obtain a predict signal, and the second predict method is to determine an image signal by motion compensating frame interpolation from preceding and succeeding reproduction frames as a predict signal. Afterwards, a predict error signal is determined which is a difference between the frame to be encoded and the predict signal, and an encoded predict error signal is the output signal of the image coding apparatus. The image coding apparatus, possessing a local decoder, decodes the code, determines the reproduction image, and stores it in a frame memory. In such constitution, however, a reproduction frame later in time is needed when determining the predict signal from the reproduction frames before and after the frame to be coded, that is, the frame later in time must have been already coded. To realize this, it is necessary to change the time sequence of the frames of the motion picture signals entering the coding apparatus, and therefore the constitution of the coding apparatus is complicated. It is hence a primary object of the invention to raise the coding efficiency by reducing the distortion of predict signal, and to simplify the constitution of the coding apparatus. To achieve the above object, the invention presents an image coding method for coding a motion image signal comprising pages by using reproduced signals which have been obtained by decoding previously coded motion image signals, where the page comprises either a field or a frame, said method comprising the steps of: estimating motions of reproduced signals of N,N being an integer of 2 or more, pages to obtain first to N-th motion vectors; compensating motions of said reproduced signals of N pages using said first to N-th motion vectors to obtain first to N-th prediction signals; processing the first to N-th prediction signals to obtain a derived prediction signal produced from said first to N-th prediction signals; calculating a difference between a page to be coded and the derived prediction signal to obtain a prediction error signal; and coding the prediction error signal and the first to N-th motion vectors to obtain a coded transmission data representing the motion image signal of the page to be coded, characterised in that said N pages are temporally positioned before said page to be coded. The invention also presents an image coding apparatus for coding a motion image signal comprising pages by using reproduced signals which have been obtained by decoding previously coded motion image signals, where said page comprises either a field or a frame, said apparatus comprising: motion estimating means for estimating motions of reproduced signals of N,N being an integer of 2 or more, pages positioned before a page to be coded to obtain first to N-th motion vectors; compensating means for compensating motions of said reproduced signals of N pages using said first to N-th motion vectors to obtain first to N-th prediction signals; processing means for processing the first to N-th prediction signals to obtain a derived prediction signal produced from said first to N-th prediction signals; prediction error calculating means for calculating a difference between the page to be coded and the derived prediction signal to obtain a prediction error signal; and coding means for coding the prediction error signal and the first to N-th motion vectors to obtain a coded transmission data representing the motion image signal of the page to be coded, characterised in that said motion estimating and compensating means estimates and compensates said motions of reproduced signals of N pages positioned before the page to be coded to obtain said first to N-th motion vectors and said first to N-th prediction signals. Being thus composed, the invention is capable of determining in a forward prediction N predict signals by compensating the motion of the reproduction signals of N frames preceding the frame to be coded, and determining the predict signal by linear combining of these predict signals, so that the distortion of predict signal can be reduced. As a result, the predict error signal becomes small, and the coding efficiency is improved. Fig. 1 is a block diagram of an image coding apparatus in a first embodiment of the invention. Fig. 2 is an explanatory diagram showing the relation between the frame of motion image signal to be coded, and a frame of reproduction signal used for determining a predict signal, in the image coding apparatus of the first embodiment of the invention. Fig. 3 is a timing chart of the image coding apparatus of the first embodiment of the invention. Fig. 4 is a block diagram of image coding apparatuses in second and third embodiments of the invention. Fig. 5 is an explanatory diagram showing the relation between a frame of moving image signal to be coded, and a frame of reproduction signal used for determining a predict signal, in the image coding apparatus of the third embodiment of the invention. Referring now to the drawings, an embodiment of an image coding apparatus of the invention is described in detail below. Fig. 1 is a block diagram of an image coding apparatus in a first embodiment of the invention. In Fig. 1, numeral 1 denotes an input of the image coding apparatus, 2 is a predict error calculator, 3 is a coder, 4 is a decoder, 5 is a predict signal calculator, 6 is a variable length coder, 7 is a buffer memory, 8 is a rate controller, and 9 is an output of the image coding apparatus. Numeral 301 is a discrete cosine transform (DCT) circuit, and 302 is a quantizer, which are combined to compose the coder 3. Numeral 401 is a dequantizer, and 402 is an inverse discrete cosine transform (IDCT) circuit, which are combined to compose the decoder 4. Numeral 502 is an adder, 503 is a first frame memory, 504 is a second frame memory, 505 is a first motion compensator, 506 is a second motion compensator, 507 is an averager, and 508 is a motion estimator, which are combined to compose the predict signal calculator 5. Numeral 201 is a predict error signal produced by the predict error calculator 2, 303 is a predict error code produced by the coder 3, 403 is a reproduced prediction error signal produced by the decoder 4, 501 is a predict signal produced by the predict signal calculator 5, 5021 is a reproduced signal produced by the adder 502, 5051 is a first predict signal produced by the first motion compensator 505, 5061 is a second predict signal produced by the second motion compensator 506, 5081 is a first motion vector produced by the motion estimator 508, 5082 is a second motion vector produced by the motion estimator 508, and 81 is the quantizing step size produced by the rate controller 8. In the thus composed image coding apparatus, the operation is described below while referring to Fig. 1. The motion image signal to be coded is entered in the input 1 of the image coding apparatus, and is fed into the predict error calculator 2 and the predict signal calculator 5. The predict error calculator 2 determines a difference of the motion image signal to be coded and the predict signal 501, and produces the result as the predict error signal 201. The coder 3 receives the predict error signal 201, processes it by DCT (discrete cosine transform) in the DCT circuit 301, quantizes the obtained DCT coefficient value in the quantizer 302 according to the value of the quantizing step size 81, and produces the predict error code 303. The decoder 4 receives the predict error code 303, dequantizes it in the dequantizer 401 according to the value of the quantizing step size 81, processes the obtained DCT coefficient value by IDCT (inverse discrete cosine transform) in the IDCT circuit 402, and produces the reproduced prediction error signal 403. The variable length coder 6 receives the quantizing step size 81, predict error code 303, first motion vector 5081, and second motion vector 5802, codes them in variable length, and writes the obtained data into the buffer memory 7. The data is read out of the buffer memory 7 at a specified rate, and produced into the output 9 of the image coding apparatus. The rate controller 8 controls the value of the quantizing step size 81 so that the amount of data remaining in the buffer memory 7 becomes a specified amount. The predict signal calculator 5 is a circuit for obtaining the predict signal 501. The adder 502 adds the reproduced prediction error signal 403 and predict signal 501, and produces the reproduced signal 5021. The reproduced signal 5021 is stored in the first frame memory 503 and second frame memory 504 alternately on a frame by frame basis. The first motion compensator 505 compensates the motion of the reproduction signal read out from the first frame memory by the first motion vector 5081, and produces the first predict signal 5051. The second motion compensator 506 compensates the motion of the reproduction signal read out from the second frame memory 504 by the second motion vector 5082, and produces the second predict signal 5061. The averager 507 determines an average of the first predict signal 5051 and second predict signal 5061, and produces the predict signal 501. The motion estimator 508 determines and produces a motion vector of the image signal to be coded. The motion estimator 508 determines the motion vector between the image signal to be coded and the reproduced signal read out from the first frame memory 503, and produces the first motion vector 5081. It also determines the motion vector between the image signal to be coded and the reproduced signal read out from the second frame memory 504, and produces the second motion vector 5082. Explained next is the relation between the frame of the motion image signal to be coded and the frame of the reproduced signal used for determining the predict signal 501. Fig. 2 is an explanatory diagram showing the relation between the frame of motion image signal to be coded, and the frame of reproduced signal used for determining the predict signal 501, in which f(n-2) to f(n+3) denote the (n-2)-th (n+3)-th frames of image signals. Fig. 2 (a) shows a case of coding the frame f(n), in which the predict signal is determined by motion compensation of the frame f(n-2) and frame f(n-1) of reproduced signals. Fig. 2 (b) shows a case of coding the frame f(n+1), in which the predict signal is determined by motion compensation of the frame f(n-1) and frame f(n) of reproduced signals. Figs. 2 (c) and (d) show cases of coding the frame f(n+2) and frame f(n+3), respectively. The operation timing of the image coding apparatus is described below while referring to Fig. 3. Fig. 3 shows the timing chart of the image coding apparatus. In Fig. 3, (a) is an input signal of the image coding apparatus, (b) is the reproduction signal written into the first frame memory 503, (c) is the reproduced signal given to the first motion compensator 505 from the first frame memory 503, (d) is the reproduced signal written into the second frame memory 504, (e) is the reproduced signal given to the second motion compensator 506 from the second frame memory 504, and (f) is the predict signal 501. Besides, fr(n) is a frame of reproduced signal obtained by coding and decoding the frame f(n) of input signal, and fp(N) is a frame of predict signal for coding the frame f(n) of input signal. The reproduced signal 5021 is written into the first frame memory 503 and second frame memory 504 alternately on a frame by frame basis. When the frame f(n) is entered in the input 1 of the image coding apparatus as input signal, the frame fr(n-2) of reproduced signal is read out from the first frame memory 503, and the motion Is compensated by the first motion compensator 505, so that the first predict signal 5051 is obtained. At the same time, the frame fr(n-1) of reproduced signal is read out from the second frame memory 504, and the motion is compensated in the second motion compensator 506, so that the second predict signal 5061 is obtained. The averager 507 determines the average of the first predict signal 5051 and second predict signal 5061, and produces fp(n) as predict signal 501. In this way, since the average of the first and second predict signals Is used as the predict signal, the distortions contained in the first and second predict signals and are low in correlation and are reduced by determining the average of the two predict signals. Thus, the distortion of predict signal is decreased, that is, the predict error is reduced, so that the coding efficiency is improved. In the first embodiment, meanwhile, the predict signal 501 was the average of two predict signals, that is, the first predict signal 5051 and second predict signal 5052. But instead, by compensating the motion of N (N being an integer of 2 or more) reproduced frames, the first to N-th predict signals can be determined, and the predict signal 501 can also be obtained by a linear combination thereof. In the first embodiment, moreover, the distance between the frame to be coded and the frame of the first or second predict signal is one or two frames, but this distance is not limitative. A second embodiment of the invention is described below while referring to the accompanying drawings. Fig. 4 is a block diagram of an image coding apparatus in the second embodiment of the invention. In Fig. 4, numeral 509 is a predict mode decision circuit, 510 is a predict signal selector, 5071 is a third predict signal produced by an averager 507, and 5091 is a predict mode signal produced by the predict mode decision circuit 509. What is different from the first embodiment shown in Fig. 1 is the composition of the predict signal calculator 5 and the input of the predict mode signal 5091 in the variable length coder 6. In the thus composed image coding apparatus, the operation is explained below while referring to Fig. 4. The averager 507 determines an average of the first predict signal 5051 and second predict signal 5061, and produces the third predict signal 5071. The predict mode decision circuit 509 judges a smallest predict error out of the incoming first to third predict signals, and produces an index showing it as a predict mode signal 5091. The predict signal selector 510 selects one out of the first predict signal 5051, second predict signal 5061, and third predict signal 5071, depending on the predict mode signal 5091, and produces a selected signal as the predict signal 501. The predict signal 501 is the one having the smallest predict error out of the first to third predict signals. Besides, the predict mode signal 5091 is entered in the variable length coder 6, and is coded in variable length together with the quantizing step size 81, predict error code 303, first motion vector 5081, and second motion vector 5082. Thus, according to the second embodiment, by installing the predict mode decision circuit and predict signal selector, the one having the smallest predict error out of the first to third predict signals Is used as the predict signal, so that the distortion of the predict signal can be reduced more as compared with the case of using the average of the first and second predict signals. A third embodiment is explained below. A block diagram of the third embodiment is the same as the second embodiment in Fig. 4. That is different from the second embodiment is that the motion image signal entering the input of the image coding apparatus is of interlaced scanning method. Fig. 5 is an explanatory diagram showing the relation between the frame of the motion image signal to be coded and the frame of reproduction signal used for determining the predict signal 501, in the image coding apparatus of the third embodiment of the invention. In the third embodiment, since the image signal to be coded is of interlaced scanning method, the n-th frame is composed of field f (n, 1) and field f (n, 2). Fig. 5 (a) shows a case of coding the field f(n, 1), in which the predict signal is determined by motion compensation of the field f(n-1, 1) and field f(n-1, 2) of the reproduced signal. Fig. 5 (b) shows a case of coding the field (n, 2), in which the predict signal is determined by motion compensation of the field f(n-1, 1) and field f(n-1, 2) of reproduced signal. Figs. 5 (c) and (d) show cases of determining the field f(n+1, 1) and field f(n+1, 2). Thus, also when the motion image signal of interlaced scanning method is coded by the coding apparatus in the third embodiment, the distortion of the predict signal can be reduced in the same way as in the second embodiment. Furthermore, since the first predict signal and second predict signal are reproduced signals which are different from each other in the type, an efficient prediction is realized for a moving image signal. In the third embodiment, the two fields used for determining the predict signal belong to the same frame, but the two fields may also belong to different frames. In the third embodiment, moreover, the distance between the frame to be coded and the frame of the first or second predict signal is one frame, but this distance is not limitative.

Claims: An image coding method for coding a motion image signal (1) comprising pages by using reproduced signals (5021) which have been obtained by decoding previously coded motion image signals, where the page comprises either a field or a frame, said method comprising the steps of: estimating motions of reproduced signals of N,N being an integer of 2 or more, pages to obtain first to N-th motion vectors (5081,5082); compensating (505,506) motions of said reproduced signals of N pages using said first to N-th motion vectors to obtain first to N-th prediction signals (5051,5061); processing (507, 509, 510) the first to N-th prediction signals to obtain a derived prediction signal (501) produced from said first to N-th prediction signals; calculating (2) the difference between a page to be coded and the derived prediction signal to obtain a prediction error signal (201); and coding (3, 6) the prediction error signal and the first to N-th motion vectors to obtain a coded transmission data (9) representing the motion image signal of the page to be coded, characterised in that said N pages are temporally positioned before said page to be coded. An image coding method according to claim 1 wherein said motion image is an interlaced scan motion image and said pages comprise fields. A method according to any of claims 1 or 2, wherein said processing step (507) calculates a linear combination of the first to N-th prediction signals and outputs the linear combination as the derived prediction signal. A method according to claim 3, wherein said processing step (507) calculates an average of the first to N-th prediction signals to obtain an average prediction signal and outputs the average prediction signal as the derived prediction signal. A method according to claim 1 or 2, wherein said processing step (507, 509, 510) comprises the steps of: calculating (507) an average of the first to N-th prediction signals (5051,5061) to obtain an average prediction signal (5071); determining (509) one prediction signal having a smallest prediction error from among the first to N-th prediction signals (5051,5061) and the average prediction signal (5071) and producing a prediction mode signal (5091) indicating the determination result; and selecting (510) the one prediction signal determined by the determining step and outputting the selected prediction signal as the derived prediction signal (501) together with the prediction mode signal (5091), and wherein the prediction mode signal is coded by the coding step (6) so as to be included in the coded transmission data (9). A method according to any of claims 1 to 5, wherein said coding step (3, 6) comprises the steps of: transforming (301) the prediction error signal (201) of the derived prediction signal (501) by discrete cosine transform to obtain a DCT coefficient; quantizing (302) the DCT coefficient bv using a given quantizing step size to obtain a prediction error code (303); and variable length coding (6) the prediction error code, the first to N-th motion vectors, and the quantizing step size (81) to obtain the coded transmission data (9). A method according to any of claims 1 to 6, wherein N is equal to 2. An image coding apparatus for coding a motion image signal comprising pages by using reproduced signals which have been obtained by decoding previously coded motion image signals, where said page comprises either a field or a frame, said apparatus comprising: motion estimating means (508) for estimating motions of reproduced signals of N,N being an integer of 2 or more, pages to be coded to obtain first to N-th motion vectors; compensating means (505,506) for compensating motions of said reproduced signals of N pages using said first to N-th motion vectors to obtain first to N-th prediction signals: processing means (507, 509, 510) for processing the first to N-th prediction signals to obtain a derived prediction signal produced from said first to N-th prediction signals; prediction error calculating means (2) for calculating a difference between the page to be coded and the derived prediction signal to obtain a prediction error signal; and coding means (3, 6) for coding the prediction error signal and the first to N-th motion vectors to obtain a coded transmission data representing the motion image signal of the page to be coded, characterised in that said motion estimating and compensating means (505, 506, 508) estimates and compensates said motions of reproduced signals of N pages positioned before the page to be coded to obtain said first to N-th motion vectors and said first to N-th prediction signals. An image encoding apparatus according to claim 8 wherein said motion image is an interlaced scan motion image and said page comprises fields. An apparatus according to claim 8 or 9, wherein said processing means (507) calculates a linear combination of the first to N-th prediction signals and outputs the linear combination as the derived prediction signal. An apparatus according to claim 10, wherein said processing means (507) comprises averaging means for calculating an average of the first to N-th prediction signals to obtain an average prediction signal and outputs the average prediction signal as the derived prediction signal. An apparatus according to any of claims 8 or 9, wherein said processing means (507, 509, 510) comprises: averaging means (507) for calculating an average of the first to N-th prediction signals to obtain an average prediction signal; prediction mode decision means (509) for determining one prediction signal having a smallest prediction error from among the first to N-th prediction signals and the average prediction signal and producing a prediction mode signal indicating the determination result; and selection means (510) responsive to the prediction mode signal for selecting and outputting the one prediction signal determined by the prediction mode decision means as the derived prediction signal, and wherein the prediction mode signal is coded by the coding means (6) so as to be included in the coded transmission data. An apparatus according to any of claims 8 to 12, wherein said coding means (3. 6) comprises: transforming means (301) for transforming the prediction error signal by discrete cosine transform to obtain a DCT coefficient; and quantizing means (302) for quantizing the DCT coefficient by using a given quantizing step size to obtain a prediction error code; and variable length coding means (6) for variable length coding the prediction error code, the first to N-th motion vectors, and the quantizing step size to obtain the coded transmission data. An apparatus according to 13, further comprising: decoding means (4) for decoding the prediction error code to obtain a reproduced prediction error signal (403); adding means (502) for adding the derived prediction signal and the reproduction prediction error signal to obtain a reproduced signal (5021); and memory means (503, 504) for storing the reproduced signal for future use by the motion compensation means (505,506). An apparatus according to any of claims 8 to 14, wherein N is equal to 2.

Inventors: NAGATA ATSUSHI, NAGATA, ATSUSHI
Applicants: MATSUSHITA ELECTRIC IND CO LTD, MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.
Application year: 1992
Main classification: H04N7
IPC codes: H04N7, G06T9, H04N5