MOVING IMAGE ENCODING AND DECODING DEVICE

Abstract: A moving image encoding and decoding device which can efficiently refresh an image and can correct image deterioration caused by a code error in a short time. The encoding and decoding device is provided with a region shape measuring means (12) which measures the shape of a motion compensating region by discriminating the motion compensating area from the other region in an image of one frame and a motion direction estimating means (14) which estimates the motion direction based on the estimated starting point of the motion direction in the motion compensation region. Refreshing operation is performed in the estimated motion direction from the estimated starting point of the estimated motion direction in the motion compensating region. In case a code error occurs in a block, a code error block number reporting means (13) reports the block number and a refresh starting point is the block, out of the block the number of which is reported and the adjacent blocks, positioned in the opposite direction to the estimated motion direction.

Description: Technical Field This invention relates to a video coding decoding apparatus which is capable of effectively refreshing a picture and recovering degradation of a picture caused by code error, in a short time. Background Art Heretofore, there is known a system, as a technique for coding a video, in which a picture in a single frame is divided into blocks of M x N (where M and N are natural numbers, respectively). In the technique, data showing the frame, data showing the number of each block and data of a picture belonging to the blocks are coded in a hierarchical structure, and those data are coded by means of a two-dimensional discrete cosine transform (DCT) and a Huffman code (ITU-T Recommendation H. 261). If, at that time, a motion on each block in the continuous inter-frames is estimated, data can be coded in an efficient manner by compensating the motion from a reference data and without coding all of the picture data. Here, in the example shown in Fig. 1, the block numbers are assigned such that a number assigned to a block located on a left upper end of the explanatory view is "1" and the numbers are gradually sequentially increased toward the right of the same horizontal row. When a block located on the right extremity of the row is reached, a new row is started and a new block number is assigned to each block on this new row from left to right in the same manner as the first row. It should be noted that Fig. 1 shows only one example showing a way for assigning block numbers and any other suitable way for assigning block numbers may be employed in accordance with necessity. In a video coding decoding apparatus in which the above-mentioned coding system is employed, a refreshing operation is carried out in a sequential order of the block numbers for each frame (see arrows of the broken lines) . Presuming that the number of a block in which a refreshing operation is carried out in an i-th frame is "1", the number of another block in which a refreshing operation is carried out in the subsequent (i+1)-th frame is "2". It should be noted that such a refreshing operation is carried out on a premise that a communication line, in which a transmission error is negligible, is employed and no consideration is given to a possible degradation caused by code error. However, in the event that a code error has occurred in an area where a motion compensation is being carried out and this particular area is not to be refreshed in the subsequent frame, degradation of a picture is accumulated without being recovered even when no code error has occurred in the above-mentioned subsequent frame. Consequently, in accordance with the conventional refreshing operation, once a picture degradation occurs, it takes about several dozens of seconds to recover the picture from degradation in the worst case. Further information regarding the prior art can be found in JP-A-5 252 506, which discloses a hybrid transform/predictive video signal encoding with memory refresh in which video signals are transform coded, and the transform coefficients are subjected to predictive encoding in five loops before transmission via a code transform circuit. When refreshing of the frame memory of the decoder is to occur, refreshing takes place on a group-by-group basis, each group consisting of a plurality of transform coefficients of similar sequency within a zig-zag scanning order. Thus, coefficients of lowest spatial frequency are refreshed first, followed by coefficients of successively higher spatial frequencies in subsequent frame periods. Disclosure of Invention The present invention has been accomplished in view of the above-mentioned problems. It is, therefore, an object of the invention to provide a video coding decoding apparatus in which a refreshing operation for recovering degradation of a picture caused by code error can be carried out efficiently. In accordance with the present invention, this object is achieved by the video coding apparatus as defined in independent claim 1 as well as the method of coding and decoding video as defined in independent claim 11. Preferred embodiments of the invention are defined in the dependent claims. According to the present invention, a motion compensation area in a video in a single frame is detected by the area shape detecting means, a motion vector (moving direction) of the overall motion compensating area is estimated from motion vector of each block in the motion compensation area by the motion vector estimating means, and a refreshing operation is carried out from a starting point of the estimated motion vector toward the estimated motion vector (moving direction). Consequently, since the picture in the motion vector compensation area is gradually refreshed toward the motion vector, it becomes natural. Further, since no refreshing operation is carried out with respect to a static area disposed in an opposite direction to the motion vector, a refreshing operation can be carried out in an efficient manner. Furthermore, according to the present invention, the apparatus further comprises code error block number (where code error block number is a number of the block to which code error occurred) informing means for informing a number of the block where a code error has occurred, and a block which, among many other adjacent blocks to that block which is informed by the block number informing means, is located in an opposite direction with respect to the estimated motion vector, is served as the starting point for the refreshing operation. Accordingly, when a code error has occurred to a block in the motion compensating area, a refreshing operation is carried out from this way of the block toward the estimated motion vector. Consequently, degradation of a picture caused by code error can be recovered rapidly. Moreover, according to the present invention, the apparatus further comprises refreshing range control means for limiting the refreshing range to a range of blocks belonging to the motion compensation area. Accordingly, the range of a refreshing operation is limited only to the motion compensation area. Consequently, a refreshing operation can be omitted with respect to those blocks which are located outside of the motion compensation area, or those blocks disposed in a static area. For this reason, a refreshing operation can be carried out more efficiently. Brief Description of Drawings Fig. 1 is an explanatory view for explaining a conventional refreshing procedure; Fig. 2 is a block diagram showing a construction of a video coding decoding apparatus according to a first embodiment of the present invention; Fig. 3 is a block diagram showing a construction of an area shape detecting means for the video coding decoding apparatus according to the first embodiment of the present invention; Fig. 4 is a block diagram showing a construction of a motion vector estimating means for the video coding decoding apparatus according to the first embodiment of the present invention; Fig. 5 is an explanatory view showing a refreshing procedure for the video coding decoding apparatus according to the first embodiment of the present invention; and Fig. 6 is an explanatory view showing a refreshing procedure for a video coding decoding apparatus according to the present invention. Best Mode for Carrying Out the Invention A video coding decoding apparatus according to a first embodiment of the present invention will be described hereinafter with reference to the drawings. Fig. 2 is a block diagram showing a construction of this embodiment. In this illustration, reference numeral 11 denotes a main coding unit for carrying out a two-dimensional discrete cosine transform (DCT) with respect to a prediction error occurrable when a motion inter-frame prediction is carried out in blocks having a size of n x n (n is a natural number) and coding a transfer coefficient thereof. It is presumed here that a picture in a single frame is constituted of blocks of M x N (see Figs. 1, 5 and 6). Also, this main coding unit 11 is operated to refresh blocks of those block numbers received, as later described. Reference numeral 12 denotes an area shape detecting means for dividing a picture in a single frame into a range of a motion compensation area and the remaining area and then distinguishing a shape of the motion compensation area by distinguishing the motion compensation area from the remaining area. A construction of the area shape detecting means is shown in Fig. 3. In this illustration, a comparator 12 1 compares a pre-established threshold MVth with a magnitude of a motion vector MV of each block supplied by the main coding unit 11 and extracts a block or blocks having a motion vector MV of a magnitude equal to or more than the pre-established threshold MVth (which block or blocks are to be subjected to motion compensation). This will be described in more detail. In the case where a magnitude of the motion vector is coded in two-dimension consisting of a horizontal direction and a vertical direction, it is presumed that a motion vector having a block number of "n" can be expressed as follows. MV n = ( x n , y n ) If the magnitude of this motion vector is represented by MVd(n), the same can be expressed as follows. MV d ( n ) = x 2 n + y 2 n This MVd(n) is obtained for each block and compared with the threshold MVth, thereby to obtain a block or blocks to be subjected to motion compensation. For making a judgment, a microscopic motion is basically disregarded and a macroscopic motion such as, for example, a motion of a figure moving in front of a fixed background, is detected as a moving direction of a motion vector of the overall motion area. Then, the block combining means 12 2 combines the blocks extracted by the comparator 12 1 into a single area (unitary area) and outputs data about the area shape together with the motion vector MV of each block. Referring back to Fig. 2, reference numeral 13 denotes a code error block number informing means for outputting the numbers of blocks which could not be decoded due to occurrence of a code error. The code error block number informing means is disposed on a receiving side. It should be noted that this informative data may be transmitted by multiplexing the related data on a coded data. Reference numeral 14 denotes a motion vector estimating means. As shown in Fig. 4, as well as elsewhere, the motion vector estimating means 14 combines various motion vectors in a motion compensation area detected by the area shape detecting means 12 and estimates a motion vector of the specific area as a whole. Upon input of an area shape data by the area shape detecting means 12 and a code error block number by the code error block number informing means 13, the motion vector estimating means 14 makes a judgment as to which area the block specified by the above number belongs to. If the specific area belongs to the motion compensation area, the motion vector estimating means 14 outputs the number of that block which, among error-occurred blocks in the motion compensation area, is located in the direction of a starting point in the sense of a motion vector (moving direction). In contrast, if the block, in which a code error has occurred, is outside the motion compensation range or if the block belongs to a static area, the motion vector estimating means 14 outputs the number of the block in which the code error has occurred. Next, operation of the above-mentioned embodiment will be described. First, there will be described operation when no code error has occurred. The motion vector MV of each block is extracted from a received video signal by the main coding unit 11. The motion vector MV of each block is compared with the threshold MVth by the comparator 12 1 of the area shape detecting means 12. Then, the blocks having a motion vector MV equal to or more than the threshold are combined by the block combining means 12 2 . By doing this, a range of blocks having a motion vector equal to or more than the threshold MVth, i.e., a motion area to be subjected to motion compensation, is detected. Subsequently, the motion vectors of the individual blocks are composed. By doing this, the motion vector of the overall motion compensation area is estimated by the motion vector estimating means 14. Here, as is shown in Fig. 5, the motion area to be subjected to motion compensation is widely spread and the estimated motion vector is likely to be a direction indicated by a bold arrow. In this case, the motion vector estimating means 14 supplies the block numbers one after another to the main coding unit 11 for each frame in a direction indicated by a broken line arrow so that a refreshing operation can be carried out from the block located in the motion area but in the most opposite direction with respect to the estimated motion vector (i.e., block located at the starting point of the estimated motion vector (namely, block indicated by START in Fig. 5)) toward the estimated motion vector. By this, the main coding unit 11 carries out a refreshing operation for each frame, one after another, with respect to the blocks corresponding to the block numbers supplied by the motion vector estimating means 14. As a consequence, since the picture in the motion area is gradually refreshed from the starting point, it becomes natural. Further, since no refreshing operation is carried out with respect to the block or blocks located in an opposite direction to the motion vector and in the static area, a refreshing operation can be carried out in an efficient manner. Next, there will be described an operation when a code error has occurred to the received coded data. The numbers of the blocks, in which a code error has occurred but in which decoding was failed to carry out, are informed by the code error block number informing means 13. Then, the motion vector estimating means 14 makes a judgment as to which area the blocks of the informed block numbers belong to. When the blocks of the informed block numbers are located in the motion compensation area, the motion vector estimating means 14 outputs the number of the block which, among many other adjacent blocks adjacent to the informed blocks, is situated in an opposite (starting point) direction with respect to the motion vector, as the starting point for a refreshing operation. The blocks to be subsequently subjected to refreshing operation are the same as the above-mentioned case where no code error has occurred, in the respect that the blocks to be subsequently subjected to refreshing operation are to be refreshed in the motion vector (moving direction). On the other hand, when the blocks, in which a code error has occurred, are outside the motion compensation area or belong to the static area, the motion vector estimating means 14 outputs the numbers of the blocks so that the very blocks of the informed block numbers are refreshed. Thereafter, the motion vector estimating means 14 successively outputs the block numbers so that refreshing operation is continuously carried out in the direction of the motion vector. As seen, when a block, in which a code error has occurred, belongs to the motion compensation area, a refreshing operation is carried out from this way of the block in the estimated motion direction. When the block, in which a code error has occurred, is outside the motion compensation area or belongs to the static area, this block is immediately refreshed. Accordingly, there can be obtained a rapid recovery of a video from degradation caused by code error. A second embodiment of the present invention will now be described. In the above-mentioned first embodiment, the refreshing operation is carried out only in the direction of the estimated motion vector. The second embodiment is the same as the first embodiment in the respect that the starting point of the estimated motion vector is served as a starting point for the refreshing operation. The second embodiment is characterized in that the refreshing operation to be carried out in the direction of the estimated motion vector is limited to those blocks including or belonging to the motion compensation area. This is made possible for the motion vector estimating means 14 by outputting the numbers of blocks located in the motion compensation area after it outputs the block number serving as a starting point for the refreshing operation. At that time, the area shape data detected by the area shape detecting means 12 is utilized. In this case, a refreshing operation is carried out in the sequential order as indicated by the broken lines of Fig. 6. Owing to this arrangement, those blocks in the static area are not subjected to refreshing operation and only those blocks belonging to the motion area are subjected to refreshing operation. Accordingly, a refreshing operation can be carried out in a very efficient manner. It should be noted that an arrangement is also possible in this second embodiment that in case of an occurrence of a code error, when the code error has occurred in the motion compensation area, the number of the block which, among many other blocks adjacent to the blocks where an code error has occurred and which is located in the direction of a starting point in the sense of a motion vector (moving direction), is output and when the blocks, in which a code error has occurred, are outside the motion compensation area or belong to the static area, the number of the error-occurred blocks are output. Industrial Applicability The present invention is suited to be applied to a case where data of a video having a comparatively gentle motion is transmitted in a two-way communications by a code error inherent communication system such as, for example, a digital mobile communication system. In the future, the present invention is believed to be applicable to a mobile video telephone, a video conference system, and the like.

Claims: A video coding decoding apparatus in which an interframe motion compensation prediction is carried out, and in which a picture of a single frame is divided into blocks, to each of which a motion vector is associated, said video coding decoding apparatus comprising: area shape detecting means (12) for determining those blocks of said picture belonging to a motion compensation area and the shape of said motion compensation area; motion vector estimating means (14) for estimating an overall motion vector (MOTION VECTOR) of said motion compensation area as a whole on the basis of the motion vectors associated with said blocks belonging to said motion compensation area; and coding means (11) for carrying out a refreshing operation, one block per frame period, on successive blocks in a direction towards said overall motion vector (MOTION VECTOR) starting from a start block (START) located within said motion compensation area. The video coding decoding apparatus according to claim 1, wherein, if not informed of a code error during decoding, said start block (START) is the block located most opposite the direction of said overall motion vector (MOTION VECTOR) within said motion compensation area. The video coding decoding apparatus according to claim 1 or 2, wherein, if informed of a code error during decoding, said start block (START) is selected from a group of code error blocks, in which a code error has occurred, said start block (START) being the block of said group of code error blocks located most opposite the direction of said overall motion vector (MOTION VECTOR) within said motion compensation area, if such exists. The video coding decoding apparatus according to claim 3, comprising means (14) for first effecting refreshing of those code error blocks lying outside said motion compensation area. The video coding decoding apparatus according to claim 3 or 4, further comprising: means (14) for selecting said start block (START) on the basis of said code error blocks, said shape of said motion compensation area and said overall motion vector (MOTION VECTOR); and code error block number informing means (13) for identifying blocks in received coded data that could not be decoded due to a code error as code error blocks. The video coding decoding apparatus according to any of the preceding claims, wherein: a respective magnitude of the motion vector associated with each block in said picture is used to determine whether it is to be subject to motion compensation; and those blocks that have been determined to be subject to motion compensation are combined to a unitary area corresponding to said motion compensation area. The video coding decoding apparatus according to any of the preceding claims, wherein said motion vector estimating means (14) estimates said overall motion vector (MOTION VECTOR) by combining the respective motion vectors of each block belonging to said motion compensation area. The video coding decoding apparatus according to any of the preceding claims, further comprising a refreshing range control means for limiting a range of said refreshing operation to said blocks belonging to said motion compensation area. The video coding decoding apparatus according to any of the preceding claims, wherein said picture is divided into M x N blocks, where M and N are natural numbers. A method of coding and decoding video in which a picture of a single frame is divided into blocks, comprising the steps of: associating a motion vector to each of said blocks; determining, via area shape detecting means (12), those blocks of said picture belonging to a motion compensation area and the shape of said motion compensation area; estimating, via motion vector estimating means (14), an overall motion vector (MOTION VECTOR) of said motion compensation area as a whole on the basis of the motion vectors associated with said blocks belonging to said motion compensation area; and carrying out, via coding means (11), an interframe motion compensation prediction on the blocks of said motion compensation area and refreshing successive blocks, one block per frame period, in a direction towards said overall motion vector (MOTION VECTOR) starting from a start block (START) located within said motion compensation area. The method of coding and decoding video according to claim 10, wherein, if no code error has occurred to received coded data, said start block (START) is the block located most opposite the direction of said overall motion vector (MOTION VECTOR) within said motion compensation area. The method of coding and decoding video according to claim 10 or 11, wherein, if a code error has occurred to received coded data, said start block (START) is selected from a group of code error blocks, in which a code error has occurred, said start block (START) being the block of said group of code error blocks located most opposite the direction of said overall motion vector (MOTION VECTOR) within said motion compensation area, if such exists. The method of coding and decoding video according to claim 12, comprising the step of first refreshing those code error blocks lying outside said motion compensation area. The method of coding and decoding video according to claim 12 or 13, further comprising the steps of: selecting said start block (START) on the basis of said code error blocks, said shape of said motion compensation area and said overall motion vector (MOTION VECTOR); and identifying blocks in received coded data that could not be decoded due to a code error as code error blocks. The method of coding and decoding video according to any of claims 10-14, wherein: a respective magnitude of the motion vector associated with each block in said picture is used to determine whether it is to be subject to motion compensation; and those blocks that have been determined to be subject to motion compensation are combined to a unitary area corresponding to said motion compensation area. The method of coding and decoding video according to any of claims 10-15, wherein said overall motion vector (MOTION VECTOR) is estimated by combining the respective motion vectors of each block belonging to said motion compensation area. The method of coding and decoding video according to any of claims 10-16, wherein a range of said refreshing operation is limited to said blocks belonging to said motion compensation area. The method of coding and decoding video according to any of claims 10-17, wherein said picture is divided into M x N blocks, where M and N are natural numbers.

Inventors: MIKI TOSHIO, SAIGUSA MASAHITO, MIKI, TOSHIO, SAIGUSA, MASAHITO
Applicants: NIPPON TELEGRAPH & TELEPHONE, NTT MOBILE COMMUNICATIONS NETWORK INC.
Application year: 1995
Main classification: H04N7
IPC codes: H04N7