KR20100035243A - 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 - Google Patents

양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR20100035243A
KR20100035243A KR1020080094494A KR20080094494A KR20100035243A KR 20100035243 A KR20100035243 A KR 20100035243A KR 1020080094494 A KR1020080094494 A KR 1020080094494A KR 20080094494 A KR20080094494 A KR 20080094494A KR 20100035243 A KR20100035243 A KR 20100035243A
Authority
KR
South Korea
Prior art keywords
block
quantization coefficient
complexity
quantization
current block
Prior art date
Application number
KR1020080094494A
Other languages
English (en)
Other versions
KR101539045B1 (ko
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 KR1020080094494A priority Critical patent/KR101539045B1/ko
Publication of KR20100035243A publication Critical patent/KR20100035243A/ko
Application granted granted Critical
Publication of KR101539045B1 publication Critical patent/KR101539045B1/ko

Links

Images

Classifications

    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
본 발명은 양자화 계수를 결정하는 장치에 있어서, 주변 블록의 복잡도를 계산하는 복잡도 계산부; 복잡 정도를 판단하기 위한 임계값을 설정하는 임계값 설정부; 및 복잡도가 임계값 이하인 경우에는 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로서 결정하고, 복잡도가 임계값을 초과하는 경우에는 기본 양자화 계수보다 작은 값의 양자화 계수를 현재 블록의 양자화 계수로서 결정하는 양자화 계수 결정부를 포함하는 것을 특징으로 하는 양자화 계수 결정 장치를 제공한다.
본 발명에 의하면, 영상의 특성에 따라 양자화 계수를 적응적으로 결정할 수 있어서, 블록별로 다른 양자화 계수를 이용하여 양자화할 수 있으며, 그를 통해 영상의 특성을 고려한 부호화를 수행할 수 있으므로, 영상의 하나의 픽처 내에 복잡한 특성을 갖는 블록과 평이한 특성을 갖는 블록이 혼재되어 있는 경우에도, 효율적으로 부호화할 수 있어 압축 성능을 향상시킬 수 있다.
영상, 부호화, 복호화, 양자화, 계수, 블록, 복잡도, 적응적

Description

양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치{Quantization Parameter Determination Method and Apparatus and Video Encoding/Decoding Method and Apparatus}
본 발명은 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상을 부호화하고 복호화하는 데 있어서, 부호화하고자 하는 블록의 특성을 고려하여 블록별로 양자화 계수를 적응적으로 결정하고 결정된 양자화 주파수 계수를 이용하여 부호화함으로써 압축 효율을 향상시키는 방법 및 장치에 관한 것이다.
MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 기존의 MPEG-4 Part 2와 H.263 표준안보다 더욱 우수하고 뛰어난 비디오 압축 기술을 개발하였다. 이 새로운 표준안은 H.264/AVC(Advanced video Coding)이라 하며, MPEG-4 Part 10 AVC와 ITU-T Recommendation H.264로 공동 발표되었다.
H.264/AVC(이하 'H.264'라 약칭함)에서는 직교 변환한 성분을 더욱 작은 정수값으로 표현할 수 있으며, 더욱 적은 비트수로 부호화하기 위해서 양자화 과정을 적용하여 압축을 수행한다. 종래의 양자화를 통한 부호화를 부호화기 측면에서 살 펴보면, 현재 부호화하고자 하는 블록의 화소 정보를 예측하고 부호화하고자 하는 실제 블록의 화소 정보와의 차이(Difference) 정보를 이산 코사인 변환(DCT: Discrete Cosine Transform)하여 주파수 계수를 생성하고, 주파수 계수를 다시 주어진 양자화 계수(QP: Quantization Parameter)에 따라 양자화하여 양자화 주파수 계수를 생성한다. 양자화 주파수 계수는 부호화되어 비트스트림의 형태로 복호화기로 전송된다.
이때, H.264에서는 블록들을 양자화할 때, 고정된 양자화 계수만을 이용하는데, 고정된 양자화 계수만을 이용하여 양자화하면, 영상의 한 픽처 내에 복잡한 영상 특성을 갖는 블록과 평이한 영상 특성을 갖는 블록이 섞여 있는 경우, 블록마다 다른 영상의 특성을 반영하지 못하여 효율적으로 양자화하기 어려우며, 그로 인해 부호화 효율 또는 압축 효율을 저하하는 문제점이 있다.
전술한 문제점을 해결하기 위해 본 발명은, 부호화하고자 하는 블록의 특성을 고려하여 블록별로 양자화 계수를 적응적으로 결정하고 결정된 양자화 주파수 계수를 이용하여 부호화함으로써, 영상의 특성을 고려하여 부호화하고 그를 통해 압축 효율을 향상시키는 데 주된 목적이 있다.
전술한 목적을 달성하기 위해 본 발명은, 양자화 계수를 결정하는 장치에 있어서, 주변 블록의 복잡도를 계산하는 복잡도 계산부; 복잡 정도를 판단하기 위한 임계값을 설정하는 임계값 설정부; 및 복잡도가 임계값 이하인 경우에는 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로서 결정하고, 복잡도가 임계값을 초과하는 경우에는 기본 양자화 계수보다 작은 값의 양자화 계수를 현재 블록의 양자화 계수로서 결정하는 양자화 계수 결정부를 포함하는 것을 특징으로 하는 양자화 계수 결정 장치를 제공한다.
또한, 본 발명의 다른 목적에 의하면, 양자화 계수를 결정하는 방법에 있어서, 주변 블록의 복잡도를 계산하는 복잡도 계산 단계; 복잡도를 기 설정된 임계값과 비교하는 비교 단계; 복잡도가 기 설정된 임계값 이상인 경우에는, 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로 결정하는 양자화 계수 유지 단계; 및 복잡도가 기 설정된 임계값을 초과하는 경우에는, 기 설정된 기본 양자화 계수보다 작은 값을 현재 블록의 양자화 계수로서 결정하는 양자화 계수 변경 단계를 포함하는 것을 특징으로 하는 양자화 계수 결정 방법을 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 장치에 있어서, 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 잔차 블록을 주파수 영역으로 변환하는 변환부; 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하여 변환된 잔차 블록을 양자화하는 양자화부; 및 양자화된 잔차 블록을 부호화하여 부호화 데이터를 생성하는 부호화부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 현재 블록을 예측하여 예측 블록을 생성하는 예측 단계; 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하는 감산 단계; 잔차 블록을 주파수 영역으로 변환하는 변환 단계; 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하여 변환된 잔차 블록을 양자화하는 양자화 단계; 및 양자화된 잔차 블록을 부호화하여 부호화 데이터를 생성하는 부호화 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 장치에 있어서, 부호화 데이터를 복호화하여 잔차 블록을 추출하는 복호화부; 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고 결정된 현재 블록의 양자화 주파수 계수를 이용하여 잔차 블록을 역 양자화하는 역 양자화부; 역 양자화된 잔차 블록을 역 변환하는 역 변환부; 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 및 역 변환된 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 가산부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 부호화 데이터를 복호화하여 잔차 블록을 추출하는 복호화 단계; 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고 잔차 블록을 역 양자화하는 역 양자화 단계; 역 양자화된 잔차 블록을 역 변환하는 역 변환 단계; 현재 블록을 예측하여 예측 블록을 생성하는 예측 단계; 및 역 변환된 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 가산 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명에 의하면, 영상의 특성에 따라 양자화 계수를 적응적으로 결정할 수 있어서, 블록별로 다른 양자화 계수를 이용하여 양자화할 수 있으며, 그를 통해 영상의 특성을 고려한 부호화를 수행할 수 있다. 따라서, 영상의 하나의 픽처 내에 복잡한 특성을 갖는 블록과 평이한 특성을 갖는 블록이 혼재되어 있는 경우에도, 효율적으로 부호화할 수 있어 압축 성능을 향상시킬 수 있다.
또한, 본 발명에 의하면, 블록별로 다른 양자화 계수를 이용하여 양자화하는 경우에도 부호화 데이터에 변경된 양자화 계수를 식별하기 위한 비트를 추가로 포함하지 않을 수 있어, 압축 성능을 향상시킬 수 있다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순 서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치의 구성을 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 예측부(110), 감산부(120), 변환부(130), 양자화부(140), 부호화부(150), 역 양자화부(160), 역 변환부(170) 및 가산부(180)를 포함하여 구성될 수 있다. 이러한 영상 부호화 장치(100)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.
예측부(110)는 영상의 현재 블록을 예측하여 예측 블록을 생성한다. 즉, 예측부(110)는 인트라 예측(Intra Prediction) 또는 인터 예측(Inter Prediction) 등을 이용하여 영상에서 부호화하고자 하는 현재 블록(Current Block)을 예측함으로 써 예측 화소값(Predicted Pixel Value)을 각 화소의 화소값으로 갖는 예측 블록(Predicted Block)을 생성한다.
감산부(120)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(Residual Block)을 생성한다. 즉, 감산부(120)는 현재 블록의 각 화소의 원 화소값(Original Pixel Value)과 예측 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차 신호(Residual Signal)를 갖는 잔차 블록을 생성한다.
변환부(130)는 잔차 블록을 주파수 영역으로 변환한다. 즉, 변환부(130)는 감산부(120)에 의해 생성된 잔차 블록의 잔차 신호를 주파수 영역으로 변환하여 주파수 계수를 갖는 잔차 블록을 생성한다. 여기서, 변환부(130)는 하다마드 변환(Hadamard Transform), 이산 코사인 변환 기반 변환(Discrete Cosine Transform Based Transform) 등과 같은 공간 영역의 화상 신호를 주파수 영역으로 변환하는 다양한 변환 기법을 이용하여 잔차 신호를 주파수 영역으로 변환할 수 있는데, 주파수 영역으로 변환된 잔차 신호가 주파수 계수가 된다.
양자화부(140)는 변환부(130)에 의해 주파수 영역으로 변환된 주파수 계수를 갖는 잔차 블록을 양자화(Quantization)한다. 여기서, 양자화부(140)는 변환된 잔차 블록을 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization, 이하 'DZUTQ'라 칭함) 또는 양자화 가중치 매트릭스(Quantization Weighted Matrix) 등 다양한 양자화 기법을 이용하여 양자화할 수 있다.
또한, 양자화부(140)는 잔차 블록을 양자화하는 데 있어서, 현재 블록의 주변에 있는 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수(QP: Quantization Parameter)를 결정하여 양자화한다. 즉, 양자화부(140)는 영상의 각 블록마다 동일한 양자화 계수를 이용하여 양자화하는 것이 아니라, 영상의 각 블록별로 양자화 계수를 적응적으로 결정하여 양자화한다. 이때, 각 블록별로 양자화 계수를 결정하는 기준은 영상의 특성, 더욱 구체적으로는 블록의 복잡도이다. 이를 위해, 양자화부(140)는 현재 블록의 주변에 있는 주변 블록의 복잡도를 계산하고, 계산된 주변 블록의 복잡도를 기 설정된 임계값과 비교하여, 계산된 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수보다 작은 값으로 변경할 수 있다. 양자화부(140)가 주변 블록의 복잡도를 계산하고 계산된 복잡도를 이용하여 현재 블록의 양자화 계수를 결정하는 것에 대해서는 후술하는 과정에서 도 2를 통해 상세히 설명한다.
부호화부(150)는 양자화부(140)에 의해 양자화된 잔차 블록의 양자화 주파수 계수들을 부호화하여 부호화 데이터를 생성한다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.
또한, 부호화부(150)는 양자화 주파수 계수들을 부호화한 비트열뿐만 아니라 부호화된 비트열을 복호화하는 데 필요한 다양한 정보들을 부호화 데이터에 포함시킬 수 있다. 즉, 부호화 데이터는 부호화된 블록 형태(CBP: Coded Block Pattern), 델타 양자화 계수(Delta Quantization Parameter) 및 양자화 주파수 계수가 부호화된 비트열이 포함되는 제 1 필드와 예측에 필요한 정보(예를 들어, 인트라 예측의 경우 인트라 예측 모드 또는 인터 예측의 경우 움직임 벡터 등)를 위한 비트가 포 함되는 제 2 필드를 포함한다.
부호화 데이터에 포함되는 델타 양자화 계수는 현재 블록의 양자화 계수와 이전 블록의 양자화 계수의 차이에 대한 정보를 나타내는 비트이다. H.264와 같이 통상적인 양자화에서, 부호화기는 블록의 양자화 계수가 변경되었을 때, 두 양자화 계수의 값의 차이를 비트로서 표현한 델타 양자화 계수를 부호화 데이터에 포함시키고, 복호화기에서는 부호화 데이터로부터 델타 양자화 계수를 추출하여 부호화기에서 사용한 양자화 계수와 같은 양자화 계수로 역 양자화한다.
하지만, 본 발명에서, 부호화부(150)는 양자화부(140)에 의해 양자화 계수가 변경된 경우, 양자화 주파수 계수를 부호화한 후, 변경된 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수로 재변경할 수 있다. 이와 같이, 부호화부(150)는 변경된 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수로 재변경함으로써, 양자화 계수의 값의 차이에 대한 정보를 위해 추가적인 비트를 할당하지 않도록 할 수 있으며, 이를 통해 압축 성능을 높일 수 있다. 이 경우, 영상 복호화 장치에서 부호화 데이터를 역 양자화할 때에는 양자화부(140)에서 현재 블록의 양자화 계수를 결정한 방식과 동일한 방식으로 현재 블록의 양자화 계수를 결정함으로써 동일한 양자화 계수를 이용하여 역 양자화할 수 있다.
역 양자화부(160)는 양자화부(140)에 의해 양자화된 잔차 블록을 역 양자화(Inverse Quantization)하여 역 양자화된 잔차 블록을 생성한다. 즉, 역 양자화부(160)는 양자화된 잔차 블록의 양자화 주파수 계수를 역 양자화하여 역 양자화된 주파수 계수를 갖는 잔차 블록을 생성한다. 이때, 역 양자화부(160)는 양자화 부(140)로부터 전달되는 현재 블록의 양자화 계수에 따라 양자화된 잔차 블록을 역 양자화할 수 있다. 즉, 양자화부(140)가 기본 양자화 계수를 이용하여 양자화한 경우에는 역 양자화부(160)도 기본 양자화 계수를 이용하여 역 양자화하고, 양자화부(140)가 기본 양자화 계수보다 작은 값의 양자화 계수를 이용하여 양자화한 경우에는 역 양자화부(160)도 양자화부(140)에서 사용한 양자화 계수와 동일한 양자화 계수를 이용하여 역 양자화한다.
역 변환부(170)는 역 양자화된 잔차 블록을 역 변환(Inverse Transform)하여 역 변환된 잔차 블록을 생성한다. 즉, 역 변환부(170)는 역 양자화된 잔차 블록의 역 양자화 주파수 계수를 공간 영역으로 역 변환하여 화소값을 갖는 역 변환된 잔차 블록을 생성한다.
가산부(180)는 예측부(110)에 의해 예측된 예측 블록과 역 변환부(170)에 의해 역 변환된 잔차 블록을 가산하여 현재 블록을 복원하고 복원된 현재 블록을 예측부(110)로 출력한다.
도 1에서는 도시하지 않았지만, 예측부(110)와 가산부(180) 사이에는 디블로킹 필터부(미도시)가 추가로 연결될 수 있다. 디블로킹 필터부는 가산부(180)에 의해 복원된 현재 블록을 디블로킹 필터링(Deblocking Filtering)한다. 여기서, 디블로킹 필터링이란 영상을 블록 단위로 부호화하면서 발생하는 블록 왜곡을 감소시키는 작업을 말하며, 블록 경계와 매크로블록 경계에 디블로킹 필터를 적용하거나 매크로블록 경계에만 디블로킹 필터를 적용하거나 디블로킹 필터를 사용하지 않는 방법 중 하나를 선택적으로 사용할 수 있다.
한편, 도 1을 통해 전술한 양자화부(140)는 현재 블록의 양자화 계수를 결정하는 양자화 계수 결정부와 결정된 양자화 계수로 양자화하는 양자화 처리부로 구성될 수 있다. 통상적인 방식의 양자화에서, 양자화 처리부는 후술하는 바와 같이, 고정된 양자화 계수를 이용하여 양자화한다. 예를 들어, 잔차 블록의 잔차 신호를 DCT 변환을 수행하여 양자화하는 경우, 기본적인 양자화 동작은 수학식 1과 같이 나타낼 수 있다.
Figure 112008067660658-PAT00001
수학식 1에서, Y ij 는 잔차 블록의 각 잔차 신호를 DCT변환하고 스케일링(Scaling)한 후 행렬로 표현되는 원소들을 나타내며, Q step 은 양자화 단계(Quantization Step)의 크기를 나타낸다.
H.264 표준에 따르면, 양자화 계수의 값과 양자화 단계의 값이 비례한다. 양자화 계수가 6씩 증가하면 양자화 단계의 크기는 두 배씩 증가한다. 결과적으로 양자화 계수가 신호 대 잡음비(SNR: Signal to Noise Ratio)와 비례하여 양자화 계수가 변화해도 신호대 잡음비의 변화량은 크게 변동하지 않고 일정하게 유지할 수 있게 되었다.
수학식 1과 같이 수행되는 기본적인 양자화 동작을 실제 양자화 과정에 적용되도록 나타내면 수학식 2와 수학식 3으로 나타낼 수 있다.
Figure 112008067660658-PAT00002
Figure 112008067660658-PAT00003
수학식 2에서, W ij 는 잔차 블록의 각 잔차 신호를 DCT변환한 후 행렬로 표현되는 원소들을 나타내며, MF는 양자화 계수에 따라 결정되는 증배 계수(Multiplication Factor)를 나타내며, f는 양자화 과정에서의 반올림(Round)으로 인한 오류와 데드존(Dead Zone)의 크기를 결정하는 요소로서 현재 블록이 인트라 예측으로 예측된 경우에는 2 qbits /3이고, 인터 예측으로 예측된 경우에는 2 qbits /6으로 고정된다. 여기서, qbits는 15+floor(QP/6)을 나타내며, floor는 내림(Round Down) 연산을 의미한다.
H.264에서는 양자화 계수의 값을 0부터 51까지의 값을 갖도록 규정하기 때문에, 양자화 단계의 크기의 최대값은 최소값의 256배가 된다. 양자화 단계의 크기의 역수와 비트율이 거의 비례하고 양자화 단계의 크기의 최소값과 최대값의 차이가 큰 H.264가 MPEG-2보다 낮은 비트율에서 높은 비트율까지 대응할 수 있다. 양자화 계수가 6씩 증가할 때마다 양자화 단계의 크기는 두 배씩 커진다는 개념의 도입은 역 양자화의 처리를 용이하게 한다.
H.264에서는 양자화를 사용하기 때문에, 양자화를 사용하지 않는 다른 방법 과 비교할 때 압축 효율을 향상시킬 수 있다. 하지만, H.264와 같은 통상적인 양자화에서는 고정된 양자화 계수만을 이용하기 때문에, 영상의 특성에 따라 블록을 양자화하기 어려워 효율적으로 압축할 수 없다. 예를 들어, 블록 내의 각 화소들의 값의 변화가 일정 크기 이상으로 큰 경우에는 블록의 복잡도가 크다고 판단할 수 있고, 블록 내의 각 화소들의 값의 변화가 일정 크기보다 작은 경우에는 블록의 복잡도가 작다고 판단할 수 있다. 영상을 구성하는 블록들의 복잡도가 작은 경우에는 고정된 양자화 계수를 이용하여 양자화해도 압축의 성능에 큰 영향을 미치지 않지만, 영상을 구성하는 블록들의 복잡도가 큰 경우에는 고정된 양자화 계수를 이용하여 양자화하면 압축 성능에 큰 영향을 미칠 수 있다.
본 발명에서는 H.264와 같이, 고정된 양자화 계수만을 이용하여 양자화하는 기존의 양자화 방식과는 달리, 영상의 하나의 픽처를 구성하는 블록마다 그 특성에 따라 가변적인 양자화 계수를 이용하여 양자화함으로써, 영상의 특성을 반영하여 양자화한다. 이때, 영상의 특성은 영상의 복잡도일 수 있는데, 블록마다 복잡도를 계산하고 계산된 복잡도에 따라 양자화 계수를 결정할 수 있다.
양자화부(140)를 구성하는 양자화 계수 결정부는 독립적인 하드웨어 또는 소프트웨어 모듈로서 존재하는 양자화 계수 결정 장치될 수 있는데, 도 2와 같이 구성될 수 있다.
도 2는 본 발명의 일 실시예에 따른 양자화 계수 결정 장치의 구성을 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 양자화 계수 결정 장치(200)는 복잡도 계산 부(210), 임계값 설정부(220) 및 양자화 계수 결정부(230)를 포함하여 구성될 수 있다.
복잡도 계산부(210)는 현재 블록의 주변에 있는 주변 블록의 복잡도를 계산한다. 여기서, 주변 블록이란 현재 블록의 주위에 있는 하나 이상의 블록이 될 수 있는데, 특히 현재 블록을 부호화하기 이전에 이미 부호화되거나 부호화된 후 복호화되어 복원된 블록일 수 있다. 주변 블록은 현재 블록을 부호화하기 이전에 이미 부호화되거나 부호화된 후 복호화되어 복원된 블록들 중 현재 블록과 인접해 있는 블록인 인접 블록들일 수도 있으며, 인접 블록들 중 하나 이상이 선택적으로 이용될 수 있다. 즉, 도 3에 도시한 바와 같이, 주변 블록이 현재 블록과 인접해 있는 좌측 블록, 상단 좌측 블록, 상단 블록, 상단 우측 블록 등일 수 있지만, 반드시 이에 한정되지 않고, 현재 블록이 부호화되기 전에 이미 부호화되거나 부호화되고 복호화되어 복원된 블록 중에 현재 블록과 인접한 일부 또는 모든 블록일 수도 있으며, 현재 블록과 인접하지 않은 일부 또는 모든 블록일 수 있다.
복잡도 계산부(210)는 주변 블록의 복잡도를 계산하는 데 있어서, 하나 이상의 주변 블록의 계수 비트율(Coefficient Bitrate)을 이용하여 주변 블록의 복잡도를 계산할 수 있다. 주변 블록의 복잡도는 주변 블록들이 얼마나 복잡한 영상 특성을 갖는 블록인지를 나타내는 지표가 될 수 있는데, 주변 블록의 계수 비트율의 평균으로 계산될 수 있다. 이 경우, 주변 블록이 도 3에 도시한 바와 같다면, 수학식 4를 이용하여 주변 블록의 복잡도(adj coeff )를 계산할 수 있다.
Figure 112008067660658-PAT00004
수학식 4에서, a coeff 는 현재 블록의 좌측에 위치한 좌측 블록의 계수 비트율을 나타내고, b coeff 는 현재 블록의 상단에 위치한 상단 블록의 계수 비트율을 나타내며, c coeff 는 현재 블록의 상단 우측에 위치한 상단 우측 블록의 계수 비트율을 나타내며, d coeff 는 현재 블록의 상단 좌측에 위치한 상단 좌측 블록의 계수 비트율을 나타낸다.
여기서, 블록의 계수 비트율이란 블록당 양자화 주파수 계수가 부호화되어 생성되는 비트열의 비트수를 말한다. 예를 들어, 현재 블록의 좌측 블록(a coeff ) 내의 양자화 주파수 계수를 부호화하여 생성되는 비트열이 "00110011101100"라고 가정하면, 좌측 블록(a coeff )의 계수 비트율은 14이다. 따라서, 예를 들어, a coeff 가 10, b coeff 가 20, c coeff 가 30, d coeff 가 40이라면, 현재 블록의 주변 블록의 복잡도(adj coeff ) = (10 + 20 + 30 + 40) / 4 = 25가 된다.
임계값 설정부(220)는 주변 블록의 복잡 정도를 판단하기 위한 임계값을 설정한다. 복잡도 계산부(210)에 의해 계산되는 주변 블록의 복잡도로 그 복잡한 정도를 평가하기 어렵다. 따라서, 주변 블록의 복잡도를 평가하기 위해서는 평가를 위한 기준이 되는 임계값을 적절하게 설정해야 한다.
이와 같이, 주변 블록의 복잡 정도를 판단하기 위한 임계값은 미리 계산되어 임계값 설정부(220)에 입력하여 설정될 수도 있지만, 임계값 설정부(220)가 현재 블록의 주변 블록을 이용하여 적응적으로 임계값을 결정할 수 있다. 임계값 설정부(220)가 적응적으로 임계값을 결정하는 경우, 임계값은 현재 블록을 부호화하기 전에 이미 부호화된 블록의 계수 비트율을 이용하여 결정될 수 있는데, 이미 부호화된 블록은 이미 부호화된 블록이라면 현재 픽처 내의 모든 블록 또는 일부 블록일 수 있다. 임계값을 이미 부호화된 블록의 계수 비트율을 이용하여 계산하는 것을 수학식으로 표현하면 수학식 5와 같이 나타낼 수 있다.
Figure 112008067660658-PAT00005
수학식 5에서, n은 현재 블록의 번호를 나타내며, MBcoeff는 블록의 계수 비트율을 나타내며, i는 이미 부호화된 블록의 번호를 나타낸다.
양자화 계수 결정부(230)는 복잡도 계산부(210)에 의해 계산된 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정한다. 즉, 양자화 계수 결정부(230)는 주변 블록의 복잡도가 작은 경우에는 현재 블록의 양자화 계수를 기본으로 설정된 양자화 계수로 결정하고, 주변 블록의 복잡도가 큰 경우에는 효율적으로 양자화하기 위해 기본으로 설정된 양자화 계수보다 작은 값의 양자화 계수로 결정한다. 이 경우, 주변 블록의 복잡도가 큰지 또는 작은지 여부를 판단하기 위해서는 소정의 기준이 필요하다.
이를 위해, 양자화 계수 결정부(230)는 복잡도 계산부(210)에 의해 계산된 주변 블록의 복잡도와 임계값 설정부(220)에 의해 기 설정된 임계값을 비교하여, 주변 블록의 복잡도가 기 설정된 임계값 이하인 경우에는 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로서 결정하며, 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 기 설정된 기본 양자화 계수보다 작은 값의 양자화 계수를 현재 블록의 양자화 계수로서 결정할 수 있다.
즉, 주변 블록의 복잡도가 기 설정된 임계값 이하인 경우에는 주변 블록의 복잡도가 크지 않은 것으로 판단하여 기본 양자화 계수를 현재 블록의 양자화 계수로서 결정하는 것이고, 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 주변 블록의 복잡도가 큰 것으로 판단하여 효율적인 양자화를 위해 기본 양자화 계수보다 작은 값의 양자화 계수를 현재 블록의 양자화 계수로 결정함으로써, 작은 양자화 단계로 세밀하게 양자화할 수 있도록 하여 복잡한 영상의 특성에 맞는 양자화를 할 수 있도록 한다. 여기서, 기본 양자화 계수란 영상 부호화 장치(100)와 후술할 영상 복호화 장치에서 사전에 기본적으로 사용하기로 약속한 양자화 계수를 말하며, H.264에 따른 양자화 과정에서 사용하는 양자화 계수와 같이 고정된 값을 갖는다
여기서, 기 설정된 기본 양자화 계수보다 작은 값의 양자화 계수는 기본 양자화 계수의 값보다 작은 값이라면 어느 값을 가질 수 있다. 예를 들어, 기본 양자화 계수가 50이라면, 50보다 작은 1 내지 49 중 어느 한 값을 갖는 양자화 계수가 현재 블록의 양자화 계수로서 결정될 수 있고, 기본 양자화 계수가 10이라면 10보 다 작은 1 내지 9 중 어느 한 값을 갖는 양자화 계수가 현재 블록의 양자화 계수로서 결정될 수 있다.
또한, 기 설정된 기본 양자화 계수보다 작은 값의 양자화 계수는 전술한 바와 같이, 기본 양자화 계수의 값보다 작은 값 중 주변 블록의 복잡도를 이용하여 특정되는 값을 가질 수 있다. 예를 들어, 주변 블록의 복잡도가 기 설정된 임계값을 초과한 경우, 그 초과한 비율에 따라 기본 양자화 계수보다 작아지는 값의 비율을 결정할 수 있다. 주변 블록의 복잡도가 기 설정된 임계값을 10씩 초과할 때마다 기본 양자화 계수의 값에서 1씩 뺀 값을 갖는 양자화 계수를 현재 블록의 양자화 계수로 결정할 수 있다.
도 4는 본 발명의 일 실시예에 따른 양자화 계수 결정 방법을 설명하기 위한 순서도이다.
양자화 계수 결정 장치(200)는 현재 블록의 양자화 계수를 결정하기 위해, 현재 블록의 주변에 있는 주변 블록의 복잡도를 계산한다(S410). 이때, 양자화 계수 결정 장치(200)는 현재 블록을 부호화하기 이전에 미리 부호화한 블록들 또는 그 블록들 중 현재 블록과 인접한 하나 이상의 블록들을 주변 블록으로서 선정할 수 있고, 선정된 하나 이상의 주변 블록들의 계수 비트율을 평균함으로써 주변 블록의 복잡도를 계산할 수 있다.
주변 블록의 복잡도가 계산되면, 양자화 계수 결정 장치(200)는 계산된 주변 블록의 복잡도와 기 설정된 임계값을 비교하여 주변 블록의 복잡도가 기 설정된 임계값을 초과하는지 여부를 판단하고(S420), 주변 블록의 복잡도가 기 설정된 임계 값 이하인 경우에는 주변 블록의 복잡 정도가 크지 않다고 판단하여 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로서 결정하고(S430), 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 주변 블록의 복잡 정도가 크다고 판단하여 기본 양자화 계수보다 작은 값을 갖는 양자화 계수를 현재 블록의 양자화 계수로서 결정한다(S440).
도 2 내지 도 4를 통해 전술한 바와 같은, 양자화 계수 결정 장치(200)를 이용하면, 영상의 블록별로 블록의 영상 특성에 적합한 양자화 계수를 적응적으로 결정할 수 있고, 양자화부(140)는 블록별로 적응적으로 결정된 양자화 계수를 이용하여 효율적으로 양자화할 수 있다.
이하에서는 도 5를 통해 양자화 계수 결정 장치(200)에 의해 결정된 양자화 계수를 이용하여 양자화함으로써 영상을 부호화하는 과정에 대해 설명한다.
도 5는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
도 1을 통해 전술한 본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하기 위해, 영상을 매크로블록 또는 서브 블록 등의 블록 단위로 분할하고, 인터 예측 또는 인트라 예측 등의 예측 기법을 이용하여 영상의 현재 블록을 예측함으로써 예측 블록을 생성하며, 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성한다(S510). 잔차 블록이 생성되면, 영상 부호화 장치(100)는 잔차 블록을 주파수 영역으로 변환하여 주파수 계수를 갖는 잔차 블록을 생성한다(S520).
영상 부호화 장치(100)는 주파수 계수를 갖는 잔차 블록을 양자화하는 데, 영상의 특성을 고려하여 양자화하기 위해, 현재 블록의 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고(S530), 결정된 양자화 계수를 이용하여 변환된 잔차 블록을 양자화한다(S540). 영상 부호화 장치(100)는 단계 S530에서 양자화 계수를 결정할 때, 주변 블록의 복잡도를 계산하고 기 설정된 임계값과 비교하여 주변 블록의 복잡도가 기 설정된 임계값 이하인 경우에는, 기 설정된 기본 양자화 계수를 현재 블록의 양자화 계수로 결정하고 복잡도가 기 설정된 임계값을 초과하는 경우에는, 기 설정된 기본 양자화 계수보다 작은 값을 현재 블록의 양자화 계수로서 결정할 수 있다.
영상 부호화 장치(100)는 양자화된 잔차 블록의 양자화 주파수 계수를 부호화하여 부호화 데이터를 생성한다(S550). 부호화 데이터를 생성한 영상 부호화 장치(100)는 영상 복호화 장치에서 부호화 데이터를 복호화할 수 있도록 각종 정보를 생성하여 부호화 데이터에 포함시킨다. 따라서, 최종적으로 생성되는 부호화 데이터는 부호화된 블록 형태(CBP), 델타 양자화 계수 및 양자화 주파수 계수를 부호화하여 생성된 비트열을 포함하는 제 1 필드와 예측에 필요한 정보에 대한 비트를 포함하는 제 2 필드를 포함할 수 있다. 이 경우, 주변 블록의 복잡도가 기 설정된 임계값을 초과하여 기본 양자화 계수보다 작은 값을 현재 블록의 양자화 계수로서 결정한 경우에는 양자화 계수가 변경되어서, 제 1 필드에 포함된 델타 양자화 계수가 '0'이 되지 않으며, 이 경우 델타 양자화 계수를 위해 추가적인 비트가 할당되어야 하므로, 그로 인해 압축 효율이 떨어진다.
이를 위해, 영상 부호화 장치(100)는 주변 블록의 복잡도가 기 설정된 임계 값을 초과하여 기본 양자화 계수보다 작은 값을 갖는 양자화 계수가 현재 블록의 양자화 계수가 된 경우에는, 작은 값으로 변경된 현재 블록의 양자화 계수를 기본 양자화 계수로 재변경할 수 있다. 예를 들어, 기본 양자화 계수가 '30'이었는데, 현재 블록의 양자화 계수를 '10'으로 결정한 경우, 단계 S450에서 잔차 블록을 양자화할 때에는 '10'의 값을 갖는 양자화 계수로 양자화하지만, 부호화한 이후에는 현재 블록의 양자화 계수를 다시 기본 양자화 계수 '30'으로 재변경함으로써, 델타 양자화 계수가 '0'이 되도록 한다.
이상에서 전술한 바와 같이, 본 발명의 일 실시예에 따른 영상 부호화 장치(100)와 그를 이용한 영상 부호화 방법을 이용하면, 블록의 영상 특성을 고려하여 블록마다 양자화 계수를 적응적으로 결정할 수 있으므로, 영상의 특성에 적합한 양자화 계수로 양자화할 수 있고 그에 따라 압축 효율을 향상시킬 수 있다. 이와 같이, 영상 부호화 장치(100)에 의해 부호화 데이터로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등의 통신 인터페이스를 통해 후술할 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 복호화 장치(600)는 도 1을 통해 전술한 영상 부호화 장치(100)와 같이, 개인용 컴퓨터(PC: Personal Computer), 노트북 컴 퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.
본 발명의 일 실시예에 따른 영상 복호화 장치(600)는 복호화부(610), 역 양자화부(610), 역 변환부(630), 예측부(640) 및 가산부(650)를 포함하여 구성될 수 있다.
복호화부(610)는 부호화 데이터를 복호화하여 잔차 블록을 추출한다. 즉, 복호화부(610)는 부호화 데이터를 복호화하여 양자화 주파수 계수열을 추출하고, 양자화 주파수 계수열을 역 지그재그 스캔 등 다양한 역 스캐닝 방식으로 역 스캐닝하여 양자화 주파수 계수를 갖는 잔차 블록을 생성한다. 이때, 복호화부(610)는 부호화 데이터에 포함된 제 1 필드에서 부호화된 잔차 블록을 추출하여 복호화할 수 있고, 부호화 데이터에 포함된 제 2 필드에서 예측에 필요한 정보를 추출할 수 있으며, 추출된 예측에 필요한 정보를 예측부(640)로 전달하여, 예측부(640)가 영상 부호화 장치(100)의 예측부(110)와 동일한 방식으로 현재 블록을 예측하도록 할 수 있다. 또한, 복호화부(610)는 제 1 필드에 델타 양자화 계수가 포함된 경우에는 델타 양자화 계수를 추출할 수 있다.
역 양자화부(620)는 잔차 블록을 역 양자화하여 역 양자화된 잔차 블록을 생성한다. 이때, 역 양자화부(620)는 잔차 블록을 역 양자화하는 데 있어서, 주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고, 결정된 현재 블록의 양자화 주파수 계수를 이용하여 잔차 블록을 역 양자화한다. 또한, 역 양자화부(620)는 도 1을 통해 전술한 양자화부(140)와 같이, 도 2를 통해 전술한 양자화 계수 결정 장치(200)를 포함하여 구성될 수 있으며, 양자화 계수 결정 장치(200)가 현재 블록의 양자화 계수를 결정하는 방식과 동일한 방식으로 현재 블록의 양자화 계수를 결정할 수 있다. 다만, 역 양자화부(620)는 주변 블록의 복잡도가 기 설정된 임계값 이하여서 기본 양자화 계수를 이용하여 양자화된 것으로 판단되면, 복호화부(610)에 의해 부호화 데이터로부터 추출된 델타 양자화 계수에 의해 식별되는 양자화 계수를 현재 블록의 양자화 계수로서 결정할 수 있다.
역 변환부(630)는 역 양자화부(620)에 의해 역 양자화된 잔차 블록을 역 변환한다. 예측부(640)는 현재 블록을 예측하여 예측 블록을 생성한다. 예측부(640)는 복호화부(620)로부터 전달되는 예측에 필요한 정보를 이용하여 현재 블록을 예측할 수 있다. 가산부(650)는 역 변환된 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원한다. 가산부(650)에 의해 복원된 현재 블록은 예측부(640)로 전달되어, 예측부(640)에서 다른 블록을 예측하는 데 활용될 수 있다. 도 6에서는 도시하지 않았지만, 예측부(640)와 가산부(650) 사이에는 디블로킹 필터부(미도시)가 추가로 연결될 수 있다. 디블로킹 필터부는 도 1을 통해 전술한 바와 같으므로 상세한 설명은 생략한다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
유무선 통신망 또는 케이블 등을 통해 영상에 대한 부호화 데이터를 수신하여 저장한 영상 복호화 장치(600)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상을 복호화하여 복원한다.
이를 위해, 영상 복호화 장치(600)는 부호화 데이터를 복호화하여 잔차 블록을 추출한다(S710). 이때, 영상 복호화 장치(600)는 부호화 데이터에 포함된 제 1 필드에서 부호화된 잔차 블록을 추출하여 복호화할 수 있고, 부호화 데이터에 포함된 제 2 필드에서 예측에 필요한 정보를 추출할 수 있으며, 추출된 예측에 필요한 정보를 이용하여 인트라 예측을 위한 인트라 예측 모드 또는 인터 예측을 위한 움직임 벡터 등을 식별할 수 있다. 또한, 영상 복호화 장치(600)는 제 1 필드에 델타 양자화 계수가 포함된 경우에는 델타 양자화 계수를 추출할 수 있다. 영상 부호화 장치(100)에서 기본 양자화 계수로 양자화된 경우에는 제 1 필드에 델타 양자화 계수가 포함될 수 있으며, 기본 양자화 계수가 아닌 작은 값의 양자화 계수로 양자화된 경우에는 제 1 필드에 델타 양자화 계수가 포함되지 않을 수 있다.
잔차 블록을 추출한 영상 복호화 장치(600)는 잔차 블록을 역 양자화하기 위해 양자화 계수를 결정하는데, 주변 블록의 복잡도에 따라 양자화 계수를 결정한다(S720). 즉, 영상 복호화 장치(600)는 주변 블록의 복잡도를 계산하여 기 설정된 임계값과 비교하여 주변 블록의 복잡도가 기 설정된 임계값을 초과하는지 여부를 판단함으로써, 잔차 블록이 기본 양자화 계수를 이용하여 양자화되었는지 또는 기 본 양자화 계수보다 작은 값을 갖는 양자화 계수를 이용하여 양자화되었는지를 판단할 수 있다. 주변 블록의 복잡도가 기 설정된 임계값 이하여서 기본 양자화 계수를 이용하여 양자화된 것으로 판단되면, 단계 S710에서 부호화 데이터로부터 추출된 델타 양자화 계수에 의해 식별되는 양자화 계수를 현재 블록의 양자화 계수로서 결정하고, 주변 블록의 복잡도가 기 설정된 임계값을 초과하여 기본 양자화 계수보다 작은 값을 갖는 양자화 계수를 이용하여 양자화된 것으로 판단되면, 기본 양자화 계수보다 작은 값을 갖는 양자화 계수를 현재 블록의 양자화 계수로서 결정한다.
이때, 영상 복호화 장치(600)는 영상 부호화 장치(100)와 사전에 약속된 방식에 따라 기본 양자화 계수보다 작은 값을 갖는 양자화 계수를 계산한다. 사전에 약속된 방식이란 기본 양자화 계수의 값보다 작은 값 중 영상 부호화 장치(100)가 선택한 양자화 계수와 동일한 양자화 계수를 선택하거나, 기본 양자화 계수의 값보다 작은 값 중 주변 블록의 복잡도를 이용하여 특정되는 값을 선택하는 것을 말한다. 이에 대한 것은 도 2를 통해 전술하였으므로 상세한 설명은 생략한다.
단계 S720에서 양자화 계수가 결정되면, 영상 복호화 장치(600)는 결정된 양자화 계수를 이용하여 단계 S710에서 추출된 잔차 블록을 역 양자화하고(S730), 역 양자화된 잔차 블록을 공간 영역으로 역 변환한다(S740). 또한, 영상 복호화 장치(600)는 현재 블록을 예측하여 예측 블록을 생성하고(S750), 예측된 예측 블록과 단계 S740에서 역 변환된 잔차 블록을 가산하여 현재 블록을 복원한다(S760).
복원된 현재 블록은 픽처 단위로 누적되어 복원 영상으로 출력될 수 있으며, 다음 블록을 예측하기 위한 참조 픽처로서 저장될 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어 와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 발명은 영상을 부호화하고 복호화하는 기술 분야에 적용되어, 영상의 특성에 따라 양자화 계수를 적응적으로 결정할 수 있어서, 블록별로 다른 양자화 계수를 이용하여 양자화할 수 있으며, 그를 통해 영상의 특성을 고려한 부호화를 수행할 수 있어서, 영상의 하나의 픽처 내에 복잡한 특성을 갖는 블록과 평이한 특성을 갖는 블록이 혼재되어 있는 경우에도, 효율적으로 부호화할 수 있어 압축 성능을 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치의 구성을 간략하게 나타낸 블록 구성도,
도 2는 본 발명의 일 실시예에 따른 양자화 계수 결정 장치의 구성을 간략하게 나타낸 블록 구성도,
도 3은 본 발명의 일 실시예에 따른 현재 블록과 주변 블록을 나타낸 예시도,
도 4는 본 발명의 일 실시예에 따른 양자화 계수 결정 방법을 설명하기 위한 순서도,
도 5는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도,
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 간략하게 나타낸 블록 구성도.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.

Claims (17)

  1. 양자화 계수를 결정하는 장치에 있어서,
    주변 블록의 복잡도를 계산하는 복잡도 계산부;
    복잡 정도를 판단하기 위한 임계값을 설정하는 임계값 설정부; 및
    상기 복잡도가 상기 임계값 이하인 경우에는 기 설정된 기본 양자화 계수를 상기 현재 블록의 양자화 계수로서 결정하고, 상기 복잡도가 상기 임계값을 초과하는 경우에는 상기 기본 양자화 계수보다 작은 값의 양자화 계수를 상기 현재 블록의 양자화 계수로서 결정하는 양자화 계수 결정부
    를 포함하는 것을 특징으로 하는 양자화 계수 결정 장치.
  2. 제 1 항에 있어서, 상기 임계값은,
    상기 현재 블록을 부호화하기 전에 이미 부호화된 블록의 계수 비트율을 이용하여 설정되는 것을 특징으로 하는 양자화 계수 결정 장치.
  3. 제 1 항에 있어서, 상기 복잡도 계산부는,
    하나 이상의 주변 블록의 계수 비트율을 이용하여 상기 복잡도를 계산하는 것을 특징으로 하는 양자화 계수 결정 장치.
  4. 제 1 항에 있어서, 상기 주변 블록은,
    상기 현재 블록을 부호화하기 전에 이미 부호화된 블록인 것을 특징으로 하는 양자화 계수 결정 장치.
  5. 제 4 항에 있어서, 상기 주변 블록은,
    상기 현재 블록을 부호화하기 전에 이미 부호화된 블록 중 상기 현재 블록과 인접한 블록 중 하나 이상의 블록인 것을 특징으로 하는 양자화 계수 결정 장치.
  6. 양자화 계수를 결정하는 방법에 있어서,
    주변 블록의 복잡도를 계산하는 복잡도 계산 단계;
    상기 복잡도를 기 설정된 임계값과 비교하는 비교 단계;
    상기 복잡도가 상기 기 설정된 임계값 이상인 경우에는, 기 설정된 기본 양자화 계수를 상기 현재 블록의 양자화 계수로 결정하는 양자화 계수 유지 단계; 및
    상기 복잡도가 상기 기 설정된 임계값을 초과하는 경우에는, 상기 기 설정된 기본 양자화 계수보다 작은 값을 상기 현재 블록의 양자화 계수로서 결정하는 양자화 계수 변경 단계
    를 포함하는 것을 특징으로 하는 양자화 계수 결정 방법.
  7. 영상을 부호화하는 장치에 있어서,
    현재 블록을 예측하여 예측 블록을 생성하는 예측부;
    상기 현재 블록과 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부;
    상기 잔차 블록을 주파수 영역으로 변환하는 변환부;
    주변 블록의 복잡도에 따라 상기 현재 블록의 양자화 계수를 결정하여 상기 변환된 잔차 블록을 양자화하는 양자화부; 및
    상기 양자화된 잔차 블록을 부호화하여 부호화 데이터를 생성하는 부호화부
    를 포함하는 것을 특징으로 하는 영상 부호화 장치.
  8. 제 7 항에 있어서, 상기 양자화부는,
    상기 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 상기 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수보다 작은 값으로 변경하는 것을 특징으로 하는 영상 부호화 장치.
  9. 제 8 항에 있어서, 상기 부호화부는,
    상기 양자화된 잔차 블록을 부호화한 후, 상기 변경된 현재 블록의 양자화 계수를 기본 양자화 계수로 재변경하는 것을 특징으로 하는 영상 부호화 장치.
  10. 제 7 항에 있어서, 상기 양자화부는,
    상기 주변 블록의 복잡도가 기 설정된 임계값 이하인 경우에는 상기 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수로서 결정하는 것을 특징으로 하는 영상 부호화 장치.
  11. 영상을 부호화하는 방법에 있어서,
    현재 블록을 예측하여 예측 블록을 생성하는 예측 단계;
    상기 현재 블록과 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산 단계;
    상기 잔차 블록을 주파수 영역으로 변환하는 변환 단계;
    주변 블록의 복잡도에 따라 상기 현재 블록의 양자화 계수를 결정하여 상기 변환된 잔차 블록을 양자화하는 양자화 단계; 및
    상기 양자화된 잔차 블록을 부호화하여 부호화 데이터를 생성하는 부호화 단계
    를 포함하는 것을 특징으로 하는 영상 부호화 방법.
  12. 제 11 항에 있어서, 상기 양자화 단계는,
    상기 주변 블록의 복잡도를 계산하는 복잡도 계산 단계;
    상기 복잡도를 기 설정된 임계값과 비교하는 비교 단계;
    상기 복잡도가 상기 기 설정된 임계값 이상인 경우에는, 기 설정된 기본 양자화 계수를 상기 현재 블록의 양자화 계수로 결정하는 양자화 계수 유지 단계;
    상기 복잡도가 상기 기 설정된 임계값을 초과하는 경우에는, 상기 기 설정된 기본 양자화 계수보다 작은 값을 현재 블록의 양자화 계수로서 결정하는 양자화 계수 변경 단계; 및
    상기 결정된 현재 블록의 양자화 계수를 이용하여 상기 변환된 잔차 블록을 양자화하는 단계
    를 포함하는 것을 특징으로 하는 영상 부호화 방법.
  13. 제 11 항에 있어서, 상기 영상 부호화 방법은,
    상기 현재 블록의 양자화 계수가 기 설정된 기본 양자화 계수보다 작은 값으로 변경된 경우에는, 상기 변경된 현재 블록의 양자화 계수를 기본 양자화 계수로 재변경하는 양자화 계수 재변경 단계를 추가로 포함하는 것을 특징으로 하는 영상 부호화 방법.
  14. 영상을 복호화하는 장치에 있어서,
    부호화 데이터를 복호화하여 잔차 블록을 추출하는 복호화부;
    주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고 상기 결정된 현재 블록의 양자화 주파수 계수를 이용하여 상기 잔차 블록을 역 양자화하는 역 양자화부;
    상기 역 양자화된 잔차 블록을 역 변환하는 역 변환부;
    상기 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 및
    상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부
    를 포함하는 것을 특징으로 하는 영상 복호화 장치.
  15. 제 14 항에 있어서, 상기 역 양자화부는,
    상기 주변 블록의 복잡도가 기 설정된 임계값을 초과하는 경우에는 상기 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수보다 작은 값으로 변경하는 것을 특징으로 하는 영상 부호화 장치.
  16. 제 14 항에 있어서, 상기 역 양자화부는,
    상기 주변 블록의 복잡도가 기 설정된 임계값 이하인 경우에는 상기 현재 블록의 양자화 계수를 기 설정된 기본 양자화 계수로서 결정하는 것을 특징으로 하는 영상 부호화 장치.
  17. 영상을 복호화하는 방법에 있어서,
    부호화 데이터를 복호화하여 잔차 블록을 추출하는 복호화 단계;
    주변 블록의 복잡도에 따라 현재 블록의 양자화 계수를 결정하고 상기 잔차 블록을 역 양자화하는 역 양자화 단계;
    상기 역 양자화된 잔차 블록을 역 변환하는 역 변환 단계;
    상기 현재 블록을 예측하여 예측 블록을 생성하는 예측 단계; 및
    상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산 단계
    를 포함하는 것을 특징으로 하는 영상 복호화 방법.
KR1020080094494A 2008-09-26 2008-09-26 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 KR101539045B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080094494A KR101539045B1 (ko) 2008-09-26 2008-09-26 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080094494A KR101539045B1 (ko) 2008-09-26 2008-09-26 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020130081454A Division KR20130084285A (ko) 2013-07-11 2013-07-11 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20100035243A true KR20100035243A (ko) 2010-04-05
KR101539045B1 KR101539045B1 (ko) 2015-07-23

Family

ID=42213150

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080094494A KR101539045B1 (ko) 2008-09-26 2008-09-26 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101539045B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012118358A2 (ko) * 2011-03-03 2012-09-07 한국전자통신연구원 변환 계수 스캔 방법 및 그 장치
US20130329807A1 (en) * 2011-03-03 2013-12-12 Electronics And Telecommunications Research Institute Method for scanning transform coefficient and device therefor
WO2016148513A1 (ko) * 2015-03-19 2016-09-22 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치
US10284849B2 (en) 2015-04-13 2019-05-07 Qualcomm Incorporated Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure
US10356428B2 (en) 2015-04-13 2019-07-16 Qualcomm Incorporated Quantization parameter (QP) update classification for display stream compression (DSC)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07226935A (ja) * 1994-02-14 1995-08-22 Mitsubishi Electric Corp 画像情報圧縮装置
KR100498333B1 (ko) * 2002-10-26 2005-07-01 엘지전자 주식회사 양자화 파라미터 결정 방법
KR20070016663A (ko) * 2005-08-04 2007-02-08 김해광 블록 기반 영상 부호화 및 재생 방법 및 장치

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012118358A2 (ko) * 2011-03-03 2012-09-07 한국전자통신연구원 변환 계수 스캔 방법 및 그 장치
WO2012118358A3 (ko) * 2011-03-03 2012-12-20 한국전자통신연구원 변환 계수 스캔 방법 및 그 장치
US20130329807A1 (en) * 2011-03-03 2013-12-12 Electronics And Telecommunications Research Institute Method for scanning transform coefficient and device therefor
US11102494B2 (en) 2011-03-03 2021-08-24 Electronics And Telecommunication Research Institute Method for scanning transform coefficient and device therefor
US11606567B2 (en) 2011-03-03 2023-03-14 Electronics And Telecommunications Research Institute Method for scanning transform coefficient and device therefor
US11812038B2 (en) 2011-03-03 2023-11-07 Electronics And Telecommunications Research Institute Method for scanning transform coefficient and device therefor
WO2016148513A1 (ko) * 2015-03-19 2016-09-22 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치
US10390022B2 (en) 2015-03-19 2019-08-20 Lg Electronics Inc. Method for processing video signal and device therefor
US10284849B2 (en) 2015-04-13 2019-05-07 Qualcomm Incorporated Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure
US10356428B2 (en) 2015-04-13 2019-07-16 Qualcomm Incorporated Quantization parameter (QP) update classification for display stream compression (DSC)

Also Published As

Publication number Publication date
KR101539045B1 (ko) 2015-07-23

Similar Documents

Publication Publication Date Title
KR101379185B1 (ko) 예측 모드 선택 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101997604B1 (ko) 영상 부호화/복호화 방법 및 장치
US9462279B2 (en) Image encoding/decoding method and device
KR101830352B1 (ko) 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치
US10034024B2 (en) Method and apparatus for encoding/decoding images considering low frequency components
KR101377660B1 (ko) 복수 개의 움직임 벡터 추정을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20100048435A (ko) 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101379186B1 (ko) 인트라 예측 부호화/복호화 방법 및 장치
KR101462052B1 (ko) 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
KR20130085838A (ko) 가중치예측을 이용한 영상 부호화/복호화 방법 및 장치
US20140105284A1 (en) Method and apparatus for coding/decoding through high-speed coding unit mode decision
KR20110043510A (ko) 영상 부호화/복호화 장치 및 방법
KR101763113B1 (ko) 노이즈성분을 위한 공간영역에서의 영상 부호화/복호화 방법 및 장치
KR20120025174A (ko) 효과적인 화면내 예측모드 집합 선택을 이용한 영상 부호화/복호화 방법 및 장치
KR20120009861A (ko) 확장된 스킵모드를 이용한 영상 부호화/복호화 방법 및 장치
KR20110101443A (ko) 움직임 벡터 해상도 조합을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20100035104A (ko) 임펄스 신호를 고려한 영상 부호화/복호화 장치 및 방법
KR20120015495A (ko) 필터링모드 생략가능한 영상 부호화/복호화 방법 및 장치
KR101539045B1 (ko) 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20110045912A (ko) 적응적인 해상도 기반의 영상 부호화/복호화 방법 및 장치
KR101943058B1 (ko) 영상 부호화/복호화 방법 및 장치
KR101449683B1 (ko) 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101359500B1 (ko) 양자화/역 양자화 장치 및 방법과 그를 이용한 영상부호화/복호화 장치
KR20100019088A (ko) 인터 예측 장치 및 그를 이용한 영상 부호화/복호화 장치와방법
KR20130084285A (ko) 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
A302 Request for accelerated 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: 20180703

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190626

Year of fee payment: 5