Abstract:
An apparatus for encoding dynamic images determines whether input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, and includes (a) a frame-producer combining a plurality of frames not to be encoded to a frame to be encoded for forming a frame having after-image effect, the frames not to be encoded being temporally successive to the frame to be encoded, and (b) an encoder encoding the frame having after-image effect, in place of the frame to be encoded.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The invention relates to an apparatus for encoding dynamic images, applicable to a television-telephone and a cellular phone with a camera in recording dynamic images thereinto, and further to a method of doing the same.  
           [0003]    2. Description of the Related Art  
           [0004]    In an apparatus for encoding dynamic images at a low bit-rate, applicable to a television-telephone and a cellular phone with a camera in recording dynamic images thereinto, various encoding-controls are carried out in order to control an amount of produced codes into a predetermined bit-rate range. Control for an amount of produced codes is grouped into a control carried out by adjusting a quantized step size and a control carried out by frame-skipping.  
           [0005]    In the former control, an amount of produced codes is reduced in each of frames by enlarging a quantized step size, and hence, enhancing a compression ratio. Consequently, the former control is accompanied with a problem that image quality in each of frames is degraded. In the latter control, an amount of produced codes is reduced not by enhancing a compression ratio in each of frames, but by reducing a number of frames to be encoded. Consequently, image quality in each of frames is not degraded, but a motion defined by frames is not smooth.  
           [0006]    Image quality in each of frames and smoothness of a motion are in a trade-off relation to each other, and hence, a combination of the former and latter controls is usually used for controlling an amount of produced codes.  
           [0007]    [0007]FIG. 1 is a block diagram of a conventional apparatus for encoding dynamic images by carrying out the above-mentioned control for reducing an amount of produced codes.  
           [0008]    The illustrated apparatus is comprised of an input section  1  through which dynamic images are input into the apparatus, a frame memory  2 , a blocking section  3 , a discrete cosign transformer  4 , a quantizer  5 , a code converter  6 , a buffer  7 , an inverse-quantizer  8 , an inverse discrete cosign transformer  9 , a reference frame memory  10 , an estimated-image producer  11 , a motion detector  12 , a first switch  13 , a second switch  14 , a subtracter  15 , an adder  16 , and a controller  17  for controlling an amount of produced codes.  
           [0009]    The input section  1  includes a camera such as a CMOS camera or a CCD camera, and receives successive frames through the camera. The thus received frames are transmitted into the frame memory  2  through the first switch  13 , and stored in the frame memory  2 . The frame memory  2  is designed to have first and second memories in one of which frames transmitted from the input section  1  are stored and in the other of which frames to which the blocking section  3  makes access are stored. The first and second memories are switched in toggle by the first and second switches  13  and  14 . Specifically, when the second memory is connected to the input section  1  through the first switch  13 , the first memory is connected to the blocking section  3  through the second switch  14 .  
           [0010]    Hereinbelow is explained an operation of the apparatus.  
           [0011]    The blocking section  3  divides frame data stored in the frame memory  2 , into m×n blocks wherein “m” and “n” are integers, and outputs image data (blocked data) in each of blocks. Frame data is encoded in each of blocks.  
           [0012]    Image data output from the blocking section  3  are transmitted to the subtracter  15  and the motion detector  12 .  
           [0013]    The motion detector  12  is connected to the reference frame memory  10  storing therein the temporally previous frame, that is, a reference frame. The motion detector  12  detects motion between the reference data and the block data transmitted from the blocking section  3 , and calculates motion vector.  
           [0014]    The thus calculated motion vector is transmitted to the estimated-image producer  11 . The estimated-image producer  11  produces estimated images, based on the motion vector and the reference frame received from the reference frame memory  10 . The estimated-image producer  11  transmits the thus produced estimated image to the subtracter  15  and the adder  16 .  
           [0015]    The subtracter  15  calculates a difference in block data between the block data received from the blocking section  3  and the estimated images received from the estimated-image producer  11 , and transmits the thus calculated block data difference to the discrete cosign transformer  4 .  
           [0016]    The discrete cosign transformer  4  applies discrete cosign transformation (DCT) to the differential block data to thereby calculate a DCT coefficient. The discrete cosign transformer  4  outputs the thus calculated DCT coefficient to the quantizer  5 . The quantizer  5  quantizes the received DCT coefficient. The quantizer  5  outputs the thus quantized DCT coefficient to the code converter  6  and the inverse-quantizer  8 .  
           [0017]    The inverse-quantizer  8  inversely quantizes the quantized data. The inverse discrete cosign transformer  9  applies inverse discrete cosign transformation (IDCT) to the thus inversely quantized data, and transmits the inversely quantized data to the adder  16 . The adder  16  receives the inversely quantized data from the inverse discrete cosign transformer  9 , and the estimated images from the estimated-image producer  11 . The adder  16  adds the inversely quantized data and the estimated images to each other to reproduce reference frame data. The thus reproduced reference frame data is transmitted to the reference frame memory  10 , and is stored in the reference frame memory  10 . The reference frame data is used as a reference frame for the next frame.  
           [0018]    The code converter  6  applies variable-length encoding to the quantized DCT coefficient transmitted from the quantizer  5 , and transmits the thus encoded data to the buffer  7 . The encoded data is periodically transmitted to a channel from the buffer  7  at a rate of 64 kbps, for instance.  
           [0019]    The controller  17  monitors occupation of the encoded data in the buffer  7 , and controls the quantizer  5  and the second switch  14 . For instance, the controller  17  in advance determines a first threshold for varying a step for quantization and a second threshold for skipping frames, wherein the first threshold is smaller than the second threshold. If the occupation of the encoded data is over the first threshold, the controller  17  transmits a control signal to the quantizer  5  to enlarge a size of the quantization step for reducing an amount of codes.  
           [0020]    If codes are produced too much, and thus, even the above-mentioned control cannot suppress an increase in codes, and hence, if the occupation of the encoded data is over the second threshold, the controller  17  transmits a frame-skip signal to the second switch  14 . On receipt of the frame-skip signal from the controller  17 , the second switch  14  is turned off, that is, is not connected to the frame memory  2 . Accordingly, frame data stored in the frame memory  2  is not introduced into the blocking section  3 , and hence, is not encoded. As a result, there occurs frame-skipping, causing discontinuity in motion.  
           [0021]    Japanese Patent Application Publication No. 10-112852 has suggested an apparatus and a method in which a plurality of frames is selected in accordance with an amount of motion in images, the frames are made overlap one another to form one still image, the still image is displayed under the after-image effect, and the still image is encoded. Thus, it is possible to prevent image data from being omitted, even if all of image data is not received.  
           [0022]    Japanese Patent Application Publication No. 10-42295 has suggested a method of transmitting a digital signal encoded in accordance with estimation between frames, including the steps of generating a frame signal which indicates that frames are common image signals, and inserting the frame signal into a bit stream.  
           [0023]    Japanese Patent Application Publication No. 10-262242 has suggested a system for transforming a compressed signal, in which an image having been compressed in accordance with a first encoding process is extended, and is compressed again in accordance with a second encoding process. The system includes means for detecting a skipped scene among signals including images having been extended in accordance with the first encoding process, and means for producing an image corresponding to the skipped scene, based on the previous and subsequent scenes of the detected skipped scene. The thus produced image is inserted into where the skipped scene has been detected.  
           [0024]    In the above-mentioned prior art, if an amount of codes is significantly increased because of acute motion of a target, for instance, and thus, frames are skipped, discontinuity in motion is conspicuous to a viewer.  
           [0025]    However, if an amount of codes is controlled only by adjustment of a size of quantization step in order to prevent occurrence of frame-skipping, it would be unavoidable that image quality in each of frames is degraded.  
         SUMMARY OF THE INVENTION  
         [0026]    In view of the above-mentioned problems in the prior art, it is an object of the present invention to provide an apparatus and a method for encoding dynamic images both of which are capable of ensuring smooth motion without degradation in image quality in each of frames, even if there occurs frame-skipping.  
           [0027]    In one aspect of the present invention, there is provided an apparatus for encoding dynamic images which apparatus determines whether an input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, wherein a frame having not been encoded is combined to a subsequent frame to be encoded, and these combined frames are encoded.  
           [0028]    There is further provided an apparatus for encoding dynamic images which apparatus determines whether input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, including (a) a frame-producer combining a plurality of frames not to be encoded to a frame to be encoded for forming a frame having after-image effect, the frames not to be encoded being temporally successive to the frame to be encoded, and (b) an encoder encoding the frame having after-image effect, in place of the frame to be encoded.  
           [0029]    The apparatus further includes (c) a memory storing therein a frame not to be encoded, and (d) an administrator monitoring whether the memory stores therein a frame not to be encoded.  
           [0030]    For instance, the frame-producer is designed to multiply coefficients determined in accordance with a number of the frames not to be encoded, by the frames not to be encoded and the frame to be encoded, and adds the frames not to be encoded and the frame to be encoded to one another.  
           [0031]    For instance, the frame-producer is designed to multiply coefficients determined in accordance with differences in pixels between the frames not to be encoded and the frame to be encoded, by the frames not to be encoded and the frame to be encoded pixel by pixel, and adds the frames not to be encoded and the frames to be encoded to one another.  
           [0032]    For instance, the frame-producer may be designed to include (a) first to N-th memories each storing therein a frame not to be encoded, wherein N is an integer equal to or greater than two, (b) an administrator monitoring whether each of the first to N-th memories stores therein a frame not to be encoded, (c) a switch selecting one of the first to N-th memories to store therein a frame not to be encoded, in accordance with an instruction received from the administrator, (d) first to N-th multipliers associated with the first to N-th memories, respectively, the first to N-th multipliers multiplying a coefficient determined in accordance with a number of frames not to be encoded, by a frame not to be encoded, stored in the first to N-th memories, (e) a multiplier multiplying a coefficient determined in accordance with a number of frames not to be encoded, by a frame to be encoded, and (f) an adder adding the frame not to be encoded having multiplied by the coefficient, to the frame to be encoded having multiplied by the coefficient, to each other.  
           [0033]    It is preferable that the frame-producer further includes (g) a difference calculator calculating a difference in pixels between the frames not to be encoded and the frame to be encoded, and (h) a coefficient calculator calculating a coefficient in accordance with the difference calculated by the difference calculator, and transmitting the thus calculated coefficient to each of the first to N-th multipliers.  
           [0034]    In another aspect of the present invention, there is provided a method of encoding dynamic images, including (a) determining whether an input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, (b) combining a frame having not been encoded to a subsequent frame to be encoded, and (c) encoding the thus combined frames.  
           [0035]    There is further provided a method of encoding dynamic images, including (a) determining whether an input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, (b) a frame-producer combining a plurality of frames not to be encoded to a frame to be encoded for forming a frame having after-image effect, the frames not to be encoded being temporally successive to the frame to be encoded, and (c) encoding the frame having after-image effect, in place of the frame to be encoded.  
           [0036]    The method may further include (d) storing a frame not to be encoded, into a memory, and (e) monitoring whether the memory stores therein a frame not to be encoded.  
           [0037]    The method may further include (d) multiplying coefficients determined in accordance with a number of the frames not to be encoded, by the frames not to be encoded and the frame to be encoded, and (e) adding the frames not to be encoded and the frame to be encoded to one another.  
           [0038]    The method may further include (d) multiplying coefficients determined in accordance with differences in pixels between the frames not to be encoded and the frame to be encoded, by the frames not to be encoded and the frame to be encoded pixel by pixel, and (e) adding the frames not to be encoded and the frames to be encoded to one another.  
           [0039]    In still another aspect of the present invention, there is provided a program for causing a computer to carry out a method of encoding dynamic images, steps executed by the computer in accordance with the program including (a) determining whether an input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, (b) combining a frame having not been encoded to a subsequent frame to be encoded, and (c) encoding the thus combined frames.  
           [0040]    There is further provided a program for causing a computer to carry out a method of encoding dynamic images, steps executed by the computer in accordance with the program including (a) determining whether an input frame is to be encoded or not to be encoded in accordance with an amount of data to be encoded, (b) combining a plurality of frames not to be encoded to a frame to be encoded for forming a frame having after-image effect, the frames not to be encoded being temporally successive to the frame to be encoded, and (c) encoding the frame having after-image effect, in place of the frame to be encoded.  
           [0041]    The steps may further include (d) storing a frame not to be encoded, into a memory, and (e) monitoring whether the memory stores therein a frame not to be encoded.  
           [0042]    The steps may further include (d) multiplying coefficients determined in accordance with a number of the frames not to be encoded, by the frames not to be encoded and the frame to be encoded, and (e) adding the frames not to be encoded and the frame to be encoded to one another.  
           [0043]    The steps may further include (d) multiplying coefficients determined in accordance with differences in pixels between the frames not to be encoded and the frame to be encoded, by the frames not to be encoded and the frame to be encoded pixel by pixel, and (e) adding the frames not to be encoded and the frames to be encoded to one another.  
           [0044]    The advantages obtained by the aforementioned present invention will be described hereinbelow.  
           [0045]    In the above-mentioned present invention, frames not to be encoded are combined to a frame to be encoded, temporally successive to the frame to be encoded, for forming a frame having after-image effect. The thus formed frame having after-image effect is encoded in place of the frame to be encoded. Thus, even if a frame or frames is(are) skipped, it would be possible to relax discontinuity of motion by virtue of the after-image effect.  
           [0046]    The above and other objects and advantageous features of the present invention will be made apparent from the following description made with reference to the accompanying drawings, in which like reference characters designate the same or similar parts throughout the drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0047]    [0047]FIG. 1 is a block diagram of a conventional apparatus for encoding dynamic images.  
         [0048]    [0048]FIG. 2 is a block diagram of an apparatus for encoding dynamic images, in accordance with the first embodiment of the present invention.  
         [0049]    [0049]FIG. 3 is a block diagram of the frame-producer which is a part of the apparatus illustrated in FIG. 2.  
         [0050]    [0050]FIG. 4 shows steps to be carried out in the frame-producer illustrated in FIG. 3.  
         [0051]    [0051]FIG. 5 shows steps to be carried out in the frame-producer illustrated in FIG. 3.  
         [0052]    [0052]FIG. 6 is a block diagram of a frame-producer which is a part of an apparatus for encoding dynamic images, in accordance with the second embodiment.  
         [0053]    [0053]FIG. 7 shows steps to be carried out in the frame-producer illustrated in FIG. 6.  
         [0054]    [0054]FIG. 8A illustrates originally input frames.  
         [0055]    [0055]FIG. 8B illustrates frames encoded by the conventional apparatus.  
         [0056]    [0056]FIG. 8C illustrates frames encoded by the apparatus in accordance with the first embodiment of the present invention. 
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0057]    Preferred embodiments in accordance with the present invention will be explained hereinbelow with reference to drawings.  
       First Embodiment  
       [0058]    [0058]FIG. 2 is a block diagram of an apparatus for encoding dynamic images, in accordance with the first embodiment of the present invention.  
         [0059]    The apparatus in accordance with the first embodiment is structurally different from the conventional apparatus illustrated in FIG. 1 in further including a frame-producer  100  for producing a frame having after-image effect, and further in that the controller  17  is electrically connected not to the second switch  14 , but to the frame-producer  100 . Hence, parts or elements that correspond to those of the conventional apparatus illustrated in FIG. 1 have been provided with the same reference numerals, and operate in the same manner as corresponding parts or elements in the conventional apparatus, unless explicitly explained hereinbelow.  
         [0060]    In FIG. 2, the second switch  14  for selecting one of the first and second memories constituting the frame memory  2  is electrically connected to the frame-producer  100 .  
         [0061]    [0061]FIG. 3 is a block diagram of the frame-producer  100 .  
         [0062]    The frame-producer  100  is comprised of a first switch  204 , a second switch  205 , a third switch  211 , a fourth switch  212 , a first frame memory  200 , a second frame memory  201 , a third frame memory  202 , a frame memory administrator  203 , a first multiplier  206  associated with the first frame memory  200 , a second multiplier  207  associated with the second frame memory  201 , a third multiplier  208  associated with the third frame memory  202 , a fourth multiplier  209 , an adder  210 , and an after-image frame memory  213  storing therein frames having after-image effect.  
         [0063]    The first switch  204  connects the frame memory  2  to the blocking section  3  through the fourth switch  212  and further through a terminal A thereof, and connects the frame memory  2  to one of the first to third frame memories  200  to  202  through the second switch and further through a terminal B thereof.  
         [0064]    The first switch  204  is switched between the terminals A and B in accordance with a control signal transmitted from the controller  17  in accordance with a degree of occupation of encoded data in the buffer  7 . That is, frame skipping control is made in accordance with the occupation of encoded data in the buffer  7 .  
         [0065]    Hereinbelow is explained an operation of the frame-producer  100  when the occupation of encoded data in the buffer  7  is equal to or greater than a threshold in accordance with which a frame is skipped, and when the occupation of encoded data in the buffer  7  is smaller than the threshold. The threshold in accordance with which a frame is skipped is in advance determined, similarly to the conventional apparatus.  
         [0066]    When the occupation of encoded data in the buffer  7  is equal to or greater than the threshold, the frame-producer  100  operates as follows. FIG. 4 shows steps to be carried out by the frame-producer  100 .  
         [0067]    The frame-producer  100  skips a frame input thereinto. The skipped frame is stored in one of the first to third frame memories  200  to  202 .  
         [0068]    The frame memory  2  is electrically connected to one of the first to third frame memories  200  to  202  through the terminal B of the first switch  204  and further through the second switch  205  (step S 101 ). The third switch  211  is kept off. The second switch  205  selects one of the first to third frame memories  200  to  202  in accordance with a control signal transmitted from the frame memory administrator  203 . The skipped frame is stored in the thus selected frame memory (step S 102 ).  
         [0069]    The frame memory administrator  203  monitors which frame memory stores skipped frame data therein, and a temporal order in which skipped frame data is stored in a frame memory. Since the frame-producer  100  in the first embodiment is designed to include three frame memories, three skipped frames can be stored in the frame-producer  100 . If four or more frames are successively skipped, an older skipped frame stored in one of the first to third frame memories  200  to  202  is rewritten by a newer skipped frame.  
         [0070]    When the occupation of encoded data in the buffer  7  is smaller than the threshold, the frame-producer  100  operates as follows. FIG. 5 shows steps to be carried out by the frame-producer  100 .  
         [0071]    The frame-producer  100  encodes a frame received from the frame memory  2 . If another frame has been skipped immediately before receipt of a frame, the frame-producer  100  combines these frames to each other to produce frame data having after-image effect, as follows.  
         [0072]    The first switch  204  selects the terminal A. The frame memory administrator  203  stores information as to which frame memory among the first to third frame memories  200  to  202  stores a skipped frame, and switches the third and fourth switches  211  and  212  in accordance with the information.  
         [0073]    For instance, when a skipped frame is not stored in any one of the first to third frame memories  200  to  202 , the third switch  211  is kept off, and the fourth switch  212  is connected to a terminal C. As a result, frame data having been received from the frame memory  2  is transmitted directly to the blocking section  3  through the first and fourth switches  204  and  212 .  
         [0074]    If a skipped frame is stored only in the first frame memory  200 , the frame memory  2  is electrically connected to the first frame memory  200  through the terminal B of the first switch  204  and further through the second switch  205  (step S 201 ). The third switch  211  electrically connects the first frame memory  200  to the associated first multiplier  206  (step S 202 ), and the fourth switch  212  is connected to a terminal D. A frame received from the frame memory  2  is transmitted to the fourth multiplier  209  through the first and fourth switches  204  and  212 , and is multiplied by a coefficient k 0  in the fourth multiplier  209  (step S 203 ). A skipped frame stored in the first frame memory  200  is transmitted to the first multiplier  206  through the third switch  211 , and is multiplied by a coefficient k 1  in the first multiplier  206  (step S 204 ). Then, these frames are transmitted to the adder  210 , and added to each other in the adder  210  (step S 205 ). Then, the thus added frames are transmitted to and stored in the after-image frame memory  213  (step S 206 ).  
         [0075]    Specifically, frame data to be transmitted to the blocking section  3  to be encoded is calculated as follows.  
         (Input frame data)×k 0 +(First skipped-frame data)×k 1   
         [0076]    Herein, the coefficients k 0  and k 1  are predetermined constants, wherein k 0  is greater than k 1  (k 0 &gt;k 1 ).  
         [0077]    If skipped frames are stored in the first and second frame memories  200  and  201 , the third switch  211  electrically connects the first frame memory  200  to the associated first multiplier  206 , and further electrically connects the second frame memory  201  to the associated second multiplier  207 . The fourth switch  212  is connected to a terminal D. A frame received from the frame memory  2  is transmitted to the fourth multiplier  209  through the first and fourth switches  204  and  212 , and is multiplied by a coefficient k 2  in the fourth multiplier  209 . A skipped frame stored in the first frame memory  200  is transmitted to the first multiplier  206  through the third switch  211 , and is multiplied by a coefficient k 3  in the first multiplier  206 . Similarly, a skipped frame stored in the second frame memory  201  is transmitted to the second multiplier  207  through the third switch  211 , and is multiplied by a coefficient k 4  in the second multiplier  207 . Then, these frames are transmitted to the adder  210 , and added to each other in the adder  210 . Then, the thus added frames are transmitted to and stored in the after-image frame memory  213 .  
         [0078]    Specifically, frame data to be transmitted to the blocking section  3  to be encoded is calculated as follows.  
         (Input frame data)×k 2 +(First skipped-frame data)×k 3 +(Second skipped-frame data)×k 4   
         [0079]    Herein, the coefficients k 2 , k 3  and k 4  are predetermined constants, wherein k 2  is greater than k 3 , which is greater than k 4  (k 2 &gt;k 3 &gt;k 4 ).  
         [0080]    If skipped frames are stored in the first to third frame memories  200  to  202 , the third switch  211  electrically connects the first to third frame memories  200  to  202  to the associated first to third multipliers  206  to  208 , respectively. The fourth switch  212  is connected to a terminal D. A frame received from the frame memory  2  is transmitted to the fourth multiplier  209  through the first and fourth switches  204  and  212 , and is multiplied by a coefficient k 5  in the fourth multiplier  209 . A skipped frame stored in the first frame memory  200  is transmitted to the first multiplier  206  through the third switch  211 , and is multiplied by a coefficient k 6  in the first multiplier  206 . Similarly, a skipped frame stored in the second frame memory  201  is transmitted to the second multiplier  207  through the third switch  211 , and is multiplied by a coefficient k 7  in the second multiplier  207 , and a skipped frame stored in the third frame memory  202  is transmitted to the third multiplier  208  through the third switch  211 , and is multiplied by a coefficient k 8  in the third multiplier  208 . Then, these frames are transmitted to the adder  210 , and added to one another in the adder  210 . Then, the thus added frames are transmitted to and stored in the after-image frame memory  213 .  
         [0081]    Specifically, frame data to be transmitted to the blocking section  3  to be encoded is calculated as follows.  
         (Input frame data)×k 5 +(First skipped-frame data)×k 6 +(Second skipped-frame data)×k 7 +(Third skipped-frame data)×k 8   
         [0082]    Herein, the coefficients k 5 , k 6 , k 7  and k 8  are predetermined constants, wherein k 5  is greater than k 6 , which is greater than k 7 , which is greater than k 8  (k 5 &gt;k 6 &gt;k 7 &gt;k 8 ).  
         [0083]    Hereinafter, frame data having been input to the blocking section  3  is encoded in the same way as the conventional method. After frame data has been transmitted to the blocking section  3 , information relating to skipped frames stored in the first to third frame memories  200  to  202 , stored in the frame memory administrator  203 , is reset to an initial condition. As a result, the frame memory administrator  203  stores no information as to which frame memory stores a skipped frame therein.  
         [0084]    In the apparatus in accordance with the first embodiment, frames not to be encoded are combined to a temporally subsequent frame to be encoded, for forming a frame having after-image effect. The thus formed frame having after-image effect is encoded in place of the frame to be encoded. Thus, even if a frame or frames is(are) skipped, it would be possible to relax discontinuity of motion by virtue of the after-image effect.  
       Second Embodiment  
       [0085]    An apparatus for encoding dynamic images, in accordance with the second embodiment is structurally different from the apparatus in accordance with the first embodiment only in a structure of the frame-producer.  
         [0086]    [0086]FIG. 6 is a block diagram of a frame-producer  100 A in the second embodiment. The frame-producer  100 A in the second embodiment is structurally different from the frame-producer  100  in the first embodiment in further including a difference calculator  302 , a coefficient calculator  301  and a fifth switch  303 . Hence, parts or elements that correspond to those of the frame-producer  100  illustrated in FIG. 3 have been provided with the same reference numerals, and operate in the same manner as corresponding parts or elements in the frame-producer  100 , unless explicitly explained hereinbelow.  
         [0087]    The difference calculator  302  receives frame data from the frame memory  2  and skipped-frame data from one of the first to third frame memories  200  to  202 , and calculates a difference in each of pixels between the frame data and the skipped-frame data. The calculated difference is transmitted to the coefficient calculator  301 .  
         [0088]    The coefficient calculator  301  calculates a coefficient in accordance with the difference received from the difference calculator  302 , and transmits the thus calculated coefficient to each of the first to fourth multipliers  206  to  209 .  
         [0089]    The third switch  303  electrically connects the difference calculator  302  to one of the first to third frame memories  200  to  202 .  
         [0090]    The first switch  204  is switched between the terminals A and B in accordance with a control signal transmitted from the controller  17  in accordance with a degree of occupation of encoded data in the buffer  7 , similarly to the first embodiment. That is, frame skipping control is made in accordance with the occupation of encoded data in the buffer  7 .  
         [0091]    Hereinbelow is explained an operation of the frame-producer  100 A when the occupation of encoded data in the buffer  7  is equal to or greater than a threshold in accordance with which a frame is skipped, and when the occupation of encoded data in the buffer  7  is smaller than the threshold. The threshold in accordance with which a frame is skipped is in advance determined, similarly to the conventional apparatus.  
         [0092]    When the occupation of encoded data in the buffer  7  is equal to or greater than the threshold, the frame-producer  100 A operates as follows.  
         [0093]    The frame-producer  100 A carries out the same operation as the operation carried out by the apparatus in accordance with the first embodiment when the occupation of encoded data in the buffer  7  is equal to or greater than the threshold.  
         [0094]    When the occupation of encoded data in the buffer  7  is smaller than the threshold, the frame-producer  100 A operates as follows. FIG. 7 shows steps to be carried out by the frame-producer  100 A.  
         [0095]    The frame-producer  100 A encodes a frame received from the frame memory  2 . If another frame has been skipped immediately before receipt of a frame, the frame-producer  100 A combines these frames to each other to produce frame data having after-image effect, as follows.  
         [0096]    The first switch  204  is connected to the terminal A. The frame memory administrator  203  stores information as to which frame memory among the first to third frame memories  200  to  202  stores a skipped frame, and switches the third and fourth switches  211  and  212  in accordance with the information.  
         [0097]    For instance, when a skipped frame is not stored in any one of the first to third frame memories  200  to  202 , the third switch  211  is kept off, and the fourth switch  212  is connected to the terminal C. As a result, frame data having been received from the frame memory  2  is transmitted directly to the blocking section  3  through the first and fourth switches  204  and  212 .  
         [0098]    If a skipped frame is stored only in the first frame memory  200 , the fifth switch  303  electrically connects the first frame memory  200  to the difference calculator  302  (step S 301 ). The difference calculator  302  calculates a difference in each of pixels between the frame data received from the frame memory  2  and the skipped-frame data stored in the first frame memory  200  (step S 302 ), and transmits the thus calculated difference to the coefficient calculator  301 . The coefficient calculator  301  calculates a coefficient in accordance with the received difference (step S 303 ), and transmits the thus calculated coefficient to each of the first and fourth multipliers  206  and  209 .  
         [0099]    The coefficient transmitted to the first multiplier  206  is multiplied by the skipped-frame data stored in the first frame memory  200  in each of pixels, and the coefficient transmitted to the fourth multiplier  209  is multiplied by the frame data transmitted from the frame memory  2  in each of pixels (step S 304 ). The frame data and the skipped-frame data each multiplied by the coefficient are added to each other in the adder  210  (step S 305 ). The adder  210  transmits the thus added data to the after-image frame memory  213 . The after-image frame memory  213  stores the received data therein as frame data having after-image effect (step S 306 ).  
         [0100]    Specifically, frame data to be transmitted to the blocking section  3  to be encoded is calculated as follows.  
         (Input frame data)×k 0 +(First skipped-frame data)×k 1   
         [0101]    Herein, the coefficients k 0  and k 1  are transmitted from the coefficient calculator  301 , wherein k 0  is greater than k 1  (k 0 &gt;k 1 ).  
         [0102]    If skipped-frame data is stored not only in the first frame memory  200 , but also in the second frame memory  201 , the first and second frame memories  200  and  201  are electrically connected to the difference calculator  302  in turn through the fifth switch  303 , and the same steps as mentioned above are carried out.  
         [0103]    If skipped-frame data is stored in the first to third frame memories  200  to  202 , the first to third frame memories  200  to  202  are electrically connected to the difference calculator  302  in turn through the fifth switch  303 , and the same steps as mentioned above are carried out.  
         [0104]    In accordance with the second embodiment, since a coefficient can be defined in accordance with correlation of each of pixels, it would be possible to produce an effective frame having after-image effect.  
         [0105]    The frame-producers  100  and  100 A in the first and second embodiments are designed to include three frame memories  200  to  202  to store a skipped frame therein. However, it should be noted that the frame-producers  100  and  100 A may be designed to include any number of frame memories in accordance with environment in which the apparatus is used.  
         [0106]    [0106]FIGS. 8A to  8 C show comparison between the present invention and the prior art. FIG. 8A illustrates successive four input frames  1  to  4 . It is assumed that frames  2  and  3  are skipped.  
         [0107]    [0107]FIG. 8B illustrates frames encoded in accordance with the prior art. As illustrated in FIG. 8B, since frame  4  is located immediately after frame  1 , the motion looks discontinuous to a viewer.  
         [0108]    [0108]FIG. 8C illustrates frames encoded in accordance with the present invention. As illustrated in FIG. 8C, a frame following frame  1  is comprised of frame  4  to which skipped frames  2  and  3  are synthesized, and thus, has after-image effect. Hence, in comparison with the motion in accordance with the prior art, defined by frames  1  and  4 , visual discontinuity can be relaxed in the motion in accordance with the present invention, defined by frame  1  and frame (2+3+4).  
         [0109]    The apparatus for encoding dynamic images has such a structure as mentioned above, and operates in such a manner as mentioned above.  
         [0110]    The apparatus may be accomplished by a data processor such as a personal computer or a work station, and a program to carry out the above-mentioned operation. Such a program may be presented through a recording medium readable by a computer. The program is read out into a data processor when the data processor starts its operation. By controlling an operation of the data processor, the parts constituting the apparatus, such as the frame memory  2 , the blocking section  3 , the discrete cosign transformer  4 , the quantizer  5 , the code transformer  6 , the buffer  7 , the inverse-quantizer  8 , the inverse discrete cosign transformer  9 , the reference frame memory  10 , the estimated-image producer  11 , the motion detector  12 , the subtracter  15 , the adder  16 , the controller  17  and the frame-producer  100 , can be accomplished in the data processor. The memories  2 ,  10 ,  200  to  202  and  213  can be accomplished by a storage device of the data processor, such as a magnetic disc.  
         [0111]    An operation of the above-mentioned apparatus can be accomplished by a computer program written in a language readable by a computer.  
         [0112]    For operating the apparatus by means of a computer program, the apparatus may be designed to include a host CPU including a memory to store a computer program therein, for instance. The computer program is stored in the memory, and is read out into the host CPU when the host CPU starts its operation. Thus, such an operation of the host CPU is accomplished in accordance with the computer program.  
         [0113]    As an alternative, a recording medium storing such a computer program as mentioned above may be set into the host CPU to be read out by the host CPU.  
         [0114]    The functions of the host CPU may be accomplished as a program including various commands, and be presented through a recording medium readable by a computer.  
         [0115]    In the specification, the term “recording medium” means any medium which can record data therein. The term “recording medium” includes, for instance, a disk-shaped recorder such as CD-ROM (Compact Disk-ROM) or PD, a magnetic tape, MO (Magneto Optical Disk), DVD-ROM (Digital Video Disk-Read Only Memory), DVD-RAM (Digital Video Disk-Random Access Memory), a floppy disk, a memory chip such as RAM (Random Access Memory) or ROM (Read Only Memory), EPROM (Erasable Programmable Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory), smart media (Registered Trade Mark), a flush memory, a rewritable card-type ROM such as a compact flush card, a hard disk, and any other suitable means for storing a program therein.  
         [0116]    A recording medium storing a program for accomplishing the above-mentioned apparatus may be accomplished by programming functions of the above-mentioned apparatuses with a programming language readable by a computer, and recording the program in a recording medium such as mentioned above.  
         [0117]    A hard disc equipped in a server may be employed as a recording medium. It is also possible to accomplish the recording medium by storing the above-mentioned computer program in such a recording medium as mentioned above, and reading the computer program by other computers through a network.  
         [0118]    While the present invention has been described in connection with certain preferred embodiments, it is to be understood that the subject matter encompassed by way of the present invention is not to be limited to those specific embodiments. On the contrary, it is intended for the subject matter of the invention to include all alternatives, modifications and equivalents as can be included within the spirit and scope of the following claims.  
         [0119]    The entire disclosure of Japanese Patent Application No. 2002-376563 filed on Dec. 26, 2002 including specification, claims, drawings and summary is incorporated herein by reference in its entirety.