KR101997599B1 - 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 - Google Patents
비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 Download PDFInfo
- Publication number
- KR101997599B1 KR101997599B1 KR1020190008384A KR20190008384A KR101997599B1 KR 101997599 B1 KR101997599 B1 KR 101997599B1 KR 1020190008384 A KR1020190008384 A KR 1020190008384A KR 20190008384 A KR20190008384 A KR 20190008384A KR 101997599 B1 KR101997599 B1 KR 101997599B1
- Authority
- KR
- South Korea
- Prior art keywords
- unit
- block
- prediction
- quantization
- frequency
- 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/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 영상 부호화 장치에 관한 것으로, 현재 블록의 예측모드를 결정하고, 결정된 예측모드를 사용하여 예측 블록을 생성하는 예측부; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 상기 잔차 블록을 변환 단위 크기로 변환하여 주파수변환블록을 생성하는 변환부; 상기 주파수변환블록의 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 양자화의 크기를 가변적으로 적용하여 상기 주파수변환블록을 양자화하는 양자화부; 및 상기 양자화된 주파수 변환 블록의 변환 단위 내의 양자화된 주파수계수들을 스캔 및 부호화하는 비트스트림 생성부를 포함한다.
Description
본 발명은 동영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 원 영상 신호와 예측 신호 간의 잔차 신호를 주파수변환하여 얻은 주파수변환계수블록을 양자화할 때 각 주파수계수의 위치에 따라 양자화의 크기를 달리 하여 양자화함으로써 압축 성능을 향상시키는 영상의 부호화/복호화 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 반드시 종래기술을 구성하는 것은 아니다. 또한, 배경 정보에 해당하는 기술이 뿐만 아니라 배경 기술과 유사한 부호화/복호화 방법 및 장치를 모두 포함한다.
동영상의 압축 기술의 전문가들이 모여 결성된 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 JCT-VC(Joint Collaborative Team on Video Coding)라는 MPEG과 VCEG의 공동 팀을 결성하여 기존의 H.264/AVC(Advanced video Coding)보다 고화질, 고성능, 고효율 동영상 압축 기술로 약 50%이상의 압축 성능 향상을 가지는 새로운 동영상 압축 표준을 목표로 HEVC(High Efficiency Video Coding)이라는 이름의 표준안에 대한 표준화가 진행 중이다. 이는 기존 H.264/AVC의 기술보다 향상된 압축률을 가지는 고화질/고성능 압축기술을 목표로 시작되었으며, 다양한 부호화 방법이 채택되었고 기존 표준화 기술보다 화질과 성능 향상 면에서 많은 발전을 가져오고 있다.
도 1 은 HEVC의 코딩단위인 CU(Coding Unit)에 관한 예를 보여준다. HEVC는 이와 같은 코딩단위(CU)를 기본 단위로 시작되며 쿼드트리(Quad Tree)의 형태를 가진다. 도 1을 상세히 설명하면 크기가 64×64를 가장 큰 코딩 단위인 LCU(Largest Coding Unit)일 때 깊이(depth)를 0으로 하여 깊이가 3이 될 때까지, 즉 8×8크기의 코딩단위(CU)까지 귀납적으로 부호화를 수행하는 형태를 보여준다.
코딩의 기본단위는 다시 하위 계층으로 분류되는 예측의 기본 단위로 분류되며 예측단위 PU(Prediction Unit)로 정의되며, 하나의 예측단위(PU)는 다수개의 블록으로 분할되어 예측을 수행하는 형태를 지닌다.
도 2 는 통상적인 예측단위인 PU의 종류와 하나의 코딩단위(CU)내에서 예측단위(PU)의 예측순서를 나타낸다.
도 2 를 참조하면, 크기가 2N×2N인 한 코딩단위(CU) 내에서 스킵(Skip)모드를 수행한 이후에 인터 2N×2N 모드, 인터 2N×N 모드, 인터 N×2N 모드, 인터 N×N 모드, 인트라 2N×2N 모드, 인트라 N×N 모드 순서로 예측을 수행한다. 단, 크기가 8×8인 코딩단위(CU)를 제외하고는 모든 코딩단위(CU)에서 인터 N×N 모드, 인트라 N×N 모드를 제외한 모든 나머지 예측단위(PU)에 대하여 예측을 수행한다.
예측방법은 크게 부호화중인 프레임 내에서 부호화된 블록으로부터 예측 값을 사용하여 예측하는 화면 내 예측 부호화 방법과 이전에 복원된 프레임으로부터 움직임을 추정하여 현재 프레임의 블록을 예측하는 화면 간 예측 부호화 방법으로 분류할 수 있다.
화면 내 예측 방법으로는 이전에 부호화된 해당 블록의 좌측, 좌측하단, 좌측상단, 상단, 우측상단의 픽셀 값을 이용하여 여러 방향으로 예측을 수행하는 통합된 화면 내 예측 방법(Unified Intra Prediction)이 사용되고 있다.
도 3은 통상적인 인트라 예측 모드의 방향을 나타낸 도면이다.
도 3을 참조하면, 인트라 예측 모드는 DC (Direct Current) 모드, 플라나 (Planar) 모드와 총 33가지의 예측 방향을 가진 각도 (Angular) 모드를 포함하는 총 35가지의 예측 모드가 있다.
비디오의 화면 간 예측 방법(Inter predictive coding)에는 영상 프레임을 분할해서 이전에 부호화된 프레임으로부터 움직임을 추정하여 현재의 블록을 예측하는 움직임보상을 사용하고 있다.
화면 내 예측방법 또는 화면 간 예측방법으로 하나의 예측블록이 만들어지게 되면 현재블록의 원 화소값과 예측블록의 예측값 간의 차이값을 계산하여 잔차 신호를 생성한다. 이렇게 생성된 잔차신호를 주파수 변환하여 주파수변환블록을 얻고 이를 양자화(Quantization)시켜 양자화된 주파수계수블록을 형성한다. 변환과 양자화(Quantization)의 기본 단위는 변환단위(TU:Transform Unit)라고 명칭하며 변환단위(TU)에 따라서 결정되는 스캐닝 방법에 따라서 엔트로피 코딩을 수행하여 비트스트림을 생성한다.
도 4는 예측을 마친 예측 단위(PU)를 다시 변환단위(TU)를 통해 변환 및 양자화를 마친 주파수계수를 스캐닝 하는 방법을 나타낸다.
도 4를 상세히 설명하면, 화면 내 예측 방법에서는 수직방향의 스캐닝 방법, 수평방향의 스캐닝 방법, 지그재그(Zigzag) 스캐닝 방법 중에 하나를 사용하여 스캐닝 을 적용하고, 화면간 예측에서는 지그재그(Zigzag) 스캐닝 방법을 사용하는 것을 나타낸다. 스캐닝 방법은 다양한 방법을 사용할 수 있으며 도 4에서는 3가지 방법의 스캐닝을 사용하는 것에 대한 예를 보여주며 소정의 순서에 따라 양자화된 주파수계수블록을 스캐닝하고 엔트로피코딩(Entropy Coding) 방법을 통해 부호화 과정을 수행한다.
변환 및 양자화를 변환단위(TU)에 따라 각각 수행함에 있어 양자화 과정은 주파수계수로의 변환을 마친 계수를 양자화하며, 이때 양자화의 크기의 결정은 양자화 파라미터(Quantization parameter)에 의해 결정된다. 양자화 파라미터를 통해 결정된 양자화의 크기에 따라서 변환단위(TU) 안에 모든 계수의 값은 동일한 크기의 양자화를 수행한다. 하지만, 스캐닝 방법과 순서에 상관없이 변환단위(TU)가 모두 동일한 크기의 양자화를 수행하는 것은 부호화 성능에서 효과적이지 않다는 문제점을 지닌다.
이러한 문제점을 해결하기 위한 본 발명의 실시 예에 따르면, 원 영상 신호와 예측 신호 간의 잔차 신호를 주파수변환하여 얻은 주파수변환계수블록을 양자화할 때 각 주파수계수의 위치에 따라 양자화의 크기를 달리 하여 양자화함으로써 압축 성능을 향상시키는 데에 주된 목적이 있다.
본 발명의 일 측면에 따르면, 현재 블록의 예측모드를 결정하고, 결정된 예측모드를 사용하여 예측 블록을 생성하는 예측부; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 상기 잔차 블록을 변환 단위 크기로 변환하여 주파수변환블록을 생성하는 변환부; 상기 주파수변환블록의 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 양자화의 크기를 가변적으로 적용하여 상기 주파수변환블록을 양자화하는 양자화부; 및 상기 양자화된 주파수 변환 블록의 변환 단위 내의 양자화된 주파수계수들을 스캔 및 부호화하는 비트스트림 생성부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.
상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 변환 단위 내의 주파수계수가 휘도 성분인지 또는 색차 성분인지 여부를 고려하여 결정될 수 있다.
또한, 상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 결정된 예측 모드가 인터 예측인지 또는 인트라 예측인지 여부를 고려하여 결정될 수 있다.
한편, 상기 비트스트림 생성부는, 상기 결정된 예측 모드에 따라 상기 변환 단위에 적용되는 스캔 패턴을 결정할 수 있으며, 나아가 상기 결정된 예측 모드가 인트라 예측인 경우, 인트라 예측 방향에 따라 복수의 스캔 패턴 중 상기 변환 단위에 적용되는 스캔 패턴을 결정할 수 있다.
한편, 상기 양자화부는, 상기 변환 단위에 적용되는 스캔 패턴에 근거하여 상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 상기 양자화의 크기를 가변적으로 적용할 수 있다. 상기 변환 단위에 적용되는 스캔 패턴에서 스캔 순서가 늦은 위치의 주파수계수일수록 양자화 크기를 크게 할 수 있고, 또는 상기 변환 단위에 적용되는 스캔 패턴의 스캔 순서에 따라 구분되는 상기 변환 단위 내의 복수의 영역마다 양자화 크기를 달리할 수도 있다.
본 발명의 또 다른 측면에 따르면, 비트스트림으로부터 현재블록의 예측 모드에 대한 정보를 복호화하고, 상기 현재블록으로부터 분할된 변환 단위들에 대응하는 주파수계수들에 대한 정보를 복호화 및 역스캔하여 양자화된 주파수변환블록을 생성하는 복호화부; 상기 양자화된 주파수변환블록의 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 역양자화의 크기를 가변적으로 적용하여 주파수변환블록을 생성하는 역양자화부; 상기 주파수변환블록을 변환 단위 크기로 역변환하여 잔차블록을 생성하는 역변환부; 상기 예측 모드에 대한 정보에 따라 예측블록을 생성하는 예측부; 및 상기 잔차블록과 예측블록을 가산하는 가산기를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.
이상에서 설명한 바와 같이 본 발명의 일 실시예에 의하면, 원 영상 신호와 예측 신호 간의 잔차 신호를 주파수변환하여 얻은 주파수변환계수블록을 양자화할 때 주파수계수의 위치에 따라 양자화의 크기를 달리 하여 양자화함으로써 압축 성능을 향상시키는 효과가 있다.
도 1은 코딩단위(CU)의 크기와 쿼드트리 형태를 나타낸 도면이다.
도 2는 한 코딩단위(CU)내에서 부호화되는 예측단위(PU)의 종류와 순서를 나타낸 도면이다.
도 3은 통상적인 인트라 모드의 방향을 나타낸 도면이다.
도 4는 예측방법에 따라 다르게 적용되는 스캐닝 방법을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
도 6는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도이다.
도 7은 본 발명의 일 실시예에 따른 코딩단위(CU)내에서 예측단위(PU) 결정을 설명하기 위한 순서도이다.
도 8은 주파수변환블록으로부터 비트스트림을 생성하는 과정을 나타내는 순서도이다.
도 9는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
도 2는 한 코딩단위(CU)내에서 부호화되는 예측단위(PU)의 종류와 순서를 나타낸 도면이다.
도 3은 통상적인 인트라 모드의 방향을 나타낸 도면이다.
도 4는 예측방법에 따라 다르게 적용되는 스캐닝 방법을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
도 6는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도이다.
도 7은 본 발명의 일 실시예에 따른 코딩단위(CU)내에서 예측단위(PU) 결정을 설명하기 위한 순서도이다.
도 8은 주파수변환블록으로부터 비트스트림을 생성하는 과정을 나타내는 순서도이다.
도 9는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
이하에서 후술할 영상 부호화 장치(Video Encoding Apparatus), 영상 복호화 장치(Video Decoding Apparatus)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV 등과 같은 사용자 단말기이거나 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하거나 부호화 또는 복호화를 위해 인터 또는 인트라 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.
또한, 영상 부호화 장치에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등과 같은 다양한 통신 인터페이스를 통해 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.
통상적으로 동영상은 일련의 픽처(Picture)로 구성될 수 있으며, 각 픽처들은 프레임 또는 블록(Block)과 같은 소정의 영역으로 분할될 수 있다. 영상의 영역이 블록으로 분할되는 경우에는 분할된 블록은 부호화 방법에 따라 크게 화면 내 예측 방법인 인트라 블록(Intra Block), 화면 간 예측 방법인 인터 블록(Inter Block)으로 분류될 수 있다. 화면 내 예측 블록은 인트라 예측 부호화(Intra Prediction Coding) 방식을 사용하여 부호화되는 블록을 뜻하는데, 화면 내 예측 부호화란 현재 부호화를 수행하는 현재 픽처 내에서 이전에 부호화되고 복호화되어 복원된 블록들의 화소를 이용하여 현재 블록의 화소를 예측함으로써 예측 블록을 생성하고 현재 블록의 화소와의 차분값을 부호화하는 방식이다. 화면 간 예측 블록은 인터 예측 부호화(Inter Prediction Coding)를 사용하여 부호화되는 블록을 뜻하는데, 화면 간 예측 부호화란 하나 이상의 과거 픽처 또는 미래 픽처를 참조하여 현재 픽처 내의 현재 블록을 예측함으로써 예측 블록을 생성하고 현재 블록과의 차분값을 부호화하는 방식이다. 여기서, 현재 픽처를 부호화하거나 복호화하는데 참조되는 프레임을 참조 프레임(Reference Frame)이라고 한다.
도 5는 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 부호화 장치(500)는 영상의 상기 주파수변환블록을 정해진 스캐닝 방법에 따른 각 계수의 위치에 따라 다른 크기의 양자화를 통해 양자화된 주파수변환블록을 생성하는 장치로서, 도 6에 도시한 바와 같이, 예측부(510), 감산부(520), 변환부(530), 양자화부(540) 및 부호화부(550)를 포함하여 구성될 수 있다.
부호화하고자 하는 입력 영상은 코딩단위(Coding Unit)로 입력이 되는데, 본 발명에서, 코딩단위(Coding Unit)는 N×N 블록 형태이며 N은 2n의 크기를 가진다. 코딩단위는 쿼드트리(Quad Tree)의 형태로 이루어져 있으며 가장 큰 코딩단위(Largest Coding Unit)으로부터 지정 된 깊이까지 귀납적으로 부호화를 수행한다.
하나의 코딩단위(CU)내에서 예측단위(Prediction Unit)별로 예측이 되는데, 이 때, 부호화기에서 예측단위(PU)는 NxM 블록 형태이며 N과 M은 각각 2n의 크기를 가진다. 4개의 인터 예측단위와 2개의 인트라 예측단위(PU)를 가지며, 모든 예측단위(PU)에 대해 코딩을 수행하여 압축효율이 가장 좋은 예측단위(PU)의 정보를 사용한다. 이 때, 예측단위(PU)는 변환단위(TU)로 나뉘며 변환단위(TU)는 예측단위(PU)의 크기와 무관하며, 코딩단위(CU)의 크기보다 같거나 작다. 변환단위를 변환 및 양자화 한 후 엔트로피코딩(Entropy Coding)을 통해 비트스트림을 생성한다. 이 때 압축효율에 대한 기준은 영상 정보 전송에 필요한 비트 수와 원본블록과 예측블록간의 차이값을 포함하는 율-왜곡 값(Rate Distortion cost)을 통해 결정 된다.
예측부(510)는 현재 코딩단위(CU)의 예측단위(PU)를 예측하기 위하여 다른 프레임을 이용하여 예측 블록을 생성하거나 이미 부호화 된 좌측과 상단의 화소값을 이용하여 예측블록을 생성한다. 즉, 화면 내 예측모드에서 예측부(510)는 이미 부호화 과정을 거치고 복원 된 상단과 좌측의 코딩단위(CU)정보를 이용하여 예측모드를 결정하고 이 예측모드를 이용하여 예측블록을 생성하는 반면, 화면 간 예측모드에서 예측부(510)는 이미 부호화 과정을 거치고 복원된 이전 프레임에서 움직임 추정을 통해 움직임 벡터를 생성하고 이 움직임 벡터를 이용한 움직임 보상 과정에서 예측 블록을 생성할 수 있다. 예측부(510)는 화면 간 예측 방법 및/또는 화면 내 예측 방법을 사용할 수 있다.
감산부(520)는 현재 블록의 각 화소의 원 화소값과 예측부(510)가 생성한 예측값의 차이값을 계산하여 잔차신호를 생성한다. 이는, 상기 예측부(510)에서 해당하는 화면 간 예측 방법과 화면 내 예측방법을 통해 생성된 잔차신호를 말하며 잔차신호는 예측단위(PU)의 단위로 결정된다.
변환부(530)는 감산부(520)에 의해 생성된 잔차신호를 주파수 영역으로 변환한다. 변환부(530)는 변환단위(Transform Unit)로 변환이 되는데, 변환단위(TU)는 N×N 블록 형태이며 N은 2n의 크기를 가진다. 변환부(530)에서 현재 예측단위(PU)에 대하여 예측이 모든 수행된 직후에 변환단위(TU) 별로 귀납적으로 변환이 수행되며, 변환단위(TU)의 크기는 해당 코딩단위(CU)의 크기보다 같거나 작으며, 해당 예측단위(PU)의 크기와는 무관하다. 변환단위(TU)는 코딩단위(CU)와 같은 쿼드트리 형태이며, 코딩단위(CU)의 크기로부터 임의로 지정된 깊이까지 귀납적으로 변환을 수행한다. 이 때 변환단위(TU)의 깊이 별 분열변환플래그(split transform flag)를 복호화기로 전송하여 최저 율-왜곡 값(RD cost)을 가지는 변환단위(TU)의 크기에 대한 정보를 전송한다. 여기서, 변환부(530)는 이산 코사인 변환(DCT: Discrete Cosine Transform, 이하 'DCT 변환'이라 칭함) 또는 웨이블릿 변환(Wavelet Transform) 등의 시간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차신호를 주파수 영역으로 변환할 수 있다.
양자화부(540)는 변환부(530)에 의해 주파수 영역으로 변환된 잔차신호로 이루어진 주파수변환블록을 양자화(Quantization)한다. 여기서 양자화부(540)는 주파수계수블록의 양자화를 수행할 뿐만 아니라 양자화를 수행하면서 스캐닝도 동시에 수행하는 것으로 가정하여 설명한다. 이 경우, 예측부(510)가 화면 간 예측 방법을 사용하여 예측을 수행한 경우에는 양자화부(540)는 지그재그 스캐닝(Zigzag Scanning)방법을 사용하여 주파수계수블록을 스캐닝하고 화면 내 예측 방법을 사용한 경우에는 예측부(510)에서 결정된 예측 방향에 따라 수평방향의 스캐닝, 수직방향의 스캐닝, 지그재그스캐닝의 3가지 형태 중 하나의 스캐닝 순서를 가진다. 예를 들어 인트라 예측 모드가 수평방향을 갖는 경우에는 수평방향의 스캐닝을, 수직방향을 갖는 경우에는 수직방향 스캐닝을, DC 모드인 경우에는 지그재그스캔 방법을 갖는 등의 방법으로 스캐닝 방법을 결정할 수 있으며, 이러한 스캐닝 방법의 결정방법은 실시예에 따라 달라질 수 있다.
한편, 양자화부(540)는 모든 블록에 대하여 동일한 양자화 파라미터를 갖는 균등 양자화가 아닌 예측 모드에 따라 결정된 스캐닝 방법과 주파수계수의 위치에 따라 양자화의 크기를 달리하는 양자화를 수행할 수 있다.
여기서 스캐닝 방법은 도 4에 도시된 방법에 한정되지 아니하며 다양한 스캐닝 방법을 모두 포함할 수 있으며 또한 예측 모드에 따라서 결정되는 스캐닝 방법도 실시예에 따라 다양한 방법이 사용될 수 있으며, 양자화부(540)에서 수행하는 양자화의 크기를 다르게 하는 방법에 관한 상세한 설명은 후술한다.
부호화부(550)는 양자화부(540)에 의해 양자화된 주파수 계수로 이루어진 양자화된 주파수변환블록을 비트스트림으로 부호화한다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.
또한, 부호화부(550)는 양자화된 주파수 계수들을 부호화한 비트열뿐만 아니라 부호화된 비트열을 복호화하는 데 필요한 다양한 정보들을 부호화 데이터에 포함시킬 수 있다. 즉, 부호화 데이터는 부호화된 블록 형태(CBP: Coded Block Pattern), 델타 양자화 계수(Delta Quantization Parameter) 및 양자화 주파수 계수가 부호화 된 비트열이 포함되는 필드와 예측에 필요한 정보(예를 들어, 인트라 예측의 경우 인트라 예측 모드 또는 인터 예측의 경우 움직임 벡터 등)를 위한 비트가 포함되는 필드를 포함할 수 있다.
역양자화부(560)는 변환 및 양자화된 잔차 블록(즉, 양자화된 주파수변환블록)을 역 양자화(Inverse Quantization)하고, 역변환부(570)는 역양자화된 변환 잔차 블록을 역 변환(Inverse Transform)하여 잔차 블록을 복원(Reconstruction)한다. 여기서, 역 양자화와 역 변환은 변환부(530)가 수행한 변환 과정과 양자화부(540)가 수행한 양자화 과정을 각각 역으로 수행함으로써 이루어질 수 있다. 즉, 역양자화부(560) 및 역변환부(570)는 변환부(530) 및 양자화부(540)로부터 발생되어 전달되는 변환 및 양자화에 관한 정보(예를 들어, 변환 및 양자화 타입에 대한 정보)를 이용하여 역 양자화 및 역 변환을 수행할 수 있다. 여기서 역양자화부(560)는 양자화부(540)에서 기술한 스캐닝 방법에 따라 크기를 달리하는 양자화방법에 따라 동일한 역양자화를 수행한다.
가산부(580)는 예측부(510)에서 생성된 예측 블록과 역변환부(570)에 의해 생성된 잔차 블록을 가산하여 복원된 블록을 생성한다.
프레임 메모리(590)는 가산부(580)에서 복원된 블록을 저장하여 인트라 혹은 인터 예측 수행 시 예측 블록을 생성하기 위해 참조블록으로 사용된다.
본 발명에 상세한 방법은 변환부(530)에 의해 주파수변환 블록을 생성하고 생성된 블록에 대한 양자화부(540)에서 양자화를 하는 과정으로 아래과 같은 계산 과정을 수행한다.
상기 변환부(530)에서 예측블록을 주파수블록으로 변환하기 위해 NxN 크기에 해당하는 잔여블록의 변환은 아래의 수학식 1과 같은 계산과정을 수행한다.
위 수학식 1에서 X 는 예측블록에 의해 생성된 잔차 블록을 나타내고, A 는 주파수변환을 위한 행렬의 곱을 나타내며, T 는 해당 행렬의 행과 열이 바뀐 행렬인 전치행렬을 나타내며, Y 는 잔차 블록 X 에 대하여 변환이 수행된 결과인 변환된 잔차 블록을 나타낸다.
상기 수학식 1에서 사용하는 Y 는 결국 상기 수학식 2와 같은 이산여현변환의 형태로 나타낼 수 있다. 본 발명에서는 변환에 있어 이산여현변환에 국한되지 않으며 이산정현변환 등 유사한 주파수변환 방법을 모두 포함한다. 이렇게 주파수변환과정을 거친 후 변환된 잔차 블록은 다음과 같은 양자화 과정을 거치게 된다. 양자화 과정은 아래 수학식 3과 같은 계산 과정을 가진다.
수학식 3 에서, Level 는 잔차 블록에 대하여 주파수변환을 마친 후 행렬로 표현되는 주파수변환 블록의 원소들을 나타내며, Qstep 은 양자화 단계(Quantization Step)의 크기를 나타낸다.
수학식 3과 같이 수행되는 기본적인 양자화 동작을 실제 양자화 과정에 적용되도록 나타내면 수학식 4과 수학식 5로 나타낼 수 있다.
수학식 4 및 수학식 5에서, Coeff 는 잔여 블록의 각 잔여 신호를 변환한 후 행렬로 표현되는 주파수변환계수를 나타내며, Q 는 양자화 계수(Quantization Parameter)에 따라 결정되는 계수로서, 양자화의 크기를 결정하는 요소이다. H.264/AVC에서는 정수형 변환(Integer Transform)이 사용되어 변환과정의 일부가 양자화과정으로 대체된다. 따라서, 정수형 변환과정에서 주파수변환계수의 위치별로 곱해져야 할 수의 일부가 포함된 Q 가 적용되어 주파수변환계수의 위치에 따라서 다른 Q 를 사용할 수 있다. 정수형 변환을 사용하지 않는 HEVC에서는 변환과정과 양자화과정이 분리되어 있으므로, 양자화 할 때 모든 주파수변환계수의 위치에 동일한 Q값이 적용된다. offset 은 양자화 과정에서의 반올림으로 인한 오류와 데드존(Dead Zone)의 크기를 결정하는 요소이다. 여기서, 내림(Round Down) 연산을 수행한다. M 은 변환단위(TU)의 크기에 따라 NxN 블록의 경우 M =log 2 N 으로 결정된다. 예를 들어 변환단위(TU)의 크기가 4x4일 경우 M =log24=2 가 된다. DB 는 IBDI(Internal Bit Depth Increase)를 지원하기 위하여, 화소당 8bit 이상의 화소값을 갖는 경우 (예로서 화소당 12bit를 갖는 경우는 4로 정의, 화소당 8bit를 갖는 경우는 0) 영상 부호화장치에서 사용되는 값이다.
본 발명은 상기 수학식 5에서 Q 의 값에 크기에 따라서 주파수변환계수의 보존량을 조절하는 방법을 사용한다. 이하의 설명에서는 Q 를 Q값이라 정의하며 Q값의 변화에 따라 양자화의 크기를 결정 지을 수 있다. 즉, Q값이 크면 양자화 크기를 작게 하는 효과를 가지며, Q값이 작아지면 양자화 크기를 크게 하는 효과를 가질 수 있다.
도 4 에서 결정된 화면 내 예측과 화면 간 예측에서 사용하는 스캐닝하는 방법에 따라 변환블록의 위치를 구분하고 스캐닝 위치에 따라 Q 값을 조절함으로써 스캐닝 시작점에서 가까운 계수들은 큰 Q 값을 갖도록 하여 양자화 크기를 작게 하고, 스캐닝 순서 상 멀리 있는 계수들은 작은 Q 값을 갖도록 하여 양자화 크기를 크게 결정한다. 도 7은 본 발명의 실시 예에 따른 변환에 대한 Q 값의 변화를 나타낸 도면이다.
도 7 에서는 도 4 에서 결정된 스캐닝 방법에 따라 Q 값을 달리하는 예를 보여주며 도 7 에서 흰색의 계수위치는 Q 값을 상대적으로 크게 사용하여 양자화의 크기를 작게 조정하여 스캐닝의 시작점에 가까운 값들은 원본값들과 비슷하도록 보존하는 역할을 보여주며, 도 7 에서 회색 부분(빗금으로 표시된 부분)의 위치는 스캐닝의 순서 상에서 멀리 있는 값을 구분하여 해당하는 계수의 Q 값을 작게 조정하여 양자화의 크기를 크게 만들어 양자화를 마친 해당 계수의 값을 작게 만드는 예를 나타낸다.
또한 도 7에서는 주파수계수블록에 대하여 일정 영역으로 나누어 양자화계수를 달리할 수 있음도 보여준다. 예를 들어, 주파수계수블록의 왼쪽 2개 줄(또는 상측 2개 줄)의 화소와 나머지 줄의 화소의 양자화계수를 다르게 하는 방법으로 영역별 양자화 계수를 달리할 수 있다. 이렇게 영역으로 나누어 양자화계수를 달리하는 경우도 스캔 방법에 종속되어 결정될 수 있다. 즉 수평방향 스캔인 경우에 상측 2개 줄의 양자화 계수와 나머지 줄의 양자화 계수를 달리하는 방법으로 양자화계수를 달리 할 수 있다.
변환부(530)와 양자화부(540)의 계산을 역으로 수행하는 역양자화부(560) 및 역변환부(570)의 과정은 아래와 같다.
본 발명의 양자화 과정과 동일한 방법으로 역양자화가 이루어지고 변환과정과 동일한 방법으로 역변환이 이루어지며, 특히 역양자화 과정에서는 전술한상기 스캐닝 방법에 따른 양자화과정과 동일한 역양자화 과정이 이루어진다. 이처럼 양자화 과정을 거친 변환 계수는 다음과 같은 역양자화 과정과 역 변환 과정을 통해서 원래의 값의 잔여 블록을 얻을 수 있다.
역 양자화는 다음 수학식 6과 같이 계산된다.
수학식 6은 기본적인 역 양자화 동작을 나타낸다. IQ 는 역 양자화 계수(Quantization Parameter)에 따라 결정되는 계수이며, 역 양자화의 크기를 결정하는 요소이다.
수학식 7에 의해 IQ 값이 결정될 수 있으며, 수학식 7은 Q 와 IQ 의 곱이 2의 20승으로 표현이 가능함을 의미하며, 역 양자화 이후에는 역 변환을 거치게 되는데 역 변환은 수학식 8과 같다.
수학식 8에서 X 는 변환된 잔여블록인 Y 에 정수 변환을 위한 행렬 A 와 A 행렬의 행과 열이 바뀐 행렬인 전치 행렬을 곱하여 복원된 잔차 블록을 나타낸다.
이상에서 전술한 변환 및 양자화를 응용하면 4x4 블록 크기의 변환 및 양자화, 16x16 블록 크기의 변환 및 양자화 등 NxN 블록 크기의 변환 및 양자화와 같은 다양한 변환 및 양자화 타입에 따라 변환 및 양자화를 수행할 수 있다. 이는 후술하는 영상 복호화 장치 및 방법과 동일한 방법을 사용한다.
또한 본 발명에 상세한 과정을 설명하기 위해 도 8은 주파수변환블록으로부터 비트스트림을 생성하는 과정을 나타내는 순서도를 나타낸다.
변환부(530)에 의해 주파수변환블록이 생성(S810)되고, 여기서 변환하는 과정은 상기 수학식 1~2와 같은 이산여현변환 혹은 다른 형태의 변환을 가질 수 있다. 또한, 변환은 색차신호와 밝기신호에 따라 다르게 적용이 가능하다.
양자화부(540)는 변환을 완료한 주파수변환블록에 대하여 예측부(510)를 통해 결정된 블록의 모드정보에 따라 화면 내 예측 혹은 화면 간 예측에서는 예측 방향에 따라서 수직방향의 스캔, 수평방향의 스캔, 지그재그(Zigzag) 스캔 등의 스캔 방향을 판단하여 스캐닝 방법을 선택한다(S820). 이때, 결정된 스캐닝을 수행하면서 수학식 3~5을 이용한 양자화의 크기를 달리하는 Q 값을 이용한 양자화를 수행한다(S830). 상기 기술한 Q 값은 영역에 따라 고정된 값을 사용하는 방법을 사용할 수도 있지만, Q 값은 고정된 값을 사용하거나 위치에 따라 다르게 계산하는 방법을 사용할 수 있으며, 색차 신호와 밝기 신호에서 각각 다르게 적용할 수도 있다. 본 실시예에서는 양자화 계수를 스캐닝의 순서 상에 가까운 값보다 멀리 있는 값을 작게 결정한다. 스캐닝되는 순서에 따라 양자화의 크기를 달리 함으로써 부호화부(550)의 엔트로피코딩(Entropy Coding)을 수행(S840)함에 있어 비트스트림을 더욱 효과적으로 생성함에 따라 전체 영상 부호화 장치의 성능을 향상시킬 수 있다.
즉, 본 발명에 일 실시예로 기술한 스캐닝 방법의 순서와 계수의 위치에 따라 양자화의 크기를 달리하는 방법은 실시예에서 설명한 방법에 양자화의 방법과 크기를 달리 할 수 있으며, 스캐닝의 방법은 다양한 형태로 적용이 가능함을 의미한다. 여기서 다양한 형태란 블록의 예측방향에 적용되는 스캐닝 방법의 가지 수와 양자화를 수행함에 있어 Q값의 변화만을 주는 것이 아닌 양자화의 방법을 달리 할 수 있으며, 스캐닝에 따라 양자화의 크기를 달리하는 방법도 모두 포함하는 영상 부호화 장치를 의미한다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 나타낸 블록 구성도이다.
도 6에 도시한 바와 같이, 본 발명의 일 실시예에 따른 영상 복호화 장치(600)는 영상의 현재 예측단위 블록의 양자화된 주파수변환신호를 이용하여 신호의 역 양자화 및 역 변환과정을 생략하여 복호화하는 장치로서, 복호화부(610), 역양자화부(620), 역변환부(630), 가산부(640) 및 예측부(650)를 포함하여 구성된다.
복호화부(610)는 비트스트림을 복호화하여 양자화된 주파수변환블록을 추출한다.
복호화부(610)는 부호화 데이터를 복호화하여 양자화된 주파수변환블록뿐만 아니라 복호화에 필요한 정보들을 복호화하거나 추출할 수 있다. 복호화에 필요한 정보들은 부호화 데이터(즉, 비트스트림) 내의 부호화된 비트열을 복호화하는 데 필요한 정보들을 말하며, 예를 들어 블록 타입에 대한 정보, 움직임 벡터에 대한 정보, 변환 및 양자화 타입에 대한 정보 등이 될 수 있으며, 이외의 다양한 정보들이 될 수 있다.
즉, 복호화부(610)는 영상 부호화 장치(500)에 의해 부호화된 데이터인 비트스트림을 복호화하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 양자화된 주파수변환 블록을 추출하고, 추출된 예측에 필요한 정보를 예측부(650)로 전달한다.
예측부(650)는 복호화부(610)로부터 전달된 예측에 필요한 정보를 이용하여 영상 부호화 장치(500)의 예측부(510)와 동일한 방식으로 현재 블록을 예측할 수 있다.
예측부(650)는 복호화부(610)에서 추출된 예측에 필요한 정보를 이용하여 화면 간 예측 방법 혹은 화면 내 예측 방법으로 현재 블록에 대한 예측값을 생성한다. 예측부(650)는 영상 부호화 장치(500)의 예측부(510)에서 결정된 예측 단위의 분할에 따른 예측 방법과 동일한 방법으로 비트스트림을 통한 복호화부(610)을 통해 얻은 정보를 이용해 예측단위를 결정하고 예측 값을 생성한다.
본 발명의 일 실시예에 따른 영상 복호화 장치(600)의 예측부(650)는 추출된 예측모드, 예측 단위 등의 정보를 이용하여 전술한 영상 부호화 장치(500)의 예측부(510)와 동일하게 예측블록을 생성한다. 따라서, 중복 설명을 피하기 위해 이에 대한 더 이상의 상세한 설명은 생략한다.
역양자화부(620)는 복호화부(610)에 의해 비트스트림으로부터 추출된 양자화된 주파수변환 블록을 역 양자화한다. 이는 영상 부호화 장치(500)에서의 양자화부(540)에서 설명한 스캐닝 방법 및 스캐닝 위치에 따라 양자화의 크기를 달리하는 방법과 동일하며 중복 설명을 피하기 위해 상세한 설명은 생략한다. 여기서, 예측 모드에 따른 스캐닝 방법과 해당 스캐닝 방법에서 양자화 계수가 달라지는 지점의 위치 등에 대한 정보는 영상 부호화 장치(500)와 동일한 값을 사용하도록 약속된 것으로 가정한다. 따라서 추가적인 정보 없이 예측모드가 추출되면 스캐닝 방법 및 양자화계수의 크기가 바뀌는 지점을 알 수 있어 이를 이용하여 역스캐닝 및 역양자화 할 수 있다. 여기서 역양자화부(620)는 역스캐닝 및 역양자화를 함께 수행하는 것으로 가정한다. 따라서 양자화부(540)에서 사용한 스캐닝 방법은 역양자화부(620)의 역스캐닝 방법에 대응되고, 양자화부(540)에서 사용한 양자화 크기는 역양자화부(620)의 역양자화 크기에 대응된다.
역변환부(630)는 역양자화부(620)에 의해 역 양자화된 주파수변환 블록을 시간 영역으로 역 변환하여 잔차 블록을 복원한다.
가산부(640)는 역변환부(630)에 의해 역 변환되어 복원된 잔차신호와 예측부(650)에 의해 생성된 예측 화소값을 더하여 현재 블록의 원 화소값을 복원한다.
가산부(640) 또는 예측부(650)에 의해 복원된 현재 블록은 프레임 메모리(660)로 전달되어, 예측부(650)에서 다른 블록을 예측하는 데 활용될 수 있다.
프레임 메모리(660)는 복원된 영상을 저장하여 인트라 예측 블록 및 인터 예측 블록 생성을 가능하게 한다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는 도 6의 영상 부호화 장치(500)의 비트스트림 출력단을 도 6의 영상 복호화 장치(600)의 비트스트림 입력단에 연결하여 구성될 수 있다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는, 영상을 부호화/복호화하는 장치에 있어서, 현재 블록의 예측 블록을 생성하고 상기 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하고 상기 잔차 블록을 변환하여 주파수변환블록을 생성하고 상기 주파수변환블록 내 주파수계수의 위치에 따라서 양자화의 크기를 달리하여 상기 주파수변환블록을 양자화하고 상기 양자화된 주파수 변환 블록을 엔트로피코딩을 통해 비트스트림으로 부호화하는 영상 부호화기; 및 비트스트림으로부터 역엔트로피과정을 통해 양자화된 주파수변환블록을 복호하고 상기 양자화된 주파수변환블록 내 양자화 주파수계수의 위치에 따라서 역 양자화의 크기를 달리하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역변환하여 잔차 블록을 복원하고 화면 간 예측 혹은 화면 내 예측 정보를 통해 예측블록을 생성하고 상기 복원되는 잔차 블록과 상기 생성된 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화기를 포함한다.
여기서 영상 부호화기는 본 발명의 일 실시예에 따른 영상 부호화 장치(500)로 구현 가능하며, 영상 복호화기는 본 발명의 일 실시예에 따른 영상 복호화 장치(600)로 구현 가능하다.
도 9는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
즉, 영상 부호화 장치(500)는 영상의 현재 블록을 휘도 성분의 움직임 벡터 값을 이용하여 예측값을 생성하는 예측단계(910), 현재 블록의 원 화소값과 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 감산단계(920), 생성된 잔차신호를 DCT 변환 또는 웨이블릿 변환 등을 이용하여 주파수 영역으로 변환하는 변환단계(930), 주파수 영역으로 변환된 잔차신호를 양자화하는 양자화단계(940), 최적의 양자화된 주파수변환 잔차신호를 결정하여 비트스트림으로 부호화하는 부호화단계(950)를 거쳐 영상을 부호화한다.
여기서, 예측단계(910)는 예측부(510)의 기능에, 감산단계(920)는 감산부(520)의 기능에, 변환단계(930)는 변환부(530)의 기능에, 양자화단계(940)는 양자화부(540)의 기능에, 부호화단계(950)는 부호화부(550)의 기능에 각각 대응되므로 상세한 설명은 생략한다.
도 10은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
유무선 통신망 또는 케이블 등을 통해 영상에 대한 비트스트림을 수신하여 저장한 영상 복호화 장치(600)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상의 현재 블록을 움직임 벡터 값을 이용하여 예측값을 생성하고 양자화된 주파수변환계수가 존재할 경우에만 역양자화되고 역변환된 잔차신호를 더한 원 화소값 영상을 복호화하여 복원한다.
이를 위해, 영상 복호화 장치(600)는 비트스트림을 복호화하여 영상의 현재 블록의 화소값에 대한 정보를 나타내는 양자화된 주파수변환 잔차신호를 추출하는 복호화단계(1010), 양자화된 주파수변환 잔차신호를 정해진 스캐닝 방법에 따른 각 계수의 위치에 따라 다른 크기로 역 양자화하는 역양자화단계(1020), 역 양자화된 주파수변환 잔차신호를 시간 영역으로 역변환하는 역변환단계(1030), 움직임 벡터 값을 이용하여 예측값을 생성하는 예측단계(1040), 단계 1030에서 복원된 현재 블록의 잔차신호와 단계 1040에서 예측된 현재 블록의 각 화소의 예측 화소값을 더하여 현재 블록의 원 화소값을 복원하는 가산단계(1050)를 거쳐 전송된 비트스트림을 복호화한다.
여기서, 복호화단계(1010)는 복호화부(610)의 동작에 대응되며, 역양자화단계(1020)는 역양자화부(620)의 동작에 대응되며, 역변환단계(1030)는 역변환부(630)의 동작에 대응되며, 예측단계(1040)는 예측부(650)의 동작에 대응되며, 가산단계(1050)는 가산부(640)의 동작에 대응되므로 상세한 설명은 생략한다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 본 발명의 일 실시예에 따른 영상 부호화 방법과 본 발명의 일 실시예에 따른 영상 복호화 방법을 결합하여 구현함으로써 실현할 수 있다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 현재 블록의 예측 블록을 생성하고 상기 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하고 상기 잔차 블록을 변환하여 주파수변환블록을 생성하고 상기 주파수변환블록 내 주파수계수의 위치에 따라서 양자화의 크기를 달리하여 상기 주파수변환블록을 양자화하고 상기 양자화된 주파수 변환 블록을 엔트로피코딩을 통해 비트스트림으로 부호화하는 영상 부호화단계; 및 비트스트림으로부터 역엔트로피과정을 통해 양자화된 주파수변환블록을 복호하고 상기 양자화된 주파수변환블록 내 양자화 주파수계수의 위치에 따라서 역 양자화의 크기를 달리하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역변환하여 잔차 블록을 복원하고 화면 간 예측 혹은 화면 내 예측 정보를 통해 예측블록을 생성하고 상기 복원되는 잔차 블록과 상기 생성된 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화단계를 포함한다.
여기서 영상 부호화단계는 본 발명의 일 실시예에 따른 영상 부호화 단계로 구현 가능하며, 영상 복호화단계는 본 발명의 일 실시예에 따른 영상 복호화 단계로 구현 가능하다.
본 발명의 실시예를 구성하는 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (14)
- 영상을 부호화하는 장치에 있어서,
현재 블록의 예측모드를 결정하고, 결정된 예측모드를 사용하여 예측 블록을 생성하는 예측부;
상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부;
상기 잔차 블록을 변환 단위 크기로 변환하여 주파수변환블록을 생성하는 변환부;
상기 주파수변환블록의 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 양자화의 크기를 가변적으로 적용하여 상기 주파수변환블록을 양자화하는 양자화부; 및
상기 양자화된 주파수 변환 블록의 변환 단위 내의 양자화된 주파수계수들을 스캔 및 부호화하는 비트스트림 생성부를 포함하고,
상기 비트스트림 생성부는,
상기 결정된 예측 모드에 따라 상기 변환 단위 내의 양자화된 주파수계수들을 스캔하는 순서인 스캔 패턴을 결정하되,
상기 결정된 예측 모드가 인트라 예측인 경우, 인트라 예측 방향에 근거하여 복수의 스캔 패턴 중 상기 변환 단위 내의 양자화된 주파수계수들을 스캔하기 위한 상기 스캔 패턴을 결정하는 것을 특징으로 하는 영상 부호화 장치. - 제 1 항에 있어서,
상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 변환 단위 내의 주파수계수가 휘도 성분인지 또는 색차 성분인지 여부를 고려하여 결정되는 것을 특징으로 하는 영상 부호화 장치. - 제 1 항에 있어서,
상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 결정된 예측 모드가 인터 예측인지 또는 인트라 예측인지 여부를 고려하여 결정되는 것을 특징으로 하는 영상 부호화 장치. - 삭제
- 삭제
- 제 1 항에 있어서,
상기 양자화부는, 상기 변환 단위에 적용되는 스캔 패턴에 근거하여 상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 상기 양자화의 크기를 가변적으로 적용하는 것을 특징으로 하는 영상 부호화 장치. - 제 6 항에 있어서,
상기 변환 단위에 적용되는 스캔 패턴에서 스캔 순서가 늦은 위치의 주파수계수일수록 양자화 크기가 큰 것을 특징으로 하는 영상 부호화 장치. - 제 6 항에 있어서,
상기 변환 단위에 적용되는 스캔 패턴의 스캔 순서에 따라 구분되는 상기 변환 단위 내의 복수의 영역마다 양자화 크기를 달리하는 것을 특징으로 하는 영상 부호화 장치. - 영상을 복호화하는 장치에 있어서,
비트스트림으로부터 현재블록의 예측 모드에 대한 정보를 복호화하고, 상기 현재블록으로부터 분할된 각 변환 단위들에 대응하는 주파수계수들을 복호화 및 역스캔하여 양자화된 주파수변환블록을 생성하는 복호화부;
상기 양자화된 주파수변환블록의 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 역양자화의 크기를 가변적으로 적용하여 주파수변환블록을 생성하는 역양자화부;
상기 주파수변환블록을 변환 단위 크기로 역변환하여 잔차블록을 생성하는 역변환부;
상기 예측 모드에 대한 정보에 따라 예측블록을 생성하는 예측부; 및
상기 잔차블록과 예측블록을 가산하는 가산기를 포함하고,
상기 복호화부는,
상기 예측 모드에 대한 정보에 근거하여 상기 변환 단위 내의 주파수계수들을 역스캔하는 순서인 스캔 패턴을 결정하되,
상기 예측 모드에 대한 정보가 인트라 예측을 지시하는 경우, 상기 비트스트림에 포함된 인트라 예측 모드에 대한 정보에 근거하여 복수의 스캔 패턴 중 상기 변환 단위 내의 주파수계수들을 역스캔하기 위한 상기 스캔 패턴을 결정하는 것을 특징으로 하는 영상 복호화 장치. - 제 9 항에 있어서,
상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 변환 단위 내의 주파수계수가 휘도 성분인지 또는 색차 성분인지 여부를 고려하여 결정되는 것을 특징으로 하는 영상 복호화 장치. - 제 9 항에 있어서,
상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라 가변적으로 적용되는 양자화의 크기는 상기 예측 모드에 대한 정보가 인터 예측을 지시하는지 또는 인트라 예측을 지시하는지 여부를 고려하여 결정되는 것을 특징으로 하는 영상 복호화 장치. - 삭제
- 삭제
- 제 9 항에 있어서,
상기 역양자화부는, 상기 변환 단위에 적용되는 스캔 패턴에 근거하여 상기 변환 단위 내의 영역 또는 주파수계수의 위치에 따라서 상기 양자화의 크기를 가변적으로 적용하는 것을 특징으로 하는 영상 복호화 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190008384A KR101997599B1 (ko) | 2019-01-22 | 2019-01-22 | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190008384A KR101997599B1 (ko) | 2019-01-22 | 2019-01-22 | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110065193A Division KR101943425B1 (ko) | 2011-06-30 | 2011-06-30 | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190009826A KR20190009826A (ko) | 2019-01-29 |
KR101997599B1 true KR101997599B1 (ko) | 2019-07-08 |
Family
ID=65323290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190008384A KR101997599B1 (ko) | 2019-01-22 | 2019-01-22 | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101997599B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114270822A (zh) | 2019-06-24 | 2022-04-01 | Lg电子株式会社 | 利用色度变换块的最大大小限制编码/解码视频的方法和设备及发送比特流的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008259219A (ja) | 2001-11-22 | 2008-10-23 | Matsushita Electric Ind Co Ltd | 符号化方法、及び符号化装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100949475B1 (ko) * | 2007-12-28 | 2010-03-29 | 세종대학교산학협력단 | 스캔 패턴 결정 장치 및 이를 이용한 영상 데이터 부호화방법과 그 장치, 그리고, 이를 이용한 영상 데이터 복호화방법과 그 장치 |
KR101359500B1 (ko) * | 2008-07-28 | 2014-02-11 | 에스케이 텔레콤주식회사 | 양자화/역 양자화 장치 및 방법과 그를 이용한 영상부호화/복호화 장치 |
KR101456498B1 (ko) * | 2009-08-14 | 2014-10-31 | 삼성전자주식회사 | 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
-
2019
- 2019-01-22 KR KR1020190008384A patent/KR101997599B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008259219A (ja) | 2001-11-22 | 2008-10-23 | Matsushita Electric Ind Co Ltd | 符号化方法、及び符号化装置 |
Non-Patent Citations (1)
Title |
---|
권령희, 한우진, and 이영렬. "HEVC 엔트로피 부호화를 고려한 비균등 양자화 방법." 방송공학회논문지 16.6 (201111). |
Also Published As
Publication number | Publication date |
---|---|
KR20190009826A (ko) | 2019-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101997604B1 (ko) | 영상 부호화/복호화 방법 및 장치 | |
KR101432775B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101444667B1 (ko) | 양방향 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
US9503725B2 (en) | Method and apparatus for encoding/decoding image for performing intraprediction using pixel value filtered according to prediction mode | |
KR101943049B1 (ko) | 영상 부호화/복호화 방법 및 장치 | |
KR101379187B1 (ko) | 블록 변환을 이용한 인트라 예측 방법 및 장치와 그를이용한 영상 부호화/복호화 방법 및 장치 | |
KR101955374B1 (ko) | 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치 | |
US9473773B2 (en) | Method and apparatus for encoding frequency transformed block using frequency mask table, and method and apparatus for encoding/decoding video using same | |
KR101677480B1 (ko) | 효과적인 화면내 예측모드 집합 선택을 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101648065B1 (ko) | 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR20090099234A (ko) | 영상의 부호화, 복호화 방법 및 장치 | |
KR101763113B1 (ko) | 노이즈성분을 위한 공간영역에서의 영상 부호화/복호화 방법 및 장치 | |
KR20110000438A (ko) | 다차원 정수 변환을 이용한 영상 부호화/복호화 장치 및 방법 | |
KR101681301B1 (ko) | 필터링모드 생략가능한 영상 부호화/복호화 방법 및 장치 | |
KR101943058B1 (ko) | 영상 부호화/복호화 방법 및 장치 | |
KR101997599B1 (ko) | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 | |
KR101943425B1 (ko) | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 | |
KR101369161B1 (ko) | 예측 방향 전환 장치 및 방법과 그를 이용한 영상 부호화/복호화 장치 및 방법 | |
KR101537767B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101483495B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101997655B1 (ko) | 영상 부호화/복호화 방법 및 장치 | |
KR101379189B1 (ko) | 움직임 보상 프레임의 필터링을 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101534014B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101464949B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101464944B1 (ko) | 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |