KR20140124446A - 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 - Google Patents

인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR20140124446A
KR20140124446A KR20130041301A KR20130041301A KR20140124446A KR 20140124446 A KR20140124446 A KR 20140124446A KR 20130041301 A KR20130041301 A KR 20130041301A KR 20130041301 A KR20130041301 A KR 20130041301A KR 20140124446 A KR20140124446 A KR 20140124446A
Authority
KR
South Korea
Prior art keywords
block
intra prediction
unit
prediction
mode
Prior art date
Application number
KR20130041301A
Other languages
English (en)
Inventor
문주희
임성원
한종기
Original Assignee
인텔렉추얼디스커버리 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔렉추얼디스커버리 주식회사 filed Critical 인텔렉추얼디스커버리 주식회사
Priority to KR20130041301A priority Critical patent/KR20140124446A/ko
Publication of KR20140124446A publication Critical patent/KR20140124446A/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/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/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/136Incoming video signal characteristics or properties
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

본 발명의 실시 예에 따른 복호화 방법은 영상 신호의 복호화 방법에 있어서, 영상 신호의 일부 블록들을 복호화하는 단계; 상기 복호화된 일부 블록들 중 현재 복호화할 대상 블록에 대응되는 주변 블록들을 식별하고, 식별된 블록들에 적용된 인트라 예측 모드를 이용하여 최선 모드 후보를 생성하는 단계; 상기 최선 모드 후보를 이용하여 현재 복호화할 대상 블록에 대한 인트라 예측 모드를 결정하는 단계; 및 상기 결정된 인트라 예측 모드에 따라 예측 블록을 생성하고, 상기 예측 블록에 따라 상기 대상 블록을 복호화하는 단계를 포함한다.

Description

인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치{Method for encoding and decoding video using intra prediction, and apparatus thereof}
본 발명은 비디오 코덱에 관한 것으로, 더욱 상세하게는 부호화 및 복호화 시 코딩 블록의 주변 블록들로부터 정보를 상속받는 비디오 부호화 제공 방법 및 장치에 관한 것이다.
일반적인 비디오 부호화 및 복호화에 있어서, 현재 코딩 블록이 inter coded block 일 때, 주변 블록들의 움직임벡터(MV)와 참조 영상 index 등을 바탕으로 MVP를 계산하거나, Merge skip mode를 고려한다. 현재 코딩 블록이 intra coded block 일 때, 주변 블록들의 인트라 예측 모드들을 바탕으로 현재 블록을 intra coding하기 위한 MPM을 계산한다. 그러나, 이러한 일반적인 방법에서는, 주변 블록들로부터 상속받는 정보들의 종류가 제한적이라는 문제점이 있다.
본 발명의 실시 예는 비디오 코덱에서 지금보다 더 다양한 정보들을 주변블록들로부터 상속받는 방법을 제공한다.
다만, 본 발명의 실시 예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 비디오 부호화 제공 방법은 주변 블록들로부터 상속받을 수 있는 정보들의 종류 및 개수를 증가시키고, 이전에 부호화 및 복호화된 복수 개의 픽쳐들에서 정보를 추출하여 부호화에 이용한다.
본 발명의 실시 예에 따른 복호화 방법은 영상 신호의 복호화 방법에 있어서, 영상 신호의 일부 블록들을 복호화하는 단계; 상기 복호화된 일부 블록들 중 현재 복호화할 대상 블록에 대응되는 주변 블록들을 식별하고, 식별된 블록들에 적용된 인트라 예측 모드를 이용하여 최선 모드 후보를 생성하는 단계; 상기 최선 모드 후보를 이용하여 현재 복호화할 대상 블록에 대한 인트라 예측 모드를 결정하는 단계; 및 상기 결정된 인트라 예측 모드에 따라 예측 블록을 생성하고, 상기 예측 블록에 따라 상기 대상 블록을 복호화하는 단계를 포함한다.
본 발명에 따르면, 지금보다 더 다양한 정보들을 주변블록들로부터 상속받아 부호화 효율을 향상시킬 수 있다
도 1은 비디오 부호화 장치의 구성에 대한 일예를 나타내는 블록도이다.
도 2는 비디오 복호화 장치 구조에 대한 일예를 나타내는 블록도이다.
도 3은 인트라 예측 모드들에 대한 일예를 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 인트라 예측 방향 패턴 결정 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일실시예에 따른 모드 발생 빈도에 따라 인트라 예측 방향 패턴을 결정하는 방법에 대한 일실시예를 나타내는 도면이다.
도 6은 본 발명의 일실시예에 따른 특정 방향에 대해 더 세밀하게 예측을 하는 경우에 대한 도면이다.
도 7은 본 발명의 일실시예에 따른 주변블록들의 mode중에서 최소값과 최대값을 정하여 범위를 좁히는 경우에 대한 도면이다.
도 8은 본 발명의 일실시예에 따른 대표방향 기준으로 세밀하게 예측을 수행하는 경우에 대한 도면이다.
도 9는 본 발명의 일실시예에 따른 사용된 방식에 따라 번호를 할당하는 방식에 대한 도면이다.
도 10은 주변 블록의 상황에 따라 그룹을 나누고 MPM 후보를 설정하는 방식에 대한 도면이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시 예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본원의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본원 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
본원 명세서 전체에서, 마쿠시 형식의 표현에 포함된 “이들의 조합”의 용어는 마쿠시 형식의 표현에 기재된 구성 요소들로 이루어진 군에서 선택되는 하나 이상의 혼합 또는 조합을 의미하는 것으로서, 상기 구성 요소들로 이루어진 군에서 선택되는 하나 이상을 포함하는 것을 의미한다.
실제 영상과 그것의 깊이 정보 맵을 부호화하는 방법의 일예로, 현재까지 개발된 비디오 부호화 표준 중에서 최고의 부호화 효율을 가지는 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화를 진행 중인 HEVC(High Efficiency Video Coding)를 이용하여 부호화를 수행할 수 있다.
도 1은 비디오 부호화 장치의 구성에 대한 일예를 블록도로 도시한 것으로, 도시된 부호화 장치는 부호화 모드 결정부(110), 인트라 예측부(120), 움직임 보상부(130), 움직임 추정부(131), 변환부호화/양자화부(140), 엔트로피 부호화부(150), 역양자화/변환복호화부(160), 디블록킹 필터링부(170), 픽쳐 저장부(180), 감산부(190) 및 가산부(200)를 포함한다.
도 1을 참조하면, 부호화 모드 결정부(110)는 입력되는 비디오 신호를 분석하여 픽쳐를 소정 크기의 부호화 블록으로 분할하고, 분할된 소정 크기의 부호화 블록에 대한 부호화 모드를 결정한다. 상기 부호화 모드는 인트라 예측 부호화 및 인터 예측 부호화를 포함한다.
픽쳐는 복수의 슬라이스로 구성되고, 슬라이스는 복수개의 최대 부호화 단위(Largest coding unit: LCU)로 구성된다. 상기 LCU는 복수개의 부호화 단위(CU)로 분할될 수 있고, 부호기는 분할여부를 나타내는 정보(flag)를 비트스트림에 추가할 수 있다. 복호기는 LCU의 위치를 어드레스(LcuAddr)를 이용하여 인식할 수 있다. 분할이 허용되지 않는 경우의 부호화 단위(CU)는 예측 단위(Prediction unit: PU)로 간주되고, 복호기는 PU의 위치를 PU 인덱스를 이용하여 인식할 수 있다.
예측 단위(PU)는 복수개의 파티션으로 나뉠 수 있다. 또한 예측 단위(PU)는 복수개의 변환 단위(Transform unit: TU)로 구성될 수 있다.
부호화 모드 결정부(110)는 결정된 부호화 모드에 따른 소정 크기의 블록 단위(예를 들면, PU 단위 또는 TU 단위)로 영상 데이터를 감산부(190)로 보낸다.
변환부호화/양자화부(140)는 감산부(190)에 의해 산출된 잔차 블록을 공간 영역으로부터 주파수 영역으로 변환한다.
예를 들면, 잔차 블록에 대해서 2차원의 이산 코사인 변환(DCT) 또는 이산 사인 변환(DST) 기반의 변환을 실행한다. 또한, 변환부호화/양자화부(140)는 변환 계수를 양자화하기 위한 양자화 스텝 사이즈를 결정하고, 결정된 양자화 스텝 사이즈를 이용하여 변환 계수를 양자화한다. 결정된 양자화 스텝 사이즈 및 부호화 모드에 따라 양자화 매트릭스가 결정될 수 있다.
양자화된 2차원의 변환 계수는 미리 정해진 스캐닝 방법 중 하나에 의해 1차원의 양자화 변환 계수로 변환된다.
상기 변환된 1차원의 양자화 변환 계수의 시퀀스는 엔트로피 부호화부(150)로 공급된다.
역양자화/변환복호화부(160)는 변환부호화/양자화부(140)에 의해 양자화된 양자화 계수를 역양자화한다. 또한,
역양자화에 의해 얻어지는 역양자화 계수를 역변환한다. 이에 따라, 주파수 영역으로 변환된 잔차 블록을 공간 영역의 잔차 블록으로 복원할 수 있다.
디블록킹 필터링부(170)는 역양자화/변환부호화부(160)로부터 역양자화 및 역변환된 영상 데이터를 입력 받아 블록킹(blocking) 효과를 제거하기 위한 필터링을 수행한다.
픽쳐 저장부(180)는 필터링된 영상 데이터를 디블록킹 필터링부(170)로부터 입력 받아 픽쳐(picture) 단위로 영상을 복원하여 저장한다. 픽쳐는 프레임 단위의 영상이거나 필드 단위의 영상일 수 있다.
픽쳐 저장부(180)는 다수의 픽쳐를 저장할 수 있는 버퍼(도시되지 않음)를 구비한다. 버퍼에 저장된 다수의 픽쳐는 인트라 예측 및 움직임 추정을 위해 제공된다. 인트라 예측 또는 움직임 추정을 위해 제공되는 상기 픽쳐들은 참조 픽쳐로 불리운다.
움직임 추정부(131)는 상기 픽쳐 저장부(180)에 저장된 적어도 하나의 참조 픽쳐를 제공받아 움직임 추정을 수행하여 움직임 벡터, 참조 픽쳐를 나타내는 인덱스 및 블록 모드를 포함한 모션 데이터(Motion Data)를 출력한다.
예측 정밀도를 최적화하기 위해서, 소수 화소 정밀도, 예를 들면, 1/2 또는 1/4 화소 정밀도로 움직임 벡터를 결정한다. 움직임 벡터가 소수 화소 정밀도를 가질 수 있으므로, 움직임 보상부(130)는 소수 화소 위치의 화소 값을 산출하기 위한 보간 필터를 참조 픽쳐에 적용함으로써, 정수 화소 위치의 화소값으로부터 소수 화소 위치의 화소값을 산출한다.
움직임 보상부(130)는 움직임 추정부(131)로부터 입력된 모션 데이터에 따라, 픽쳐 저장부(180)에 저장된 다수의 참조 픽쳐들 중 움직임 추정에 이용된 참조 픽쳐로부터, 부호화하고자 하는 블록에 대응하는 예측 블록을 추출하여 출력한다.
움직임 보상부(130)는 소수 정밀도의 움직임 보상에 필요한 적응적 보간 필터의 필터 특성을 결정한다. 필터 특성은, 예를 들면, 적응적 보간 필터의 필터 타입을 나타내는 정보, 및, 적응적 보간 필터의 사이즈를 나타내는 정보 등이다. 필터의 사이즈는, 예를 들면, 적응적 보간 필터의 필터 계수의 수인 탭 수 등이다.
구체적으로, 움직임 보상부(130)는 적응적 보간 필터로서, 분리형 및 비분리형 적응적 필터 중 어느 하나를 결정할 수 있다. 그리고 나서, 결정된 적응적 보간 필터의 탭 수, 및, 각 필터 계수의 값을 결정한다. 필터 계수의 값은, 정수 화소와의 상대적인 소수 화소의 위치마다 다르게 결정될 수 있다. 또한, 움직임 보상부(130)는, 필터 계수가 고정인 복수개의 비적응적 보간 필터를 이용할 수도 있다.
움직임 보상부(130)는, 보간 필터의 특성을 소정의 처리 단위로 설정할 수 있다. 예를 들면, 소수 화소 단위, 부호화 기본 단위(부호화 유닛), 슬라이스 단위, 픽쳐 단위, 또는, 시퀀스 단위로 설정할 수 있다. 또한, 1개의 영상 데이터에 대해서, 1개의 특성을 설정해도 된다. 따라서, 소정의 처리 단위 내에서는, 동일한 필터 특성을 이용하므로, 움직임 보상부(130)는 필터 특성을 일시적으로 유지하는 메모리를 구비한다. 이 메모리는 필요에 따라, 필터 특성 및 필터 계수 등을 유지한다. 예를 들면, 움직임 보상부(130)는, I픽쳐마다 필터 특성을 결정하고, 슬라이스 단위로 필터 계수를 결정할 수 있다.
움직임 보상부(130)는, 픽쳐 저장부(180)로부터 참조 픽쳐를 수신하고, 결정된 적응적 보간 필터를 이용하여 필터 처리를 적용함으로써, 소수 정밀도의 예측 참조 화상을 생성한다.
그리고, 생성된 참조 화상과, 움직임 추정부(131)에 의해 결정된 움직임 벡터에 의거하여 소수 화소 정밀도의 움직임 보상을 행함으로써, 예측 블록을 생성한다.
감산부(190)는 부호화하고자 하는 입력 블록을 픽쳐 간 예측 부호화하는 경우, 움직임 보상부(130)로부터 입력 블록에 대응하는 참조 픽쳐 내의 블록을 입력받아 입력 매크로 블록과의 차분 연산을 수행하여 잔차 신호(residue signal)를 출력한다.
인트라 예측부(120)는 예측이 수행되는 픽처 내부의 재구성된 화소값을 이용하여 인트라 예측 부호화를 수행한다. 인트라 예측부는 예측 부호화할 현재 블록을 입력 받아 현재 블록의 크기에 따라 미리 설정된 복수개의 인트라 예측 모드 중에 하나를 선택하여 인트라 예측을 수행한다. 인트라 예측부(120)는 현재 블록에 인접한 이전에 부호화된 화소들을 이용해 현재 블록의 인트라 예측 모드를 결정하고, 상기 결정된 모드에 대응하는 예측 블록을 생성한다.
현재 픽처에 포함된 영역 중에서 이전에 부호화된 영역은 인트라 예측부(120)가 이용할 수 있도록 다시 복호화되어 픽쳐 저장부(180) 에 저장되어 있다. 인트라 예측부(120)는 픽쳐 저장부(180)에 저장되어 있는 현재 픽처의 이전에 부호화된 영역에서 현재 블록에 인접한 화소 또는 인접하지 않지만 적용 가능한 화소들을 이용하여 현재 블록의 예측 블록을 생성한다.
인트라 예측부(120)는 인트라 블록을 예측하기 위하여 인접 화소를 적응적으로 필터링할 수 있다. 복호기에서의 동일한 동작을 위해 부호기에서 필터링 여부를 알려주는 정보를 전송할 수 있다. 또는 현재 블록의 인트라 예측 모드 및 현재 블록의 크기 정보에 기초하여 필터링 여부를 결정할 수 있다.
영상 부호화 장치에 의해 사용되는 예측 타입은 상기 부호화 모드 결정부에 의해 입력 블록이 인트라 모드 또는 인터 모드로 부호화되는지 여부에 의존한다.
인트라 모드와 인터 모드의 전환은, 인트라/인터 전환 스위치에 의해 제어된다.
엔트로피 부호화부(150)는 변환부호화/양자화부(140)에 의해 양자화된 양자화 계수와 움직임 추정부(131)에 의해 생성된 움직임 정보를 엔트로피 부호화한다. 또한, 인트라 예측 모드, 제어 데이터(예를 들면, 양자화 스텝 사이즈 등) 등도 부호화될 수 있다. 또한, 움직임 보상부(130)에 의해 결정된 필터 계수도 부호화되어 비트 스트림으로서 출력한다.
도 2는 비디오 복호화 장치의 구성에 대한 일예를 블록도로 도시한 것으로, 도시된 복호화 장치는 인트로피 복호화부(210), 역양자화/역변환부(220), 가산기(270), 디블록킹 필터부(250), 픽쳐 저장부(260), 인트라 예측부(230), 움직임 보상 예측부(240) 및 인트라/인터전환 스위치(280)를 구비한다.
도 2를 참조하면, 인트로피 복호화부(210)는, 동영상 부호화 장치로부터 전송되는 부호화 비트스트림을 복호하여, 인트라 예측 모드 인덱스, 움직임 정보, 양자화 계수 시퀀스 등으로 분리한다. 인트로피 복호화부(210)는 복호된 움직임 정보를 움직임 보상 예측부(240)에 공급한다. 인트로피 복호화부(210)는 상기 인트라 예측 모드 인덱스를 상기 인트라 예측부(230), 역양자화/역변환부(220)로 공급한다. 또한, 상기 인트로피 복호화부(210)는 상기 역양자화 계수 시퀀스를 역양자화/역변환부(220)로 공급한다.
역양자화/역변환부(220)는 상기 양자화 계수 시퀀스를 2차원 배열의 역양자화 계수로 변환한다. 상기 변환을 위해 복수개의 스캐닝 패턴 중에 하나를 선택한다. 현재 블록의 예측모드(즉, 인트라 예측 및 인터 예측 중의 어느 하나)와 인트라 예측 모드 및 변환 블록의 크기에 기초하여 복수개의 스캐닝 패턴 중 하나를 선택한다.
상기 인트라 예측 모드는 인트라 예측부 또는 인트로피 복호화부(210)로부터 수신한다.
역양자화/역변환부(220)는 상기 2차원 배열의 역양자화 계수에 복수개의 양자화 매트릭스 중 선택된 양자화 매트릭스를 이용하여 양자화 계수를 복원한다. 상기 양자화 매트릭스는 부호기로부터 수신된 정보를 이용하여 결정될 수도 있다.
복원하고자 하는 현재 블록(변환 블록)의 크기에 따라 서로 다른 양자화 매트릭스가 적용되며, 동일 크기의 블록에 대해서도 상기 현재 블록의 예측 모드 및 인트라 예측 모드 중 적어도 하나에 기초하여 양자화 매트릭스를 선택할 수 있다. 그리고, 상기 복원된 양자화 계수를 역변환하여 잔차 블록을 복원한다.
가산기(270)는 역양자화/역변환부(220)에 의해 복원된 잔차 블록과 인트라 예측부(230) 또는 움직임 보상 예측부(240)에 의해 생성되는 예측 블록을 가산함으로써, 영상 블록을 복원한다.
디블록킹 필터부(250)는 가산기(270)에 의해 생성된 복원 영상에 디블록킹 필터 처리를 실행한다. 이에 따라, 양자화 과정에 따른 영상 손실에 기인하는 디블록킹 아티펙트를 줄일 수 있다.
픽쳐 저장부(260)는 디블록킹 필터부(250)에 의해 디블록킹 필터 처리가 실행된 로컬 복호 영상을 유지하는 프레임 메모리이다.
인트라 예측부(230)는 인트로피 복호화부(210)로부터 수신된 인트라 예측 모드 인덱스에 기초하여 현재 블록의 인트라 예측 모드를 복원한다. 그리고, 복원된 인트라 예측 모드에 따라 예측 블록을 생성한다.
움직임 보상 예측부(240)는 움직임 벡터 정보에 기초하여 픽쳐 저장부(260)에 저장된 픽쳐로부터 현재 블록에 대한 예측 블록을 생성한다. 소수 정밀도의 움직임 보상이 적용될 경우에는 선택된 보간 필터를 적용하여 예측 블록을 생성한다.
인트라/인터 전환 스위치(280)는 부호화 모드에 기초하여 인트라 예측부(230)와 움직임 보상 예측부(260)의 어느 하나에서 생성된 예측 블록을 가산기(270)에 제공한다.
현재까지 표준화된 비디오 코덱 기술들에서, 한 픽쳐 내부의 화소값들을 블록 단위로 부호화하고 있다. 현재 부호화하려는 블록의 화소값들이 같은 영상 내부의 주변 블록들과 유사하다면, 그 유사성을 이용하여 인트라(intra) 부호화를 수행할 수 있다.
한편, 현재 코딩 블록이 intra coded block 일 때, 주변에 이미 부호화된 블록들의 화소값들을 참조하여 현재 블록을 예측한 후, 예측 잔차 신호를 부호화한다. HEVC에서는 35가지 예측 모드를 사용하여 공간적 예측 부호화를 수행한다.
도 3은 인트라 예측 모드들에 대한 일예를 도시한 것으로, HEVC에서 고려하는 intra prediction의 예측 모드들 및 예측 방향을 나타낸다.
도 3을 참조하면, 인트라 예측 모드의 수는 블록의 크기에 따라 달라질 수 있다. 예를 들어, 현재 블록의 크기가 8x8, 16x16, 32x32인 경우에는 34개의 인트라 예측 모드가 존재할 수 있고, 현재 블록의 크기가 4x4인 경우에는 17개의 인트라 예측 모드가 존재할 수 있다. 상기 34개 또는 17개의 인트라 예측 모드는 적어도 하나 이상의 비방향성 모드(non-directional mode)와 복수개의 방향성 모드들(directional modes)로 구성될 수 있다.
하나 이상의 비방향성 모드는 DC 모드 및/또는 플래너(planar) 모드일수 있다. DC 모드 및 플래너모드가 비방향성 모드로 포함되는 경우에는, 현재 블록의 크기에 관계없이 35개의 인트라 예측 모드가 존재할 수도 있다. 이때에는 2개의 비방향성 모드(DC 모드 및 플래너 모드)와 33개의 방향성 모드를 포함할 수 있다.
플래너 모드는 현재 블록의 우하측(bottom-right)에 위치하는 적어도 하나의 화소값(또는 상기 화소값의 예측값, 이하 제1 참조값이라 함)과 참조화소들을 이용하여 현재 블록의 예측 블록을 생성한다.
도 3에 도시된 바와 같이, 인트라 예측 모드는 왼쪽 하단방향으로 45도부터 오른쪽 상단 방향으로 45도까지 균등한 각도 간격으로 구성되어, 예측 부호화가 수행한다.
그러나, 현재 부호화를 수행하는 코딩 블록의 주위 환경에 따라서 예측 가능성이 높은 방향과 예측 가능성이 낮은 방향이 있을 수 있기 때문에, 상황에 따라 다른 예측 패턴이 필요하다.
확장된 개념의 intra prediction 방법(부호화기)
본 발명의 일실시예 따르면, 본 발명에서는 현재 블록을 intra prediction하기에 앞서, intra prediction 방향의 pattern을 적응적으로 사용할 수 있다.
예를 들어, 현재 코딩 블록 주위의 넓은 영역에 위치한 다수의 주변 블록들의 정보를 참조하여, 현재 블록을 예측하기 위한 intra prediction pattern이 결정될 수 있다.
도 4는 본 발명의 일실시예에 따른 인트라 예측 방향 패턴 결정 방법을 설명하기 위한 도면이다.
도 4를 참조하면, B(i,j)가 현재 코딩 블록이라고 할 때, 다른 블록들은 이미 부호화를 마치고 복원된 블록들을 의미한다. 본 발명의 일실시예에서는 넓은 영역의 주변 블록들의 정보를 참조할 수 있다.
예를 들어, 넓은 영역의 주변 블록들에서 선택된 intra prediction mode들의 발생 빈도를 계산한 후, 이 통계자료를 이용하여 현재 블록을 위한 prediction 방향 패턴을 결정한다.
도 5는 모드 발생 빈도에 따라 인트라 예측 방향 패턴을 결정하는 방법에 대한 일실시예를 나타내는 도면이다.
도 5를 참조하면, 주변 블록의 모드 빈도수를 근거로 현재 부호화 블록을 위한 prediction 방향 패턴을 결정할 수 있다. 예를 들어, 주위 블록들이 선택한 intra prediction mode의 경향에 따라서 특정한 예측 방향으로는 좀 더 세밀하게 예측을 수행하고 그 외 방향에 대해서는 듬성듬성한 예측 패턴을 사용한다.
이하, 아래의 예에서는 설명의 편의성을 위해, intra prediction mode의 종류중에서 DC mode와 Planar mode를 제외하고 방향을 가지는 mode는 9개라고 가정하고 설명 하지만, 갯수와 관련없이 방향성을 가지는 모든 intra prediction에 동일하게 적용가능하다.
도 6에서는 특정 방향에 대해 더 세밀하게 예측을 하는 경우에 대한 도면이다. 도 5의 예에서 주변블록의 기본적인 9개 mode외에, 각 모드 사이마다 3개의 임시 방향을 추가하였다. 단, 여기서도 설명의 편의성을 위해 각 mode 사이에 3개의 방향을 추가하였지만 사용자의 설정에 의해 N개의 방향 추가하는 것도 가능하다. 평소에는 9개 mode를 이용하되, 주변 블록의 mode를 참고하여 도 5와 같이 한쪽 방향으로 mode가 몰렸을 경우 해당 방향으로 더 세밀한 mode를 사용하며, 각 mode간의 각도는 동일하다. 예를 들어 주변블록의 mode를 확인하여 '대표방향'이 도 6의 A방향으로 결정되었을 경우, 대표방향의 mode를 제외하고 모든 mode를 A쪽으로 α만큼 이동시켜준다. 여기서 대표방향을 정할 시, 주위 블록 mode 번호의 평균으로 정할 수 있으며, α값의 경우 대표방향과 주변 블륵의 mode들과의 분산에 따라 임계값을 정하여 α값을 변화 시키거나 혹은 일정한 값으로 고정한다. 예를 들어, 대표방향과 주변 블록의 방향들에 대한 분산이 10 이상일 경우 α값을 1증가 시키고, 5와 10 사이라면 2 증가시키는 순으로 정할 수 있다.
또는, 주변블록들의 mode중에서 최소값과 최대값을 이용하여 범위를 좁히는 것도 가능하다. 도 7의 왼쪽 그림을 보면, 현재 블록 주위의 mode들의 범위를 정해서, 왼쪽방향과 위쪽방향으로 범위를 결정한 후, 그 사이를 동일한 각도로 나누어 예측하는 것도 가능하다.
도 8은 대표방향 기준으로 세밀하게 예측을 수행하는 경우에 대한 도면이다. 왼쪽 그림에는 완전히 A방향쪽으로 몰리는 경우에 대한 예시이며, 오른쪽 그림에는 일정한 각도로 나누는 것이 아닌 대표방향으로 갈수록 더 세밀하게 예측을 하는 예시에 대해서 설명하고 있다. 이 두 가지 경우에서도 대표방향과 그 외 방향들과의 분산을 이용하여 결정할 수 있다. 분산이 일정값 미만이라면 왼쪽그림과 같이 A방향으로 촘촘하게 예측을 하며, 일정값 이상일 경우 오른쪽 그림과 같이 A쪽으로 갈수록 촘촘하게 예측을 수행한다.
또는 플래그를 이용하여 제안하는 방식과 기존의 방식을 혼용하는 것도 가능하다. 부호화기에서는 도 9와 같이 각 방식에 따라 번호를 정해 어떤 방식으로 intra prediction을 하였는지 방식에 따른 번호를 복호화기로 전송한다. 예를 들어 1번이면 기존의 방식, 2∼4번이면 제안하는 방식 등으로 결정한다. 복호화기에선 전송받은 번호를 이용하여 해당하는 방식으로 복호화 한다.
확장된 개념의 MPM 방법(부호화기)
본 발명의 일실시예 따르면, 도 4에 도시된 영역보다 더 넓은 범위의 주변 블록들에 대한 다양한 정보들을 고려하여 MPM이 결정될 수 있다.
도 10의 왼쪽 그림에서서는, 엣지와 결정된 주위 블록의 intra prediction mode에 대한 예시가 나와있다. 이럴 경우, 오른쪽 그림과 같이 세 그룹으로 나누어 각 mode의 평균으로 MPM 후보를 결정한다. 예를 들어 MPM 후보 1은 (10+12)/2=11, 후보 2는 (24+18)/2=16, 후보 3은 (17+16+16+18)/4=17 로 결정할 수 있으며, 기존의 기술과 결합하는것도 가능하다. 예를 들어 기존의 기술과 결합하는 경우, 후보 1은 12, 후보 2는 18이 되며 후보 3에서는 제안하는 기술에 따라 11, 16, 17중 하나가 선택될 수 있다.
또는 픽쳐 전체, 혹은 현재 블록 기준 임의의 거리안의 intra prediction mode의 빈도수를 하나의 CTU가 종료될 때마다 저장해 놓았다가 빈도수에 따라 MPM 후보를 다르게 적용하는 것도 가능하다.
또는 현재블록 주위의 모드들을 가로, 세로, 대각선으로 그룹하여 선형결합으로 MPM 후보를 결정하는 것도 가능하다. 도11의 예를 보면, 각 그룹마다 동일한 변화가 일어났다고 가정하고 가로 그룹은 +2씩 14, 세로 그릅운 -6씩 8, 대각선 그룹은 +1씩 19로 결정하여 각각 MPM후보로 적용하는것이 가능하다. 혹은 현재블록과 가까운 블록에 더 많은 가중치를 부여하여 현재 블록과 가까운 블록에는 2, 먼 블록에는 1의 가중치를 부여하여 가로 그룹에서는 (10*1 +12*2)/3 = 11, 세로 그룹에서는 (24*1 + 18*2)/3 = 20, 대각선 그룹에서는 (17*1 + 18*2)/3 = 18 로 결정하여 각각 MPM 후보로 적용 가능하다. 혹은 기존의 MPM 후보 생성방식과 혼용하는 것도 가능하다. 예를 들어 MPM 후보 1과 MPM 후보 2는 기존의 방식을 사용하며, MPM 후보 3에는 제안하는 방식을 적용하여 MPM후보를 생성할 수 있다.
이하 본 발명의 일실시예는 복호화기에 대하여 설명을 하며, 부호화기의 비트스트림 생성 및 복호화기의 비트스트림 추출 구조는 따로 언급하지 않아도 부호화기와 복호화기 모두 동일하다.
확장된 개념의 intra prediction 방법(복호화기)
본 실시예에 대한 예측블록에서의 비트스트림 추출 구조는 종래의 기술과 동일하다. 예측블록과 관련된 비트를 추출하기전에 예측블록의 상위레벨(SPS, PPS, 슬라이스헤더 등)에서 각 mode사이에 몇개의 임시 방향을 더 추가할건지에 대한 갯수를 비트스트림에서 추출할 수 있거나, 부호화기와 복호화기에 어떤 특정한 갯수의 임시방향을 추가하는것으로 고정시키는 것도 가능하다 . 현재블록이 intra coding 되었다고 판단되면, 도 5와 동일한 과정을 통하여 각 mode 사이에 임시 방향을 추가하고, 주변 블록의 mode를 참고하여 대표방향을 결정하고 α값을 구하여 실제로 사용할 mode의 set을 설정한다. 이때 α값은, 대표방향과 주변블록의 방향과의 분산 등으로 구할 수도 있으나, 따로 비트를 이용하여 복호화기로 알려주는 것도 가능하다. 그 후, 부호화기에서 전송되어온 mode와 관련된 비트 추출 및 추출된 비트가 가리키는 mode를 적용하여 예측블록을 생성후 현재 블록과 합하여 복호화한다.
또는, 부호화기에서 도 7의 왼쪽 그림과 같이 주변 블록의 mode를 이용하여 최소값과 최대값을 정한후 도 7의 오른쪽 그림처럼 실제로 사용할 mode의 set을 설정하고 부호화기에서 전송되어온 mode와 관련된 비트 추출 및 추출된 비트가 가리키는 mode를 적용하여 예측블록을 생성후 현재 블록과 합하여 복호화한다.
또는, 도 8에서 설명한대로 사용할 mode의 set을 설정하여 예측블록을 생성후 현재 블록과 합하여 복호화한다.
위의 실시예들은 각각, 알려주는 비트(플래그 : flag)를 이용하여 종래의 기술과 혼용할 수 있으며, 각 기술들의 조합 혹은 전부 적용하는 것도 가능하다. 도 9에서는 위의 실시예들을 전부 사용하여 복호화기로 어떤 방식의 intra prediction 을 사용하였는지 1번∼4번으로 알려주는 방식을 설명하고 있다.
확장된 개념의 MPM 방법(복호화기)
본 실시예에 대한 예측블록에서의 비트스트림 추출 구조는 종래의 기술과 동일하다. 도 10의 그림과 같이 현재블록 주위의 여러 블록들에 대한 intra prediction mode를 참고하여 MPM후보를 생성한다. 부호화기와 동일하게 각 그룹을 나누어 MPM후보를 설정하여, 비트스트림에서 추출한 정보를 이용하여 사용된 mode 결정 및 예측블록을 생성하여 복호화 한다.
또는 픽쳐 전체, 혹은 현재 블록 기준 임의의 거리안의 intre prediction mode의 빈도수를 하나의 CTU가 종료될 때마다 사용된 intra 저장해 놓았다가 빈도수에 따라 MPM 후보를 적용하는 것도 가능하다.
또는 도 11에서 설명한 방식과 같이 현재블록 주위의 모드들을 가로, 세로, 대각선으로 그룹하여 선형결합으로 MPM 후보를 결정하는 것도 가능하다. 도 11의 예에서는 현재블록 주위의 2개의 블록에 대해서만 그룹을 하였지만 그 이상의 블록에 대해서 그룹하는 것도 가능하다.
또는, 위에서 설명한 3가지 방식의 MPM을 기존의 방식과 혼용하는 것도 가능하다. 예측블록단위에서 MPM으로 예측이 되었는지를 나타내는 비트를 추출하기 전에, 어떤 방식의 MPM을 사용하였는지를 알려주는 비트를 추출하는 것도 가능하다. 이 비트는 예측블록단위에서 추출하는것도 가능하며 또는 예측블록의 상위레벨(SPS, PPS, 슬라이스헤더 등)에서 추출하는것도 가능하다.
위에서 설명한 "어떤 블록단위에서 어떤 비트를 추출한다"함은 부호화기에서도 동일하게 "어떤 블록단위에서 어떤 비트를 생성한다"로 설명된다.
상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해 되어서는 안될 것이다.

Claims (8)

  1. 영상 신호의 복호화 방법에 있어서,
    영상 신호의 일부 블록들을 복호화하는 단계;
    상기 복호화된 일부 블록들 중 현재 복호화할 대상 블록에 대응되는 주변 블록들을 식별하고, 식별된 블록들에 적용된 인트라 예측 모드를 이용하여 최선 모드 후보를 생성하는 단계; 및
    상기 최선 모드 후보를 이용하여 현재 복호화할 대상 블록에 대한 인트라 예측 모드를 결정하는 단계를 포함하는 복호화 방법.
  2. 제1항에 있어서,
    상기 결정된 인트라 예측 모드에 따라 예측 블록을 생성하고, 상기 예측 블록에 따라 상기 대상 블록을 복호화하는 단계를 더 포함하는 복호화 방법.
  3. 제1항에 있어서,
    상기 최선 모드 후보는 상기 복호화 대상 블록의 주변에 위치한 블록들의 인트라 예측 모드 정보에 기초하여 결정되는 복호화 방법.
  4. 제1항에 있어서,
    상기 최선 모드 후보는 상기 복호화된 일부 블록들에 적용된 인트라 예측 모드의 빈도수에 기초하여 결정되는 복호화 방법.
  5. 영상 신호의 복호화 장치에 있어서,
    영상 신호의 일부 블록들을 복호화하는 복호화부;
    상기 복호화된 일부 블록들 중 현재 복호화할 대상 블록에 대응되는 주변 블록들을 식별하고, 식별된 블록들에 적용된 인트라 예측 모드를 이용하여 최선 모드 후보를 생성하는 최선 모드 후보 생성부; 및
    상기 최선 모드 후보를 이용하여 현재 복호화할 대상 블록에 대한 인트라 예측 모드를 결정하는 인트라 예측 모드 결정부를 포함하는 복호화 장치.
  6. 제5항에 있어서,
    상기 복호화부는 상기 결정된 인트라 예측 모드에 따라 예측 블록을 생성하고, 상기 예측 블록에 따라 상기 대상 블록을 복호화하는 복호화 장치.
  7. 제5항에 있어서,
    상기 최선 모드 후보는 상기 복호화 대상 블록의 주변에 위치한 블록들의 인트라 예측 모드 정보에 기초하여 결정되는 복호화 장치.
  8. 제5항에 있어서,
    상기 최선 모드 후보는 상기 복호화된 일부 블록들에 적용된 인트라 예측 모드의 빈도수에 기초하여 결정되는 복호화 장치.
KR20130041301A 2013-04-15 2013-04-15 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 KR20140124446A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130041301A KR20140124446A (ko) 2013-04-15 2013-04-15 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130041301A KR20140124446A (ko) 2013-04-15 2013-04-15 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20140124446A true KR20140124446A (ko) 2014-10-27

Family

ID=51994656

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130041301A KR20140124446A (ko) 2013-04-15 2013-04-15 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20140124446A (ko)

Similar Documents

Publication Publication Date Title
JP6321749B2 (ja) 動画符号化装置
CN107071460B (zh) 用于编码运动画面的设备
US20160073107A1 (en) Method and apparatus for video encoding/decoding using intra prediction
US10602155B2 (en) Intra prediction method and apparatus
KR20140124443A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140124448A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140129423A (ko) 인트라 예측 방법 및 장치
KR20140124442A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140129417A (ko) 복수의 트랜스폼들을 이용한 영상 부호화/복호화 방법 및 장치
CN110495175B (zh) 图像解码方法和图像编码方法
WO2014084674A2 (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치
KR20150105348A (ko) 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치
KR20210156256A (ko) 인트라 예측 방법 및 장치
KR20140129421A (ko) 인트라 예측 방법 및 장치
KR20140124446A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140124445A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140124447A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140129418A (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치
KR20140124444A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
KR20140129411A (ko) 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치
KR20140129409A (ko) 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치
KR20140129424A (ko) 인트라 예측 방법 및 장치
KR20140129420A (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치
KR20140129410A (ko) 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치
KR20140129419A (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination