KR102218696B1 - 영상 변환 부호화/복호화 방법 및 장치 - Google Patents

영상 변환 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR102218696B1
KR102218696B1 KR1020190077001A KR20190077001A KR102218696B1 KR 102218696 B1 KR102218696 B1 KR 102218696B1 KR 1020190077001 A KR1020190077001 A KR 1020190077001A KR 20190077001 A KR20190077001 A KR 20190077001A KR 102218696 B1 KR102218696 B1 KR 102218696B1
Authority
KR
South Korea
Prior art keywords
information
transformation
block
current block
encoding
Prior art date
Application number
KR1020190077001A
Other languages
English (en)
Other versions
KR20190080842A (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 한국전자통신연구원
Publication of KR20190080842A publication Critical patent/KR20190080842A/ko
Priority to KR1020210020624A priority Critical patent/KR102439871B1/ko
Application granted granted Critical
Publication of KR102218696B1 publication Critical patent/KR102218696B1/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

본 발명에 따른 영상 복호화 방법은 복호화 대상 블록에 대한 문맥 정보를 획득하고, 상기 문맥 정보를 이용하여 복호화 대상 블록에 대한 역변환 방법을 도출하고, 도출된 역변환 방법을 이용하여 복호화 대상 블록에 대한 역변환을 수행한다. 본 발명에 따르면, 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.

Description

영상 변환 부호화/복호화 방법 및 장치 {METHODS AND APPARATUS FOR VIDEO TRANSFORM ENCODING/DECODING}
본 발명은 영상 처리에 관한 것으로서, 보다 상세하게는 영상 부호화/복호화 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 해상도를 가지는 방송 서비스가 국내뿐만 아니라 세계적으로 확대되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있으며 이에 따라 많은 기관들이 차세대 영상기기에 대한 개발에 박차를 가하고 있다. 또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상에 대한 압축기술이 요구되고 있다.
영상 압축 기술에는 시간적으로 이전 및/또는 이후의 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 인터(inter) 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 인트라(intra) 예측 기술, 원 영상 신호를 주파수 영역의 신호로 분해하는 변환 기술, 주파수 영역의 신호를 원 영상 신호로 복원하는 역변환 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 부호화 기술 등이 있다. 이러한 영상 압축 기술들에 의해 영상 데이터가 효율적으로 압축될 수 있다.
본 발명의 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 영상 부호화 방법 및 장치를 제공함에 있다.
본 발명의 다른 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 영상 복호화 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 변환 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 역변환 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 엔트로피 부호화 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 전송되는 정보량을 최소화하면서 영상 압축 성능을 향상시킬 수 있는 엔트로피 복호화 방법 및 장치를 제공함에 있다.
영상 복호화 방법이 제공된다. 상기 방법은 복호화 대상 블록, 상기 복호화 대상 블록의 복호화 수행 전에 이미 복호화된 블록 및 상기 복호화 대상 블록의 복호화 수행 전에 이미 복원된 화소의 화소값들에 포함된 정보 중 적어도 하나를 이용하여 상기 복호화 대상 블록에 대한 문맥 정보를 획득하는 단계, 상기 문맥 정보를 이용하여 상기 복호화 대상 블록에 대한 역변환 방법을 도출하는 단계 및 상기 도출된 역변환 방법을 이용하여 복호화 대상 블록에 대한 역변환을 수행하는 단계를 포함하고, 상기 문맥 정보를 이용하여 상기 복호화 대상 블록에 대한 역변환 방법을 도출하는 단계에서는, 복수의 역변환 방법들 중 하나를 선택하는 방법 및 초기 역변환식을 갱신하는 방법 중 적어도 하나를 이용하여 상기 역변환 방법을 도출하고, 상기 복수의 역변환 방법들은 상기 복호화 대상 블록에 대한 복호화 수행 이전에 이미 정해진 역변환 방법들이고 상기 초기 역변환식은 상기 복호화 대상 블록에 대한 복호화 수행 이전에 이미 정해진 역변환식이다.
본 발명에 따른 영상 부호화 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
본 발명에 따른 영상 복호화 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
본 발명에 따른 변환 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
본 발명에 따른 역변환 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
본 발명에 따른 엔트로피 부호화 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
본 발명에 따른 엔트로피 복호화 방법에 의하면 전송되는 정보량이 최소화되면서 영상 압축 성능이 향상될 수 있다.
도 1은 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 2는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 변환 방법을 개략적으로 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 엔트로피 부호화 방법을 개략적으로 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 엔트로피 복호화 방법을 개략적으로 나타내는 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 역변환 방법을 개략적으로 나타내는 흐름도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 도 1을 참조하면, 상기 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조영상 버퍼(190)를 포함한다.
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림(bit stream)을 출력할 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환된다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분을 부호화할 수 있다.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 영상 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터와 참조 영상 버퍼(190)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔여 블록(residual block)을 생성할 수 있다. 변환부(130)는 잔여 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 변환 방법에는 고정 변환 방법, 최적 변환 방법, 화면 내 예측 모드별 변환 방법(MDDT: Mode Dependent Directional Transform) 등이 있을 수 있다. 각각의 상세는 후술한다.
양자화부(140)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로 엔트로피 부호화를 수행하여 비트스트림(bit stream)을 출력할 수 있다.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다.
엔트로피 부호화를 위해 지수 골룸(exponential golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법이 사용될 수 있다. 예를 들어, 엔트로피 부호화부(150)에는 가변 길이 부호화(VLC: Variable Lenghth Coding/Code) 테이블과 같은 엔트로피 부호화를 수행하기 위한 테이블이 저장될 수 있고, 엔트로피 부호화부(150)는 저장된 가변 길이 부호화(VLC) 테이블을 사용하여 엔트로피 부호화를 수행할 수 있다. 또한 다른 예를 들면 엔트로피 부호화부(150)는, 심볼을 이진화하여 빈(bin)으로 변환하고 문맥 모델(context model)에 따라 빈의 발생 확률을 예측하여 빈의 산술 부호화(arithmetic encoding)를 수행하여 비트스트림을 생성하는 CABAC 엔트로피 부호화 방법을 사용할 수도 있다. 여기서, 빈(bin)은 심볼이 이진화를 통해 2진수의 열로 표현될 때, 각각의 2진수의 값(0 또는 1)을 의미한다.
엔트로피 부호화부(150)는 엔트로피 부호화 모델에 따라 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화 모델은 예를 들어 심볼의 발생 빈도수, 발생 확률값 또는 확률 천이(transition) 모델을 포함할 수 있다. 또한 다른 실시예로 엔트로피 부호화 모델은 이진 부호화 방법에 관한 정보를 포함할 수 있다. 여기서 이진 부호화 방법에는 가변 길이 부호화, 산술 부호화 등이 있을 수 있다.
양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환될 수 있다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성될 수 있다.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(180)를 거친 복원 블록은 참조 영상 버퍼(190)에 저장될 수 있다.
도 2는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 도 2를 참조하면, 상기 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 필터부(260) 및 참조 영상 버퍼(270)를 포함한다.
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다. 영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔여 블록(residual block)을 얻고 예측 블록을 생성한 후 복원된 잔여 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.
엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 생성할 수 있다. 엔트로피 복호화 방법은 상술한 엔트로피 부호화 방법과 유사하다.
엔트로피 복호화 방법이 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 각 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 복호화 방법을 통해서 영상 복호화의 압축 성능이 높아질 수 있다.
엔트로피 복호화부(210)는, 엔트로피 부호화부(150)와 같이, 엔트로피 복호화 모델에 따라 엔트로피 복호화를 수행할 수 있다. 엔트로피 복호화 모델은 예를 들어 심볼의 발생 빈도수, 발생 확률값 또는 확률 천이(transition) 모델을 포함할 수 있다. 또한 다른 실시예로 엔트로피 복호화 모델은 이진 부호화 방법에 관한 정보를 포함할 수 있다. 여기서 이진 부호화 방법에는 가변 길이 부호화, 산술 부호화 등이 있을 수 있다.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔여 블록(residual block)이 생성될 수 있다. 역변환이 수행되는 경우, 도 1의 실시예에서 상술한 고정 변환 방법, 최적 변환 방법, 화면 내 예측 모드별 변환 방법(MDDT: Mode Dependent Directional Transform) 등이 역으로 적용될 수 있다. 각각의 상세는 후술한다.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 영상 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
복원된 잔여 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거친다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력한다. 복원 영상은 참조 영상 버퍼(270)에 저장되어 화면 간 예측에 사용될 수 있다.
도 1 및 도 2의 실시예에서 상술한 바와 같이, 변환 방법에는 고정 변환 방법, 최적 변환 방법, 화면 내 예측 모드별 변환 방법 등이 있을 수 있다.
고정 변환 방법은 DCT(이산 코사인 변환: Discrete Cosine Transform) 등과 같은 고정된 변환식을 사용하여 변환 또는 역변환을 수행하는 방법이다. 고정 변환 방법은, 부호화 대상 신호 특성의 변화를 반영할 수 없어, 압축 성능에 한계를 가진다.
최적 변환 방법은, 부호화 대상 신호의 자기 상관도(auto-correlation)나 공분산(covariance) 같은 통계치를 구한 후 통계치에 따라 변환식을 결정하여 변환을 수행하는 방법이다. 최적 변환 방법의 실시예로 KLT(Karhunen-Loeve Transform) 등이 있을 수 있다. 최적 변환 방법은 신호 적응적으로 변환을 수행할 수 있다. 그러나 최적 변환 방법에서는, 복호화기가 통계치나 변환식에 관한 정보를 스스로 알 수 없으므로, 통계치에 관한 정보 또는 변환식 자체를 복호화기에 전달하기 위한 부호화 비트량이 추가적으로 소요된다는 단점이 존재한다.
화면 내 예측 모드별 변환(MDDT: Mode Dependent Directional Transform) 방법은, 화면 내 예측 모드별 다수의 트레이닝 데이터(training data)에 대해 최적 변환식을 미리 결정해 놓은 후, 미리 결정된 최적 변환식을 고정적으로 사용하여 변환을 수행하는 방법이다. 상기 최적 변환식은 KLT, DCT, DST(Discrete Sine Transform) 등을 이용한 변환식일 수 있다.
화면 내 예측 모드별 변환 방법에서는, 예측 모드에 따른 신호 특성이 반영될 수 있고, 부호화기에서 복호화기로 전송되는 추가적인 부호화 비트가 필요하지 않으므로 압축 성능이 향상될 수 있다. 그러나, 부호화 대상 신호의 특성이 트레이닝 데이터와 다른 경우, 압축 성능에 한계가 있을 수 있다.
따라서 부호화기에서 복호화기로 전송되는 추가적인 부호화 비트 발생을 최소화하고 영상 압축 성능을 향상시키기 위해, 부호화/복호화 대상 블록, 이미 부호화/복호화된 블록 또는 이미 복원된 화소값 등으로부터 얻어진 문맥 정보를 이용하여 변환/역변환을 수행하는 방법이 제공될 수 있다.
도 3은 본 발명의 일 실시예에 따른 변환 방법을 개략적으로 나타내는 흐름도이다. 도 3의 실시예에 따른 변환은 부호화기에서 수행될 수 있으며, 일 실시예로 부호화기의 변환부에서 수행될 수도 있다.
도 3을 참조하면, 부호화기는 부호화 대상 블록의 변환 방법 도출에 사용될 문맥 정보를 획득한다(S310). 변환 방법 도출에 사용될 문맥 정보(context information)에는 다양한 유형이 있을 수 있다.
일 실시예로 문맥 정보에는 부호화 대상 블록의 부호화 파라미터 또는 이미 부호화된 블록의 부호화 파라미터가 포함될 수 있다. 부호화 파라미터에는 예측 모드 정보, 움직임 또는 이동 정보, 양자화 정보, 블록 크기 정보 또는 필터 정보 등이 있을 수 있다.
예측 모드 정보는 예를 들어, 화면 간 예측인지 화면 내 예측인지를 지시하는 정보 및/또는 세부적으로 어떤 예측 방향 및/또는 예측 방법이 사용되는지를 지시하는 정보 등을 포함할 수 있다. 움직임 또는 이동 정보는 예를 들어, 움직임 벡터(motion vector)나 이동(변이) 벡터의 부호화 여부를 지시하는 정보, 벡터의 크기 정보, 참조 영상의 인덱스 및/또는 참조 영상의 개수에 관한 정보 등을 포함할 수 있다. 양자화 정보는 양자화 파라미터(quantization parameter), 양자화 스텝(quantization step) 크기, 양자화 가중치 행렬의 종류 및/또는 양자화 가중치 행렬의 값 등에 관한 정보를 포함할 수 있다. 블록 크기 정보는 블록의 크기, 블록의 분할 여부, 블록의 분할 유형, 블록의 분할 경계 위치 및/또는 블록의 분할 경계 방향 등에 관한 정보를 포함할 수 있다. 필터 정보는 보간 필터(interpolation filter), 디노이징 필터(denoising filter), 디밴딩 필터(debanding filter), 디블록킹 필터(deblocking filter) 등의 적용 여부를 지시하는 정보, 필터 계수 정보 및/또는 필터 강도에 관한 정보 등을 포함할 수 있다.
상기와 같은 부호화 파라미터의 값들은 직접 문맥 정보로 활용될 수 있다. 또한 부호화 파라미터 값들의 조합이나 발생 빈도가 구해진 후, 그 조합이나 발생 빈도 정보가 문맥 정보로 활용될 수도 있다.
다른 실시예로 문맥 정보는 이미 부호화된 블록의 변환 계수 정보를 포함할 수 있다.
예를 들어, 변환 계수 정보는 변환 계수의 존재 여부를 나타내는 정보를 포함할 수 있다. 변환 계수의 존재 여부를 나타내는 정보에는 코디드 블록 패턴(Coded Block Pattern), 코디드 블록 플래그(Coded Block Flags), 스플릿 플래그(Split Flags) 등이 있을 수 있다. 또한 예를 들어, 변환 계수 정보는 변환 계수의 분포 및/또는 변환 계수의 분포 유형에 관한 정보도 포함할 수 있다. 변환 계수의 분포 및/또는 변환 계수의 분포 유형에 관한 정보에는 변환 계수가 주로 저주파 영역에 분포함을 지시하는 정보, 변환 계수가 특정 방향에 주로 존재함을 지시하는 정보, 변환 계수가 고르게 분포함을 지시하는 정보 등이 있을 수 있다. 변환 계수 정보는 변환 계수에 대한 스캔 방식 및/또는 스캔 순서에 관한 정보도 포함할 수 있다.
또 다른 실시예로 문맥 정보는 이미 복원된 화소값들을 포함할 수 있다. 상기 화소값들이 구해지는 영역은 다양하게 정해질 수 있다. 예를 들어 상기 화소값들은 부호화 대상 블록과 공간적으로 가까이 위치한 화소들 중 이미 복원된 화소들의 화소값들일 수 있다. 다른 예로, 상기 화소값들은 부호화 대상 블록의 화소값 예측에 사용된 화소들 중 이미 복원된 화소들의 화소값들일 수 있다.
부호화기는 상기 화소값들 전체 또는 일부를 이용하여 상기 화소값들을 대표할 수 있는 특징값을 도출한 후, 그 특징값을 문맥 정보로 이용할 수도 있다. 상기 특징값은 예를 들어, 평균 변이(variance, deviation) 값, 상관도(correlation) 등의 통계값일 수 있다. 또한 상기 특징값은 예를 들어, 화소값들로부터 산출된 경사도(gradient), 에지니스(edgeness) 등 영상의 특징(feature)을 나타내는 값일 수도 있다. 여기서, 에지니스는 소벨 연산자(Sobel operator) 또는 라플라시안 연산자(Laplacian operator) 등이 적용되어 얻어진 결과일 수 있다.
부호화기는 상술한 부호화 대상 블록의 부호화 파라미터, 이미 부호화된 블록의 부호화 파라미터, 이미 부호화된 블록의 변환 계수 정보, 이미 복원된 화소값 정보들 중 적어도 하나를 이용하여 부호화 대상 블록의 변환 방법 도출에 사용될 문맥 정보를 획득할 수 있다.
다시 도 3을 참조하면, 부호화기는, 획득한 문맥 정보를 이용하여, 부호화 대상 블록에 적용되는 변환 방법을 도출한다(S320).
문맥 정보를 이용하여 변환 방법을 결정할 때 부호화기는 다양한 방법 또는 수단을 사용할 수 있다. 예를 들어, 문맥 정보 자체가 특정 범위에 포함되는지 여부를 판단하는 수단이 사용될 수 있다. 다른 예로서, 문맥 정보 자체가 특정 조건을 만족하는지 여부를 판단하는 수단이 사용될 수도 있다. 또 다른 예로서, 같은 종류의 문맥 정보들 간의 차이가, 특정 범위에 포함되는지 여부를 판단하는 수단이 사용될 수도 있다.
부호화기는 상기 판단된 결과를 그대로 이용하여 변환 방법을 도출할 수 있다. 또한 부호화기는 상기 판단 수단을 여러 차례 적용하여 특정 범위에 포함되는 문맥 정보 및/또는 특정 조건을 만족하는 문맥 정보의 발생 빈도를 측정하여 빈도값을 구할 수도 있다. 이 때, 부호화기는 그 빈도값을 이용하여 변환 방법을 도출할 수도 있다.
부호화기는, 변환 방법을 도출함에 있어, 미리 정해진 복수의 변환 방법 중 하나를 선택할 수 있다.
이 때, 부호화기는 방법 자체를 달리하는 복수의 변환 방법 중 하나를 선택할 수 있다. 복수의 변환 방법에는 KLT, DCT, DST, 하다마드(Hadamard) 변환, 웨이블릿(Wavelet) 변환, 방향성(Directional) 변환 등이 있을 수 있다.
부호화기는 동일한 변환 방법 내에서 복수의 변환식 중 하나를 선택할 수도 있다. 예를 들어, 상기 복수의 변환식은 KLT 변환 방법에서 서로 다른 트레이닝 데이터에 최적화된 복수 개의 변환식일 수 있다.
부호화기는, 변환 방법을 도출함에 있어, 미리 정해진 초기 변환식을 문맥 정보에 따라 갱신할 수도 있다. 여기서, 미리 정해진 초기 변환식은, 예를 들어 KLT, DCT 등의 변환 방법에 대한 초기 변환식을 의미한다.
상기 초기 변환식은 다양한 단계에서 미리 정해질 수 있다. 예를 들어 초기 변환식은 시퀀스(sequence) 단계에서 미리 정해질 수 있고, GOP(Group of Picture) 단계에서 미리 정해질 수도 있다. GOP는 픽쳐군, 즉 픽쳐의 그룹을 의미한다. 또한 다른 예로 초기 변환식은 픽쳐, 슬라이스(slice), 부호화 유닛 또는 변환 유닛 등의 단계에서도 미리 정해질 수 있다.
초기 변환식에 대한 갱신 여부 결정 및/또는 초기 변환식에 대한 실제 갱신 과정은 부호화 대상 블록에 대한 변환 이전에 이루어질 수 있다. 또한 초기 변환식에 대한 갱신 여부 결정 및/또는 초기 변환식에 대한 실제 갱신 과정은 부호화 대상 블록에 대한 변환 이후에 이루어질 수도 있다.
부호화기는 획득한 문맥 정보를 이용하여 변환 방법을 도출함에 있어, 상술한 미리 정해진 복수의 변환 방법 중 하나를 선택하는 방법들 및 미리 정해진 초기 변환식을 문맥 정보에 따라 갱신하는 방법들 중 적어도 하나를 이용할 수 있다.
다시 도 3을 참조하면, 부호화기는, 도출된 변환 방법을 이용하여 입력 영상의 부호화 대상 블록에 대한 변환을 수행한다(S330). 변환은 변환 블록 단위로 수행될 수 있다.
부호화기는 부호화 대상 블록에 대한 문맥 정보를 이용하여 블록 단위로 최적의 변환 방법 및/또는 변환식을 도출할 수 있다. 또한 부호화기는 상기 변환 방법 및/또는 변환식을 이용하여 변환을 수행함으로써, 문맥 적응적(context-adaptvie) 또는 신호 적응적으로 변환을 수행할 수 있다. 따라서 부호화기는 부호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 변환을 수행할 수 있다.
또한 도 3의 실시예에서, 변환 방법 및/또는 변환식을 도출하거나 문맥 정보를 획득하기 위해 사용되는 정보들은, 부호화기로부터 전송되는 별도의 추가적인 정보 없이도 복호화기가 얻을 수 있는 정보들이다. 따라서 본 발명의 실시예에 따른 변환 방법에서는, 부호화기에서 복호화기로 전송되는 추가적인 비트량이 최소화되거나 발생되지 않을 수 있다.
변환 결과 생성된 변환 계수들은 양자화 파라미터에 따라 양자화되어 엔트로피 부호화부에 제공될 수 있다. 도 1의 실시예에서 상술한 바와 같이 엔트로피 부호화부는 엔트로피 부호화 모델에 따라 엔트로피 부호화를 수행할 수 있다. 도 3의 실시예에서와 같이 변환 방법이 문맥 적응적으로 도출되는 경우에는 엔트로피 부호화시 문맥 정보에 따라 심볼의 발생 확률이나 빈도 또는 이진 부호화 방법 등이 달라질 수 있다. 따라서 일 실시예로 변환 방법이 문맥 적응적으로 도출되는 경우, 엔트로피 부호화 모델도 문맥 적응적으로 도출될 수 있다.
도 4는 본 발명의 일 실시예에 따른 엔트로피 부호화 방법을 개략적으로 나타내는 흐름도이다. 도 4의 실시예에 따른 엔트로피 부호화는 부호화기에서 수행될 수 있으며, 일 실시예로 부호화기의 엔트로피 부호화부에서 수행될 수도 있다.
도 4를 참조하면, 부호화기는 엔트로피 부호화 모델 도출에 사용되는 문맥 정보를 획득한다(S410).
상기 문맥 정보는 엔트로피 부호화 과정에서 별개로 획득되는 문맥 정보가 아닐 수 있으며, 변환 과정에서 얻어진 문맥 정보가 그대로 엔트로피 부호화 과정에서 사용될 수도 있다.
부호화기는 획득한 문맥 정보를 이용하여 엔트로피 부호화 모델을 도출한다(S420).
도 3의 실시예에서 상술한 바와 같이, 부호화기는 변환 방법을 도출함에 있어, 미리 정해진 복수의 변환 방법 중 하나를 선택할 수 있다. 이 때, 부호화기는 미리 정해진 복수의 변환 방법 중 어느 방법을 선택하였는지를 나타내는 지시자를 전송 또는 시그널링할 수 있다. 부호화기는 상기 지시자의 엔트로피 부호화 모델을 도출하기 위해, 획득한 문맥 정보를 이용할 수 있다. 일 실시예로, 부호화기는 부호화 대상 블록의 주변 블록(들)의 화면 내 예측 모드 값에 따라, 미리 정해진 복수의 변환 방법에 대해 엔트로피 부호화 모델을 갱신할 수 있다. 엔트로피 부호화 모델을 도출하는 방법은 상기 실시예에 한하지 않으며, 획득한 문맥 정보의 유형, 변환 방법 도출 방식 등에 따라 달리 정해질 수 있다.
상기 도출된 엔트로피 부호화 모델은 예를 들어 심볼의 발생 빈도수, 발생 확률값 또는 확률 천이(transition) 모델을 포함할 수 있다. 또한 다른 예로서, 엔트로피 부호화 모델은 이진 부호화 방법에 관한 정보를 포함할 수 있다. 여기서 이진 부호화 방법에는 가변 길이 부호화, 산술 부호화 등이 있을 수 있다.
다시 도 4를 참조하면, 부호화기는 도출된 엔트로피 부호화 모델을 이용하여 엔트로피 부호화를 수행한다(S430).
도 4의 실시예에서, 엔트로피 부호화 모델을 도출하기 위해 사용되는 정보들은 부호화기로부터 전송되는 별도의 추가적인 정보 없이도 복호화기가 얻을 수 있는 정보들이다. 따라서 본 발명의 실시예에 따른 엔트로피 부호화 방법이 사용되는 경우, 부호화기에서 복호화기로 전송되는 추가적인 비트량이 최소화될 수 있다. 또한 부호화기는 획득한 문맥 정보를 이용하여 엔트로피 부호화를 수행함으로써, 부호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 부호화를 수행할 수 있다.
도 3 및 도 4에서 상술한 본 발명의 실시예에 따르면, 부호화기에서 복호화기로 전송되는 추가적인 부호화 비트 발생 없이, 부호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 변환 및/또는 엔트로피 부호화가 수행될 수 있다. 따라서 영상 부호화의 압축 성능이 향상된다.
상술한 변환 부호화 방법과 유사하게, 복호화기에서도 역변환 방법이 문맥 정보에 따라 적응적으로 도출될 수 있다. 복호화기에서 문맥 적응적 역변환 방법이 사용되는 경우, 엔트로피 복호화시 사용되는 심볼의 발생 확률 등에 관한 정보가 문맥 정보에 따라 달라질 수 있다. 따라서, 엔트로피 복호화에 있어서도 문맥 정보에 따라 적응적으로 도출된 엔트로피 복호화 모델이 사용될 수 있다.
도 5는 본 발명의 일 실시예에 따른 엔트로피 복호화 방법을 개략적으로 나타내는 흐름도이다. 도 5의 실시예에 따른 엔트로피 복호화는 복호화기에서 수행될 수 있으며, 일 실시예로 복호화기의 엔트로피 복호화부에서 수행될 수도 있다.
도 5를 참조하면, 복호화기는 엔트로피 복호화 모델 도출에 사용되는 문맥 정보를 획득한다(S510). 엔트로피 복호화 모델 도출에 사용되는 문맥 정보에는 다양한 유형이 있을 수 있다.
일 실시예로 문맥 정보에는 복호화 대상 블록의 부호화 파라미터 및/또는 이미 복호화된 블록의 부호화 파라미터가 포함될 수 있다. 부호화 파라미터에는 예측 모드 정보, 움직임 또는 이동 정보, 양자화 정보, 블록 크기 정보 또는 필터 정보 등이 있을 수 있다.
예측 모드 정보는 예를 들어, 화면 간 예측인지 화면 내 예측인지를 지시하는 정보 및/또는 세부적으로 어떤 예측 방향 및/또는 예측 방법이 사용되는지를 지시하는 정보 등을 포함할 수 있다. 움직임 또는 이동 정보는 예를 들어, 움직임 벡터(motion vector)나 이동(변이) 벡터의 부호화 여부를 지시하는 정보, 벡터의 크기 정보, 참조 영상의 인덱스 및/또는 참조 영상의 개수에 관한 정보 등을 포함할 수 있다. 양자화 정보는 양자화 파라미터(quantization parameter), 양자화 스텝(quantization step) 크기, 양자화 가중치 행렬의 종류 및/또는 양자화 가중치 행렬의 값 등에 관한 정보를 포함할 수 있다. 블록 크기 정보는 블록의 크기, 블록의 분할 여부, 블록의 분할 유형, 블록의 분할 경계 위치 및/또는 블록의 분할 경계 방향 등에 관한 정보를 포함할 수 있다. 필터 정보는 보간 필터(interpolation filter), 디노이징 필터(denoising filter), 디밴딩 필터(debanding filter), 디블록킹 필터(deblocking filter) 등의 적용 여부를 지시하는 정보, 필터 계수 정보 및/또는 필터 강도에 관한 정보 등을 포함할 수 있다.
상기와 같은 부호화 파라미터의 값들은 직접 문맥 정보로 활용될 수 있다. 또한 부호화 파라미터 값들의 조합이나 발생 빈도가 구해진 후, 그 조합이나 발생 빈도 정보가 문맥 정보로 활용될 수도 있다.
다른 실시예로 문맥 정보는 이미 복호화된 블록의 변환 계수 정보를 포함할 수 있다.
예를 들어, 변환 계수 정보는 변환 계수의 존재 여부를 나타내는 정보를 포함할 수 있다. 변환 계수의 존재 여부를 나타내는 정보에는 코디드 블록 패턴(Coded Block Pattern), 코디드 블록 플래그(Coded Block Flags), 스플릿 플래그(Split Flags) 등이 있을 수 있다. 또한 예를 들어, 변환 계수 정보는 변환 계수의 분포 및/또는 변환 계수의 분포 유형에 관한 정보도 포함할 수 있다. 변환 계수의 분포 및/또는 변환 계수의 분포 유형에 관한 정보에는 변환 계수가 주로 저주파 영역에 분포함을 지시하는 정보, 변환 계수가 특정 방향에 주로 존재함을 지시하는 정보, 변환 계수가 고르게 분포함을 지시하는 정보 등이 있을 수 있다. 변환 계수 정보는 변환 계수에 대한 스캔 방식 및/또는 스캔 순서에 관한 정보도 포함할 수 있다.
또 다른 실시예로 문맥 정보는 이미 복원된 화소값들을 포함할 수 있다. 상기 화소값들이 구해지는 영역은 다양하게 정해질 수 있다. 예를 들어 상기 화소값들은 복호화 대상 블록과 공간적으로 가까이 위치한 화소들 중 이미 복원된 화소들의 화소값들일 수 있다. 다른 예로, 상기 화소값들은 복호화 대상 블록의 화소값 예측에 사용된 화소들 중 이미 복원된 화소들의 화소값들일 수 있다.
복호화기는 상기 화소값들 전체 또는 일부를 이용하여 상기 화소값들을 대표할 수 있는 특징값을 도출한 후, 그 특징값을 문맥 정보로 이용할 수도 있다. 상기 특징값은 예를 들어, 평균 변이(variance, deviation) 값, 상관도(correlation) 등의 통계값일 수 있다. 또한 상기 특징값은 예를 들어, 화소값들로부터 산출된 경사도(gradient), 에지니스(edgeness) 등 영상의 특징(feature)을 나타내는 값일 수도 있다.
복호화기는 상술한 복호화 대상 블록의 부호화 파라미터, 이미 복호화된 블록의 부호화 파라미터, 이미 복호화된 블록의 변환 계수 정보, 이미 복원된 화소값 정보들 중 적어도 하나를 이용하여 엔트로피 복호화 모델 도출에 사용될 문맥 정보를 획득할 수 있다.
복호화기는 획득한 문맥 정보를 이용하여 엔트로피 복호화 모델을 도출한다(S520).
도 6의 실시예에서 후술되는 바와 같이, 본 발명의 실시예에 따른 복호화기는 역변환 방법을 도출함에 있어, 미리 정해진 복수의 역변환 방법 중 하나를 선택할 수 있다. 이 때, 복호화기는 비트스트림(bitstream)을 파싱(parsing)하여 변환 방법 선택을 위한 지시자를 구한 후 지시자 값에 따라 미리 정해진 복수의 역변환 방법 중 하나를 선택할 수 있다. 복호화기는 상기 지시자의 파싱에 필요한 엔트로피 복호화 모델 도출을 위해 앞서 획득한 문맥 정보를 이용할 수 있다. 일 실시예로, 복호화기는 복호화 대상 블록 주변 블록(들)의 화면 내 예측 모드 값에 따라, 미리 정해진 복수의 역변환 방법에 대해 엔트로피 복호화 모델을 갱신할 수 있다. 엔트로피 복호화 모델을 도출하는 방법은 상기 실시예에 한하지 않으며, 획득한 문맥 정보의 유형, 역변환 방법 도출 방식 등에 따라 달리 정해질 수 있다.
상기 도출된 엔트로피 복호화 모델은 예를 들어 심볼의 발생 빈도수, 발생 확률값 또는 확률 천이(transition) 모델을 포함할 수 있다. 또한 다른 예로서, 엔트로피 복호화 모델은 이진 부호화 방법에 관한 정보를 포함할 수 있다. 여기서 이진 부호화 방법에는 가변 길이 부호화, 산술 부호화 등이 있을 수 있다.
다시 도 5를 참조하면, 복호화기는 도출된 엔트로피 복호화 모델을 이용하여 엔트로피 복호화를 수행한다(S530).
도 5의 실시예에서, 엔트로피 복호화 모델을 도출하기 위해 사용되는 정보들은 부호화기로부터 전송되는 별도의 추가적인 정보 없이도 복호화기가 얻을 수 있는 정보들이다. 따라서 본 발명의 실시예에 따른 엔트로피 복호화 방법이 사용되는 경우, 부호화기에서 복호화기로 전송되는 추가적인 비트량이 최소화될 수 있다. 또한 복호화기는 획득한 문맥 정보를 이용하여 엔트로피 복호화를 수행함으로써, 복호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 복호화를 수행할 수 있다.
엔트로피 복호화 결과 생성된 값들은 복호화기의 양자화부에 제공될 수 있으며, 양자화부는 양자화 파라미터에 따라 역양자화를 수행할 수 있다. 역양자화 결과 생성된 변환 계수들은 복호화기의 역변환부에 제공될 수 있다.
도 6은 본 발명의 일 실시예에 따른 역변환 방법을 개략적으로 나타내는 흐름도이다. 도 6의 실시예에 따른 역변환은 복호화기에서 수행될 수 있으며, 일 실시예로 복호화기의 역변환부에서 수행될 수도 있다.
도 6을 참조하면, 복호화기는 복호화 대상 블록의 역변환 방법 도출에 사용될 문맥 정보를 획득한다(S610).
상기 문맥 정보는 역변환 과정에서 별개로 획득되는 문맥 정보가 아닐 수 있으며, 엔트로피 복호화 과정에서 얻어진 문맥 정보가 그대로 역변환 과정에서 사용될 수도 있다. 엔트로피 복호화 과정에서 문맥 정보가 사용되지 않는 경우, 복호화기는 역변환 과정에서 별개로 문맥 정보를 획득할 수도 있다. 이 때, 역변환 방법 도출에 사용될 문맥 정보에는 다양한 유형이 있을 수 있으며, 예를 들어 문맥 정보는 도 5의 실시예에서 상술한 유형의 정보들일 수 있다.
다시 도 6을 참조하면, 복호화기는, 획득한 문맥 정보를 이용하여, 복호화 대상 블록에 적용되는 역변환 방법을 도출한다(S620).
문맥 정보를 이용하여 역변환 방법을 결정할 때 복호화기는 다양한 방법 또는 수단을 사용할 수 있다. 예를 들어, 문맥 정보 자체가 특정 범위에 포함되는지 여부를 판단하는 수단이 사용될 수 있다. 다른 예로서, 문맥 정보 자체가 특정 조건을 만족하는지 여부를 판단하는 수단이 사용될 수도 있다. 또 다른 예로서, 같은 종류의 문맥 정보들 간의 차이가, 특정 범위에 포함되는지 여부를 판단하는 수단이 사용될 수도 있다.
복호화기는 상기 판단된 결과를 그대로 이용하여 역변환 방법을 도출할 수 있다. 또한 복호화기는 상기 판단 수단을 여러 차례 적용하여 특정 범위에 포함되는 문맥 정보 및/또는 특정 조건을 만족하는 문맥 정보의 발생 빈도를 측정하여 빈도값을 구할 수도 있다. 이 때, 복호화기는 그 빈도값을 이용하여 역변환 방법을 도출할 수도 있다.
복호화기는, 역변환 방법을 도출함에 있어, 미리 정해진 복수의 역변환 방법 중 하나를 선택할 수 있다.
이 때, 복호화기는 방법 자체를 달리하는 복수의 역변환 방법 중 하나를 선택할 수 있다. 복수의 역변환 방법에는 KLT, DCT, DST, 하다마드(Hadamard) 변환, 웨이블릿(Wavelet) 변환, 방향성(Directional) 변환 등이 있을 수 있다.
복호화기는 동일한 역변환 방법 내에서 복수의 역변환식 중 하나를 선택할 수도 있다. 예를 들어, 상기 복수의 역변환식은 KLT 변환 방법에서 서로 다른 트레이닝 데이터에 최적화된 복수 개의 역변환식일 수 있다.
복호화기는, 역변환 방법을 도출함에 있어, 미리 정해진 초기 역변환식을 문맥 정보에 따라 갱신할 수도 있다. 여기서, 미리 정해진 초기 역변환식은, 예를 들어 KLT, DCT 등의 역변환 방법에 대한 초기 역변환식을 의미한다.
상기 초기 역변환식은 다양한 단계에서 미리 정해질 수 있다. 예를 들어 초기 역변환식은 시퀀스(sequence) 단계에서 미리 정해질 수 있고, GOP(Group of Picture) 단계에서 미리 정해질 수도 있다. 또한 다른 예로 초기 역변환식은 픽쳐, 슬라이스(slice), 부호화 유닛 또는 변환 유닛 등의 단계에서도 미리 정해질 수 있다.
초기 역변환식에 대한 갱신 여부 결정 및/또는 초기 역변환식에 대한 실제 갱신 과정은 복호화 대상 블록에 대한 역변환 이전에 이루어질 수 있다. 또한 초기 역변환식에 대한 갱신 여부 결정 및/또는 초기 역변환식에 대한 실제 갱신 과정은 복호화 대상 블록에 대한 역변환 이후에 이루어질 수도 있다.
복호화기는 획득한 문맥 정보를 이용하여 역변환 방법을 도출함에 있어, 상술한 미리 정해진 복수의 역변환 방법 중 하나를 선택하는 방법들 및 미리 정해진 초기 역변환식을 문맥 정보에 따라 갱신하는 방법들 중 적어도 하나를 이용할 수 있다.
다시 도 6을 참조하면, 복호화기는, 도출된 역변환 방법을 이용하여 복호화 대상 블록에 대한 역변환을 수행한다(S630). 역변환은 변환 계수들에 대해 변환 블록 단위로 수행될 수 있다.
도 6의 실시예에서 복호화기는 복호화 대상 블록에 대한 문맥 정보를 이용하여 블록 단위로 최적의 역변환 방법 및/또는 역변환식을 도출할 수 있다. 또한 복호화기는 상기 역변환 방법 및/또는 역변환식을 이용하여 역변환을 수행함으로써, 문맥 적응적 또는 신호 적응적으로 역변환을 수행할 수 있다. 따라서 복호화기는 복호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 역변환을 수행할 수 있다.
또한 도 6의 실시예에서, 역변환 방법 및/또는 역변환식을 도출하거나 문맥 정보를 획득하기 위해 사용되는 정보들은, 부호화기로부터 전송되는 별도의 추가적인 정보 없이도 복호화기가 얻을 수 있는 정보들이다. 따라서 본 발명의 실시예에 따른 역변환 방법에서는, 부호화기에서 복호화기로 전송되는 추가적인 비트량이 최소화되거나 발생되지 않을 수 있다.
도 5 및 도 6에서 상술한 본 발명의 실시예에 따르면, 부호화기에서 복호화기로 전송되는 추가적인 부호화 비트 발생 없이, 복호화 대상 신호 특성의 변화에 따라 최대한 적응적으로 역변환 및/또는 엔트로피 복호화가 수행될 수 있다. 따라서 영상 부호화 및 복호화의 압축 성능이 향상된다.
상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (16)

  1. 삭제
  2. 삭제
  3. 현재 블록에 대한 정보를 기반으로 복수의 변환 방법들 중에서 상기 현재 블록에 대한 변환 방법을 결정하는 단계;
    상기 변환 방법에 따라서 상기 현재 블록에 대한 변환을 수행하여 잔차 신호를 유도하는 단계; 및
    상기 잔차 신호를 이용하여 상기 현재 블록에 대한 복원된 블록을 생성하는 단계를 포함하고,
    상기 변환 방법을 결정하는 단계에서는, 상기 현재 블록에 대한 분할에 대한 정보에 기반하여 상기 변환 방법이 결정되고,
    상기 변환 방법을 결정하는 단계에서는, 상기 분할의 방향에 기반하여 상기 변환 방법이 결정되는 영상 복호화 방법.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 현재 블록에 대한 잔차 블록을 생성하는 단계; 및
    상기 잔차 블록에 대한 변환 및 양자화를 수행함으로써 부호화된 현재 블록의 정보를 생성하는 단계
    를 포함하고,
    상기 부호화된 현재 블록의 정보를 사용하는 상기 현재 블록의 복호화에 있어서, 상기 현재 블록에 대한 정보를 기반으로 복수의 변환 방법들 중에서 상기 현재 블록에 대한 변환 방법이 결정되고, 상기 변환 방법에 따라서 상기 현재 블록에 대한 변환을 수행하여 잔차 신호가 유도되고, 상기 잔차 신호를 이용하여 상기 현재 블록에 대한 복원된 블록이 생성되고,
    상기 변환 방법은 상기 현재 블록에 대한 분할에 대한 정보에 기반하여 결정되고,
    상기 변환 방법은 상기 분할의 방향에 기반하여 결정되는 영상 부호화 방법.
  9. 삭제
  10. 삭제
  11. 제8항에 기재된 방법에 의하여 생성된 비트스트림을 기록하는 컴퓨터 판독 가능한 기록 매체.
  12. 삭제
  13. 삭제
  14. 영상의 복호화를 위한 비트스트림을 저장하는 컴퓨터 판독 가능한 기록매체에 있어서, 상기 비트스트림은,
    부호화된 현재 블록의 정보를 포함하고,
    상기 부호화된 현재 블록의 정보를 사용하는 현재 블록의 복호화에 있어서, 상기 현재 블록에 대한 정보를 기반으로 복수의 변환 방법들 중에서 상기 현재 블록에 대한 변환 방법이 결정되고, 상기 변환 방법에 따라서 상기 현재 블록에 대한 변환을 수행하여 잔차 신호가 유도되고, 상기 잔차 신호를 이용하여 상기 현재 블록에 대한 복원된 블록이 생성되고,
    상기 변환 방법은 상기 현재 블록에 대한 분할에 대한 정보에 기반하여 결정되고,
    상기 변환 방법은 상기 분할의 방향에 기반하여 결정되는 컴퓨터 판독 가능한 기록매체.
  15. 삭제
  16. 삭제
KR1020190077001A 2010-09-30 2019-06-27 영상 변환 부호화/복호화 방법 및 장치 KR102218696B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210020624A KR102439871B1 (ko) 2010-09-30 2021-02-16 영상 변환 부호화/복호화 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20100095111 2010-09-30
KR1020100095111 2010-09-30

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180074074A Division KR101995908B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210020624A Division KR102439871B1 (ko) 2010-09-30 2021-02-16 영상 변환 부호화/복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190080842A KR20190080842A (ko) 2019-07-08
KR102218696B1 true KR102218696B1 (ko) 2021-02-22

Family

ID=46136624

Family Applications (12)

Application Number Title Priority Date Filing Date
KR1020110099710A KR20120034044A (ko) 2010-09-30 2011-09-30 영상 변환 부호화/복호화 방법 및 장치
KR1020150015606A KR101854640B1 (ko) 2010-09-30 2015-01-30 영상 변환 부호화/복호화 방법 및 장치
KR1020170067642A KR101874015B1 (ko) 2010-09-30 2017-05-31 영상 변환 부호화/복호화 방법 및 장치
KR1020180074046A KR101973563B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074040A KR101973568B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074054A KR101995915B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074051A KR101973571B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074074A KR101995908B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020190077001A KR102218696B1 (ko) 2010-09-30 2019-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020210020624A KR102439871B1 (ko) 2010-09-30 2021-02-16 영상 변환 부호화/복호화 방법 및 장치
KR1020220109399A KR102548881B1 (ko) 2010-09-30 2022-08-30 영상 변환 부호화/복호화 방법 및 장치
KR1020230081096A KR20230098527A (ko) 2010-09-30 2023-06-23 영상 변환 부호화/복호화 방법 및 장치

Family Applications Before (8)

Application Number Title Priority Date Filing Date
KR1020110099710A KR20120034044A (ko) 2010-09-30 2011-09-30 영상 변환 부호화/복호화 방법 및 장치
KR1020150015606A KR101854640B1 (ko) 2010-09-30 2015-01-30 영상 변환 부호화/복호화 방법 및 장치
KR1020170067642A KR101874015B1 (ko) 2010-09-30 2017-05-31 영상 변환 부호화/복호화 방법 및 장치
KR1020180074046A KR101973563B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074040A KR101973568B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074054A KR101995915B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074051A KR101973571B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치
KR1020180074074A KR101995908B1 (ko) 2010-09-30 2018-06-27 영상 변환 부호화/복호화 방법 및 장치

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020210020624A KR102439871B1 (ko) 2010-09-30 2021-02-16 영상 변환 부호화/복호화 방법 및 장치
KR1020220109399A KR102548881B1 (ko) 2010-09-30 2022-08-30 영상 변환 부호화/복호화 방법 및 장치
KR1020230081096A KR20230098527A (ko) 2010-09-30 2023-06-23 영상 변환 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
KR (12) KR20120034044A (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120034044A (ko) * 2010-09-30 2012-04-09 한국전자통신연구원 영상 변환 부호화/복호화 방법 및 장치
CN114128267A (zh) 2019-06-19 2022-03-01 Lg 电子株式会社 图像编译系统中用于关于变换核集的信息的上下文编译
MX2021016152A (es) 2019-06-19 2022-02-22 Lg Electronics Inc Se?alizacion de informacion que indica el conjunto de nucleo de transformacion en codificacion de imagen.
AU2020297214B2 (en) 2019-06-19 2023-11-02 Lg Electronics Inc. Coding of information about transform kernel set
KR20230063307A (ko) 2021-11-01 2023-05-09 한국전자통신연구원 특징 중요도 기반의 머신비전 임무 수행을 위한 영상 처리 방법 및 이를 위한 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4447197B2 (ja) * 2002-01-07 2010-04-07 三菱電機株式会社 動画像符号化装置および動画像復号装置
KR20120034044A (ko) * 2010-09-30 2012-04-09 한국전자통신연구원 영상 변환 부호화/복호화 방법 및 장치

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A. Ichigaya, et al. Description of video coding technology proposal by NHK and Mitsubishi, JCT-VC of ITU-T and ISO/IEC. JCTVC-A122. Apr. 2010, pp.1-43
A. Saxena, et al. Jointly optimal intra prediction and adaptive primary transform, JCT-VC of ITU-T and ISO/IEC. JCTVC-C108. Oct. 2010, pp.1-22
J. Han, et al. Towards jointly optimal spatial prediction and adaptive transform in video/image coding. IEEE Int'l Conf. on Acoustics Speech and Signal Processing 2010, Mar. 14-19, 2010, pp.726-729*
JCT-VC, Test Model under Consideraton. JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11. 2nd Meeting, JCTVC-B205 (draft005), Sep. 24, 2010, pp.1-180*

Also Published As

Publication number Publication date
KR101973568B1 (ko) 2019-04-30
KR102548881B1 (ko) 2023-06-30
KR20170063500A (ko) 2017-06-08
KR20150027776A (ko) 2015-03-12
KR101874015B1 (ko) 2018-07-04
KR20180075468A (ko) 2018-07-04
KR20220123624A (ko) 2022-09-08
KR102439871B1 (ko) 2022-09-05
KR20230098527A (ko) 2023-07-04
KR101995908B1 (ko) 2019-07-04
KR20210020971A (ko) 2021-02-24
KR20180075467A (ko) 2018-07-04
KR20180075464A (ko) 2018-07-04
KR20180075465A (ko) 2018-07-04
KR20120034044A (ko) 2012-04-09
KR20180075466A (ko) 2018-07-04
KR101995915B1 (ko) 2019-07-04
KR101973571B1 (ko) 2019-04-30
KR101854640B1 (ko) 2018-05-08
KR101973563B1 (ko) 2019-04-30
KR20190080842A (ko) 2019-07-08

Similar Documents

Publication Publication Date Title
US11438601B2 (en) Method for encoding/decoding image and device using same
KR102218696B1 (ko) 영상 변환 부호화/복호화 방법 및 장치
JP6284954B2 (ja) イントラ予測のためのモード決定の簡略化
KR102175472B1 (ko) 인트라 예측 방법 및 그 장치
JP6293756B2 (ja) スケーラブルビデオ符号化における変換基準の調整
KR20210114915A (ko) 변환 계수 스캔 방법 및 그 장치
JP2015504292A (ja) 低減された初期値セットを持つコンテキスト適応エントロピ・コーディング
US20240114151A1 (en) Method for encoding/decoding image and device using same
KR102516821B1 (ko) 예측 모드에 기초한 변환 생략 정보의 엔트로피 복호화 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
X701 Decision to grant (after re-examination)
A107 Divisional application of patent
GRNT Written decision to grant