WO2000001158A1 - Encoder and encoding method - Google Patents
Encoder and encoding method Download PDFInfo
- Publication number
- WO2000001158A1 WO2000001158A1 PCT/JP1999/003477 JP9903477W WO0001158A1 WO 2000001158 A1 WO2000001158 A1 WO 2000001158A1 JP 9903477 W JP9903477 W JP 9903477W WO 0001158 A1 WO0001158 A1 WO 0001158A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion vector
- data
- circuit
- code amount
- video signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
Definitions
- the present invention relates to an encoding apparatus and an encoding method, and is suitably applied to, for example, a case where a video signal is encoded based on a format of MPEG (Movin Picture Experts Group). Background technology
- MPEG Movin Picture Experts Group
- a desired bit is switched by switching a quantization step size according to a generated code amount, or by switching a frequency characteristic of a pre-fill.
- Video signals are compressed and encoded at a rate.
- reference numeral 1 denotes a conventional encoding device as a whole, and a digital video signal DV having a predetermined format is input to a prefill 2.
- the prefill unit 2 limits the band of the digital video signal DV in accordance with the band control signal supplied from the rate control circuit 3, and then sends out the band to the pixel number conversion circuit 4.
- the pixel number conversion circuit 4 thins out the band-limited digital video signal DV at a predetermined pixel number interval, thereby reducing the number of pixels of the digital video signal DV to a predetermined fixed pixel number. And sends it to the preprocessing circuit 5 of the encoding unit 19.
- the pre-processing circuit 5 converts the number of pixels of each frame image of the digital video signal DV, which is sequentially input in the order of the last scan, into I (Intra) pictures according to a preset sequence.
- the frame images are rearranged in the encoding order according to the image type, and the frame image is further divided into 16 pixels X 16 lines.
- the image signal is divided into macroblocks composed of a luminance signal of each pixel and a color difference signal corresponding to the luminance signal, and is sequentially transmitted to the subtracter 6 in the order of block scan as an image data in macroblock units.
- the subtractor 6 receives the supply of the image data in units of macroblocks from the preprocessing circuit 5 and the supply of the prediction image data from the motion compensation circuit 7, and the image data of the macroblock is an I picture.
- the image data is directly sent to a DCT (discrete cosine trans- form: discrete cosine transform) circuit 8, and if the image data is a P-picture B picture, The difference between the image data and the predicted image data is sent to the DCT circuit 8.
- DCT discrete cosine trans- form: discrete cosine transform
- the DCT circuit 8 performs a discrete cosine conversion process on the image data or the difference data supplied from the subtracter 6, and sends the resulting coefficient data to the quantization circuit 9.
- the quantization circuit 9 performs a quantization process on the coefficient data output from the DCT circuit 8 in accordance with the quantization step size of the quantization table set in the rate control circuit 3, and converts this to a variable length code.
- the variable length coding circuit 10 performs variable length coding processing on the output data from the quantization circuit 9 and sends the result to the buffer 11 as the coded data.
- the buffer 11 temporarily stores the encoded data and then outputs the data at a constant data transfer rate.
- the buffer 11 stores the motion vector detected and encoded by the motion vector detection circuit 16, the quantization table in the quantization circuit 9, and the image specified by the preprocessing circuit 5.
- the coded data is output in a predetermined format together with the data of the Victor type.
- the output data of the software 11 is used as a video stream, for example, in a subsequent multiplexing device (not shown). ).
- the inverse quantization circuit 12 subjects the output data from the quantization circuit 9 to inverse quantization processing, thereby restoring the coefficient data that was input to the quantization circuit 9, and converting this to an inverse DCT circuit. 1 Send to 3.
- the inverse DCT circuit 13 restores the image data that was input to the DCT circuit 8 by performing an inverse discrete cosine conversion process on the output data from the inverse quantization circuit 12, and It is sent to the adder circuit 14.
- the adder circuit 14 stores the image data output from the inverse DCT circuit 13 as it is in the I-picture in the frame memory 15 as it is. Hold as.
- the addition circuit 14 adds the image data output from the inverse DCT circuit 13 and the predicted image data output from the motion compensation circuit 7 to the subtractor 6 for the P picture.
- the image data at the time of the reproduction is reproduced, and the reproduced image data is stored in the frame memory 15.
- the motion vector detection circuit 16 detects the motion vector of the image data supplied from the preprocessing circuit 5 for each P-picture and B-picture macroblock based on, for example, a block matching method.
- the motion compensation circuit 7 reads out the image data from the frame memory 15 at a time corresponding to the motion vector detected by the motion vector detection circuit 16, and converts the read image data into a predicted image. Output to subtracter 6 as overnight.
- the rate control circuit 3 constantly monitors the empty area of the buffer 11, controls the frequency characteristic of the pre-filter 2 according to the empty area, and checks the quantization table in the quantization circuit 9. It is rewritten to control the quantization step size. Further, the encoding unit control circuit 18 sets the motion vector detection range in the motion vector detection circuit 16 and controls the operation timing of the entire encoding unit 19 indicated by a broken line. Has been made.
- the digital video signal DV having abrupt movement is encoded by increasing the band limiting amount of the pre-filter 2 and increasing the quantization step size of the quantization circuit 9.
- the amount of code generated when the encoding process is performed is reduced to almost the same amount of code as when encoding the digital video signal DV with little motion, but the quantization is increased by increasing the quantization step size.
- the image quality is significantly degraded due to the coarseness of the image. Disclosure of the invention
- the present invention has been made in view of the above points, and proposes an encoding device and an encoding method that can significantly improve the image quality when encoding a video signal with abrupt motion compared to the conventional art. Is what you do.
- difference data obtained by motion compensation is orthogonally transformed to generate a coefficient data
- the coefficient A signal processing circuit in an encoding device that generates encoded data by quantizing data and that switches a quantization step size when quantizing according to the amount of data generated in the encoded data.
- a coefficient data detecting means for detecting the amount of data, and a pixel number converting means for converting the number of pixels of the video signal based on the code amount of the motion vector and the code amount of the coefficient data are provided.
- differential data obtained by performing motion compensation is subjected to orthogonal transform to generate coefficient data, and the coefficient data is quantized.
- the signal processing is performed by using a video signal.
- the motion vector of the motion vector is detected, the code amount of the motion vector is detected based on the detected motion vector, the code amount of the coefficient data is detected, and the code amount of the motion vector is detected.
- the number of pixels of the video signal is converted based on the code amount of the coefficient data.
- the code amount and coefficient data of the motion vector are reduced.
- the number of pixels can be reduced after accurately judging that the motion of the video signal is intense based on the code amount of the night, and as a result, the generated code amount decreases for the video signal with the reduced number of pixels.
- the quantization step size can be switched gently to prevent image quality deterioration, and thus the code that can significantly improve the image quality when encoding a video signal with a lot of motion compared to the past. It is possible to realize an encoding device and an encoding method.
- FIG. 1 is a block diagram showing a configuration of an encoding device according to an embodiment of the present invention.
- FIG. 2 is a block diagram showing a configuration of a conventional encoding device.
- FIG. 1 shows a coding apparatus according to an embodiment of the present invention, in which a digital video signal DV having a predetermined format is input to a prefill 2.
- the pre-filter 2 limits the band of the digital video signal DV in accordance with the band control signal supplied from the rate control circuit 3 and then sends the signal to the pre-processing circuit 5.
- the pre-processing circuit 5 performs an I (Intra) picture, P (P redictive) After specifying the image type to be processed among the three types of images, a picture or B (Bidirectio nally Plective), in the order of encoding the frame images according to the image type Rearrange and further divide the frame image into macroblocks composed of a 16-pixel x 16-line luminance signal and a color difference signal corresponding to the luminance signal, and define this as a macroblock-based image data.
- the motion vector detection circuit 21 as a motion vector detection means in the signal processing circuit 30 and the system delay 26 in the encoding unit 29 in the order of the proxy scan Sending to.
- the motion vector detection circuit 21 sequentially detects the motion vector of each macro block based on the luminance signal in the image data supplied from the preprocessing circuit 5 by applying the block matching method. This is sent to the code generation amount detection circuit 23 and the delay circuit 22. At the same time, the motion vector detection circuit 21 integrates the difference data used for detecting the motion vector, that is, the absolute value of the prediction error, on a frame-by-frame basis, and calculates the integrated value of the motion vector code amount detecting means and the coefficient. It is sent to a code generation amount detection circuit 23 as a temporary code amount detection means.
- the code generation amount detection circuit 23 calculates and predicts the code amount of the motion vector output from the buffer 11 based on the motion vector detected by the motion vector detection circuit 21 in frame units, Based on the integrated value of the prediction error detected by the motion vector detection circuit 21, the DCT circuit 8 —Calculate and predict the amount of code for the coefficient data generated in the tocosine conversion process.
- the code generation amount detection circuit 23 integrates the addition result obtained by adding the code amount of the motion vector in frame units and the code amount of the coefficient data in GOP (Group of Pictures), and The result of the integration in G0P units is sent to the pixel number conversion determination circuit 24.
- the pixel number conversion determination circuit 24 compares the integration result in G0P units calculated by the code generation amount detection circuit 23 with a predetermined threshold, and converts the comparison result as a pixel number switching signal SL to convert the pixel number. It is sent to the circuit 25 and the encoder control circuit 28.
- the system delay 26 temporarily stores the image data supplied from the pre-processing circuit 5, and transfers the stored image data from the pixel number conversion determination circuit 24 to the pixel number conversion circuit 25.
- the number switching signal SL is sent to the pixel number conversion circuit 25 at the input timing.
- the pixel number conversion circuit 25 as a pixel number conversion means is constituted by a rate conversion filter that switches characteristics according to a pixel number switching signal SL, and the integration result in GOP units calculated by the code generation amount detection circuit 23. Is larger than a predetermined threshold value (that is, when the amount of generated code is relatively larger in G0P with more rapid motion than in other G0Ps), based on the pixel number switching signal SL. The number of pixels in the image data at 0 P is reduced by thinning out at predetermined intervals, and this is output to the subtractor 6.
- the pixel number conversion circuit 25 is used when the integration result in GOP units calculated by the code generation amount detection circuit 23 is smaller than a predetermined threshold (that is, when G0P having a strong motion is When the generated code amount is relatively smaller than P), the pixel number of the image data is directly output to the subtracter 6 without thinning out based on the pixel number switching signal SL.
- the pixel number conversion circuit 25 reconstructs the macro block in accordance with the reduced number of pixels, and The image data is output in units of crop lock. Accordingly, the encoding device 20 can reduce the number of macroblocks by the amount of the number of pixels in the image data, so that the number of motion vectors used for transmission can also be reduced. . When the number of pixels is reduced, the pixel number conversion circuit 25 limits the band by the reduced amount, thereby preventing generation of noise.
- the delay circuit 22 temporarily holds the motion vectors sequentially detected by the motion vector detection circuit 21, and performs processing related to the code generation amount detection circuit 23 and the pixel number determination circuit 24. After being delayed by the time, the motion vector is sent to the motion vector calculation circuit 27 as motion vector calculation means.
- the motion vector calculation circuit 27 receives the motion vectors sequentially supplied from the delay circuit 22 and performs motion compensation of the image data when the number of pixels is converted using the motion vectors. Generates new motion vectors required for That is, the motion vector calculation circuit 27 operates in conjunction with the pixel number conversion circuit 25 based on the pixel number switching signal SL supplied from the encoding unit control circuit 28, and If the number of pixels has not been reduced at all in, the motion vector supplied from the delay circuit 22 is sent to the motion compensation circuit 7 as it is.
- the motion vector calculation circuit 27 calculates the motion vector corresponding to the macro block reconstructed according to the reduced number of pixels.
- the motion vector is selectively obtained from the delay circuit 22, the obtained motion vector is corrected by the reduced number of pixels, and this is sent to the motion compensation circuit 7 as a new motion vector.
- the motion vector calculation circuit 27 converts the number of pixels in the horizontal direction from the value r to the value s (r> s) in the pixel number conversion circuit 25, the following equation is obtained.
- VH horizontal motion vector at pixel number r xs / r (1) Calculates a new motion vector VH corrected in the horizontal direction by the arithmetic processing of.
- the motion vector calculation circuit 27 When the number of pixels in the vertical direction is converted from the value t to the value u (t> u) by the pixel number conversion circuit 25, the motion vector calculation circuit 27
- V V vertical motion vector at pixel number t X u / t (2)
- a new motion vector V V corrected in the vertical direction by the processing of (2) is calculated.
- the motion compensation circuit 7 reads out the image data from the frame memory 15 at a timing according to the motion vector supplied from the motion vector calculation circuit 27 or a new motion vector, and reads out the image data.
- the output image data is output to the subtractor 6 as predicted image data.
- the subtracter 6 receives the supply of the image data with the reduced number of pixels or the image data with the reduced number of pixels from the pixel number conversion circuit 25, and receives the supply of the predicted image data from the motion compensation circuit 7, and If the image data is an I-picture, the image data is directly sent to a DCT (Discrete Cosine Transform) circuit 8, and the image data is a P-picture or a B-picture. In this case, the difference data between the image data and the predicted image data is sent to the DCT circuit 8.
- DCT Discrete Cosine Transform
- the DCT circuit 8 performs a discrete cosine conversion process on the image data or the difference data supplied from the subtractor 6, and sends the resulting coefficient data to the quantization circuit 9.
- the quantization circuit 9 performs a quantization process on the coefficient data output from the DCT circuit 8 according to the quantization step size of the quantization table set by the rate control circuit 3, To the variable length encoding circuit 10 and the inverse quantization circuit 12.
- variable-length encoding circuit 10 performs variable-length encoding processing on the output data from the quantization circuit 9 and sends this to the buffer 11 as encoded data.
- the buffer 11 temporarily stores encoded data and then outputs the data at a fixed data transfer rate.
- the buffer 11 stores the motion vector detected or encoded by the motion vector calculation circuit 27 or a new motion vector, the quantization table in the quantization circuit 9, the preprocessing circuit 5
- the coded data is output in a predetermined format together with the picture type picture of the picture data designated by the user.
- the output data of the buffer 11 is output as a video stream to, for example, a subsequent multiplexing device (not shown).
- the inverse quantization circuit 12 restores the coefficient data at the time of input to the quantization circuit 9 by performing an inverse quantization process on the output data from the quantization circuit 9, and Send to DCT circuit 13
- the inverse DCT circuit 13 restores the image data when it was input to the DCT circuit 8 by performing an inverse discrete cosine conversion process on the output data from the inverse quantization circuit 12, This is sent to the adder circuit 14.
- the adder circuit 14 stores the image data output by the inverse DCT circuit 13 as it is in the I-picture in the frame memory 15 as it is. The image is kept as overnight.
- the adder circuit 14 adds the image data output by the inverse DCT circuit 13 and the predicted image data output by the motion compensation circuit 7 in the P-picture to the input to the subtractor 6. The image data at the time of the reproduction is reproduced, and the reproduced image data is stored in the frame memory 15.
- the rate control circuit 3 constantly monitors the empty area of the buffer 11 and controls the frequency characteristic of the pre-filter 2 according to the empty area.
- the quantization table in the quantization circuit 9 is rewritten to control the quantization step size.
- the encoding unit control circuit 28 controls the operation timing of the entire encoding unit 19 indicated by the broken line, and sets the motion vector detection range in the motion vector calculation circuit 27 and The new motion vector calculated by the motion vector calculation circuit 27 based on the macroblock reconstructed by the pixel number conversion circuit 25 is encoded, and the encoded new motion vector is encoded.
- the vector is interposed in the encoded data output from the variable-length encoding circuit 10, and processing for inserting a control code and the like is performed.
- the encoding device 20 first specifies which of the three types of pictures to process each input frame image of the input digital video signal DV, and then converts the frame image into an image.
- the images are rearranged in the order of encoding according to the type, and are sent to the motion vector detection circuit 21 in the order of block scan as image data in units of macroblocks, and are transmitted by the motion vector detection circuit 21.
- a motion vector is detected for each macro block, and a prediction error used in detecting the motion vector is converted into an absolute value to obtain an integrated value in frame units.
- the encoding device 20 predicts the code amount of the motion vector output from the buffer 11 by the code generation amount detection circuit 23 in frame units, and also calculates the integrated value of the absolute value of the prediction error in frame units.
- the code amount of the coefficient data generated in the discrete cosine conversion processing is predicted based on this, and the addition result of the code amount of the coefficient data and the code amount of the motion vector is integrated in G0P units. Then, the integration result is sent to the pixel number conversion determination circuit 24.
- the encoding device 20 compares the result of the GOP unit calculation with a predetermined threshold value in the pixel number conversion determination circuit 24.
- the pixel number conversion determination circuit 24 sets the code amount when the image data of each macro block is encoded and transmitted at the fixed quantization step size in the quantization circuit 9 to the set threshold value.
- the integration result in G0P units will be larger than the threshold value Therefore, a pixel number switching signal SL meaning an instruction to reduce the number of pixels is generated and output to the pixel number conversion circuit 25.
- the pixel number conversion determination circuit 24 has a code amount corresponding to the set threshold when the image data of each macroblock is encoded and transmitted at the fixed quantization step size in the quantization circuit 9. If it is predicted that the number of pixels will be smaller than the threshold, the integration result in GOP units becomes smaller than the threshold value, so that a pixel number switching signal SL indicating an instruction not to convert the number of pixels is generated. Output to 5.
- the encoding device 20 outputs the pixel number switching signal SL , The number of pixels in the image data is thinned out at predetermined intervals and reduced.
- the image data thus converted into a picture number is an I picture, it is input to the DCT circuit 8 via the subtractor 6, and the DCT circuit 8 performs coefficient conversion by orthogonal transform based on discrete cosine transform.
- the data is converted to data, and the coefficient data is quantized by the quantization circuit 9.
- the output data from the quantization circuit 9 is subjected to a variable-length encoding process by the variable-length encoding circuit 10, and the encoded data obtained as a result is stored in the buffer 11.
- the output data from the quantization circuit 9 is stored in the frame memory 15 as a reference image of a subsequent frame after being locally restored by the inverse quantization circuit 12 and the inverse DCT circuit 13. .
- the subtracter 6 generates a difference between the image data and the predicted image data, and The difference data is processed in the same manner as the image data in the I-picture, and the encoded data is generated and stored in the buffer 11. .
- the output data from the quantization circuit 9 is stored in the frame memory 15 as a reference image of a subsequent frame after the output data from the quantization circuit 9 is locally restored similarly to the I picture in these series of processes.
- the encoder 20 calculates the motion vector detected by the motion vector detector 21 through the delay circuit 22. Supply circuit 27.
- the motion vector calculation circuit 27 reduces the number of pixels by correcting the motion vector sequentially supplied from the delay circuit 22 by the number of pixels reduced by the pixel number conversion circuit 25. Then, a new motion vector necessary for motion compensation of the image data of the reconstructed macroblock is generated.
- the encoding apparatus 20 illustrates a motion vector used for calculating the code amount output from the buffer 11 and a new motion vector required for motion compensation when the number of pixels is reduced. It can be detected with a simple configuration such as 1. Normally, the motion vector detection circuit of this type has a complicated structure, and when an encoding device is integrated, the motion vector detection circuit occupies most of the substrate area. By using the motion vector detected by the motion vector detection circuit 21 to generate a new motion vector necessary for motion compensation as in the encoder 20 Therefore, the entire configuration can be simplified.
- the new motion vector required for motion compensation generated by the motion vector calculation circuit 27 in this way is supplied to the motion compensation circuit 7 to generate predicted image data of a predicted frame, and perform variable-length coding. After being processed, it is stored in the buffer 11 together with the encoded data of the corresponding macro block.
- the encoding device 20 performs the encoding process by reducing the number of pixels for the image data of a GOP having a large movement such that the generated code amount increases in the quantization process of the fixed quantization step size. As a result, the generated code amount can be reduced.
- the encoder 20 can reduce the number of macroblocks by the reduced number of pixels, so the motion vector used for transmission can be reduced.
- the number of files can also be reduced, thereby reducing the amount of codes to be provided for transmission.
- the encoding device 20 outputs the encoded data stored in the buffer 11 at a fixed data transfer rate, and outputs the encoded data at a fixed data transfer rate.
- the band limit of the prefilter 2 and the quantization step size of the quantization circuit 9 are controlled.
- the encoding apparatus 20 performs processing to reduce the number of pixels by reducing the number of pixels before performing the encoding processing on the image data of the GOP having a sharp motion, thereby reducing the number of pixels.
- the switching between the band limit and the quantization step size can be performed much more slowly than in the past.
- the conventional encoding device 1 when the data stored in the buffer 11 is compared with the conventional encoding device 1, the conventional encoding device 1 causes the coefficient data to be generated even in a frame image having a fast motion or a frame image having a slow motion. While the encoding process is performed so that the code amount becomes a constant value, the encoding device 20 according to the present embodiment reduces the number of pixels for a frame image with rapid movement to reduce the generated code amount. This makes it possible to switch the band limiting amount and the quantization step size much more slowly than in the past, and thus to reduce the amount of generated code for the coefficient data of a rapidly moving frame image. Encoding processing can be performed so as to increase compared to the case of the apparatus 1.
- the number of motion vectors is reduced because the number of reconstructed macroblocks is reduced due to the reduction in the number of pixels, and as a result, the generated code amount of the reduced motion vector Can be assigned to the coefficient data, so that the overall image quality of the frame unit in G0P where the movement is sharp can be remarkably improved as compared with the related art.
- a method of integrating the absolute value of the difference between frames in frame units and switching the number of pixels based on the integrated value is conceivable. It is possible to determine whether or not the current frame has moved with respect to the frame, but strictly speaking, what effect this movement has on the code amount of the motion vector and the code amount of the coefficient data at the time of encoding. It cannot be determined whether or not it will be given. That is, even if it is determined that the motion amount is small, the generated code amount of the motion vector may actually increase or vice versa.
- the code amount of the motion vector and the code amount of the coefficient data are directly calculated, and the code amount of the motion vector and the code amount of the coefficient data are calculated.
- the encoding device 20 detects the code amount of the motion vector and the code amount of the coefficient data by the orthogonal transform, and determines the code amount of the motion vector and the code amount of the coefficient data. After the number of pixels in the image data is reduced based on the threshold value, the bandwidth is limited and the quantization step size is gently switched to perform the encoding process. It is possible to significantly improve the image quality when encoding processing is performed on.
- the encoding apparatus 20 can reduce the number of motion vectors by reducing the number of macroblocks when reconstructing by reducing the number of pixels, and as a result, the reduced motion vector. Since the generated code amount of the torque can be allocated to the coefficient data overnight, the overall image quality of the frame unit in G0P where the movement is sharp can be remarkably improved.
- the present invention is not limited to this, and may be switched to various other numbers of pixels other than the value s and the value u.
- the code amount of the motion vector and the coefficient The case where the number of pixels is switched when the addition result with the evening code amount exceeds the threshold has been described.
- the present invention is not limited to this, and the ratio of the code amount of the motion vector to the code amount of the coefficient data is described. The number of pixels may be switched on the basis of.
- the addition result of the code amount of the motion vector and the code amount of the coefficient data is integrated in G 0 P units, and G 0 P is calculated based on the integration result in the G 0 P unit.
- the case where the number of pixels is switched in units of P has been described.
- the present invention is not limited to this, and the present invention is based on the result of adding the code amount of the motion vector and the code amount of the coefficient data in frame units.
- the number of pixels may be switched in GOP units based on various units as needed, such as switching the number of pixels in GOP units.
- a case has been described in which the code amount of the coefficient data is detected by performing prediction using a prediction error.
- the present invention is not limited to this, and the present invention is not limited thereto. It is also possible to generate the coefficient data, detect the code amount with a fixed quantization step size, and switch the number of pixels according to the detected code amount.
- the present invention is applied to the encoding device 20 that performs the encoding process based on the MPEG format.
- the present invention is not limited to this.
- the present invention can be widely applied to various encoding devices that perform a Haar transform of a prediction error due to a motion vector, for example, as an orthogonal transform, and then quantize and transmit.
- the encoding device and the encoding method of the present invention are applied to various other encoding devices that quantize and transmit a prediction error caused by detection of a motion vector after transforming the prediction error into orthogonal transforms.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
Claims
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP99926833A EP1014726A4 (en) | 1998-06-29 | 1999-06-29 | CODE AND CODING METHOD |
| US09/513,586 US6480544B1 (en) | 1998-06-29 | 2000-02-25 | Encoding apparatus and encoding method |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10/182473 | 1998-06-29 | ||
| JP18247398A JP2000023162A (ja) | 1998-06-29 | 1998-06-29 | 符号化装置及び符号化方法 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US09/513,586 Continuation US6480544B1 (en) | 1998-06-29 | 2000-02-25 | Encoding apparatus and encoding method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2000001158A1 true WO2000001158A1 (en) | 2000-01-06 |
Family
ID=16118892
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP1999/003477 Ceased WO2000001158A1 (en) | 1998-06-29 | 1999-06-29 | Encoder and encoding method |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US6480544B1 (ja) |
| EP (1) | EP1014726A4 (ja) |
| JP (1) | JP2000023162A (ja) |
| WO (1) | WO2000001158A1 (ja) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
| JP4015934B2 (ja) * | 2002-04-18 | 2007-11-28 | 株式会社東芝 | 動画像符号化方法及び装置 |
| US10554985B2 (en) | 2003-07-18 | 2020-02-04 | Microsoft Technology Licensing, Llc | DC coefficient signaling at small quantization step sizes |
| BRPI0808567A2 (pt) | 2007-03-14 | 2014-09-02 | Nippon Telegraph & Telephone | Método e aparelho de pesquisa de vetor de movimento, programa para o mesmo, e meio de armazenamento, que armazena o programa |
| CA2679767C (en) * | 2007-03-14 | 2013-06-25 | Nippon Telegraph And Telephone Corporation | Encoding bit-rate control method and apparatus, program therefor, and storage medium which stores the program |
| CN101682772B (zh) | 2007-03-14 | 2012-03-21 | 日本电信电话株式会社 | 码量推定方法、装置、其程序和记录介质 |
| CN101637025B (zh) | 2007-03-14 | 2016-03-23 | 日本电信电话株式会社 | 量化控制方法和量化控制装置 |
| JP2009081727A (ja) * | 2007-09-26 | 2009-04-16 | Canon Inc | 画像符号化装置及びその制御方法、プログラム |
| KR101213243B1 (ko) | 2008-06-05 | 2012-12-18 | 니폰덴신뎅와 가부시키가이샤 | 영상 부호량 제어 방법, 영상 부호량 제어 장치, 영상 부호량 제어 프로그램 및 그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63502074A (ja) * | 1985-12-24 | 1988-08-11 | ブリティッシュ・ブロ−ドキャスティング・コ−ポレ−ション | ビデオ信号デコーディング方法及び装置 |
| JPH05308631A (ja) * | 1992-03-03 | 1993-11-19 | Toshiba Corp | 動画像符号化装置 |
| JPH0730901A (ja) * | 1993-07-12 | 1995-01-31 | Kyocera Corp | 動画像符号化方式および動画像復号化方式 |
| JPH0795566A (ja) * | 1993-09-21 | 1995-04-07 | Nippon Telegr & Teleph Corp <Ntt> | 画像符号化方法および装置 |
| JPH07212761A (ja) * | 1994-01-17 | 1995-08-11 | Toshiba Corp | 階層符号化装置及び階層復号化装置 |
| JPH09271026A (ja) * | 1996-03-29 | 1997-10-14 | Fujitsu Ltd | 画像符号化装置 |
| JPH10108197A (ja) * | 1996-09-30 | 1998-04-24 | Sony Corp | 画像符号化装置、画像符号化制御方法および画像符号化制御用プログラムを記録した媒体 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2962012B2 (ja) * | 1991-11-08 | 1999-10-12 | 日本ビクター株式会社 | 動画像符号化装置及びその復号装置 |
| DE69334235D1 (de) * | 1992-01-29 | 2008-09-18 | Mitsubishi Electric Corp | Kodiergerät mit hoher Wirksamkeit und Vorrichtung zum Aufzeichnen/Wiedergeben von Videoinformation |
| DE69322769T2 (de) | 1992-03-03 | 1999-07-22 | Kabushiki Kaisha Toshiba, Kawasaki, Kanagawa | Koder für zeitveränderliche bilder |
| US5436665A (en) | 1992-03-03 | 1995-07-25 | Kabushiki Kaisha Toshiba | Motion picture coding apparatus |
| JP2871316B2 (ja) * | 1992-07-10 | 1999-03-17 | 日本ビクター株式会社 | 動画像符号化装置 |
| US5565921A (en) * | 1993-03-16 | 1996-10-15 | Olympus Optical Co., Ltd. | Motion-adaptive image signal processing system |
| JP3529432B2 (ja) * | 1994-06-30 | 2004-05-24 | 株式会社東芝 | 動画像符号化/復号化装置 |
| US5978514A (en) * | 1994-11-10 | 1999-11-02 | Kabushiki Kaisha Toshiba | Image data coding and decoding system for efficiently compressing information using the shape and position of the image content |
| US6023301A (en) * | 1995-07-14 | 2000-02-08 | Sharp Kabushiki Kaisha | Video coding device and video decoding device |
| JPH09121358A (ja) * | 1995-10-25 | 1997-05-06 | Matsushita Electric Ind Co Ltd | 画像符号化及び復号化装置と方法 |
-
1998
- 1998-06-29 JP JP18247398A patent/JP2000023162A/ja active Pending
-
1999
- 1999-06-29 EP EP99926833A patent/EP1014726A4/en not_active Withdrawn
- 1999-06-29 WO PCT/JP1999/003477 patent/WO2000001158A1/ja not_active Ceased
-
2000
- 2000-02-25 US US09/513,586 patent/US6480544B1/en not_active Expired - Fee Related
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63502074A (ja) * | 1985-12-24 | 1988-08-11 | ブリティッシュ・ブロ−ドキャスティング・コ−ポレ−ション | ビデオ信号デコーディング方法及び装置 |
| JPH05308631A (ja) * | 1992-03-03 | 1993-11-19 | Toshiba Corp | 動画像符号化装置 |
| JPH0730901A (ja) * | 1993-07-12 | 1995-01-31 | Kyocera Corp | 動画像符号化方式および動画像復号化方式 |
| JPH0795566A (ja) * | 1993-09-21 | 1995-04-07 | Nippon Telegr & Teleph Corp <Ntt> | 画像符号化方法および装置 |
| JPH07212761A (ja) * | 1994-01-17 | 1995-08-11 | Toshiba Corp | 階層符号化装置及び階層復号化装置 |
| JPH09271026A (ja) * | 1996-03-29 | 1997-10-14 | Fujitsu Ltd | 画像符号化装置 |
| JPH10108197A (ja) * | 1996-09-30 | 1998-04-24 | Sony Corp | 画像符号化装置、画像符号化制御方法および画像符号化制御用プログラムを記録した媒体 |
Also Published As
| Publication number | Publication date |
|---|---|
| US6480544B1 (en) | 2002-11-12 |
| EP1014726A1 (en) | 2000-06-28 |
| EP1014726A4 (en) | 2001-05-09 |
| JP2000023162A (ja) | 2000-01-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2000013799A (ja) | 動き補償符号化復号化装置及びその方法 | |
| US20010026587A1 (en) | Image encoding apparatus and method of same, video camera, image recording apparatus, and image transmission apparatus | |
| JPH10243399A (ja) | 符号量制御装置及び該符号量制御装置を含む動画像符号化装置 | |
| KR100227298B1 (ko) | 부호화 화상의 부호량 제어 방법 | |
| KR100229796B1 (ko) | 열화영상에 대한 보상기능을 갖는 영상 복호화 시스템 | |
| WO2000001158A1 (en) | Encoder and encoding method | |
| KR20030014677A (ko) | 비디오 코딩 방법 및 대응하는 인코딩 장치 | |
| JPH089375A (ja) | 逆離散コサイン変換不一致制御装置および画像符号化装置 | |
| JP2768260B2 (ja) | 画像符号化制御方式 | |
| US20060181650A1 (en) | Encoding method and device | |
| JPH1066092A (ja) | 映像データ圧縮装置およびその方法 | |
| JP2000050277A (ja) | 符号化装置及び符号化方法 | |
| JPH05227513A (ja) | 映像信号伝送装置 | |
| JPH07298270A (ja) | 動き補償フレーム間予測符号化装置 | |
| JPH07131789A (ja) | 画像符号化方式 | |
| JP3168723B2 (ja) | 映像信号の符号化装置 | |
| JPH0646411A (ja) | 画像符号化装置 | |
| JPH05227510A (ja) | 映像信号伝送装置 | |
| KR0157467B1 (ko) | 버퍼상태에 따른 동영상부호화방법 및 장치 | |
| JP4359273B2 (ja) | 符号化モード選択方法 | |
| KR100192784B1 (ko) | 영상 부호화기 | |
| JPH02222388A (ja) | 動画像符号化方法 | |
| JPH0545117B2 (ja) | ||
| JP2000050283A (ja) | 符号化装置及び符号化方法 | |
| JP4238408B2 (ja) | 画像圧縮装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 1999926833 Country of ref document: EP |
|
| AK | Designated states |
Kind code of ref document: A1 Designated state(s): US |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): DE FR GB |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 09513586 Country of ref document: US |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWP | Wipo information: published in national office |
Ref document number: 1999926833 Country of ref document: EP |
|
| WWW | Wipo information: withdrawn in national office |
Ref document number: 1999926833 Country of ref document: EP |