KR100364748B1 - Apparatus for transcoding video - Google Patents

Apparatus for transcoding video Download PDF

Info

Publication number
KR100364748B1
KR100364748B1 KR1020010000605A KR20010000605A KR100364748B1 KR 100364748 B1 KR100364748 B1 KR 100364748B1 KR 1020010000605 A KR1020010000605 A KR 1020010000605A KR 20010000605 A KR20010000605 A KR 20010000605A KR 100364748 B1 KR100364748 B1 KR 100364748B1
Authority
KR
South Korea
Prior art keywords
picture
motion
decoded
video
encoding
Prior art date
Application number
KR1020010000605A
Other languages
Korean (ko)
Other versions
KR20020057525A (en
Inventor
김응태
Original Assignee
엘지전자 주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020010000605A priority Critical patent/KR100364748B1/en
Priority to US10/034,380 priority patent/US7266148B2/en
Publication of KR20020057525A publication Critical patent/KR20020057525A/en
Application granted granted Critical
Publication of KR100364748B1 publication Critical patent/KR100364748B1/en
Priority to US11/892,893 priority patent/US20070297507A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/172Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level

Abstract

디지털 TV 또는 디지털 영상 기기 응용 분야에서 고 전송 비트율을 가지는 엠펙(MPEG) 비트 스트림을 디코딩한 후 다시 저 전송 비트율로 부호화하여 전송하는 영상 변환 부호화 장치에 관한 것으로서, 특히 디코딩부에서 디코딩된 매크로 블록을 다운 샘플링하는 비디오 전처리부와, 상기 디코딩부에서 가변 길이 디코딩된 이전 비트 스트림으로부터 픽쳐에 대한 정보를 검출하고, 변환 부호화를 위한 엔코딩 모드를 설정하는 변환 부호화 파라미터 제어부를 구비하여, HD급 MPEG 시퀀스를 NTSC급 MPEG 시퀀스로 변환함으로써, 계산 시간 감축과 하드웨어의 복잡도를 줄일 수 있다.The present invention relates to an image conversion encoding apparatus that decodes an MPEG bit stream having a high transmission bit rate and then encodes and transmits again a low transmission bit rate in a digital TV or digital imaging device application. A downlink video preprocessor and a transform encoding parameter control unit for detecting information about a picture from a variable-length decoded previous bit stream and setting an encoding mode for transform encoding. By converting to NTSC-class MPEG sequences, computation time can be reduced and hardware complexity can be reduced.

Description

영상 변환 부호화 장치 {Apparatus for transcoding video}Apparatus for transcoding video}

본 발명은 디지털 TV 또는 디지털 영상 기기 응용 분야에 관한 것으로서, 특히 특정 비트율을 가지는 엠펙(Moving Picture Experts Group ; MPEG) 비트 스트림을 다시 다른 비트율로 바꾸어 전송하는 영상 변환 부호화(transcoding) 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to the field of application of digital television or digital imaging equipment, and more particularly, to a video transcoding apparatus for converting a moving picture expert group (MPEG) bit stream having a specific bit rate into another bit rate and transmitting the same.

최근 들어, 디지털 비디오나 오디오의 저장 및 전송 용량을 줄이기 위해서 MPEG등과 같은 부호화기를 사용하고 있다. 특히 압축된 비트 스트림 상태에서 비디오 검색, 화면 내 화면(예, PIP), 비디오 결합, 비디오 편집, 전송 비트율 변환 등의 다양한 응용이 필요해지면서 특정 비트율을 가지는 MPEG 비트 스트림을 다른 비트율로 변환시키는 영상 변환 부호화 방식들이 요구된다. 이런 예로는 JPEG(Joint Photographic Coding Experts Group) 방식의 비트 스트림을 MPEG 비트 스트림으로 만들거나, 디지털 캠코더의 디지털 출력인 DV(digital video) 포맷을 MPEG 비트 스트림으로 변환하거나, 또는 고화질의 HD(High Definition)급 MPEG 비트 스트림을 저화질의 SD(Standard Definition)급 MPEG 비트 스트림으로 변환하는 방식 등을 들 수 있다.Recently, encoders such as MPEG have been used to reduce the storage and transmission capacity of digital video and audio. In particular, video conversion that converts an MPEG bit stream with a specific bit rate to another bit rate is required in a compressed bit stream state, such as video search, on-screen display (eg PIP), video combining, video editing, transmission bit rate conversion, etc. Coding schemes are required. Examples include making a JPEG bitstream from a Joint Photographic Coding Experts Group (JPEG) bit stream, converting a digital video (DV) format, a digital output from a digital camcorder, to an MPEG bit stream, or high definition HD (High Definition). A method of converting a) -class MPEG bit stream into a low definition SD (Standard Definition) class MPEG bit stream may be cited.

도 1은 일반적인 영상 변환 부호화 장치의 구성 블록도로서, 디코딩부(10)와 엔코딩부(20)로 구성된다.FIG. 1 is a block diagram illustrating a general video transform encoding apparatus, and includes a decoding unit 10 and an encoding unit 20.

상기 디코딩부(10)는 비디오 비트 스트림을 입력받아 가변 길이 디코딩(Variable Length Decoding ; VLD)하는 VLD부(11), 상기 VLD된 이산 코사인 변환(DCT) 계수를 역 양자화(Inverse Quantized ; IQ)하는 역 양자화부(12), 상기 역 양자화된 DCT 계수를 역 이산 여현 변환(Inverse Discrete Cosine Transform ; IDCT)하는 IDCT부(13), 상기 IDCT된 데이터와 움직임 보상된 데이터를 더하는 가산기(14), 상기 가산기(14)의 출력을 움직임 보상을 위해 저장하는 메모리(15), 상기 메모리(15)에 저장된 데이터와 상기 VLD부(11)에서 출력되는 움직임 벡터를 이용하여 움직임 보상을 수행한 후 상기 가산기(14)로 출력하는 움직임 보상부(16), 및 상기 가산기(14)의 출력을 영상 변환 부호화를 위해 저장하는 프레임 메모리(17)로 구성된다.The decoding unit 10 receives a video bit stream and performs a variable length decoding (VLD). The VLD unit 11 performs an inverse quantization (IQ) of the VLD discrete cosine transform (DCT) coefficients. An inverse quantization unit 12, an IDCT unit 13 which inverses Discrete Cosine Transform (IDCT) of the inverse quantized DCT coefficients, an adder 14 that adds the IDCT data and motion compensated data, and the After the motion compensation is performed using the memory 15 storing the output of the adder 14 for motion compensation, the data stored in the memory 15 and the motion vector output from the VLD unit 11, the adder 14 And a frame memory 17 which stores the output of the adder 14 for image transform encoding.

상기 엔코딩부(20)는 상기 디코딩부(10)의 출력을 다른 비트율로 변환하기 위한 것으로서, 상기 프레임 메모리(17)의 출력에서 움직임 보상된 데이터를 빼는 감산기(21), 상기 감산기(21)의 출력을 DCT하는 DCT부(22), 상기 DCT부(22)에서 DCT된 계수를 양자화하는 양자화부(23), 상기 양자화된 DCT 계수를 가변 길이 코딩(Variable Length Coding ; VLC)하는 VLC부(24), 상기 양자화된 DCT 계수를 IQ하는 IQ부(25), 상기 IQ부(25)에서 IQ된 계수를 IDCT하는 IDCT부(26), 상기 IDCT부(26)에서 IDCT된 데이터와 움직임 보상된 데이터를 더하는 가산기(27), 상기 가산기(27)의 출력을 움직임 보상을 위해 저장하는 메모리(28), 상기 메모리(28)에 저장된 데이터에 움직임 보상을 수행한 후 상기 감산기(21)와 가산기(27)로 출력하는 움직임 보상부(29)로 구성된다.The encoder 20 converts the output of the decoder 10 to a different bit rate, and subtracts the subtractor 21 and the subtractor 21 from which the motion compensated data is subtracted from the output of the frame memory 17. DCT unit 22 for DCT output, quantizer 23 for quantizing the DCT coefficients in DCT unit 22, and VLC unit 24 for variable length coding (VLC) of the quantized DCT coefficients. ), An IQ unit 25 for IQ quantizing the DCT coefficients, an IDCT unit 26 for IDCTing the coefficients IQ in the IQ unit 25, and data compensated for motion and data compensated for in the IDCT unit 26. An adder 27 that adds the sum, a memory 28 that stores the output of the adder 27 for motion compensation, and after performing motion compensation on the data stored in the memory 28, the subtractor 21 and the adder 27 It is composed of a motion compensation unit 29 to output.

이와 같이 구성된 도 1에서 디코딩부(10)의 VLD부(11)는 입력되는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT(Discrete Cosine Transform) 계수로 분리한 후 움직임 벡터(MV)는 움직임 보상부(16)로 출력하고, 양자화 값 및 DCT 계수는 IQ부(12)로 출력한다. 상기 IQ부(12)는 상기 DCT 계수를 양자화 값에 따라 역 양자화하여 IDCT부(13)로 출력하고, 상기 IDCT부(13)는 역 양자화된 DCT 계수를 IDCT하여 가산기(14)로 출력한다. 만일, 상기 디코딩부(10)가 일반적인 MPEG-2 비디오 디코더라면 상기 IDCT부(13)는 MPEG-2 비디오 신택스(syntax)에 맞게 8*8 블록 단위로 IDCT를 수행한다.In FIG. 1 configured as described above, the VLD unit 11 of the decoding unit 10 variably decodes an input video bitstream and separates the input video bitstream into a motion vector, a quantization value, and a discrete cosine transform (DCT) coefficient, followed by a motion vector (MV). Is output to the motion compensation unit 16, and the quantization value and the DCT coefficient are output to the IQ unit 12. The IQ unit 12 inversely quantizes the DCT coefficients according to the quantization value and outputs the inverse quantized DCT coefficients to the IDCT unit 13, and the IDCT unit 13 outputs the inverse quantized DCT coefficients to the adder 14. If the decoding unit 10 is a general MPEG-2 video decoder, the IDCT unit 13 performs IDCT in units of 8 * 8 blocks in accordance with MPEG-2 video syntax.

이때, MPEG에서 규정하는 픽쳐의 형태에는 I,P,B 픽쳐의 세가지가 있으며, 상기 IDCT부(13)를 통해 복원된 데이터가 I 픽처일 경우 그대로 디스플레이 할 수 있는 완전한 그림이고, B, P 픽처일 경우 움직임 보상부(16)를 통해 움직임 보상을 해야 하는 불완전한 그림이다.In this case, there are three types of pictures defined in MPEG, I, P, and B pictures. When the data reconstructed through the IDCT unit 13 is an I picture, the picture can be displayed as it is. In this case, it is an incomplete picture to compensate for the motion through the motion compensator 16.

즉, I 픽처를 기준으로 볼 때 움직임을 나타내는 정보인 움직임 벡터는 0이라고 볼수 있고, B, P 픽처일때는 메모리부(15)에 저장되어 있는 이전 픽처를 이용하여 원래 화면으로 복원해야 한다. 여기서, 움직임 벡터(Motion vector ; MV)란 움직임 보상을 위해서 현재의 픽쳐나 필드의 좌표로부터 기준 프레임이 되는 필드의 좌표의 옵셋(Offset)을 나타내주는 2차원 벡터이다.That is, a motion vector, which is information representing motion when viewed based on an I picture, may be regarded as 0, and when a B or P picture is used, the motion vector should be restored to the original screen by using a previous picture stored in the memory unit 15. Here, the motion vector (MV) is a two-dimensional vector representing the offset of the coordinates of the field serving as the reference frame from the coordinates of the current picture or the field for motion compensation.

따라서, 상기 VLD부(11)에서 출력되는 움직임 벡터는 움직임 보상부(16)로 출력되고, 상기 움직임 보상부(16)는 상기 움직임 벡터와 메모리(15)에 저장된 이전 프레임을 이용하여 현재의 픽셀값에 대한 움직임 보상을 수행한 후 가산기(14)로 출력한다. 즉, 상기 움직임 보상부(16)는 메모리(15)에 저장된 이전 픽처와 VLD부(13)에서 출력된 현재 B 또는 P 픽처에 대한 움직임 벡터를 이용하여 한 방향 또는 양방향 예측을 하여 B 또는 P 픽쳐를 완전한 영상으로 복원한다.Accordingly, the motion vector output from the VLD unit 11 is output to the motion compensator 16, and the motion compensator 16 uses the current pixel using the motion vector and the previous frame stored in the memory 15. After performing motion compensation on the value, it outputs to the adder 14. That is, the motion compensator 16 performs a one-way or bi-directional prediction using a motion vector of a previous picture stored in the memory 15 and a current B or P picture output from the VLD unit 13 to perform a B or P picture. Restores the complete image.

상기 가산기(14)는 IDCT된 값과 움직임 보상된 값을 더하여 최종 픽셀값인 완전한 영상으로 복원한 후 상기 움직임 보상을 위한 메모리(15)와 영상 변환 부호화를 위한 프레임 메모리(17)에 저장한다. 즉, I 픽쳐의 경우는 IQ/IDCT한 결과가 바로 메모리(15,17)에 저장되고, P 픽쳐나 B 픽쳐의 경우는 움직임 보상된 데이터와 IDCT된 결과가 가산기(14)에서 더해진 후 메모리(15,17)에 저장된다.The adder 14 adds the IDCT value and the motion compensated value to restore the complete image which is the final pixel value, and then stores the result in the memory 15 for motion compensation and the frame memory 17 for image transform encoding. That is, in the case of the I picture, the result of IQ / IDCT is immediately stored in the memories 15 and 17. In the case of the P picture or the B picture, the motion compensated data and the IDCT result are added in the adder 14 and then the memory ( 15,17).

이때, 상기 메모리(17)에 저장된 영상을 다시 저 전송 비트율의 비트 스트림으로 변환하여 하드 디스크와 같은 저장 장치에 저장하기 위해서는 엔코딩부(20)와 같은 비디오 부호화기가 필요하게 된다.In this case, a video encoder such as the encoder 20 is required to convert the image stored in the memory 17 into a bit stream having a low transmission bit rate and store the same in a storage device such as a hard disk.

즉, 상기 엔코딩부(20)의 감산기(21)는 상기 프레임 메모리(17)에서 출력되는 데이터가 I 픽쳐이면 그대로, P나 B 픽쳐이면 움직임 보상부(29)에서 움직임 보상된 데이터와의 차분 데이터를 DCT부(22)로 출력한다. 상기 DCT부(22)는 입력되는 데이터를 DCT한 후 양자화부(23)로 출력하여 양자화한다.That is, the subtractor 21 of the encoding unit 20 is the data output from the frame memory 17 as it is an I picture, and if it is a P or B picture, the difference data with the motion compensated data from the motion compensation unit 29. Is output to the DCT unit 22. The DCT unit 22 DCTs the input data and outputs the quantized unit 23 to the quantizer 23.

여기서, 상기 DCT부(22)는 2차원 축변환을 통해서 데이터의 상관성을 제거하는데, 이를 위해 픽쳐를 블록 단위로 나눈 후 나누어진 각각의 블록을 DCT식에 따라 축변환시킨다. 이렇게 축변환된 데이터들은 한쪽 방향(저역 쪽)으로 몰리는 경향이 있는데 이렇게 몰려진 데이터들만을 양자화부(23)에서 양자화한 후 가변 길이 코딩(Variable Length Coding ; VLC)부(24)로 출력한다. 상기 VLC부(24)는 자주 나오는 값은 적은 수의 비트로, 드물게 나오는 값은 많은 수의 비트로 표시하여 전체 비트 수를 줄인다.In this case, the DCT unit 22 removes the correlation of data through two-dimensional axis transformation. To this end, after dividing the picture into block units, the DCT unit 22 transforms each divided block according to the DCT equation. The axially transformed data tends to be concentrated in one direction (low pass), and only the collected data is quantized by the quantization unit 23 and then output to the variable length coding (VLC) unit 24. The VLC unit 24 reduces the total number of bits by displaying a frequently occurring value as a few bits and a rare value as a large number of bits.

또한, 상기 양자화부(23)에서 양자화된 DCT 계수는 다시 IQ부(25)로 입력되어 역양자화된 후 IDCT부(26)로 출력된다. 상기 IDCT부(26)는 역 양자화된 DCT 계수를 IDCT하여 가산기(27)로 출력한다. 상기 가산기(27)는 IDCT된 값과 움직임 보상된 값을 더하여 최종 픽셀값인 완전한 영상으로 복원한 후 움직임 보상을 위해 메모리(28)에 저장한다. 움직임 보상부(29)는 메모리(28)로부터 읽어온 이전 프레임을 이용하여 움직임 보상을 수행한 후 감산기(21)와 가산기(27)로 출력한다.In addition, the DCT coefficients quantized by the quantization unit 23 are input to the IQ unit 25 again, dequantized, and then output to the IDCT unit 26. The IDCT unit 26 IDCTs the inverse quantized DCT coefficients and outputs them to the adder 27. The adder 27 adds the IDCT value and the motion compensated value to restore the complete image, which is the final pixel value, and then stores it in the memory 28 for motion compensation. The motion compensator 29 performs motion compensation using the previous frame read from the memory 28 and outputs the motion compensation to the subtractor 21 and the adder 27.

이상에서와 같이, 상기 디코딩부(10)와 엔코딩부(20)를 이용하여 특정 비트율을 가지는 MPEG 비트 스트림을 다른 비트율 예를 들어, 저 전송 비트율로 변환한 후 하드 디스크와 같은 저장 장치에 저장하게 된다.As described above, the decoding unit 10 and the encoding unit 20 are used to convert the MPEG bit stream having a specific bit rate into another bit rate, for example, a low transmission bit rate, and store the same in a storage device such as a hard disk. do.

그러나, 전송된 비트율보다 더 낮은 전송율을 만드는 과정에서 영상 화질의 손실이 생기게 된다.However, there is a loss of image quality in the process of making a lower bit rate than the transmitted bit rate.

이러한 영상 화질의 손실을 줄이기 위해, 기존에는 MPEG 복호기에서 고주파 AC 계수를 제거하는 비트량 감축 방식, MPEG 복호기에 재 양자화를 통한 비트율을 변환시키는 방식, MPEG 복호기와 부호화기를 단순히 연결하는 캐스케이드 변환 부호화기(cascaded transcoder) 방식 등을 사용하고 있다.In order to reduce such image quality loss, conventionally, a bit rate reduction method for removing high frequency AC coefficients from an MPEG decoder, a method of converting a bit rate through requantization to an MPEG decoder, and a cascade transform encoder that simply connects an MPEG decoder and an encoder ( cascaded transcoder).

그러나, 상기 고주파 AC 계수를 제거하는 비트량 감축 방식은 비트열의 파싱(parsing)만 해도 비트 길이와 부호의 경계를 파악하므로 매크로 블록 단위로 목표 비트량을 맞추어 가면서 초과되는 위치의 DCT 계수를 제거하여 하드웨어가 단순하다. 하지만, DCT 계수를 제거하므로 인해 누적 오차(drift error)가 생기므로 마찬가지로 화질 저하가 생긴다. 그리고, 상기 재 양자화를 이용한 방식은 가변길이 복호화 후 역 양자화를 하고 양자화 단계가 더 넓은 양자화 폭을 다시 적용하는 재양자화 방식이다. 따라서, 고주파 AC 계수를 잘라버리는 방식보다 좋은 화질을 가지나 하드웨어의 복잡도가 증가하게 된다.However, since the bit amount reduction method for removing the high frequency AC coefficients detects the boundary between the bit length and the sign only by parsing the bit strings, the DCT coefficients of the excess positions are removed by adjusting the target bit amount in units of macro blocks. The hardware is simple. However, the elimination of the DCT coefficients causes a drift error, which leads to a deterioration in image quality. The requantization scheme is a requantization scheme in which inverse quantization is performed after variable length decoding and a quantization step is applied again with a wider quantization width. Therefore, the image quality is better than that of cutting off the high frequency AC coefficient, but the complexity of hardware is increased.

마지막으로 상기 캐스케이드 변환 부호화기의 경우 화질 측면에서는 우수하지만 MPEG-2 부호화기를 내장하므로 다른 방식에 비해 하드웨어가 복잡할 뿐만 아니라 계산량이 많다.Lastly, the cascade transform encoder is excellent in terms of image quality, but since the MPEG-2 encoder is built in, the hardware is not only complicated in hardware but also has a large amount of calculation.

즉, 디지털 VCR 등에서 고속 재생과 같은 특수 재생이나 장시간 기록용 저장기에서는 기록 공간이 상대적으로 대단히 적기 때문에 수신된 MPEG 비트 스트림으로부터 상당 부분의 데이터를 잘라내어 기록한다. 또한, VCR 기록에서 기록 시간을 2배로 늘리고자할 때는 비트 스트림의 비트율을 1/2로 낮추어야 한다. 이렇듯 대개 가정용인 경우 복잡한 하드웨어를 사용해서 비용이 올라가는 것보다는 품질은 떨어지지만 하드웨어가 단순한 방식을 선호하게 된다. 그러므로 가정용의 경우는 대개 상기된 고주파수 AC 계수를 없애는 방식이나 재 양자화 방식등이 사용된다. 또한, 캐스케이드 변환 부호화기의 경우는 움직임 보상 회로를 통해 누적 오차를 없애므로 좋은 화질을 유지하는데 이 방식은 VOD(video on demand) 서버나 방송국 등에서 사용할 수 있다.That is, in a special playback such as high speed playback in a digital VCR or the like for a long time recording storage, a relatively small amount of recording space is relatively small, so that a substantial portion of data is cut out from the received MPEG bit stream and recorded. In addition, when doubling the recording time in VCR recording, the bit rate of the bit stream should be reduced to 1/2. As such, home use is often of lower quality, but rather hardware, than simple hardware. Therefore, in the case of home use, a method of eliminating the high frequency AC coefficient described above or a requantization method is generally used. In addition, the cascade transform encoder eliminates cumulative errors through a motion compensation circuit, thereby maintaining good image quality. This method can be used in a video on demand (VOD) server or a broadcasting station.

그러나, 새로운 매크로 블록 결정 모드 및 움직임 보상 모드를 결정해야 하는 등의 계산량이 증가하게 된다.However, the computation amount such as the need to determine a new macroblock determination mode and a motion compensation mode is increased.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 화질의 손실을 최대한 줄이면서 HD(High Definition)급의 신호를 SD(Standard Definition)급의 저해상도 비트스트림으로 변환하는 영상 변환 부호화 장치를 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to convert a high definition (HD) signal into a low definition bitstream of a standard definition (SD) level while minimizing loss of image quality. In providing a device.

도 1은 일반적인 영상 변환 부호화 장치의 구성 블록도1 is a block diagram of a general image transcoding apparatus

도 2는 본 발명에 따른 영상 변환 부호화 장치의 구성 블록도2 is a block diagram illustrating an image transcoding device according to the present invention.

도 3은 도 2의 상세 블록도3 is a detailed block diagram of FIG.

도 4는 본 발명에 따른 비디오 전처리부에서 HD 매크로 블록을 SD 서브 블록으로 변환하는 과정을 보인 도면4 is a diagram illustrating a process of converting an HD macroblock into an SD subblock in a video preprocessor according to the present invention.

도 5는 도 2의 비디오 엔코딩부의 동작 흐름도5 is a flowchart illustrating an operation of a video encoder of FIG. 2.

도 6a, 도 6b는 매크로 블록 유형을 결정하는 예를 보인 본 발명의 도면6A and 6B are diagrams of the present invention showing an example of determining a macro block type.

도 7은 움직임 보상시 적응적으로 움직임 벡터를 선택하는 예를 보인 본 발명의 도면7 is a diagram illustrating an example of adaptively selecting a motion vector during motion compensation.

도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings

100, 200 : 외부 메모리 101,201 : 메모리 인터페이스부100, 200: external memory 101,201: memory interface unit

102 : 트랜스포트 디코더 103 : 비디오 디코더102: transport decoder 103: video decoder

104 : 오디오 디코더 105 : 비디오 디스플레이 처리부104: audio decoder 105: video display processing unit

202 : 비디오 엔코더 203 : VLC부202: video encoder 203: VLC unit

300 : 비디오 전처리부 400 : 프레임 메모리300: video preprocessor 400: frame memory

500 : 변환 부호화 파라미터 제어부500: transform encoding parameter control unit

700 : DMA부 800 : 호스트 인터페이스700: DMA unit 800: host interface

상기와 같은 목적을 달성하기 위한 본 발명에 따른 영상 변환 부호화 장치는, 수신되는 비디오 비트스트림을 디코딩하여 원래 화면의 픽셀 값으로 복원하는 디코딩부와, 상기 디코딩부에서 디코딩된 매크로 블록을 다운 샘플링하는 비디오 전처리부와, 상기 디코딩부에서 가변 길이 디코딩된 이전 비트 스트림으로부터 픽쳐에 대한 정보를 검출하고, 변환 부호화를 위한 엔코딩 모드를 설정하는 변환 부호화 파라미터 제어부와, 상기 변환 부호화 파라미터 제어부에서 출력되는 엔코딩 모드에 따라 상기 비디오 전처리부에서 다운 샘플링된 데이터와 움직임 보상된 데이터와의 차분 데이터를 이산 코사인 변환(DCT) 과정, 양자화 과정, 및 가변 길이 코딩(VLC) 과정을 거쳐 부호화하며, 상기 양자화된 데이터를 다시 역양자화(IQ) 과정 및 역 이산여현 변환(IDCT) 과정을 거친 후 움직임 보상된 데이터와 더하여 메모리에 저장하는 재부호화부를 포함하여 구성되는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a video transcoding apparatus including: a decoding unit for decoding a received video bitstream and reconstructing a pixel value of an original screen; and downsampling a macroblock decoded by the decoding unit. A video preprocessing unit, a transform encoding parameter control unit for detecting information about a picture from a variable-length decoded previous bit stream, and setting an encoding mode for transform encoding, and an encoding mode output from the transform encoding parameter control unit The video preprocessor encodes the difference data between the down-sampled data and the motion compensated data through a discrete cosine transform (DCT) process, a quantization process, and a variable length coding (VLC) process, and encodes the quantized data. Inverse quantization (IQ) process and inverse discrete cosine transform (IDC) And a re-encoding unit to store in the memory in addition to the motion-compensated data after the T) process.

상기 비디오 전처리부는 상기 디코딩부에서 디코딩된 데이터가 비월 주사 시퀀스이고 프레임 픽쳐를 갖는 매크로 블록이라면 필드 기반 처리를 통해 다운 샘플링을 수행하고, 순차 주사 시퀀스나 필드 픽쳐 구조의 비월 주사 시퀀스라면 프레임 기반 처리를 통해 다운 샘플링을 수행하여 필드 단위의 정보를 유지하는 것을 특징으로 한다.The video preprocessor performs down sampling through field-based processing if the data decoded by the decoder is an interlaced scanning sequence and has a frame picture, and performs frame-based processing if the interlaced scanning sequence has a sequential scanning sequence or a field picture structure. Down sampling is performed through the above to maintain field information.

상기 변환 부호화 파라미터 제어부는 상기 디코딩부에서 가변 길이 디코딩된 이전 비트 스트림의 움직임 정보를 이용하여 상기 비디오 전처리부에서 다운 샘플링된 매크로 블록의 움직임 벡터와 움직임 모드를 설정하는 것을 특징으로 한다.The transform encoding parameter controller may set a motion vector and a motion mode of a down-sampled macroblock in the video preprocessor using motion information of a previous bit stream variable-length decoded by the decoder.

상기 변환 부호화 파라미터 제어부는 상기 디코딩부에서 출력되는 현재 디코딩된 픽쳐 코딩 타입이 I 픽쳐이면 상기 비디오 전처리부에서 출력되는 매크로 블록들을 모두 인트라 코딩하도록 상기 재부호화부를 제어하는 것을 특징으로 한다.The transform encoding parameter control unit controls the re-encoding unit to intra-code all macro blocks output from the video preprocessor if the current decoded picture coding type output from the decoding unit is an I picture.

상기 변환 부호화 파라미터 제어부는 상기 비디오 디코더에서 출력되는 현재 디코딩된 픽쳐 코딩 타입이 P 픽쳐나 B 픽쳐라면 현재 엔코딩하려는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들의 유형을 통해 움직임 보상을 할지 안 할지를 결정하는 것을 특징으로 한다.The transform coding parameter controller determines whether motion compensation is performed through the types of previously decoded macroblocks corresponding to the macroblock to be encoded if the current decoded picture coding type output from the video decoder is a P picture or a B picture. Characterized in that.

상기 변환 부호화 파라미터 제어부는 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들 중 어느 하나의 매크로 블록이라도 인트라 매크로 블록이라면 인트라 코딩하도록 상기 재부호화부를 제어하는 것을 특징으로 한다.The transform encoding parameter controller controls the re-encoding unit to intra-code any one of the previously decoded macroblocks corresponding to the macroblock to be encoded if it is an intra macroblock.

상기 변환 부호화 파라미터 제어부는 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 4개의 매크로 블록들 중 인트라 매크로 블록의 수가 3개 이상인 경우는 현재 디코딩할 매크로 블록을 인트라 블록으로 결정하는 것을 특징으로 한다.If the number of intra macroblocks among the four previously decoded macroblocks corresponding to the current macroblock to be encoded is three or more, the transform encoding parameter controller determines that the macroblock to be currently decoded is an intrablock. .

상기 변환 부호화 파라미터 제어부는 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들 중 어느 하나의 매크로 블록도 인트라 매크로 블록이 아니라면 움직임 보상이 필요하다고 판단한 후, 픽쳐 코딩 타입으로 P 픽쳐와 B 픽쳐를 구분하는 각각 움직임 보상을 수행하는 것을 특징으로 한다.The transform coding parameter controller determines that motion compensation is required if any of the previously decoded macroblocks corresponding to the macroblock to be encoded is not an intra macroblock, and then P picture and B as picture coding types. And performing motion compensation for distinguishing the pictures.

본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.Other objects, features and advantages of the present invention will become apparent from the following detailed description of embodiments taken in conjunction with the accompanying drawings.

이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 상세히 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명은 고 전송 비트율(약 10Mbps 이상)로 전송되어 온 MPEG-2 비트스트림을 저 전송 비트율(약 6Mbps 이하)의 MPEG-2 비트 스트림으로 변환하는데 있다.The present invention is to convert an MPEG-2 bitstream transmitted at a high transmission bit rate (about 10 Mbps or more) into an MPEG-2 bit stream at a low transmission bit rate (about 6 Mbps or less).

도 2는 이를 위한 본 발명에 따른 MPEG-2 변환 부호화 장치의 구성 블록도로서, 2개의 메모리(100,200)와 2개의 독립적인 메모리 인터페이스부(101,201)를 통해서 비디오 디코딩과 엔코딩을 동시에 수행할 수 있게 되어 있다. 또한, 두 개의 메모리(100,200) 사이의 데이터 전송을 위해서 상기 두 메모리 인터페이스부(101,201) 사이에는 DMA(Direct Memory Access)부가 배치되어 있으며, MPEG-2 TS(transport stream), 패킷화된 요소 스트림(PES), 요소 스트림(ES)를 받아들일 수 있다. 여기서, 상기 메모리(100,200)는 DRAM을 이용할 수도 있고, 동기식 DRAM(SDRAM)을 이용할 수도 있으며, 본 발명에서는 SDRAM을 이용하는 것을 실시예로 하고 있다.FIG. 2 is a block diagram illustrating an MPEG-2 transcoding apparatus according to the present invention, and video decoding and encoding may be simultaneously performed through two memories 100 and 200 and two independent memory interface units 101 and 201. It is. In addition, a direct memory access (DMA) unit is disposed between the two memory interface units 101 and 201 for data transfer between the two memories 100 and 200, and includes an MPEG-2 transport stream (TS) and a packetized element stream ( PES), element stream (ES) can be accepted. Here, the memories 100 and 200 may use DRAMs, synchronous DRAMs (SDRAMs), and the present invention uses SDRAMs.

또한, 전송되어온 MPEG-2 비디오와 오디오 비트 스트림은 다중화되어 있으므로, 트랜스포트 디코더(102)에서 MPEG-2 비디오 비트 스트림과 오디오 비트 스트림으로 분리된다. 그리고, 분리된 비디오 비트 스트림은 MPEG-2 비디오 디코더(103)에서 디코딩되고, 오디오 비트 스트림은 오디오 디코더(104)에서 디코딩된 후 화면이나 스피커로 출력된다. 이때, 비디오의 경우는 VDP(video display processor)(105)를 통해서 화면에 디스플레이된다.In addition, since the transmitted MPEG-2 video and audio bit streams are multiplexed, the transport decoder 102 separates the MPEG-2 video bit stream and the audio bit stream. The separated video bit stream is decoded by the MPEG-2 video decoder 103, and the audio bit stream is decoded by the audio decoder 104 and then output to a screen or a speaker. In this case, the video is displayed on the screen through a video display processor (VDP) 105.

또한, HD급이나 고 전송 비트율의 비디오 시퀀스에서 디코딩된 프레임은 비디오 전처리부(300)를 통해 일반 해상도 즉, SD급이나 NTSC급의 저 해상도로 줄인다. 이를 통해 약 1/4 정도의 메모리 크기를 줄일 수 있으며, 이로 인해 MPEG-2 비디오 엔코더에서 메모리 밴드폭(Band Width) 및 처리 시간을 많이 줄일 수 있다.In addition, the frame decoded in the video sequence of the HD or high bit rate is reduced to the normal resolution, that is, the low resolution of the SD or NTSC class through the video preprocessor 300. This can reduce the memory size by about a quarter, which can significantly reduce the memory bandwidth and processing time in MPEG-2 video encoders.

결국, 고 전송 비트율을 저 전송 비트율로 줄이므로서 비디오 레코더나 기타 저장 장치에 저장되는 용량을 높일 수 있다. 그리고, 이렇게 줄어든 해상도를 다시 MPEG-2 엔코더(202)를 통해서 저 전송 비트율에 맞도록 다시 부호화 파라미터들을 재조정한 후 화질을 유지하도록 한다. 이는 고 해상도의 전송 비트율에 맞는 부호화 파라미터들은 저 해상도에서 최적화된 파라미터들이 아니기 때문이다.As a result, it is possible to increase the capacity stored in a video recorder or other storage device by reducing the high transmission bit rate to a low transmission bit rate. Then, the reduced resolution is again adjusted through the MPEG-2 encoder 202 to match the low transmission bit rate so as to maintain image quality. This is because the encoding parameters for the high resolution transmission bit rate are not optimized at low resolution.

또한, 본 발명은 비디오 엔코딩을 위한 여러 파라미터들 중 현재 디코딩되어 온 파라미터를 상기 비디오 엔코더(202)에서 이용함으로써, 상기 비디오 엔코더(202)에서 다시 여러 파라미터들을 계산하기 위한 시간과 하드웨어 복잡도를 줄이도록 한다. 그리고, 상기 비디오 엔코더(202)에서 움직임 보상시 움직임 추정을 하지 않아도 되므로 그만큼 움직임 보상 시간이 빨라진다.In addition, the present invention uses the currently decoded parameter among the various parameters for video encoding in the video encoder 202 to reduce the time and hardware complexity for calculating the various parameters in the video encoder 202 again. do. Since the video encoder 202 does not have to perform motion estimation when compensating for motion, the motion compensation time is increased accordingly.

도 3은 도 2의 비디오 변환 부호화부의 상세 블록도로서, 비디오 디코더(103)와 비디오 엔코더(202)는 도 1과 동일한 구성을 갖는다.3 is a detailed block diagram of the video transform encoder of FIG. 2, wherein the video decoder 103 and the video encoder 202 have the same configuration as that of FIG. 1.

이때, 비디오 전처리부(300)는 비디오 디코더(103)에서 비디오 디코딩된 고 전송 비트율의 MPEG-2 비트 스트림을 입력받을 수도 있고, 외부로부터 SD급의 디지털 비디오 신호를 입력받을 수도 있다.In this case, the video preprocessor 300 may receive an MPEG-2 bit stream having a high transmission bit rate that is video decoded by the video decoder 103 or may receive an SD video signal from an external source.

또한, 도 3의 프레임 메모리(17)와 도 1의 프레임 메모리(400), 그리고, 도 3의 VLC부(202)와 도 1의 VLC부(24)는 동일 소자인데 도면 부호만 다르게 하였다. 또한, 도 3의 SDRAM(100)과 도 1의 외부 메모리(15), 그리고, 도 3의 SDRAM(200)과 도 1의 외부 메모리(28)도 동일 소자인데 도면 부호만 다르게 하였다.In addition, the frame memory 17 of FIG. 3 and the frame memory 400 of FIG. 1, and the VLC unit 202 of FIG. 3 and the VLC unit 24 of FIG. In addition, the SDRAM 100 of FIG. 3, the external memory 15 of FIG. 1, and the SDRAM 200 of FIG. 3 and the external memory 28 of FIG. 1 are the same elements, and only reference numerals are used.

도 3에서는 비디오 전처리부(300), 변환 부호화 파라미터 제어부(500)가 상기된 도 1에 더 구비된다.In FIG. 3, the video preprocessor 300 and the transform encoding parameter controller 500 are further provided in FIG. 1.

즉, VLD(11)를 통해 파싱된 비트 스트림은 IQ(12), IDCT(13) 및 움직임 보상 부(14,15,16)를 거쳐 외부 메모리(100)에 저장된다. 이때, 일반적인 MPEG-2 비디오 디코더(103)는 MPEG-2 비디오 신택스에 맞게 8*8 블록 단위로 IDCT를 수행하게 되며, I-픽쳐의 경우는 IQ/IDCT한 결과가 바로 메모리(100)에 저장되고, P-픽쳐나 B-픽쳐의 경우는 움직임 보상된 블록과 IDCT된 결과가 가산기(14)에서 합쳐져서 외부 메모리(15)에 저장된다.That is, the bit stream parsed through the VLD 11 is stored in the external memory 100 through the IQ 12, the IDCT 13, and the motion compensation units 14, 15, and 16. In this case, the general MPEG-2 video decoder 103 performs IDCT in units of 8 * 8 blocks according to the MPEG-2 video syntax. In the case of an I-picture, the result of IQ / IDCT is immediately stored in the memory 100. In the case of a P-picture or a B-picture, the motion-compensated block and the IDCT result are combined in the adder 14 and stored in the external memory 15.

그리고, 상기 외부 메모리(15)에 저장된 영상은 VDP(105)를 거쳐 화면에 보여지게 된다.The image stored in the external memory 15 is displayed on the screen via the VDP 105.

또한, 메모리 대역폭을 줄이기 위해 상기 비디오 디코더(103)에서 디코딩되어져 나오는 매크로 블록들은 비디오 전처리부(300)로 출력하여 해상도를 1/4로 줄인다.In addition, to reduce memory bandwidth, the macro blocks decoded by the video decoder 103 are output to the video preprocessor 300 to reduce the resolution to 1/4.

도 4는 메모리 감축용 다운 스케일링의 알고리즘을 갖는 비디오 전처리부(300)의 동작을 상세히 나타내고 있다.4 illustrates in detail the operation of the video preprocessor 300 having an algorithm for downscaling for memory reduction.

즉, 기존 MPEG-2 비디오 디코더에서는 프레임 픽쳐나 필드 픽쳐에 따라 메모리에서 프레임 단위나 필드 단위로 화소들을 읽어와서 움직임 보상을 하게 된다. 그러나, 75%의 감축을 위해 수직 방향으로 다운 샘플링시 프레임 픽쳐와 필드 픽쳐의 다운 샘플된 결과는 다르게 된다. 그러므로, 한 시퀀스 내에서 프레임과 필드 픽쳐가 같이 존재하는 경우에 균일한 다운 샘플링한 결과를 얻지 못한다.That is, in the conventional MPEG-2 video decoder, pixels are read out from the memory in frame units or field units in accordance with a frame picture or a field picture to compensate for motion. However, when downsampling in the vertical direction for 75% reduction, the downsampled result of the frame picture and the field picture is different. Therefore, when the frame and the field picture exist together in one sequence, a uniform down-sampled result is not obtained.

이를 개선하기 위해 본 발명에서는 비월 주사 시퀀스이고 프레임 픽쳐를 갖는 매크로 블록을 도 4의 상단에서 보듯이 필드 기반 처리를 통해 다운 샘플링된 결과가 톱/바텀 필드가 같이 존재할 수 있도록 해준다. 이에 반해 순차 주사 시퀀스나 필드 픽쳐 구조의 비월 주사 시퀀스는 한 매크로 블록에 같은 필드에 해당하는 정보만을 가지므로 도 4의 하단에서 보듯이 프레임 기반 처리를 하여준다.In order to improve this, in the present invention, as shown in the upper part of FIG. 4, a macroblock having an interlaced scanning sequence and a frame picture has a top / bottom field together with the down-sampled result. On the contrary, since the interlaced scanning sequence of the sequential scanning sequence or the field picture structure has only information corresponding to the same field in one macroblock, frame-based processing is performed as shown in the lower part of FIG.

이를 통해 프레임 픽쳐를 수직 방향으로 다운 샘플링을 하더라도 필드에 대한 정보를 잃지 않게 되므로 좋은 화질을 유지할 수 있게 된다. 그러면, 결국에 비월 주사 시퀀스의 경우는 필드 단위의 정보를 계속 유지할 수 있게 된다.In this way, even when down-sampling the frame picture in the vertical direction, information on the field is not lost, so that a good picture quality can be maintained. As a result, in the case of interlaced scanning sequences, it is possible to continue to hold information in units of fields.

상기 비디오 전처리부(300)의 다운 샘플링에 사용되는 관계식은 다음의 수학식 1과 같다.The relational expression used for the downsampling of the video preprocessor 300 is shown in Equation 1 below.

여기서 [X]는 8개의 프레임 계수들을 나타내고, [x]는 8개의 화소값을 나타낸다.Where [X] represents eight frame coefficients and [x] represents eight pixel values.

이때, 8x8 DCT 기저 매트릭스(matrix) [T8]는 다음의 수학식 2와 같이 표현된다.In this case, the 8x8 DCT base matrix [T8] is expressed by Equation 2 below.

여기서, [T8]은 8-point DCT 기저들로 이루어진 8x8 DCT 매트릭스를 나타낸다.Where [T8] represents an 8x8 DCT matrix of 8-point DCT basis.

그리고, 상기 수학식 2와 비슷하게 4 포인트 기저(basis)들로 만들어진 4*4 DCT 매트릭스를 [T4]라고 하자. 그러면, 수평 수직 방향으로 고주파수 성분을 제거한 후 IDCT하는 다운 샘플링 과정은 다음 수학식 3으로 표현된다.In addition, a 4 * 4 DCT matrix made of four point basis similar to Equation 2 is [T4]. Then, the downsampling process of removing the high frequency components in the horizontal and vertical directions and IDCT is represented by the following equation.

상기 [P4]는 하기의 수학식 4로 표현된다.[P4] is expressed by Equation 4 below.

결국, 1차원의 다운 샘플링 과정을 살펴보면, 상기된 수학식 2와 3을 이용하여 다음의 수학식 5와 같이 표현된다.As a result, looking at the one-dimensional down-sampling process, it is expressed by the following equation (5) using the above equation (2) and (3).

여기서, x는 8x1 화소들을 나타내고, y는 다운 샘플링된 4x1 화소들을 나타내고, X는 x에 대한 DCT한 계수 블록을 나타낸다. T8은 8x8 DCT 기저 매트릭스를 나타내고,이고, C4는 4x4 DCT 기저 매트릭스를 나타낸다.Here, x represents 8x1 pixels, y represents downsampled 4x1 pixels, and X represents a DCT coefficient block for x. T8 represents an 8x8 DCT base matrix, And C 4 represents a 4 × 4 DCT base matrix.

따라서, 상기 수학식 5를 이용한 화소에서 화소 단위로의 다운 샘플링 변환은 다음의 수학식 6으로 표현된다.Therefore, the down sampling conversion from pixel to pixel unit using Equation 5 is expressed by Equation 6 below.

여기서,는 4x8 차원의 다운 샘플링 매트릭스로 정의하고, 8개 화소를 4개 화소로 변환시켜 준다.here, Is defined as a 4x8 downsampling matrix and converts 8 pixels to 4 pixels.

이때, 컬러 신호의 경우는 상기된 수학식 6과 비슷하게 입력이 4개 화소이고, 출력이 2개 화소인 다운 샘플링 매트릭스를 구하면 다음의 수학식 7과 같다.In this case, in the case of a color signal, a down sampling matrix having an input of 4 pixels and an output of 2 pixels similarly to Equation 6 described above is obtained as shown in Equation 7 below.

여기서,를 나타내며, T2는 상기 수학식 2와 같은 2*2 DCT 기저 매트릭스이다.here, T2 is a 2 * 2 DCT basis matrix as shown in Equation 2 above.

또한, 75% 메모리 감축시 메모리 내 필드에 대한 정보를 유지하기 위해서 휘도 신호와 컬러 신호를 따로 분리해서 처리한다. 이때, 프레임 픽쳐인 경우 컬러 신호는 4*8 크기의 톱/바텀 필드로 나뉘어진다. 이와 달리 휘도 신호는 8*8 크기의 톱/바텀 필드로 나뉘어진다. 결국, 수직적인 필드의 라인수가 컬러 신호인 경우 휘도 신호의 1/2이 되므로 상기 수학식 7을 이용하여 다운 컨버젼을 하게 되고, 휘도 신호의 경우 상기 수학식 6을 이용하여 다운 컨버젼을 수행한다.In addition, the luminance signal and the color signal are separately processed to maintain information on the field in the memory when 75% of the memory is reduced. In this case, in the case of a frame picture, the color signal is divided into a top / bottom field having a size of 4 * 8. In contrast, the luminance signal is divided into 8 * 8 size top / bottom fields. As a result, when the number of lines in the vertical field is a color signal, the color signal is 1/2 of the luminance signal. Thus, down conversion is performed using Equation 7, and in the case of the luminance signal, down conversion is performed using Equation 6.

상기 비디오 전처리부(300)에서 상기된 과정으로 다운 샘플링을 수행함으로써, 해상도가 1/4로 감소되므로 자연적으로 원래 디코딩된 (16*16) 크기의 매크로 블록이 8*8 크기의 서브 블록으로 바뀌게 된다. 그러므로, 비디오 MPEG-2 엔코더(202)의 매크로 블록은 원래 디코딩된 4개의 매크로 블록이 합쳐져서 하나의 매크로 블록이 되는 것이다. 이때, 처리 시간이나 하드웨어 복잡도를 줄이기 위해서는 기존의 디코딩된 파라미터들을 이용하는 것이 매우 중요하다.By performing downsampling with the above-described process in the video preprocessor 300, the resolution is reduced to 1/4 so that the originally decoded (16 * 16) sized macroblock is replaced with an 8 * 8 sized subblock. do. Therefore, the macro block of the video MPEG-2 encoder 202 is four macro blocks originally decoded to be combined into one macro block. In this case, it is very important to use the existing decoded parameters in order to reduce processing time or hardware complexity.

이를 위해 본 발명은 다음과 같이 비디오 엔코더(202)의 비디오 엔코딩 기준을 정한다.To this end, the present invention determines the video encoding criteria of the video encoder 202 as follows.

1. 디코딩된 픽쳐 코딩 타입을 유지1. Maintain decoded picture coding type

2. 디코딩된 픽쳐 구조를 유지2. Maintain decoded picture structure

3. 디코딩된 GOP(Group Of Picture)를 유지3. Maintain decoded GOP (Group Of Picture)

4. 디코딩된 움직임 유형이나 매크로 블록 유형은 가변4. The decoded motion type or macroblock type is variable

5. 디코딩된 양자화 파라미터는 가변5. The decoded quantization parameter is variable

6. 디코딩된 움직임 벡터는 가변6. The decoded motion vector is variable

7. 디코딩된 VBV_delay, VBV_buffer_size는 가변7. Decoded VBV_delay and VBV_buffer_size are variable

위의 기준을 통해 기존의 파라미터들을 유지 및 재조정을 하므로서 좋은 성능의 비디오 변환기를 구현할 수 있다.Based on the above criteria, a good performance video converter can be achieved by maintaining and recalibrating the existing parameters.

즉, 도 3의 변환 부호화 파라미터 제어부(500)는 상기된 엔코딩 기준을 토대로 저 해상도 내의 영상에 대한 엔코딩 파라미터들을 정하게 된다.That is, the transform encoding parameter controller 500 of FIG. 3 determines encoding parameters for an image having a low resolution based on the encoding criteria.

이에 대한 동작 흐름도를 도 5에 도시하고 있다.The operation flowchart for this is shown in FIG.

즉, 도 5에서 보는 바와 같이 먼저, 상기 비디오 디코더(103)에서 출력되는 현재 디코딩된 픽쳐 코딩 타입이 I 픽쳐인지를 판별한다(단계 601). 상기 단계에서 현재 디코딩된 픽쳐 코딩 타입이 I 픽쳐라고 판별되면 매크로 블록들은 모두 인트라 코딩된다(단계 602).That is, as shown in FIG. 5, first, it is determined whether the current decoded picture coding type output from the video decoder 103 is an I picture (step 601). If it is determined in this step that the currently decoded picture coding type is an I picture, then the macroblocks are all intra coded (step 602).

한편, 상기 단계 601에서 인트라(I) 픽쳐가 아니라고 판별되면 즉, P 픽쳐나B 픽쳐라고 판별되면 전술된 바와 같이 현재 엔코딩하려는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록의 유형을 통해 움직임 보상을 할지 안 할지를 결정한다.On the other hand, if it is determined in step 601 that it is not an intra (I) picture, that is, if it is determined as a P picture or a B picture, motion compensation is performed through the type of a previously decoded macro block corresponding to the macro block to be encoded as described above. Decide whether or not to do so.

즉, 도 6b에 도시된 표에 따라 변환 부호화 파라미터 제어부(500)에서는 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록의 유형으로부터 인트라 코딩인지 움직임 보상인지를 정하게 된다.That is, according to the table shown in FIG. 6B, the transform encoding parameter controller 500 determines whether it is intra coding or motion compensation from the type of a previously decoded macro block corresponding to the macro block to be currently encoded.

상기 도 6b에서 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 4개의 매크로 블록들 중 어느 하나의 매크로 블록이라도 인트라 매크로 블록이 있으면 인트라 코딩한다(단계 602). 반면, 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 4개의 매크로 블록들 중 어느 하나의 매크로 블록에도 인트라 매크로 블록이 없다면 픽쳐 코딩 타입을 확인하여 P 픽쳐인지 B 픽쳐인지를 판단한다(단계 604).If any one of the previously decoded four macroblocks corresponding to the current macroblock to be encoded in FIG. 6B has an intra macroblock, intra coding is performed (step 602). On the other hand, if any one of the four previously decoded macroblocks corresponding to the current macroblock to be encoded does not have an intra macroblock, the picture coding type is checked to determine whether the picture is a P picture or a B picture (step 604). ).

또한, 상기 도 6a에서 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 4개의 매크로 블록들(MB1∼MB4) 중 인트라 매크로 블록의 수가 3개 이상인 경우는 현재 디코딩할 매크로 블록을 인트라 블록으로 결정한다. 이는 화면간 움직임이 많거나 화면 전환된 부분을 나타낼 확률이 높기 때문이다.In addition, when the number of intra macroblocks among the previously decoded four macroblocks MB1 to MB4 corresponding to the macroblock to be encoded currently in FIG. 6A is three or more, the macroblock to be currently decoded is determined as an intrablock. do. This is because there is a high probability that there is a lot of movement between screens or a screen transition part.

한편, 상기 도 6a에서 MB1과 MB4가 인트라 모드이거나, MB2와 MB3이 인트라 모드인 경우는 최종 결과를 인트라 모드로 처리한다. 이 경우는 주로 화면내 움직임이 불규칙적이거나 서로 다른 움직임을 가질 확률이 높으므로 움직임 보상이 어려운 경우이다. 그 밖의 경우는 모두 움직임이 있는 매크로 블록으로 결정하여 움직임 보상을 수행하게 된다.Meanwhile, in FIG. 6A, when MB1 and MB4 are intra modes or MB2 and MB3 are intra modes, the final result is processed as an intra mode. In this case, the motion compensation is difficult because the intra-screen motion is likely to have irregular or different motions. In all other cases, the motion compensation is performed by determining that the macroblock has motion.

따라서, 상기 단계 603에서 움직임 보상이 필요하다고 판별되면 단계 604에서 픽쳐 코딩 타입으로부터 P 픽쳐와 B 픽쳐를 구분한 후 P 픽쳐와 B 픽쳐에 대해 움직임 보상을 따로 한다. 즉, P 픽쳐의 경우는 순방향 움직임 벡터만이 존재하므로 도 7에서 보는 바와 같이 4개의 매크로 블록의 움직임 벡터들의 평균값과 중간값을 구한다(단계 605). 상기 평균값()과 중간값(Med(MV))을 구하는 방법을 하기의 수학식 8, 9과 같이 표현할 수 있다.Therefore, if it is determined in step 603 that motion compensation is necessary, in step 604, the P picture and the B picture are distinguished from the picture coding type, and motion compensation is separately performed for the P picture and the B picture. That is, since only a forward motion vector exists in the case of a P picture, as shown in FIG. The average value ( ) And the median value Med (MV) can be expressed as Equations 8 and 9 below.

여기서, here,

Med(MV) = median(MVi, I=1,...,4)Med (MV) = median (MV i , I = 1, ..., 4)

그리고, 상기 수학식 8, 9의 두 벡터들로부터 구한 평균 절대 오차(MAE)를 비교해서 적은 쪽을 MAE를 갖는 움직임 벡터를 움직임 보상용 벡터(MVs)로 선택한다(단계 606). 이때, 상기 단계 606에서 선택된 MAE가 일정치(Th1) 이상인지를 판별하여 일정치(Th1) 이상인 경우는 인트라 모드로 결정한다(단계 607).Then, by comparing the average absolute error (MAE) obtained from the two vectors of Equations 8 and 9, the smaller one is selected as the motion compensation vector (MVs) having the MAE (step 606). In this case, it is determined whether the MAE selected in step 606 is greater than or equal to a predetermined value Th1, and if it is greater than or equal to a predetermined value Th1, it is determined as an intra mode (step 607).

한편, 상기 단계 606에서 선택된 MAE가 일정치(Th1) 미만이라고 판별되면,매크로 블록 유형(MB_TYPE), 움직임 유형(MC_TYPE)등을 선택한다(단계 608).On the other hand, if it is determined in step 606 that the selected MAE is less than a predetermined value Th1, a macro block type MB_TYPE, a motion type MC_TYPE, or the like is selected (step 608).

이때, 프레임 픽쳐에서 움직임 유형(MC_TYPE)은 프레임 단위의 움직임 보상(MC_FRAME)과 필드 단위의 움직임 보상(MC_FIELD, MC_DMV)으로 나뉘어진다. 여기서 MC_FRAME의 경우는 톱 필드와 바텀 필드를 같은 움직임 벡터로 여길 수 있으므로 상기 수학식 8과 9는 필드에 대한 움직임 벡터들로 따로 처리한다. 물론 움직임 유형(MC_TYPE)이 모두 MC_FRAME인 경우는 현재 엔코딩하고자 하는 매크로블록의 움직임 유형을 MC_FRAME으로 정한다. 그러나 하나라도 움직임 유형(MC_TYPE)이 MC_FIELD가 있으면 MC_FIELD로 처리하게 된다.In this case, the motion type MC_TYPE in the frame picture is divided into a motion compensation MC_FRAME on a frame basis and a motion compensation MC_FIELD, MC_DMV on a field basis. In the case of MC_FRAME, since the top field and the bottom field can be regarded as the same motion vector, Equations 8 and 9 are separately processed as motion vectors for the field. Of course, when the motion type MC_TYPE is all MC_FRAME, the motion type of the current macroblock to be encoded is determined as MC_FRAME. However, if any movement type (MC_TYPE) is MC_FIELD, it is treated as MC_FIELD.

이를 정리하면 하기의 표 1과 같다.This is summarized in Table 1 below.

MB1MB1 MB2MB2 MB3MB3 MB4MB4 ResultResult MC_FRAMEMC_FRAME MC_FRAMEMC_FRAME MC_FRAMEMC_FRAME MC_FRAMEMC_FRAME MC_FRAMEMC_FRAME MC_FIELDMC_FIELD MC_FIELDMC_FIELD MC_FIELDMC_FIELD MC_FIELDMC_FIELD MC_FIELDMC_FIELD MB1 ∼ MB4 블록 중 어느 하나의 매크로 블록에라도 MC_FIELD가 있으면 MC_FIELD로 설정.If MC_FIELD is present in any macro block among MB1 and MB4 blocks, set to MC_FIELD.

이때, MC_FIELD는 톱 블록 움직임 벡터와 바텀 블록 움직임 벡터의 움직임이 있다. 따라서, 상기 MB1 ∼ MB4 블록 중 어느 하나의 매크로 블록에라도 MC_FIELD가 있을 때 MC_FRAME의 한 MV를 톱 블록과 바텀 블록에 똑같이 할당한다.At this time, MC_FIELD has a motion of a top block motion vector and a bottom block motion vector. Therefore, when there is MC_FIELD in any one of the MB1 to MB4 blocks, one MV of MC_FRAME is allocated to the top block and the bottom block in the same manner.

상기와 마찬가지로 필드 픽쳐의 움직임 유형(MC_TYPE)도 MC_FIELD, MC_16*8, MC_DMV로 나누어지며, MC_16*8이 하나라도 존재하는 경우는 MC_16*8로 움직임 유형을 정하게 된다.As described above, the motion type MC_TYPE of the field picture is also divided into MC_FIELD, MC_16 * 8, and MC_DMV. If any MC_16 * 8 exists, the motion type is determined by MC_16 * 8.

그리고 나서, 상기된 파라미터들을 이용하여 P 픽쳐에 대한 움직임 보상을 수행한다(단계 609)Then, motion compensation is performed on the P picture using the above-described parameters (step 609).

한편, 상기 단계 604에서 B 픽쳐로 판별되면, B 픽쳐의 경우 순방향 움직임 벡터와 역방향 움직임 벡터가 같이 존재하므로 도 5에서 보는 바와 같이 두가지 경우에 대한 움직임 벡터의 평균값과 중간(median)값을 수학식 10 내지 14를 통해 구한다(단계 610).On the other hand, if it is determined as the B picture in step 604, since the forward motion vector and the backward motion vector in the case of the B picture, as shown in Figure 5, the average value and the median value of the motion vectors for the two cases as shown in Figure 5 Obtained via 10 to 14 (step 610).

여기서, here,

여기서, here,

Med(MVF) = median(MVFi, I=1,...,4)Med (MVF) = median (MVF i , I = 1, ..., 4)

Med(MVB) = median(MVBi, I=1,...,4)Med (MVB) = median (MVB i , I = 1, ..., 4)

그리고, 상기 수학식 10 내지 14의 각각의 움직임 벡터들로부터 MAE를 구한 후 구한 MAR가 가장 적은 움직임 벡터를 움직임 보상용 벡터(MVs)로 선택한다(단계610). 또한, 이에 맞는 매크로 블록 유형(MB_TYPE)과 움직임 유형(MC_TYPE)을 정한 후(단계 613), 상기 정해진 파라미터들을 이용하여 B 픽쳐에 대한 움직임 보상을 수행한다(단계 609). 이때, 상기 단계 612에서도 선택된 MAE가 일정치(Th2) 이상인지를 판별하여 일정치(Th2) 이상인 경우는 인트라 모드로 결정하고, 일정치(Th2) 미만이라고 판별되면, 상기 단계 613로 진행하여 매크로 블록 유형(MB_TYPE), 움직임 유형(MC_TYPE)등을 정한다.Then, after obtaining the MAE from each of the motion vectors of Equations 10 to 14, a motion vector having the smallest MAR is selected as the motion compensation vector (MVs) (step 610). In addition, after determining the macro block type MB_TYPE and the motion type MC_TYPE corresponding thereto (step 613), motion compensation for the B picture is performed using the determined parameters (step 609). In this case, in step 612, it is determined whether the selected MAE is equal to or greater than the predetermined value Th2. If the determined MAE is equal to or greater than the predetermined value Th2, the intra mode is determined. Set the block type (MB_TYPE), motion type (MC_TYPE), etc.

한편, 도 3에서의 비디오 엔코더(202)의 동작을 살펴보면 다음과 같다. 우선 인트라 픽쳐의 경우 IDCT(13)를 거친 결과가 곧바로 비디오 전처리부(300)에서 다운 샘플링된 후 다시 비디오 엔코더(202)의 DCT부(22)와 양자화부(23)를 거쳐서 VLC부(203)로 전송된다. 이때, 매 매크로블록은 인트라 코딩되며 양자화 파라미터는 새로이 정해진 비트율에 맞추어져서 엔코딩된다. 그리고, 호스트 인터페이스(800)를 통해 엔코딩하고자 하는 비트율을 정한다.Meanwhile, the operation of the video encoder 202 in FIG. 3 will be described below. In the case of the intra picture, the result of having passed through the IDCT 13 is immediately downsampled by the video preprocessor 300, and then the VLC unit 203 passes through the DCT unit 22 and the quantization unit 23 of the video encoder 202. Is sent to. At this time, every macroblock is intra coded and the quantization parameter is encoded according to a newly determined bit rate. The bit rate to be encoded is determined through the host interface 800.

한편, P나 B 픽쳐의 경우는 새로이 양자화된 저 해상도의 영상을 움직임 예측 보상한다. 즉, 앞서 설명한 바와 같이 움직임 유형(MC_TYPE)에 따라 프레임 예측(frame prediction)과 필드 예측(field prediction)으로 수행된다.Meanwhile, in the case of a P or B picture, motion prediction compensation is performed on a newly quantized low resolution image. That is, as described above, the frame prediction and the field prediction are performed according to the motion type MC_TYPE.

따라서, 본 발명은 디지털 VCR이나 DTV 셋톱 박스로 전송되어온 MPEG-2 비트 스트림을 장시간 저장할 수 있으며, 고 비트율의 HD급이나 SD급의 비디오 신호를 저 비트율의 비트 스트림으로 변환할 수 있다.Therefore, the present invention can store the MPEG-2 bit stream transmitted to a digital VCR or DTV set-top box for a long time, and can convert a high bit rate HD or SD video signal into a low bit rate bit stream.

그리고, 본 발명은 TV 내에 내장된 형태 및 STB(셋톱박스) 형태의 기기에 설치 가능하다.In addition, the present invention can be installed in a device embedded in the TV and STB (set top box) form.

또한, 본 발명의 경우 내장용 저장 장치를 가지는 디지털 TV나 디지털 VCR 등의 응용 분야에 필수적인 기술로서 고성능 비디오 레코더 및 타 회사의 디지털 TV와의 기술 경쟁력 강화 등의 큰 효과를 얻을 수 있다. 그리고, 본 발명을 통해 각종 비디오 서버나 개인용 비디오 레코더 등의 기기 구현에 적용 가능하다.In addition, in the case of the present invention, as an essential technology for application fields such as a digital TV having a built-in storage device or a digital VCR, it is possible to obtain a great effect such as enhancing the technological competitiveness of a high-performance video recorder and a digital TV of another company. In addition, the present invention can be applied to the implementation of devices such as various video servers and personal video recorders.

이상에서와 같이 본 발명에 따른 영상 변환 부호화 장치에 의하면, 10Mbps 이상의 HD급 MPEG 시퀀스를 6Mbps급 이하의 NTSC급 MPEG 시퀀스로 변환할 때, 비디오 디코딩된 MPEG-2 파라미터들을 이용함으로써, 엔코더에서의 움직임 보상시 움직임 추측 과정을 없앨 수 있으므로 움직임 보상 및 계산 시간 감축과 하드웨어의 복잡도를 줄일 수 있다. 또한 좋은 화질을 유지하면서 효율적으로 저장 용량의 감축을 얻을 수 있다.As described above, according to the image transcoding apparatus according to the present invention, when converting an HD MPEG sequence of 10 Mbps or more into an NTSC MPEG sequence of 6 Mbps or less, by using video decoded MPEG-2 parameters, a motion in an encoder is used. The motion estimation process can be eliminated when compensating, which reduces motion compensation and computation time and reduces hardware complexity. In addition, it is possible to efficiently reduce storage capacity while maintaining good image quality.

이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the spirit of the present invention.

따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다.Therefore, the technical scope of the present invention should not be limited to the contents described in the embodiments, but should be defined by the claims.

Claims (18)

수신되는 비디오 비트스트림을 디코딩하여 원래 화면의 픽셀 값으로 복원하는 디코딩부에서 출력되는 비디오 비트스트림을 재부호화하는 영상 변환 부호화 장치에 있어서,A video transcoding apparatus for recoding a video bitstream output from a decoding unit which decodes a received video bitstream and reconstructs a pixel value of an original screen. 상기 디코딩부에서 디코딩된 매크로 블록을 다운 샘플링하는 비디오 전처리부;A video preprocessor which downsamples the macroblock decoded by the decoder; 상기 디코딩부에서 가변 길이 디코딩된 이전 비트 스트림으로부터 픽쳐에 대한 정보를 검출하고, 변환 부호화를 위한 엔코딩 모드를 설정하는 변환 부호화 파라미터 제어부; 그리고A transform encoding parameter control unit for detecting information about a picture from a previous bit stream variable-length decoded by the decoding unit and setting an encoding mode for transform encoding; And 상기 변환 부호화 파라미터 제어부에서 출력되는 엔코딩 모드에 따라 상기 비디오 전처리부에서 다운 샘플링된 데이터와 움직임 보상된 데이터와의 차분 데이터를 이산 코사인 변환(DCT) 과정, 양자화 과정, 및 가변 길이 코딩(VLC) 과정을 거쳐 부호화하며, 상기 양자화된 데이터를 다시 역양자화(IQ) 과정 및 역 이산여현 변환(IDCT) 과정을 거친 후 움직임 보상된 데이터와 더하여 메모리에 저장하는 재부호화부를 포함하여 구성되는 것을 특징으로 하는 영상 변환 부호화 장치.A discrete cosine transform (DCT) process, a quantization process, and a variable length coding process (VLC) are performed on the difference data between the down-sampled data and the motion compensated data in the video preprocessor according to an encoding mode output from the transform encoding parameter controller. And a re-encoding unit storing the quantized data in memory after adding the motion-compensated data after the inverse quantization (IQ) process and the inverse discrete cosine transform (IDCT) process. Image transform encoding apparatus. 제 1 항에 있어서, 상기 비디오 전처리부는The method of claim 1, wherein the video preprocessor 상기 디코딩부에서 디코딩된 데이터가 비월 주사 시퀀스이고 프레임 픽쳐를 갖는 매크로 블록이라면 필드 기반 처리를 통해 다운 샘플링을 수행하고, 순차 주사 시퀀스나 필드 픽쳐 구조의 비월 주사 시퀀스라면 프레임 기반 처리를 통해 다운 샘플링을 수행하여 필드 단위의 정보를 유지하는 것을 특징으로 하는 영상 변환 부호화 장치.If the data decoded by the decoding unit is an interlaced scanning sequence and a macroblock having a frame picture, downsampling is performed through field-based processing. If the data decoded by the decoding unit is down-sampling through a frame-based processing, And convert the information in field units to maintain the information. 제 2 항에 있어서, 상기 비디오 전처리부는The method of claim 2, wherein the video preprocessor 다음의 매트릭스를 적용하여 상기 디코딩부에서 출력되는 8x8 블록을 4x4 블록으로 변환하는 것을 특징으로 하는 영상 변환 부호화 장치.And an 8x8 block output from the decoding unit to a 4x4 block by applying the following matrix. 여기서,이고, [T4]는 4 포인트 DCT 기반으로 만들어진 4*4 DCT 매트릭스이며, y는 다운 샘플링된 4x1 화소들을 나타내고, X는 8개의 DCT 계수 블록임.here, Where [T4] is a 4 * 4 DCT matrix built on a 4 point DCT basis, y represents downsampled 4x1 pixels, and X is an eight DCT coefficient block. 제 3 항에 있어서, 상기 비디오 전처리부는The method of claim 3, wherein the video preprocessor 하기의 매트릭스를 적용하여 1차원 다운 샘플링을 수행하는 것을 특징으로 하는 영상 변환 부호화 장치.And a 1D downsampling by applying the following matrix. 여기서, x는 8x1 화소들, y는 다운 샘플링된 4x1 화소들, X는 x에 대한 DCT계수 블록, T8은 8x8 DCT 기저 매트릭스,, C4는 4x4 DCT 기저 매트릭스를 나타냄.Where x is 8x1 pixels, y is 4x1 pixels downsampled, X is a DCT coefficient block for x, T8 is an 8x8 DCT basis matrix, , C 4 represents the 4x4 DCT base matrix. 제 3 항에 있어서, 상기 비디오 전처리부는The method of claim 3, wherein the video preprocessor 하기의 매트릭스를 적용하여 휘도 신호의 다운 샘플링을 수행하는 것을 특징으로 하는 영상 변환 부호화 장치.The downconversion of the luminance signal is performed by applying the following matrix. 여기서,는 4x8 차원의 다운 샘플링 매트릭스로서, 8개 화소를 4개 화소로 변환시켜줌.here, Is a 4x8 down-sampling matrix that converts eight pixels to four pixels. 제 3 항에 있어서, 상기 비디오 전처리부는The method of claim 3, wherein the video preprocessor 하기의 매트릭스를 적용하여 컬러 신호의 다운 샘플링을 수행하는 것을 특징으로 하는 영상 변환 부호화 장치.The down-conversion of the color signal is performed by applying the following matrix. 여기서,를 나타내며, T2는 2*2 DCT 기저 매트릭스임.here, T2 is the 2 * 2 DCT base matrix. 제 1 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 1, wherein the transform coding parameter control unit 상기 디코딩부에서 가변 길이 디코딩된 이전 비트 스트림의 움직임 정보를 이용하여 상기 비디오 전처리부에서 다운 샘플링된 매크로 블록의 움직임 벡터와움직임 모드를 설정하는 것을 특징으로 하는 영상 변환 부호화 장치.And a motion vector and a motion mode of the down-sampled macroblock in the video preprocessor using the motion information of the previous bit stream variable-length decoded in the decoder. 제 1 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 1, wherein the transform coding parameter control unit 하기와 같은 비디오 엔코딩 기준을 정한 후 상기 엔코딩 기준을 토대로 재부호화부의 저 해상도 영상에 대한 엔코딩 파라미터들을 설정하는 것을 특징으로 하는 영상 변환 부호화 장치.And determining encoding parameters for the low resolution image of the re-encoding unit based on the encoding criteria after determining the following video encoding criteria. I. 디코딩된 픽쳐 코딩 타입을 유지I. Maintain decoded picture coding type I. 디코딩된 픽쳐 구조를 유지I. Maintain decoded picture structure I. 디코딩된 GOP(Group Of Picture)를 유지I. Maintain decoded group of pictures I. 디코딩된 움직임 유형이나 매크로 블록 유형은 가변I. The decoded motion type or macroblock type is variable I. 디코딩된 양자화 파라미터는 가변I. Decoded Quantization Parameters Are Variable I. 디코딩된 움직임 벡터는 가변I. The decoded motion vector is variable I. 디코딩된 VBV_delay, VBV_buffer_size는 가변I. Decoded VBV_delay and VBV_buffer_size are variable 제 8 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 8, wherein the transform coding parameter control unit 상기 디코딩부에서 출력되는 현재 디코딩된 픽쳐 코딩 타입이 I 픽쳐이면 상기 비디오 전처리부에서 출력되는 매크로 블록들을 모두 인트라 코딩하도록 상기 재부호화부를 제어하는 것을 특징으로 하는 영상 변환 부호화 장치.And if the current decoded picture coding type output from the decoding unit is an I picture, controlling the re-encoding unit to intra code all macro blocks output from the video preprocessor. 제 8 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 8, wherein the transform coding parameter control unit 상기 비디오 디코더에서 출력되는 현재 디코딩된 픽쳐 코딩 타입이 P 픽쳐나 B 픽쳐라면 현재 엔코딩하려는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들의 유형을 통해 움직임 보상을 할지 안 할지를 결정하는 것을 특징으로 하는 영상 변환 부호화 장치.If the current decoded picture coding type output from the video decoder is a P picture or a B picture, it is determined whether motion compensation is to be performed or not through the type of previously decoded macro blocks corresponding to the macro block to be currently encoded. Transform encoding device. 제 8 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 8, wherein the transform coding parameter control unit 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들 중 어느 하나의 매크로 블록이라도 인트라 매크로 블록이라면 인트라 코딩하도록 상기 재부호화부를 제어하는 것을 특징으로 하는 영상 변환 부호화 장치.And the re-encoding unit controls the re-encoding unit to intra-code any one of the previously decoded macro blocks corresponding to the current macro block to be encoded if it is an intra macro block. 제 11 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 11, wherein the transform coding parameter control unit 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 4개의 매크로 블록들 중 인트라 매크로 블록의 수가 3개 이상인 경우는 현재 디코딩할 매크로 블록을 인트라 블록으로 결정하는 것을 특징으로 하는 영상 변환 부호화 장치.If the number of intra macroblocks among the four previously decoded macroblocks corresponding to the macroblock to be encoded currently is three or more, the video transcoding device is determined as the intrablock. 제 11 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 11, wherein the transform coding parameter control unit 대각선 방향에 있는 두 매크로 블록이 인트라 모드인 경우 최종 결과를 인트라 모드로 처리하도록 상기 재부호화부를 제어하는 것을 특징으로 하는 영상 변환 부호화 장치.And the re-encoding unit is configured to process a final result in an intra mode when two macro blocks in a diagonal direction are an intra mode. 제 8 항에 있어서, 상기 변환 부호화 파라미터 제어부는The method of claim 8, wherein the transform coding parameter control unit 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들 중 어느 하나의 매크로 블록도 인트라 매크로 블록이 아니라면 움직임 보상이 필요하다고 판단한 후, 픽쳐 코딩 타입으로 P 픽쳐와 B 픽쳐를 구분하는 것을 특징으로 하는 영상 변환 부호화 장치.If any one of the previously decoded macroblocks corresponding to the current macroblock to be encoded is not an intra macroblock, it is determined that motion compensation is required, and then the P picture and the B picture are distinguished by the picture coding type. A video transform encoding apparatus. 제 14 항에 있어서, 상기 P 픽쳐의 경우15. The method of claim 14, wherein the P picture 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들의 움직임 벡터들의 평균값과 중간값을 구한 후 상기 평균값과 중간값으로 정의된 두 벡터들로부터 구한 평균 절대 오차(MAE)가 적은 쪽의 움직임 벡터를 움직임 보상용 벡터로 선택하는 것을 특징으로 하는 영상 변환 부호화 장치.The mean and error of the motion vectors of the previously decoded macroblocks corresponding to the current macroblock to be encoded are calculated, and then the motion of the lesser mean absolute error (MAE) obtained from the two vectors defined as the mean and the median And a vector is selected as a motion compensation vector. 제 15 항에 있어서, 상기 재부호화부는The method of claim 15, wherein the re-encoding unit 상기 선택된 MAE가 일정치 이상이면 인트라 모드로 코딩하고, 일정치 미만이면 상기 P 픽쳐에 맞는 매크로 블록 유형, 움직임 유형을 설정한 후 움직임 보상을 수행하는 것을 특징으로 하는 영상 변환 부호화 장치.And if the selected MAE is greater than or equal to a predetermined value, coding in intra mode, and if less than the predetermined value, performing motion compensation after setting a macroblock type and a motion type suitable for the P picture. 제 14 항에 있어서, B 픽쳐인 경우15. The method of claim 14, wherein the picture is a B picture. 현재 엔코딩하고자 하는 매크로 블록에 해당하는 이전에 디코딩된 매크로 블록들의 순방향과 역방향 움직임 벡터들의 평균값과 중간값을 구한 후 상기 평균값과 중간값으로 정의된 네 벡터들로부터 구한 평균 절대 오차(MAE)가 적은 쪽의 움직임 벡터를 움직임 보상용 벡터로 선택하는 것을 특징으로 하는 영상 변환 부호화 장치.After obtaining the mean and the median of the forward and reverse motion vectors of the previously decoded macroblocks corresponding to the current macroblock to be encoded, the average absolute error (MAE) obtained from the four vectors defined as the mean and the median is small. And a motion vector of the side is selected as a motion compensation vector. 제 17 항에 있어서, 상기 재부호화부는The method of claim 17, wherein the re-encoding unit 상기 선택된 MAE가 일정치 이상이면 인트라 모드로 코딩하고, 일정치 미만이면 상기 B 픽쳐에 맞는 매크로 블록 유형, 움직임 유형을 설정한 후 움직임 보상을 수행하는 것을 특징으로 하는 영상 변환 부호화 장치.And if the selected MAE is greater than or equal to a predetermined value, coding in intra mode, and if less than the predetermined value, motion compensation is performed after setting a macroblock type and a motion type suitable for the B picture.
KR1020010000605A 2001-01-05 2001-01-05 Apparatus for transcoding video KR100364748B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020010000605A KR100364748B1 (en) 2001-01-05 2001-01-05 Apparatus for transcoding video
US10/034,380 US7266148B2 (en) 2001-01-05 2002-01-03 Video transcoding apparatus
US11/892,893 US20070297507A1 (en) 2001-01-05 2007-08-28 Video transcoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010000605A KR100364748B1 (en) 2001-01-05 2001-01-05 Apparatus for transcoding video

Publications (2)

Publication Number Publication Date
KR20020057525A KR20020057525A (en) 2002-07-11
KR100364748B1 true KR100364748B1 (en) 2002-12-16

Family

ID=27690879

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010000605A KR100364748B1 (en) 2001-01-05 2001-01-05 Apparatus for transcoding video

Country Status (1)

Country Link
KR (1) KR100364748B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100446083B1 (en) * 2002-01-02 2004-08-30 삼성전자주식회사 Apparatus for motion estimation and mode decision and method thereof
KR100952309B1 (en) 2008-12-30 2010-04-13 주식회사 바이콤 High definition image broadcasting method and system of the same

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100460950B1 (en) * 2001-12-18 2004-12-09 삼성전자주식회사 Transcoder and transcoding method
KR100474916B1 (en) * 2002-08-24 2005-03-10 엘지전자 주식회사 Apparatus and method for generating thumbnail image
US20040252761A1 (en) * 2003-06-16 2004-12-16 Dilithium Networks Pty Limited (An Australian Corporation) Method and apparatus for handling video communication errors
KR100681252B1 (en) 2004-10-02 2007-02-09 삼성전자주식회사 Method for selecting output macroblock mode and output motion vector, and transcoder using the same
KR100718468B1 (en) * 2004-11-30 2007-05-16 주식회사 휴맥스 Method and device for video down-sampling transcoding
KR100718467B1 (en) * 2004-11-30 2007-05-16 주식회사 휴맥스 Method and device for video down-sampling transcoding
CN106067973B (en) * 2010-05-19 2019-06-18 Sk电信有限公司 Video decoding apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100446083B1 (en) * 2002-01-02 2004-08-30 삼성전자주식회사 Apparatus for motion estimation and mode decision and method thereof
KR100952309B1 (en) 2008-12-30 2010-04-13 주식회사 바이콤 High definition image broadcasting method and system of the same

Also Published As

Publication number Publication date
KR20020057525A (en) 2002-07-11

Similar Documents

Publication Publication Date Title
US7266148B2 (en) Video transcoding apparatus
US6993078B2 (en) Macroblock coding technique with biasing towards skip macroblock coding
KR100252108B1 (en) Apparatus and method for digital recording and reproducing using mpeg compression codec
KR100850705B1 (en) Method for adaptive encoding motion image based on the temperal and spatial complexity and apparatus thereof
US8170097B2 (en) Extension to the AVC standard to support the encoding and storage of high resolution digital still pictures in series with video
US9055301B2 (en) Changing motion estimation precision to maintain encoding within desired time
US7787541B2 (en) Dynamic pre-filter control with subjective noise detector for video compression
JP3861698B2 (en) Image information encoding apparatus and method, image information decoding apparatus and method, and program
US9071844B2 (en) Motion estimation with motion vector penalty
US20030095603A1 (en) Reduced-complexity video decoding using larger pixel-grid motion compensation
US6961377B2 (en) Transcoder system for compressed digital video bitstreams
KR101147744B1 (en) Method and Apparatus of video transcoding and PVR of using the same
KR100386583B1 (en) Apparatus and method for transcoding video
US6148032A (en) Methods and apparatus for reducing the cost of video decoders
US20080123748A1 (en) Compression circuitry for generating an encoded bitstream from a plurality of video frames
EP1838108A1 (en) Processing video data at a target rate
US7079578B2 (en) Partial bitstream transcoder system for compressed digital video bitstreams
US6160847A (en) Detection mechanism for video channel underflow in MPEG-2 video decoding
JPH0818979A (en) Image processor
KR100364748B1 (en) Apparatus for transcoding video
US20030156642A1 (en) Video coding method and corresponding encoding device
JP2898413B2 (en) Method for decoding and encoding compressed video data streams with reduced memory requirements
JP3599942B2 (en) Moving picture coding method and moving picture coding apparatus
KR100394014B1 (en) Apparatus for transcoding video
JP2002218470A (en) Method for converting image encoded data rate and device for converting image encoding rate

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121128

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20131122

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20141124

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20151124

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20161114

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20171114

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20181114

Year of fee payment: 17