KR100251544B1 - Apparatus and method of adaptive quantization in consideration of image complexity - Google Patents
Apparatus and method of adaptive quantization in consideration of image complexity Download PDFInfo
- Publication number
- KR100251544B1 KR100251544B1 KR1019970037267A KR19970037267A KR100251544B1 KR 100251544 B1 KR100251544 B1 KR 100251544B1 KR 1019970037267 A KR1019970037267 A KR 1019970037267A KR 19970037267 A KR19970037267 A KR 19970037267A KR 100251544 B1 KR100251544 B1 KR 100251544B1
- Authority
- KR
- South Korea
- Prior art keywords
- quantization
- macroblock
- reference value
- data amount
- determining
- Prior art date
Links
Images
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/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/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 영상 데이터의 압축 방법에 관한 것으로, 특히 매크로블록의 간의 영상복잡도(Activity) 레벨에 따라 양자화수(Quantization Number; 양자화수)를 결정하여 양자화 왜곡을 감소시킬 수 있는 영상복잡도를 고려한 적응 양자화 장치 및 방법에 관한 것이다.The present invention relates to a method of compressing image data, and more particularly, to adaptive quantization considering image complexity that can reduce quantization distortion by determining a quantization number according to an activity level of macroblocks between macroblocks. An apparatus and method are provided.
통상, 영상 데이터의 압축 방밥에 있어서 양자화 과정은 필수적이다. 종래의 양자화 방법은 세그먼트 혹은 매크로 블록별로 양자화 버퍼 컨트롤을 실행하므로, 세그먼트내의 매크로 블록 사이의 복잡도는 전혀 고려하지 않았다.In general, a quantization process is essential in compressing and compressing image data. Since the conventional quantization method executes quantization buffer control for each segment or macroblock, the complexity between the macroblocks in the segment is not considered at all.
이하, 종래의 영상신호 양자화 과정을 일본 특개평 6-78286에 개시된 영상신호의 양자화 장치를 참조하여 살펴보기로 한다.Hereinafter, a conventional video signal quantization process will be described with reference to a video signal quantization apparatus disclosed in Japanese Patent Laid-Open No. 6-78286.
제1도는 디지탈 영상 신호를 압축 부호화하는 장치를 도시한 것으로서, 영상부호화 장지는 입력영상을 메크로 블록으로 분할하는 블록화부(2), 매크로 블록을 묶어서 세크먼트를 구성하는 셔플링(Shuffling)부(4), 매크로 블록내의 각 필드(Field) 간의 움직임을 검출하여 이산코사인변환(Discrete Cosine Transform ; 이하, DCT라 한다) 모드를 결정하는 움직임 검출기(6), 움직임 검출기(6)의 DCT 모드에 따라 DCT를 수행하는 DCT부(8), DCT 블록 단위로 영상신호를 압축하는 적응 양자화부(10) 및 가변길이 부호화(Variable Length Code ; 이하, VLC라 한다)부(22)를 구비한다.1 is a block diagram of an apparatus for compressing and encoding a digital video signal. The video encoding device comprises a
통상 입력영상신호는 CCIR-601(International Radio Consultative Committee ; 국제무선통신 자문위원회, 권고 601) 형식의 4:2:2의 신호로서 휘도신호(Y)는 13.5Mz로 표본화되고, 색차신호(Cr, Cb)는 각각 6.75Mz로 표본화된다.Normally, the input video signal is a 4: 2: 2 signal in CCIR-601 (International Radio Consultative Committee; Recommendation 601) format, and the luminance signal Y is sampled at 13.5 Mz, and the color difference signal Cb) are each sampled at 6.75 Mz.
NTSC(National Television System Committee)와 갈은 525라인/60Hz(주사선수 525라인/필드주파수 60Hz) 방식의 신호에서는 색차신호를 수평방향으로 2:1 서브샘플링(Supsampling)하여 4:1:1의 신호를 만들고, PAL(Phase Alternating by Line) 및 SECAM(Sequentiel Couleur a Memoire)과 같은 626라인/50Hz 방식의 영상신호에서는 색차신호를 수직방향으로 선순차에 의해 2:1로 서브샘플링하여 4:2:0의 신호를 만든다.For NTSC (National Television System Committee) and 525-line / 60Hz (scanner 525-line / field frequency 60Hz) signals, the 4: 1: 1 signal is obtained by 2: 1 subsampling the chrominance signal horizontally. For 626 line / 50Hz video signals such as Phase Alternating by Line (PAL) and Sequentiel Couleur a Memoire (SECAM), the color difference signal is subsampled in the vertical direction to 2: 1 by 4: 1: Produces a signal of zero.
블록화부(2)는 상기와 같은 입력영상신호를 8×8크기의 화소블록들로 분할하여, 제2도에 도시된 바와 같이 8×8 크기의 휘도신호(Y) 블록 4개와 같은 공간상에 위치하는 8×8 크기의 색차신호(Cr,Cb)를 묶어 매크로블록(Macroblock)을 구성한다. 여기서, 제2a도는 626라인/50Hz 방식의 영상신호로부터 구성된 매크로블록을 도시한 것이고, 제2b도는 525라인/60Hz 방식의 영상신호로부터 구성된 매크로블록을 도시한 것이다.The
셔플링부(4)에서는 한 프레임내의 다른 공간에 위치하는 5개의 매크로블록들을 묶어 세그먼트를 구성한다. 움직임 검출기(6)는 매크로블록내의 8×8 크기의 블록은 2개의 필드신호로 구성되어 있으므로 각 필드 간의 움직임 정도를 검출하여 DCT 모드를 결정한다. DCT부(8)는 상기 DCT 모드에 의해, 즉 움직임이 적은 경우에는 8×8 DCT를 수행하고, 움직임이 많은 경우에는 2×4×8 DCT를 수행한다.In the
DCT부(8)에서 상기 두가지 모드에 의해 DCT를 거친 8×8 크기의 DCT 블록은 적응 양자화부(10)와 VLC부(22)를 거쳐 압축되어 DCT 블록 단위의 등급 정보 및 모드 정보와 매크로 블록 또는 세그먼트 단위의 양자화수 정보와 멀티플렉서(24)에서 멀티플렉싱되어 테이프에 기록된다.In the
여기서, 적응 양자화부(10)는 버퍼(12), 등급 판정기(14), 데이터량 예측기(16), 양자화기(18)로 구성된다.Here, the
등급 판정기(14)는 DCT부(8)로부터 입력되는 DCT 블록을 그 블록의 중요도에 따라 몇 개의 등급으로 분류한다. 예틀 들면, 등급 판정기(14)는 각 DCT 블록의 교류성분(AC)의 최대값을 구한 후 이를 문턱치와 비교하여 표 1에 도시된 바와 같이 4개의 등급으로 분류한다. 표 1은 SD-DVC 드래프트(draft)에서 제시한 등급 판정의 예를 도시한 것이다. 한편, 일본 특개평 6-78286에 개시된 등급 판정기에서는 각 블록의 AC 최대값 대신 문턱치 이상의 값을 갖는 AC 계수를 카운트하고 이를 이용하여 등급 분류를 수행한다.The class determiner 14 classifies the DCT block input from the
또한, 압축된 영상 신호롤 다시 복원하여 디스플레이 할 때 붉은 색의 번짐을 막기 위하여 등급 판정기(14)는 레드 블록 검출기(20)에서 검출한 레드 블록을 표 2와 같이 적색 색차신호(Cr)의 등급 판정에 이용한다. 이때, 레드 블록 검출기(20)에서 화소 블록으로부터 레드 블록을 검출하는 방법은 제3도에 도시된 바와 같고, 이는 HD-DVC 드래프트에서 제시한 것이다. 이에 따라, 레드 블록으로 추정된 Cr 블록을 보다 자세히 양자화하게 되므로 재생화면에서 묽은 색이 번져보이는 현상을 줄일 수 있다.In addition, in order to prevent red color bleeding when restoring and displaying the compressed image signal again, the grade determiner 14 displays the red block detected by the
데이터량 예측기(16)는 영상신호를 테이프에 일정한 비율로 기록하기 위하여 세그먼트 단위로 압축된 데이터량이 일정하게 되도록 양자화기를 선택한다.The
상세히 하면, 데이터량 예측기(16)는 등급 판정기(14)로부터의 DCT 블록의 등급 정보와 제4도에 도시된 바와 같은 영역 분할 정보, 그리고 제5도에 도시된 바와 같은 양자화수(즉 양자화수 15에서 양자화수 0까지 16종류의 양자화기)를 사용하여 양자화하거나, 또는 가변길이 부호화(VLC)하여 각 양자화기를 사용하였을 때의 데이터량을 예측한다. 이때, 양자화수는 매크로블록, 또는 세그먼트 단위로 정해진다. 일본 특개평 6-78286에 개시된 데이터 예측기는 Q1에서 Q16까지의 16개 양자화기를 사용하여 데이터량을 구한 후, 이 중에서 정해진 양에 가장 근접하는 양자화기를 선택한다.In detail, the
양자화기(18)는 데이터량 예측기(16)로부터 선택된 양자화기를 사용하여 버퍼(12)에 저장된 세그먼트 단위의 DCT 블록들을 양자화한다.The
그런데, 종래의 적응 양자화 장치는 세그먼트내의 매크로블록 간의 영상복잡도를 전혀 고려하지 않고서 세그먼트, 또는 매크로블록 단위로 양자화 버퍼 컨트롤을 수행하기 때문에 재생시 양자화 왜곡으로 인한 화질의 저하가 우려된다.However, since the conventional adaptive quantization apparatus performs quantization buffer control in units of segments or macroblocks without considering the image complexity between macroblocks in a segment, image quality may be degraded due to quantization distortion during reproduction.
따라서, 본 발명은 상기 사정에 의하여 안출된 것으로서, 본 발명의 목적은 매크로블록 사이의 복잡도 레벨을 측정하고 이 레벨에 따라 양자화수를 결정하는 영상 복잡도를 고려한 적응 양자화 장치 및 방법을 제공하는 것이다.Accordingly, the present invention has been made in view of the above circumstances, and an object of the present invention is to provide an apparatus and method for adaptive quantization in consideration of image complexity for measuring a complexity level between macroblocks and determining a quantization number according to the level.
본 발명의 다른 목적은 매크로블록의 복잡도를 고려한 양자화 버퍼 컨트롤을 수행하여 양자화 왜곡을 감소시킬 수 있는 영상복잡도를 고려한 양자화 장치 및 방법을 제공하는 것이다.Another object of the present invention is to provide a quantization apparatus and method considering image complexity that can reduce quantization distortion by performing quantization buffer control considering the complexity of a macroblock.
본 발명의 또 다른 목적은 복잡도가 낮은 매크로블록을 세밀하게 양자화하여 양자화 왜곡을 감소시킬 수 있는 영상 복잡도를 고려한 적응 양자화 장치 및 방법을 제공하는 것이다.It is still another object of the present invention to provide an adaptive quantization apparatus and method considering image complexity that can reduce quantization distortion by finely quantizing a low complexity macroblock.
제1도는 통상의 영상 부호화 장치의 구성을 도시한 블록도.1 is a block diagram showing the configuration of a conventional video encoding apparatus.
제2도는 매크로 블록의 구성을 도시한 도면.2 is a diagram showing a configuration of a macro block.
제3도는 레드 블록을 검출하는 방법을 도시한 도면.3 illustrates a method of detecting a red block.
제4도는 제1도의 데이터량 예측기에서 사용하는 영역 분할 정보를 도시한 도면.4 is a diagram showing region division information used in the data amount predictor of FIG.
제5도는 제1도의 데이터량 예측기에서 시용하는 양자화 스텝의 크기를 도시한 도면.5 is a diagram showing the size of a quantization step used in the data amount predictor of FIG.
제6도는 매크로 블록의 구조를 도시한 도면.6 shows the structure of a macro block.
제7도는 한 세그먼트를 구성하는 5개의 매크로 블록의 비트열 구조를 도시한 도면.FIG. 7 is a diagram illustrating a bit string structure of five macro blocks constituting one segment. FIG.
제8도는 본 발명에 따른 적응 양자화 장치의 구성을 도시한 블록도.8 is a block diagram showing a configuration of an adaptive quantization device according to the present invention.
제9도는 제8도의 데이터량 예측기를 상세히 도시한 블록도.9 is a block diagram showing in detail the data amount predictor of FIG.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
2 : 블록화부 4 : 셔플링(Shuffling)부2: block part 4: shuffling part
6 : 음식임 검출기 8 : DCT(Discrete Cosine Transform)부6: food detector 8: DCT (Discrete Cosine Transform)
10 : 적응 양자화부 12, 72 : 버퍼10:
14 : 등급 판정기 16, 50 : 데이터량 예측기14: class determiner 16, 50: data amount predictor
18, 68 : 양자화기 20 : 레드 블록 검출기18, 68: quantizer 20: red block detector
22, 70 : VLC(Variable Length Code)부22, 70: VLC (Variable Length Code) part
24 : MUX(Multiplexer) 60 : 레벨 결정회로24: MUX (Multiplexer) 60: Level Decision Circuit
62 : 양자화수 테이블 64 : 초기 양자화수 결정기62: quantization number table 64: initial quantization number determiner
66 : 양자화수 결정기 74 : 양자화수 판정회로66: quantization number determiner 74: quantization number determination circuit
76 : 제어회로76: control circuit
상기 목적을 달성하기 위하여, 본 발명에 따른 영상 복잡도를 고려한 적응양자화 장치는 이산코사인변환된 블록들의 등급을 복잡도에 따라 결정하는 등급 판정수단과; 이산코사인변환된 블록들을 세그먼트 단위로 일시 저장하는 일시저장 수단과; 이산코사인변환 블록의 등급수의 개수에 따라 매크로블록의 레벨을 결정하고 이 레벨에 따라 양자화수를 결정하여 양자화 및 부호화하여 발생 데이터량이 임의의 기준치에 근접하도록 양자화수를 조절하여 출력하는 데이터량 예측수단과; 데이터량 예측수단으로부터 출력된 양자화수를 이용하여 상기 일시저장수단에 저장된 세그먼트 단위별로 이산코사인변환 블록들을 양자화하는 제1 양자화수단을 구비하는 것을 특징으로 한다.In order to achieve the above object, the adaptive quantization apparatus considering the image complexity according to the present invention comprises: grading means for determining the class of discrete cosine transformed blocks according to the complexity; Temporary storage means for temporarily storing the discrete cosine transformed blocks in units of segments; Determine the level of the macroblock according to the number of grades of the discrete cosine transform block, determine the quantization number according to this level, and quantize and encode the quantized number to adjust the quantized number so that the generated data is close to an arbitrary reference value. Means; And a first quantization means for quantizing discrete cosine transform blocks for each segment unit stored in the temporary storage means by using the quantization number output from the data amount predicting means.
그리고, 본 발명에 따른 영상 복잡도를 고려한 적응 양자화 방법은 이산코사인변환된 블록들의 등급수를 결정하고, 이 등급수의 개수에 따라 매크로블록의 레벨을 결정하는 제1단계와; 매크로블록의 레벨에 따라 양자화수를 곁정하고 양자화 및 부호화하여 발생 데이터량이 임의의 기준치에 가장 근접하도록 양자화수를 조절하여 결정하는 제2단계와; 결정된 양자화수를 이용하여 양자화하는 제3단계를 포함하는 것을 특징으로 한다.In addition, the adaptive quantization method considering the image complexity according to the present invention includes a first step of determining the number of classes of discrete cosine transformed blocks and determining the level of the macroblock according to the number of the number of classes; A second step of determining, quantizing and encoding the quantized number according to the level of the macroblock, and adjusting and determining the quantized number so that the amount of generated data is closest to an arbitrary reference value; And a third step of quantizing using the determined quantization number.
상기 목적외에 본 발명의 다른 목적 및 특징들은 첨부도면을 참조한 실시예에 대한 설명을 통하여 명백하게 드러나게 될 것이다.Other objects and features of the present invention other than the above object will become apparent from the description of the embodiments with reference to the accompanying drawings.
우선 본 발명의 실시예에 대한 상세한 설명에 앞서, 제6도 및 제7도를 참조하여 SD-DVC의 비트열 기록 방법을 설명하기로 한다.First, prior to the detailed description of the embodiment of the present invention, a bit string recording method of the SD-DVC will be described with reference to FIG. 6 and FIG.
제6도는 매크로 블록의 구조를 도시한 것이고, 제7도는 한 세그먼트를 구성하는 5개의 매크로 블록의 비트열 구조를 도시한 것이다.6 shows a structure of a macro block, and FIG. 7 shows a bit string structure of five macro blocks constituting one segment.
일반적으로 DCT 블록은 복잡도에 따라 각기 다른 등급수(Class Number)를 가지고, 각 매크로블록은 각각의 양자화수(Quantization Number)를 가진다. 하나의 매크로블록은 제6도에 도시된 바와 같이 4개의 Y 블록과 2개의 C 블록으로 구성된다. 여기서, Y 블록은 14 Byte, C 블록은 10 Byte로 가변길이 부호화가 되게끔 하고, 하나의 매크로블록은 77 Byte의 유닛에 가변길이 부호화가 되어 격납되도록 한다. 그런데, 각 블록은 가변길이 부호화가 되므로 정확히 14 Byte와 10 Byte로 맞추어 부호화하는 것은 불가능하다. 다시 말하여, 각 블록은 가변길이 부호화가 되므로 각 블록에 할당된 공간은 남을 수도 있고, 모자랄 수도 있다. 이에 따라, 자기 공간에 쓰고 남은 비트열은 같은 매크로블록으로 묶인 다른 DCT 블록의 남는 공간에 쓰도록 한다.In general, DCT blocks have different class numbers according to complexity, and each macroblock has a respective quantization number. One macroblock is composed of four Y blocks and two C blocks as shown in FIG. Here, Y blocks are 14 bytes, C blocks are 10 bytes, and variable length coding is performed, and one macro block is stored in variable length coding in units of 77 bytes. However, since each block is subjected to variable length encoding, it is impossible to encode exactly 14 bytes and 10 bytes. In other words, since each block is variable length coded, the space allocated to each block may be left or insufficient. Accordingly, the remaining bit strings written in the magnetic space are written in the remaining space of other DCT blocks grouped by the same macroblock.
제7도는 5개의 매크로블록으로 구성된 하나의 세그먼트의 비트열 기록구조를 도시한 것이다. 여기서, 각 매크로블록은 77 Byte로 고정되어 있는 자기 비트영역내에 가변길이 부호화가 된 비트열울 기록한다. 이때 각 매크로블록은 상기 DCT 블록과 마찬가지로 비트열이 기록되도록 할당된 공간이 남거나 모자랄 수 있다.7 shows a bit string recording structure of one segment composed of five macroblocks. Here, each macroblock writes a variable length coded bit string in a magnetic bit area fixed at 77 bytes. In this case, like the DCT block, each macroblock may have a remaining space or a shortage of space allocated for recording a bit string.
따라서, 상기와 갈이 각 매크로 블록에 쓰고 남은 비트열들은 다른 블록의 빈 영역에 쓰도록 한다.Therefore, the above bit strings written in each macro block will be written in the empty area of the other block.
그리고, 5개의 매크로블록으로 구성된 세그먼트에 할당된 영역은 77×5 = 385 Byte로 고정되어 있고, 부호화된 비트열은 반드시 이 영역에 모두 기록되어야 한다. 만약 남는 비트열이 발생하면 버리게 되어 있다. 이에 따라, 적응 양자화기에서 데이터량을 예측하여 발생 데이터량을 컨트롤해야 한다.The area allocated to the segment consisting of five macroblocks is fixed at 77 x 5 = 385 bytes, and the coded bit strings must all be recorded in this area. If the remaining bit string occurs, it is discarded. Accordingly, the amount of generated data must be controlled by predicting the amount of data in the adaptive quantizer.
이하, 제8도 및 제9도를 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to FIGS. 8 and 9.
제8도는 본 발명에 따른 적응 양자화 장치를 도시한 것으로, 적응 양자화 장치는 버퍼(12), 등급 판정기(14), 데이터량 예측기(50), 제1 양자화기(18)를 구비한다. 여기서, 제1도의 종래의 구성과 중복되는 구성요소의 동작에 대해서는 간략하게 설명하기로 한다.8 shows an adaptive quantization device according to the present invention, which includes a
등급 판정기(14)는 입력되는 DCT 블록을 그 블록의 중요도에 따라 4개의 등급으로 분류한다. 데이터량 예측기(50)는 영상신호를 테이프에 일정한 비율로 기록하기 위하여 세크먼트 단위로 압축된 데이터량이 일정하게 되도록 양자화기를 선택한다. 이를 상세히 하기 위하여 제9도를 참조하면 다음과 같다.The
제9도를 참조하면 데이터량 예측기(50)는 매크로블록의 복잡도 레벨을 결정하는 레벨 결정회로(60), 이전 프레임의 양자화수를 저장하는 양자화수 테이블(62)을 읽어 우선순위 매크로블록의 초기 양자화수를 곁정하는 초기 양자화수 결정기(64), 매크로블록별로 양자화수를 결정하는 양자화수 결정기(66), 양자화를 수행하는 제2 양자화기(68), 양자화된 데이터를 가변길이 부호화하는 가변길이 부호화(VLC)부(70), 부호화된 데이터를 저장하는 버퍼(72)와, 데이터량을 정해진 양과 비교하여 양자화수를 제1 양자화기(16)나 제어회로(76)로 선택적으로 출력하는 양자화수 판정회로(74)와, 양자화수 결정기(66)를 제어하여 양자화수를 조절하는 제어회로(76)를 구비한다.Referring to FIG. 9, the data amount
각 매크로블록은 통상 서로 다른 영상복잡도를 가지고 있다. 여기서, 복잡도가 큰 블록은 양자화수를 크게하여 부호화하여도 양자화 오류가 눈에 띄지 않지만, 복잡도가 낮은 블록은 양자화수를 작게하여 세밀하게 부호화하여야만 양자화 오류를 줄일 수 있다. 따라서, 데이터량 예측기(50)는 먼저 각 DCT 블록의 등급수를 이용하여 매크로블록 단위로 복잡도 레벨을 결정하고, 이 복잡도 레벨을 이용하여 세그먼트 단위로 매크로블록의 각각의 양자화수를 결정하여 최적의 화질을 재현할 수 있도록 한다.Each macroblock typically has a different image complexity. Here, although a quantization error is not noticeable even if a block having a high complexity is encoded with a large quantization number, a quantization error can be reduced only by encoding a small block with a small quantization number. Therefore, the
상세히 하면, 제9도에 도시된 레벨 결정회로(60)는 제8도의 등급 판정기(14)로 부터 정해진 각 DCT 블록의 등급을 이용하여 매크로블록의 복잡도 레벨을 결정한다. 이 경우, 레벨 결정회로(60)는 하나의 매크로블록을 구성하는 4개의 Y 블록과 2개의 C 블록 중에서 4개의 Y 블록에 할당된 등급수의 개수만을 이용하여 레벨을 결정한다.In detail, the
표 3을 참조하면, 각 DCT 블록의 등급수는 복잡도가 낮은 순서대로 0,1,2,3의 4개로 할당되어 있다. 레벨 결정회로(60)는 매크로블록내에 1)과 같이 등급수가 0인 DCT블록이 4개이면 이 매크로블록의 레벨을 0으로 결정하고, 2)와 같이 등급수가 0인 블록이 1개, 1인 블록이 2개, 3인 블록이 1개 있으면 레벨을 12로 결정한다. 이와 같이, 4개의 Y 블록에 할당될 수 있는 등급수 개수의 모든 조합은 표 3에 도시된 바와 같고, 각 경우마다 매크로블록 레벨을 할당하여 총 32개의 매크로블록 레벨을 결정한다. 이때 등급수와 마찬가지로 매크로블록의 레벨도 복잡도가 낮을 수록 낮은 숫자가 할당되도록 하였다.Referring to Table 3, the number of ranks of each DCT block is allocated to four of 0, 1, 2, and 3 in order of low complexity. The
양자화수 테이블(62)은 이전 프레임의 매크로블록 단위로 양자화수를 저장한다. 이는 영상데이터가 시간적으로 매우 상관도가 높으므로 이전 프레임의 양자화수 테이블을 이용하여 보다 빠르고 정확하게 현재 매크로블록의 양자화수를 결정하기 위함이다. 예를 들어, 한 프레임이 1350개의 매크로블록으로 구성되고 양자화수는 4비트로 기록할 수 있으므로(양자화수:0∼15) 양자화수 테이블(62)은 총 1350×4 비트의 메모리가 필요하다.The quantization number table 62 stores the quantization number in macroblock units of the previous frame. This is to determine the quantization number of the current macroblock more quickly and accurately by using the quantization number table of the previous frame because the image data is highly correlated in time. For example, since one frame is composed of 1350 macroblocks and the quantization number can be recorded by 4 bits (quantization numbers: 0 to 15), the quantization table 62 needs a total of 1350 x 4 bits of memory.
하나의 세그먼트에는 5개의 매크로블록이 있으므로 5개의 매크로블록 레벨을 먼저 결정한다. 그리고, 한 세그먼트내의 5개 매크로블록 중에서 가장 레벨이 낮은 매크로블록을 우선순위(Primary) 매크로블록이라 하고, 레벨이 가장 낮은 매크로블록이 2개 이상 있는 경우에는 임의로 우선순위를 결정한다. 따라서, 낮은 레벨의 매크로블록의 양자화 크기가 먼저 결정되도록 하고 나머지 매크로블록의 양자화 크기가 결정되도록 한다. 이는 복잡도가 낮은 블록을 세밀하게 부호화하기 위함이다.Since there are five macroblocks in one segment, five macroblock levels are determined first. The lowest level macroblock among the five macroblocks in one segment is called a priority macroblock, and when there are two or more lowest level macroblocks, priority is arbitrarily determined. Thus, the quantization size of the low level macroblock is determined first and the quantization size of the remaining macroblocks is determined. This is to finely encode a low complexity block.
초기 양자화수 결정기(64)는 이 우선순위 블록의 초기 양자화수를 곁정한다.The initial
이는 양자화수 테이블(62)에서 같은 위치의 이전 프레임 매크로블록의 양자화수를 읽어서 사용한다. 만일 부호화하고 있는 프레임이 첫 번째 프레임이라면 이전 프레임 양자화수 테이블의 초기치 값인 8을 이용하게 된다. 이와 같이, 이전 프레임의 양자화수 값을 이용하므로 보다 빨리 적절한 양자화수 값을 찾아낼 수 있다.This reads and uses the quantization number of the previous frame macroblock at the same position in the quantization number table 62. If the frame being encoded is the first frame, 8, which is an initial value of the previous frame quantization table, is used. As such, since the quantized number value of the previous frame is used, an appropriate quantized number value can be quickly found.
초기 양자화수 결정기(64)에서 우선순위 매크로블록의 양자화수가 정해지면 양자화수 결정기(66)는 레벨 결정회로(60)에서 정해진 매크로블록의 레벨에 비례하도록 나머지 4개 매크로블록의 양자화수를 결정한다. 다시 말하여, 매크로블록의 레벨은 32단계이므로 우선순위 매크로블록과 비교하여 레벨이 2단계씩 내려갈 때마다 양자화수를 1씩 감소시키는 방법으로 각 매크로블록의 양자화수를 결정한다.When the quantization number of the priority macroblock is determined in the initial
예를 들어, 레벨 결정회로(60)에서 5개 매크로블록의 레벨이 9,2,0,21,29의 순서대로 정해졌다고 가정하면. 우선순위 매크로블록은 가장 레벨이 낮게 0으로 정해진 3번째 매크로블록이 된다. 초기 양자화수 결정기(64)는 양자화수 테이블(62)을 읽어서, 현재의 우선순위 매크로블록과 같은 위치인 이전 프레임 매크로블록의 양자화수가 1이었다면 이 블록의 초기 양자화수를 1로 결정한다. 그 다음, 양자화수 결정기(66)는 레벨이 9인 매크로블록이 우선순위 매크로블록과의 레벨 차이가 9가 되므로 양자화수틀 4단계 아래인 5로 결정한다. 이에 따라, 결정된 5개의 매크로블록의 초기 양자화수는 각각 5, 2, 1, 11, 15가 된다. 이때, 매크로블록의 레벨이 30 또는 31인 경우 레벨차이 만큼 양자화수를 감소시키면 양자화수가 16이 되지만, 이는 양자화수의 범위(0∼15)를 넘으므로 양자화수를 15로 결정한다.For example, assume that the levels of the five macroblocks in the
이와 같이, 5개 매크로블록의 양자화수를 결정한 후, 이 양자화수를 사용하여 제2 양자화기(68)에서 양자화하고, VLC부(70)에서 스캔 및 가변길이 부호화를 수행하여 버퍼(72)에 저장한다.In this way, after determining the quantization number of five macroblocks, the
양자화수 판정회로(74)는 상기와 같이 부호화된 5개 매크로블록의 비트량이 한 세그먼트에 할당된 공간, 즉 385 Byte에 가장 근접하였는지의 여부를 판단한다.The quantization
그리고, 상기 부호화된 비트량이 385 Byte에 가장 근접한 경우 양자화수 판정회로(74)는 결정된 양자화수를 제1 양자화기(16)으로 출력하여 부호화하게 하고, 그 값을 이전 프레임 양자화수 테이블(62)에 기록한다. 반면에, 부호화된 비트량이 385 Byte에 근접하지 않은 경우 양자화수 판정회로(74)는 부호화된 데이터를 제어회로(76)로 출력한다.When the encoded bit amount is closest to 385 bytes, the quantization
제어회로(76)는 양자화수 결정기(66)를 제어하여 각 매크로 블록의 양자화수를 조절하도록 한다. 다시 말하여, 제어회로(76)는 데이터량을 정해진 데이터량(385 Byte)과 비교하여 그 차이에 비례하는 만큼 각 매크로블록의 양자화수를 조정하게 된다. 구체적으로, 부호화된 비트량이 385 Byte와 큰 차이가 있는 경우 제어회로(76)는 우선순위 매크로블록의 양자화수를 조절한다. 이에 따라, 나머지 4개의 매크로블록의 양자화수도 모두 바뀌게되므로 발생 비트량은 큰 폭으로 변화된다. 이때, 조절할 양자화수 크기는 제어회로(76)에서 385 Byte와의 차이에 비례하도록 결정한다. 반면에, 부호화된 비트량이 385 Byte와 큰 차이가 없어 5개 매크로블록의 양자화수를 모두 조절하지 않아도 되는 경우 다음 2가지 방법으로 각 매크로블록의 양자화수를 조절한다. 385 Byte 보다 비트 발생량이 작은 경우 복잡도 레벨이 가장 낮은 우선순위 매크로블록부터 양자화수를 감소시킨다. 우선순위 매크로블록의 양자화수를 1단계 감소시켜도 비트 발생량이 작을 경우에는 그 다음 레벨이 낮은 순서대로 양자화수를 감소시키면서 385바이트에 가장 근접했는지를 판단한다. 반면에 385 Byte 보다 비트 발생량이 큰 경우에는 상기와 반대로 복잡도 레벨이 높은 매크로블록부터 양자화수를 증가시키면서 비트 발생량을 조절해나간다. 이는 우선순위 매크로블록의 화질을 최대한 보장해주기 위한 것이다. 복잡도가 낮은 블록일수록 양자화를 세밀하게 하여야만 양자화 오류에 의한 왜곡이 작은 화질을 얻을 수 있기 때문이다.The
제8도로 되돌아와서, 제1 양자화기(18)는 데이터량 예측기(50)로부터 상기과정에 의해 선택된 양자화기를 사용하여 버퍼(12)에 저장된 현재의 세그먼트를 DCT블록 단위로 양자화한다.Returning to FIG. 8, the
이와 같이, 본 발명의 적응 양자화기는 복잡도가 낮은 블록들을 세밀하게 양자화하므로써 양자화 오류에 대한 왜곡을 줄일 수 있다.As such, the adaptive quantizer of the present invention can reduce distortion for quantization error by finely quantizing low complexity blocks.
상술한 바와 같이, 본 발명에 따른 영상 복잡도를 고려한 적응 양자화 장치 및 방법에 의하면 세그먼트내의 매크로블록 간의 복잡도 레벨을 측정하고 레벨이 낮은 블록을 기준으로 각 블록의 양자화수를 결정하여 양자화하므로써 복잡도가 낮은 블록은 세밀하게 양자화된다. 이에 따라, 복잡도가 낮은 블록에 의한 양자화 왜곡이 현저히 감소되므로 최적의 화질로 재현할 수 있게 된다.As described above, the adaptive quantization apparatus and method considering the image complexity according to the present invention measures the complexity level between macroblocks in a segment and determines the quantization number of each block based on the low-level block to quantize the block. Blocks are finely quantized. As a result, the quantization distortion due to the low complexity block is remarkably reduced, so that it can be reproduced at an optimum picture quality.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의해 정하여져야만 할 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the technical spirit of the present invention. Therefore, the technical scope of the present invention should not be limited to the contents described in the detailed description of the specification but should be defined by the claims.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970037267A KR100251544B1 (en) | 1997-08-04 | 1997-08-04 | Apparatus and method of adaptive quantization in consideration of image complexity |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970037267A KR100251544B1 (en) | 1997-08-04 | 1997-08-04 | Apparatus and method of adaptive quantization in consideration of image complexity |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990015281A KR19990015281A (en) | 1999-03-05 |
KR100251544B1 true KR100251544B1 (en) | 2000-04-15 |
Family
ID=19516871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970037267A KR100251544B1 (en) | 1997-08-04 | 1997-08-04 | Apparatus and method of adaptive quantization in consideration of image complexity |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100251544B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100504772B1 (en) * | 1997-12-27 | 2005-10-21 | 엘지전자 주식회사 | Coding Algorithm Selection Method |
KR100555419B1 (en) * | 2003-05-23 | 2006-02-24 | 엘지전자 주식회사 | Moving picture coding method |
KR100790900B1 (en) * | 2006-12-14 | 2008-01-03 | 삼성전자주식회사 | Method and apparatus for estimating first qp value to encode video |
-
1997
- 1997-08-04 KR KR1019970037267A patent/KR100251544B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990015281A (en) | 1999-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5144426A (en) | Motion compensated prediction interframe coding system | |
EP0542474B1 (en) | Adaptive coding and decoding of frames and fields of video signals | |
US6310915B1 (en) | Video transcoder with bitstream look ahead for rate control and statistical multiplexing | |
KR100343352B1 (en) | Two-pass encoding method of digital motion video sequences for constant-or variable bit rate | |
KR100626994B1 (en) | Variable bitrate video coding method and corresponding videocoder | |
KR0184905B1 (en) | Code amount control device and encoding apparatus using the same | |
EP0267579B1 (en) | Image coding system capable of monitoring an amount of information by forming a histogram | |
US5835672A (en) | Apparatus for coding and decoding a digital video signal having duplicate pictures and frames with fields originating from different film source frames | |
EP2309749B1 (en) | Improved optimization techniques for data compression | |
US7957600B2 (en) | Methods and systems for rate-distortion optimized quantization of transform blocks in block transform video coding | |
US8396311B2 (en) | Image encoding apparatus, image encoding method, and image encoding program | |
US9805442B2 (en) | Fine-grained bit-rate control | |
EP1833256B1 (en) | Selection of encoded data, setting of encoded data, creation of recoded data, and recoding method and device | |
KR20170021337A (en) | Encoder decisions based on results of hash-based block matching | |
US6668021B2 (en) | Encoding apparatus | |
US20100232497A1 (en) | Lossless and near-lossless image compression | |
EP1655968A2 (en) | Method and apparatus for encoding and decoding image data | |
JP2002511669A (en) | Method and apparatus for adaptive encoding of video data stream | |
US6987808B2 (en) | Transcoding method and transcoding apparatus | |
US6628839B1 (en) | Image coding system converting apparatus, image coding system converting method, and recording medium | |
KR20010071689A (en) | Image processing circuit and method for modifying a pixel value | |
KR100251544B1 (en) | Apparatus and method of adaptive quantization in consideration of image complexity | |
GB2387055A (en) | Data compression method including target data quantity allocation | |
JP3581935B2 (en) | High efficiency coding device | |
JP3569963B2 (en) | Image compression device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20091230 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |