Abstract:
A coding apparatus is arranged to eliminate predetermined image data from input image data and code the input image data from which the predetermined image data is eliminated. A decoding apparatus is arranged to decode the coded image data from which the predetermined image data is eliminated and combine desired image data with the decoded image data.

Description:
This is a continuation application under 37 CFR 1.62 of prior application Ser. No. 08/259,185, filed Jun. 13, 1994, now abandoned. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a coding/decoding apparatus capable of achieving highly efficient coding of input image data. 
     2. Description of the Related Art 
     Moving image coding methods are classified into three representative methods: an interframe differential coding method; a motion compensation interframe differential coding method and an intraframe coding method. In practice, one picture is divided into a plurality of blocks, and such a moving image coding method is applied to each of the blocks. 
     The interframe differential coding method is intended to code the difference between a block to be coded and a block which occupies a spatially identical position in the previous frame. Since the stronger the correlation between frames, the closer to zero the difference value between the blocks, the interframe differential coding method can achieve a higher compression ratio for a lower-activity image. 
     The motion compensation interframe differential coding method is a modification of the interframe differential coding method into which motion compensation is introduced. In the motion compensation interframe differential coding method, a difference value is found between a block contained in one frame and the most approximate block selected from among neighboring blocks surrounding a block which occupies a spatially identical position in the previous frame, and the difference value is coded. 
     For example, difference data is subjected to discrete cosine transform, and after the resultant transform coefficient is quantized, Huffman coding is performed. Even if a moving object is present in a picture, the difference value obtained from the moving object can be made small. Accordingly, the motion compensation interframe differential coding method can achieve a high compression ratio even for a high-activity image. 
     The intraframe coding method is intended to perform coding within only a single picture. Specifically, an image of interest is directly subjected to discrete cosine transform, and after the resultant transform coefficient is quantized, Huffman coding is performed. If either of the aforesaid difference-value coding methods, i.e., the interframe differential coding method or the motion compensation interframe differential coding method, is employed with an interframe correlation small, the process of finding the difference value causes an increase in a dynamic range, and the amount of information to be processed increases. The intraframe coding method does not involve such a problem. 
     The intraframe coding method is suited to coding of an image immediately after a scene change, whereas the motion compensation interframe differential coding method is best suited to coding of ordinary low-activity moving images. 
     However, in the motion compensation interframe differential coding method, if a still background is contained in a block, a detection error occurs and the compression ratio is lowered. More specifically, a matching computation for detection of a motion vector is performed on the assumption that the still background is relatively moving with respect to a moving object. As a result, if the moving object and the background prevail in each block, the effect of motion compensation decreases and, in the worst case, serves as an impairment factor. In other words, if an accurate motion compensation is applied to a moving object, the motion compensation is performed on the assumption that a background image is moving, and this process of the motion compensation increases the amount of generated codes. 
     SUMMARY OF THE INVENTION 
     An object of the present invention which has been made in the light of the above-described background is to provide a coding/decoding apparatus capable of highly efficiently coding any kind of input image data. 
     To achieve the above object, in accordance with one aspect of the present invention, there is provided a coding apparatus which comprises inputting means for inputting image data, extracting means for extracting predetermined image data from the input image data, and coding means for coding the predetermined image data extracted by the extracting means. 
     In accordance with another aspect of the present invention, there is provided a decoding apparatus which comprises decoding means for decoding, into a moving image, moving image information formed by coding only a non-background portion, background memory means for storing a background image, and combining means for combining the background image outputted from the background memory means with the moving image outputted from the decoding means. 
    
    
     Other objects, features and advantages of the present invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings. 
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram schematically showing a moving image transmitting apparatus according to one embodiment of the present invention; and 
     FIG. 2 is a block diagram schematically showing a moving image receiving apparatus according to one embodiment of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     A preferred embodiment of the present invention will be described below with reference to the accompanying drawings. By way of example, in the following description, reference will be made to a video conference system which includes a moving image transmitting apparatus for coding a moving image in which only a person moves against a still background image into data compressed at a high compression ratio and transmitting the coded data, and a moving image receiving apparatus for decoding and reproducing the coded data transmitted from the transmitting apparatus. 
     FIG. 1 is a block diagram of the moving image transmitting apparatus according to one embodiment of the present invention. 
     Referring to FIG. 1, a camera part  1  photographs an image to be transmitted. Image data outputted from the camera part  1  is digital image data. 
     Incidentally, a background image is photographed in advance by the camera part  1  and is previously stored in a background memory  2  as still image data. 
     The still image data is luminance data represented in an 8-bit range, and use of a value of 0 is inhibited. Specifically, a pixel having a value of 0 is set to, for example, “1”, and stored in the background memory  2 . 
     The background image photographed in advance is also previously transmitted to a receiving side which will be described later. 
     A moving object extracting circuit  3  makes a comparison between the background image stored in the background memory  2  and the photographed image transmitted from the camera part  1 , and extracts a portion which shows a change greater than or equal to a predetermined magnitude. 
     In the present embodiment, matching is performed between the background image stored in the background memory  2  and the background image contained in the photographed image transmitted from the camera part  1 , and a moving object (in the present embodiment, a person image) is extracted. Thus, the moving object extracting circuit  3  provides an output consisting of only the person image, which is surrounded by values of 0s. 
     The image data outputted from the moving object extracting circuit  3  is divided into blocks of (8×8) pixels by a blocking circuit  4 . 
     Image data S 1  blocked by the blocking circuit  4  is inputted to a difference circuit  5 . 
     Further, previous frame image data S 2  relative to the previous frame is inputted from a frame memory  15  to the difference circuit  5  through a selecting switch  17 . 
     The difference circuit  5  finds the difference between the input image data S 1  and the previous frame image data S 2  and generates difference data S 3 , and outputs the difference data S 3  to a DCT (discrete cosine transform) circuit  6 . 
     The DCT circuit  6  performs discrete cosine transform of the difference data S 3  in units of minute blocks by using two-dimensional image correlations, and outputs the resultant transform data S 4  to a quantizing circuit  7 . 
     The quantizing circuit  7  quantizes the transform data S 4  in quantizing steps controlled in a manner which will be described later, and outputs quantized data S 5  to both a variable-length coding circuit  8  and an inverse quantizing circuit  12 . 
     The variable-length coding circuit  8  performs variable-length coding of the quantized data S 5 , and outputs the resultant variable-length coded data S 6  to a multiplexer circuit  9 . 
     The multiplexer circuit  9  performs multiplexing of motion vector data S 7  outputted from a motion vector detecting/motion compensating circuit  16 , the variable-length coded data S 6 , and quantizing step control data S 8  outputted from a quantizing step controlling circuit  11 . 
     Multiplexed data S 9  outputted from the multiplexer circuit  9  is outputted from a buffer circuit  10  as transmission data S 10 , and is transmitted over a communication line  20  to the receiving side shown in FIG.  2 . 
     The buffer circuit  10  also outputs information data S 11  indicative of the amount of data accumulated in the buffer circuit  10  to the quantizing step controlling circuit  11 . 
     The quantizing step controlling circuit  11  controls the quantizing step of each of the quantizing circuit  7  and the inverse quantizing circuit  12  on the basis of the input information data S 11 . 
     Also, the quantizing step controlling circuit  11  outputs to the multiplexer circuit  9  the quantizing step control data S 8  which is used to control the quantizing step of each of the quantizing circuit  7  and the inverse quantizing circuit  12 . 
     The moving image transmitting apparatus has a local decoding circuit part so that the quantized data S 5  to be transmitted as the transmission data S 10  can be locally decoded and supplied to the frame memory  15 . 
     The local decoding circuit part will be specifically described below. 
     The quantized data S 5  is inversely quantized by the inverse quantizing circuit  12  in the quantizing steps controlled in the above-described manner. The inverse quantizing circuit  12  outputs the inversely quantized data S 12  to an inverse DCT circuit  13 . 
     The inverse DCT circuit  13  transforms the inversely quantized data S 12  into decoded image data S 13  by means of the completely inverse transforming processing of that performed by the DCT circuit  6 , and outputs the decoded image data S 13  to an adding circuit  14 . 
     The adding circuit  14  adds together the previous frame image data S 2  fed back by the frame memory  15  and the decoded image data S 13 , restores the image data outputted as the transmission data S 10 , and sequentially stores the transmission data S 10  in the frame memory  15 . 
     The frame memory  15  includes a frame memory  15 A for storing local decoded data relative to the previous frame and a frame memory  15 B to which to write current data. 
     Further, the moving image transmitting apparatus supplies the input image data S 1  to the motion vector detecting/motion compensating circuit  16 . The motion vector detecting/motion compensating circuit  16  reads out the image data relative to the previous frame which is stored in the frame memory  15  as the image data S 1 , and detects a motion vector by performing a matching computation on the read-out image data and the image data S 1  inputted from the blocking circuit  4 . The motion vector detecting/motion compensating circuit  16  causes the frame memory  15  to output the previous frame image data S 2  which is prediction data for use in performing a motion compensation on the basis of the detected motion vector. 
     Further, the motion vector detecting/motion compensating circuit  16  outputs the detected motion vector data S 7  to the multiplexer circuit  9 . 
     Incidentally, if a background image or the first image is to be transmitted, since there is no image data to which reference is to be made, it is necessary to substitute “0” for the value of the previous frame image data S 2 . For this reason, in the present embodiment, the selecting switch  17  is provided so that either one of the image data read out from the frame memory  15  and “0” can be selected. The selecting operation of the selecting switch  17  is controlled in accordance with control data S 15  outputted from a control circuit (not shown). 
     The moving image receiving apparatus for receiving the image data coded by and transmitted from the apparatus of FIG.  1  and reproducing an image will be described below with reference to FIG.  2 . 
     FIG. 2 is a block diagram showing the moving image receiving apparatus according to the present embodiment. 
     Referring to FIG. 2, image data S 21  transmitted over the communication line  20  is inputted to a demultiplexer circuit  22  through a buffer circuit  21  as reproduction image data S 22 . 
     The demultiplexer circuit  22  forms difference image information data S 25  by separating motion vector data S 23  and quantizing step control data S 24  from the reproduction image data S 22 , and supplies the difference image information data S 25  to a variable-length decoding circuit  23 . 
     The variable-length decoding circuit  23  decodes the difference image information data S 25  into decoded image data S 26  which corresponds to the quantized data S 5  coded by the variable-length coding circuit  8  (refer to FIG.  1 ). 
     An inverse quantizing circuit  24  inversely quantizes the decoded image data S 26  in quantizing steps controlled by a quantizing step controlling circuit  25 , thereby forming inversely quantized data S 27 . 
     Incidentally, the quantizing step controlling circuit  25  controls the quantizing step of the inverse quantizing circuit  24  on the basis of the quantizing step control data S 24  outputted from the demultiplexer circuit  22 . 
     The inversely quantized data S 27  is transformed into decoded image data S 28  by an inverse DCT circuit  26  in accordance with the completely inverse transforming process of that performed by the DCT circuit  6  (refer to FIG.  1 ), and the decoded image data S 28  is outputted to an adding circuit  27 . 
     The adding circuit  27  adds the decoded image data S 28  to motion compensation data S 29  read out from a frame memory  28 , forms decoded image data S 30 , and feeds the decoded image data S 30  back to the frame memory  28 . 
     The demultiplexer circuit  22  also supplies to a motion compensating circuit  29  the motion vector data S 23  separated from the reproduction image data S 22 . 
     When the motion vector data S 23  is inputted to the motion compensating circuit  29 , the motion compensating circuit  29  controls the reading operation of the frame memory  28  on the basis of the motion vector data S 23 , thereby causing the frame memory  28  to output the motion compensation data S 29 . 
     S 1 milarly to the frame memory  15  (refer to FIG.  1 ), the frame memory  28  includes a frame memory  28 A for storing decoded values relative to the previous frame and a frame memory  28 B to which to write current data. 
     The decoded image data S 30  is also inputted to an adding circuit  30 . A background image previously transmitted from the transmitting side (normally, a background image identical to that stored in the background memory  2  (refer to FIG.  1 )) is stored in a background memory  31 , and the background image data is outputted to the adding circuit  30 . 
     The adding circuit  30  substitutes the background image data read out from the background memory  31  for the zero valued portion of the received image, and outputs the resultant image to a monitor  32 . 
     In the above-described manner, a picture is formed in which the person image transmitted as a moving image is superimposed on the still background image, and the picture is displayed on the screen of the monitor  32 . 
     In the above-described embodiment, it is not necessary that the background image stored in the background memory  2  on the transmitting side be identical to the background image stored in the background memory  31  on the receiving side. This feature of the above-described embodiment is useful, for example, in a case where an operator does not desire to transmit an actual background image or desires to transmit a person image superimposed on a different particular background image. 
     In such a case, by transmitting filed images or different location images to the receiving side as background images and store these background images in the background memory  31 , the operator can select a desired background image from among the plurality of background images. If a file of background image information to be used is provided on the receiving side, it is preferable to adopt an arrangement for specifying a code for designating a desired background image before transmission of a moving image. 
     The background memory  2  stores image information on the basis of which a background image is eliminated from a photographed image transmitted from the camera part  1 . The background within the photographic field of view of the camera part  1  varies subtly or greatly with a camera shake, panning or zooming. To cover a predictable range of variations, the background memory  2  is preferably capable of storing image data corresponding to an area wider than the area of one normal picture. If an arrangement for making reference to operation information about the camera part  1  (such as zooming, focal length, panning angle and tilting angle) is adopted, the moving object extracting circuit  3  can readily extract the portion of a moving object (in the present embodiment, the person). 
     As is readily understood from the foregoing description, in accordance with the present embodiment, it is possible to greatly reduce the number of codes required for the transmission of a moving image. Further, since an arbitrary background can be selected, the present embodiment is very useful when an operator desires to hide an actual background of the transmitting side or to use a particular background. 
     Incidentally, it is possible to practice the present invention in various other forms without departing from the spirit and primary features thereof. 
     For example, although the description of the present embodiment has referred to the coding method using the DCT circuit, the quantizing circuit and the variable-length coding, the present invention is not limited to such a coding method. 
     The present invention can also be applied to a case where an image which contains a stationary background image is transmitted or received, such as a videotelephone system. 
     In other words, the foregoing description of the embodiment has been given for illustrative purposes only and should not be construed as imposing any limitation in every respect. 
     The scope of the invention is, therefore, to be determined solely by the following claims and not limited by the text of the specification, and alterations made within a scope equivalent to the scope of the claims fall within the true spirit and scope of the invention.