KR101759672B1 - 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 - Google Patents
참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 Download PDFInfo
- Publication number
- KR101759672B1 KR101759672B1 KR1020157033454A KR20157033454A KR101759672B1 KR 101759672 B1 KR101759672 B1 KR 101759672B1 KR 1020157033454 A KR1020157033454 A KR 1020157033454A KR 20157033454 A KR20157033454 A KR 20157033454A KR 101759672 B1 KR101759672 B1 KR 101759672B1
- Authority
- KR
- South Korea
- Prior art keywords
- picture
- prediction
- unit
- poc
- reference picture
- 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
-
- 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
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- 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
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- 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/103—Selection of coding mode or of prediction mode
-
- 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/172—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 picture, frame or field
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치가 개시되어 있다. 영상 복호화 방법은 계층적 픽쳐 구조에서 차상위 시간적 계층 픽쳐 중 하나의 픽쳐를 복호화하는 단계와 차상위 시간적 계층 픽쳐의 POC(Picture Order Count)를 기준으로 POC 순서상 앞 뒤에 존재하는 최상위 시간적 계층 픽쳐를 복호화 하는 단계를 포함할 수 있다. 따라서 가용한 참조 픽쳐를 DPB에 존재하도록 함으로서 영상 부호화 효율을 높일 수 있다.
Description
본 발명은 영상 복호화 방법 및 장치에 관한 것으로 더욱 상세하게는 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품록을 받으질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.
영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.
본 발명의 목적은 영상 부복호화 효율을 증가시키기 위한 참조 픽쳐 리스트 관리 방법에 관한 것이다.
또한, 본 발명의 다른 목적은 영상 부복호화 효율을 증가시키기 위한 참조 픽쳐 리스트 관리 방법을 수행하는 장치에 관한 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상 복호화 방법은 계층적 픽쳐 구조에서 차상위 시간적 계층 픽쳐 중 하나의 픽쳐를 복호화하는 단계와 상기 차상위 시간적 계층 픽쳐의 POC(Picture Order Count)를 기준으로 상기 POC 순서상 앞 뒤에 존재하는 최상위 시간적 계층 픽쳐를 복호화 하는 단계를 포함할 수 있다. 상기 영상 복호화 방법은 상기 복호화된 차상위 시간적 계층의 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지고 단기간 참조 픽쳐의 개수가 0보다 큰지 여부를 판단하는 단계를 더 포함할 수 있다. 상기 영상 복호화 방법은 상기 단기간 참조 픽쳐 및 상기 장기간 참조 픽쳐의 개수를 산출하는 단계를 더 포함할 수 있다. 상기 영상 복호화 방법은 상기 DPB에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 단기간 참조 픽쳐의 개수가 0보다 큰 경우 상기 DPB에 존재하는 상기 단기 참조 픽쳐 중 POC가 가장 작은 단기 참조 픽쳐를 상기 DPB에서 제거하는 단계를 더 포함할 수 있다. 상기 계층적 픽쳐 구조는 5개의 시간적 계층 픽쳐를 가지고 8개의 픽쳐를 포함한 GOP 계층적 픽쳐 구조일 수 있다. 상기 차상위 시간적 계층 픽쳐는 제3 시간적 계층에 존재하는 픽쳐이고, 상기 최상위 시간적 계층 픽쳐는 제4 시간적 계층에 존재하는 픽쳐일 수 있다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상 복호화 방법은 복호화된 차상위 시간적 계층의 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지는지 여부를 판단하는 단계와 단기 참조 픽쳐의 개수가 0보다 큰지 여부를 판단하는 단계를 포함할 수 있다. 상기 영상 복호화 방법은 상기 단기간 참조 픽쳐 및 상기 장기간 참조 픽쳐의 개수를 산출하는 단계를 더 포함할 수 있다. 상기 영상 복호화 방법은 상기 DPB에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 단기간 참조 픽쳐의 개수가 0보다 큰 경우 상기 DPB에 존재하는 상기 단기 참조 픽쳐 중 POC가 가장 작은 단기 참조 픽쳐를 상기 DPB에서 제거하는 단계를 더 포함할 수 있다 .
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상 복호화 장치는 계층적 픽쳐 구조에서 차상위 시간적 계층 픽쳐 중 하나의 픽쳐를 복호화하고 상기 차상위 시간적 계층 픽쳐의 POC(Picture Order Count)를 기준으로 상기 POC 순서상 앞 뒤에 존재하는 최상위 시간적 계층 픽쳐를 복호화하도록 픽쳐 정보를 판단하는 픽쳐 정보 판단부와 상기 픽쳐 정보 판단부에 의해 판단된 픽쳐 정보에 기초하여 복호화된 상기 차상위 시간적 계층 픽쳐를 저장하는 참조 픽쳐 저장부를 포함할 수 있다 .상기 영상 복호화 장치는 상기 복호화된 차상위 시간적 계층의 픽쳐를 포함하여 상기 참조 픽쳐 저장부에 저장된 단기 참조 픽쳐 및 장기 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지고 단기간 참조 픽쳐의 개수가 0보다 큰지 여부를 판단하는 참조 픽쳐 정보 갱신부를 더 포함할 수 있다 . 상기 참조 픽쳐 정보 갱신부는 상기 단기 참조 픽쳐 및 상기 장기 참조 픽쳐의 개수를 산출하는 참조 픽쳐 정보 갱신부일 수 있다. 상기 참조 픽쳐 갱신부는 상기 참조 픽쳐 저장부에 저장된 단기 참조 픽쳐와 장기 참조 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 단기 참조 픽쳐의 개수가 0보다 큰 경우 상기 참조 픽쳐 저장부에 존재하는 상기 단기 참조 픽쳐 중 POC가 가장 작은 단기 참조 픽쳐를 상기 참조 픽쳐 저장부에서 제거하는 참조 픽쳐 정보 갱신부일 수 있다. 상기 계층적 픽쳐 구조는 5개의 시간적 계층 픽쳐를 가지고 8개의 픽쳐를 포함한 GOP 계층적 픽쳐 구조일 수 있다. 상기 차상위 시간적 계층 픽쳐는 제3 시간적 계층에 존재하는 픽쳐이고, 상기 최상위 시간적 계층 픽쳐는 제4 시간적 계층에 존재하는 픽쳐일 수 있다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상 복호화 장치는 복호화된 차상위 시간적 계층의 픽쳐를 포함하여 참조 픽쳐 저장부에 저장된 단기 참조 픽쳐 및 장기 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지는지 여부를 판단하고 단기 참조 픽쳐의 개수가 0보다 큰지 여부를 판단하는 참조 픽쳐 정보 갱신부와 상기 참조 픽쳐 정보 갱신부에 의해 생성된 정보에 의해 참조 픽쳐를 갱신하는 참조 픽쳐 저장부를 포함할 수 있다. 상기 참조 픽쳐 정보 갱신부는 상기 단기 참조 픽쳐 개수 및 상기 장기 참조 픽쳐의 개수의 합을 산출하는 참조 픽쳐 정보 갱신부일 수 있다. 상기 참조 픽쳐 정보 갱신부는 상기 참조 픽쳐 저장부에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 단기 참조 픽쳐의 개수가 0보다 큰 경우 상기 DPB에 존재하는 상기 단기 참조 픽쳐 중 POC가 가장 작은 단기 참조 픽쳐를 상기 참조 픽쳐 저장부에서 제거하도록 참조 픽쳐를 갱신하는 참조 픽쳐 정보 갱신부일 수 있다.
상술한 바와 같이 본 발명의 실시예에 따른 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치에 따르면, 참조 픽쳐를 복호화하는 순서를 변경하고 DPB에 적용되는 참조 픽쳐 제거 방법을 변화시킴으로서 최적의 참조 픽쳐가 가용하지 않은 경우를 줄여 영상의 부복호화 효율을 높일 수 있다.
도 1은 본 발명의 실시예에 따른 영상 부호화 장치를 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 영상 복호화기를 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 계층적 부호화 구조를 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 계층적 픽쳐 구조에서 복호화 순서 결정 방법을 나타낸 순서도이다.
도 5는 본 발명의 실시예에 따른 슬라이딩 윈도우 방법을 나타낸 순서도이다.
도 6은 본 발명의 실시예에 따른 참조 픽쳐 관리 방법을 나타낸 순서도이다.
도 7은 본 발명의 실시예에 따른 영상 복호화 장치를 나타낸 개념도이다.
도 2는 본 발명의 실시예에 따른 영상 복호화기를 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 계층적 부호화 구조를 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 계층적 픽쳐 구조에서 복호화 순서 결정 방법을 나타낸 순서도이다.
도 5는 본 발명의 실시예에 따른 슬라이딩 윈도우 방법을 나타낸 순서도이다.
도 6은 본 발명의 실시예에 따른 참조 픽쳐 관리 방법을 나타낸 순서도이다.
도 7은 본 발명의 실시예에 따른 영상 복호화 장치를 나타낸 개념도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예에 따른 영상 부호화 장치를 나타낸 블록도이다.
도 1을 참조하면, 영상 부호화 장치(100)는 픽쳐 분할부(105), 예측부(110), 변환부(115), 양자화부(120), 재정렬부(125), 엔트로피 부호화부(130), 역양자화부(135), 역변환부(140), 필터부(145) 및 메모리(150)를 포함할 수 있다.
도 1에 나타난 각 구성부들은 영상 부호화 장치에서 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시한 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벋어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
픽쳐 분할부(105)는 입력된 픽쳐를 적어도 하나의 처리 단위로 분할할 수 있다. 이때, 처리 단위는 예측 단위(Prediction Unit: PU)일 수도 있고, 변환 단위(Transform Unit: TU)일 수도 있으며, 부호화 단위(Coding Unit: CU)일 수도 있다. 픽쳐 분할부(105)에서는 하나의 픽쳐에 대해 복수의 부호화 단위, 예측 단위 및 변환 단위의 조합으로 분할하고 소정의 기준(예를 들어, 비용 함수)으로 하나의 부호화 단위, 예측 단위 및 변환 단위 조합을 선택하여 픽쳐를 부호화 할 수 있다.
예를 들어, 하나의 픽쳐는 복수개의 부호화 단위로 분할될 수 있다. 픽쳐에서 부호화 단위를 분할하기 위해서는 쿼드 트리 구조(Quad Tree Structure)와 같은 재귀적인 트리 구조를 사용할 수 있는데 하나의 영상 또는 최대 크기 부호화 단위를 루트로 하여 다른 부호화 단위로 분할되는 부호화 유닛은 분할된 부호화 단위의 개수만큼의 자식 노드를 가지고 분할될 수 있다. 일정한 제한에 따라 더이상 분할되지 않는 부호화 단위는 리프 노드가 된다. 즉, 하나의 코딩 유닛에 대하여 정방형 분할만이 가능하다고 가정하는 경우, 하나의 부호화 단위는 최대 4개의 다른 부호화 단위로 분할될 수 있다.
이하, 본 발명의 실시예에서는 부호화 단위의 의미를 부호화를 하는 단위라는 의미뿐만 아니라 복호화를 하는 단위의 의미로 사용할 수 있다.
예측 단위는 하나의 부호화 단위 내에서 동일한 크기의 적어도 하나의 정사각형 또는 직사각형 등의 형태를 가지고 분할되거나 하나의 부호화 단위 내에서 분할된 예측 단위 중 하나의 예측 단위의 형태가 다른 예측 단위의 형태와 다른 형태를 가지고 분할될 수 있다.
부호화 단위를 기초로 화면 내 예측을 수행하는 예측 단위를 생성시 최소 부호화 단위가 아닌 경우, 복수의 예측 단위(NxN)으로 분할하지 않고 화면 내 예측을 수행할 수 있다.
예측부(110)는 화면 간 예측을 수행하는 화면 간 예측부와 화면 내 예측을 수행하는 화면 내 예측부를 포함할 수 있다. 예측 단위에 대해 화면 간 예측을 사용할 것인지 또는 화면 내 예측을 수행할 것인지를 결정하고, 각 예측 방법에 따른 구체적인 정보(예컨대, 화면 내 예측 모드, 움직임 벡터, 참조 픽쳐 등)를 결정할 수 있다. 이때, 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 다를 수 있다. 예컨대, 예측의 방법과 예측 모드 등은 예측 단위로 결정되고, 예측의 수행은 변환 단위로 수행될 수도 있다. 생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록)은 변환부(115)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 벡터 정보 등은 잔차값과 함께 엔트로피 부호화부(130)에서 부호화되어 복호화기에 전달될 수 있다. 특정한 부호화 모드를 사용할 경우, 예측부(110)를 통해 예측 블록을 생성하지 않고, 원본 블록을 그대로 부호화하여 복호화부에 전송하는 것도 가능하다
화면 간 예측부는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측 단위를 예측할 수 있다. 화면 간 예측부는 참조 픽쳐 보간부, 움직임 예측부, 움직임 보상부가 포함할 수 있다.
참조 픽쳐 보간부에서는 메모리(150)로부터 참조 픽쳐 정보를 제공받고 참조 픽쳐에서 정수 화소 이하의 화소 정보를 생성할 수 있다. 휘도 화소의 경우, 1/4 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 8탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다. 색차 신호의 경우 1/8 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 4탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다.
움직임 예측부는 참조 픽쳐 보간부에 의해 보간된 참조 픽쳐를 기초로 움직임 예측을 수행할 수 있다. 움직임 벡터를 산출하기 위한 방법으로 FBMA(Full search-based Block Matching Algorithm), TSS(Three Step Search), NTS(New Three-Step Search Algorithm) 등 다양한 방법이 사용될 수 있다. 움직임 벡터는 보간된 화소를 기초로 1/2 또는 1/4 화소 단위의 움직임 벡터값을 가질 수 있다. 움직임 예측부에서는 움직임 예측 방법을 다르게 하여 현재 예측 단위를 예측할 수 있다. 움직임 예측 방법으로 스킵(Skip) 방법, 머지(Merge) 방법, AMVP(Advanced Motion Vector Prediction)방법 등 다양한 방법이 사용될 수 있다.
이하, 본 발명의 실시예에서는 AMVP 방법을 사용하여 화면 간 예측을 수행시 후보 예측 움직임 벡터 리스트를 구성하는 방법에 대해 개시한다.
화면 내 예측부는 현재 픽쳐 내의 화소 정보인 현재 블록 주변의 참조 픽셀정보를 기초로 예측 단위를 생성할 수 있다. 현재 예측 단위의 주변 블록이 화면 간 예측을 수행한 블록이어서, 참조 픽셀이 화면 간 예측을 수행한 픽셀일 경우, 화면 간 예측을 수행한 블록에 포함되는 참조 픽셀을 주변의 화면 내 예측을 수행한 블록의 참조 픽셀 정보로 대체하여 사용할 수 있다. 즉, 참조 픽셀이 가용하지 않는 경우, 가용하지 않은 참조 픽셀 정보를 가용한 참조 픽셀 중 적어도 하나의 참조 픽셀로 대체하여 사용할 수 있다.
화면 내 예측에서 예측 모드는 참조 픽셀 정보를 예측 방향에 따라 사용하는 방향성 예측 모드와 예측을 수행시 방향성 정보을 사용하지 않는 비방향성 모드를 가질 수 있다. 휘도 정보를 예측하기 위한 모드와 색차 정보를 예측하기 위한 모드가 상이할 수 있고, 색차 정보를 예측하기 위해 휘도 정보를 예측한 화면 내 예측 모드 정보 또는 예측된 휘도 신호 정보를 활용할 수 있다.
화면 내 예측을 수행시 예측 단위의 크기와 변환 단위의 크기가 동일할 경우, 예측 단위의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 기초로 예측 단위에 대한 화면 내 예측을 수행하지만, 화면 내 예측을 수행시 예측 단위의 크기와 변환 단위의 크기가 상이할 경우, 변환 단위를 기초로 한 참조 픽셀을 이용하여 화면 내 예측을 수행할 수 있다. 또한, 최소 부호화 단위에 대해서만 NxN 분할을 사용하는 화면 내 예측을 사용할 수 있다.
화면 내 예측 방법은 예측 모드에 따라 참조 화소에 MDIS(Mode Dependent Intra Smoothing) 필터를 적용한 후 예측 블록을 생성할 수 있다. 참조 화소에 적용되는 MDIS 필터의 종류는 상이할 수 있다. 화면 내 예측 방법을 수행하기 위해 현재 예측 단위의 화면 내 예측 모드는 현재 예측 단위의 주변에 존재하는 예측 단위의 화면 내 예측 모드로부터 예측할 수 있다. 주변 예측 단위로부터 예측된 모드 정보를 이용하여 현재 예측 단위의 예측 모드를 예측하는 경우, 현재 예측 단위와 주변 예측 단위의 화면 내 예측 모드가 동일할 경우, 소정의 플래그 정보를 이용하여 현재 예측 단위와 주변 예측 단위의 예측 모드가 동일하다는 정보를 전송할 수 있고, 만약, 현재 예측 단위와 주변 예측 단위의 예측 모드가 상이할 경우, 엔트로피 부호화를 수행하여 현재 블록의 예측 모드 정보를 부호화할 수 있다.
또한, 예측부(110)에서 생성된 예측 단위을 기초로 예측을 수행한 예측 단위와 예측 단위의 원본 블록과 차이값인 잔차값(Residual) 정보를 포함하는 잔차 블록이 생성될 수 있다. 생성된 잔차 블록은 변환부(115)로 입력될 수 있다. 변환부(115)에서는 원본 블록과 예측부(110)를 통해 생성된 예측 단위의 잔차값(residual) 정보를 포함한 잔차 블록을 DCT(Discrete Cosine Transform) 또는 DST(Discrete Sine Transform)와 같은 변환 방법을 사용하여 변환시킬 수 있다. 잔차 블록을 변환하기 위해 DCT를 적용할지 DST를 적용할지는 잔차 블록을 생성하기 위해 사용된 예측 단위의 화면 내 예측 모드 정보를 기초로 결정할 수 있다.
양자화부(120)는 변환부(115)에서 주파수 영역으로 변환된 값들을 양자화할 수 있다. 블록에 따라 또는 영상의 중요도에 따라 양자화 계수는 변할 수 있다. 양자화부(120)에서 산출된 값은 역양자화부(135)와 재정렬부(125)에 제공될 수 있다.
재정렬부(125)는 양자화된 잔차값에 대해 계수값의 재정렬을 수행할 수 있다.
재정렬부(125)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원의 블록 형태 계수를 1차원의 벡터 형태로 변경할 수 있다. 예를 들어, 재정렬부(125)에서는 지그재그 스캔(Zig-Zag Scan)방법을 이용하여 DC 계수부터 고주파수 영역의 계수까지 스캔하여 1차원 벡터 형태로 변경시킬 수 있다. 변환 단위의 크기 및 화면 내 예측 모드에 따라 지그 재그 스캔 방법이 아닌 2차원의 블록 형태 계수를 열 방향으로 스캔하는 수직 스캔 방법, 2차원의 블록 형태 계수를 행 방향으로 스캔하는 수평 스캔 방법이 사용될 수 있다. 즉, 변환 단위의 크기 및 화면 내 예측 모드에 따라 지그재그 스캔, 수직 방향 스캔 및 수평 방향 스캔 중 어떠한 스캔 방법이 사용될지 여부를 결정할 수 있다.
엔트로피 부호화부(130)는 재정렬부(125)에 의해 산출된 값들을 기초로 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화는 예를 들어, 지수 골롬(Exponential Golomb), VLC(Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 부호화 방법을 사용할 수 있다.
엔트로피 부호화부(130)는 재정렬부(125) 및 예측부(110)로부터 부호화 단위의 잔차값 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, 예측 단위 정보 및 전송 단위 정보, 움직임 벡터 정보, 참조 프레임 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 부호화할 수 있다.
엔트로피 부호화부(130)에서는 재정렬부(125)에서 입력된 부호화 단위의 계수값을 엔트로피 부호화할 수 있다.
*역양자화부(135) 및 역변환부(140)에서는 양자화부(120)에서 양자화된 값들을 역양자화하고 변환부(115)에서 변환된 값들을 역변환한다. 역양자화부(135) 및 역변환부(140)에서 생성된 잔차값(Residual)은 예측부(110)에 포함된 움직임 추정부, 움직임 보상부 및 인트라 예측부를 통해서 예측된 예측 단위와 합쳐져 복원 블록(Reconstructed Block)을 생성할 수 있다.
필터부(145)는 디블록킹 필터, 오프셋 보정부, ALF(Adaptive Loop Filter)중 적어도 하나를 포함할 수 있다.
디블록킹 필터(145)는 복원된 픽쳐에서 블록간의 경계로 인해 생긴 블록 왜곡을 제거할 수 있다. 디블록킹을 수행할지 여부를 판단하기 위해 블록에 포함된 몇 개의 열 또는 행에 포함된 픽셀을 기초로 현재 블록에 디블록킹 필터 적용할지 여부를 판단할 수 있다. 블록에 디블록킹 필터를 적용하는 경우 필요한 디블록킹 필터링 강도에 따라 강한 필터(Strong Filter) 또는 약한 필터(Weak Filter)를 적용할 수 있다. 또한 디블록킹 필터를 적용함에 있어 수직 필터링 및 수평 필터링을 수행시 수평 방향 필터링 및 수직 방향 필터링이 병행 처리되도록 할 수 있다.
오프셋 보정부는 디블록킹을 수행한 영상에 대해 픽셀 단위로 원본 영상과의 오프셋을 보정할 수 있다. 특정 픽쳐에 대한 오프셋 보정을 수행하기 위해 영상에 포함된 픽셀을 일정한 수의 영역으로 구분한 후 오프셋을 수행할 영역을 결정하고 해당 영역에 오프셋을 적용하는 방법 또는 각 픽셀의 에지 정보를 고려하여 오프셋을 적용하는 방법을 사용할 수 있다.
ALF (Adaptive Loop Filter)는 필터링한 복원 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 영상에 포함된 픽셀을 소정의 그룹으로 나눈 후 해당 그룹에 적용될 하나의 필터를 결정하여 그룹마다 차별적으로 필터링을 수행할 수 있다. ALF를 적용할지 여부에 관련된 정보는 휘도 신호는 부호화 단위(Coding Unit, CU) 별로 전송될 수 있고, 각각의 블록에 따라 적용될 ALF의 크기 및 계수는 달라질 수 있다. ALF는 다양한 형태를 가질 수 있으며, 필터에 그에 따라 포함되는 계수의 갯수도 달라질 수 있다. 이러한 ALF의 필터링 관련 정보(필터 계수 정보, ALF On/Off 정보, 필터 형태 정보)는 비트스트림에서 소정의 파라메터 셋에 포함되어 전송될 수 있다.
메모리(150)는 필터부(145)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있고, 저장된 복원 블록 또는 픽쳐는 화면 간 예측을 수행 시 예측부(110)에 제공될 수 있다.
도 2는 본 발명의 실시예에 따른 영상 복호화기를 나타낸 블록도이다.
도 2를 참조하면, 영상 복호화기(200)는 엔트로피 복호화부(2110), 재정렬부(215), 역양자화부(220), 역변환부(225), 예측부(230), 필터부(235), 메모리(240)가 포함될 수 있다.
영상 부호화기에서 영상 비트스트림이 입력된 경우, 입력된 비트스트림은 영상 부호화기와 반대의 절차로 복호화될 수 있다.
엔트로피 복호화부(210)는 영상 부호화기의 엔트로피 부호화부에서 엔트로피 부호화를 수행한 것과 반대의 절차로 엔트로피 복호화를 수행할 수 있고 엔트로피 복호화부에서 엔트로피 복호화를 수행한 잔차값은 재정렬부(215)로 입력될 수 있다.
엔트로피 복호화부(210)에서는 부호화기에서 수행된 화면 내 예측 및 화면 간 예측에 관련된 정보를 복호화할 수 있다. 전술한 바와 같이 영상 부호화기에서 화면 내 예측 및 화면 간 예측을 수행시 소정의 제약이 있는 경우, 이러한 제약을 기초로 한 엔트로피 복호화를 수행해 현재 블록에 대한 화면 내 예측 및 화면 간 예측에 관련된 정보를 제공받을 수 있다.
재정렬부(215)는 엔트로피 복호화부(210)에서 엔트로피 복호화된 비트스트림을 부호화부에서 재정렬한 방법을 기초로 재정렬을 수행할 수 있다. 1차원 벡터 형태로 표현된 계수들을 다시 2차원의 블록 형태의 계수로 복원하여 재정렬할 수 있다. 재정렬부에서는 부호화부에서 수행된 계수 스캐닝에 관련된 정보를 제공받고 해당 부호화부에서 수행된 스캐닝 순서에 기초하여 역으로 스캐닝하는 방법을 통해 재정렬을 수행할 수 있다.
역양자화부(220)는 부호화기에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행할 수 있다.
역변환부(225)는 영상 부호화기에서 수행한 양자화 결과에 대해 변환부에서 수행한 DCT 및 DST에 대해 역DCT 및 역 DST를 수행할 수 있다. 역변환은 영상 부호화기에서 결정된 전송 단위를 기초로 수행될 수 있다. 영상 부호화기의 변환부에서는 DCT와 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 영상 복호화기의 역변환부(225)에서는 영상 부호화기의 변환부에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
변환을 수행시 변환 단위가 아닌 부호화 단위를 기준으로 변환을 수행할 수 있다.
예측부(230)는 엔트로피 복호화부(210)에서 제공된 예측 블록 생성 관련 정보와 메모리(240)에서 제공된 이전에 복호화된 블록 또는 픽쳐 정보를 기초로 예측 블록을 생성할 수 있다.
전술한 바와 같이 영상 부호화기에서의 동작과 동일하게 화면 내 예측을 수행시 예측 단위의 크기와 변환 단위의 크기가 동일할 경우, 예측 단위의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 기초로 예측 단위에 대한 화면 내 예측을 수행하지만, 화면 내 예측을 수행시 예측 단위의 크기와 변환 단위의 크기가 상이할 경우, 변환 단위를 기초로 한 참조 픽셀을 이용하여 화면 내 예측을 수행할 수 있다. 또한, 최소 부호화 단위에 대해서만 NxN 분할을 사용하는 화면 내 예측을 사용할 수 있다.
예측부(230)는 예측 단위 판별부, 화면 간 예측부 및 화면 내 예측부를 포함할 수 있다. 예측 단위 판별부는 엔트로피 복호화부에서 입력되는 예측 단위 정보, 화면 내 예측 방법의 예측 모드 정보, 화면 간 예측 방법의 움직임 예측 관련 정보 등 다양한 정보를 입력 받고 현재 부호화 단위에서 예측 단위를 구분하고, 예측 단위가 화면 간 예측을 수행하는지 아니면 화면 내 예측을 수행하는지 여부를 판별할 수 있다. 화면 간 예측부는 영상 부호화기에서 제공된 현재 예측 단위의 화면 간 예측에 필요한 정보를 이용해 현재 예측 단위가 포함된 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 예측 단위에 대한 화면 간 예측을 수행할 수 있다.
화면 간 예측을 수행하기 위해 부호화 단위를 기준으로 해당 부호화 단위에 포함된 예측 단위의 움직임 예측 방법이 스킵 모드(Skip Mode), 머지 모드(Merge 모드), AMVP 모드(AMVP Mode) 중 어떠한 방법인지 여부를 판단할 수 있다.
이하, 본 발명의 실시예에서는 AMVP 방법을 사용하여 화면 간 예측을 수행시 후보 예측 움직임 벡터 리스트를 구성하는 방법에 대해 개시한다.
화면 내 예측부는 현재 픽쳐 내의 화소 정보를 기초로 예측 블록을 생성할 수 있다. 예측 단위가 화면 내 예측을 수행한 예측 단위인 경우, 영상 부호화기에서 제공된 예측 단위의 화면 내 예측 모드 정보를 기초로 화면 내 예측을 수행할 수 있다. 화면 내 예측부에는 MDIS 필터, 참조 화소 보간부, DC 필터를 포함할 수 있다. MDIS 필터는 현재 블록의 참조 화소에 필터링을 수행하는 부분으로써 현재 예측 단위의 예측 모드에 따라 필터의 적용 여부를 결정하여 적용할 수 있다. 영상 부호화기에서 제공된 예측 단위의 예측 모드 및 MDIS 필터 정보를 이용하여 현재 블록의 참조 화소에 MDIS 필터링을 수행할 수 있다. 현재 블록의 예측 모드가 MDIS 필터링을 수행하지 않는 모드일 경우, MDIS 필터는 적용되지 않을 수 있다.
참조 화소 보간부는 예측 단위의 예측 모드가 참조 화소를 보간한 화소값을 기초로 화면 내 예측을 수행하는 예측 단위일 경우, 참조 화소를 보간하여 정수값 이하의 화소 단위의 참조 화소을 생성할 수 있다. 현재 예측 단위의 예측 모드가 참조 화소를 보간하지 않고 예측 블록을 생성하는 예측 모드일 경우 참조 화소는 보간되지 않을 수 있다. DC 필터는 현재 블록의 예측 모드가 DC 모드일 경우 필터링을 통해서 예측 블록을 생성할 수 있다.
복원된 블록 또는 픽쳐는 필터부(235)로 제공될 수 있다. 필터부(235)는 디블록킹 필터, 오프셋 보정부, ALF를 포함할 수 있다.
영상 부호화기로부터 해당 블록 또는 픽쳐에 디블록킹 필터를 적용하였는지 여부에 대한 정보 및 디블록킹 필터를 적용하였을 경우, 강한 필터를 적용하였는지 또는 약한 필터를 적용하였는지에 대한 정보를 제공받을 수 있다. 영상 복호화기의 디블록킹 필터에서는 영상 부호화기에서 제공된 디블록킹 필터 관련 정보를 제공받고 영상 복호화기에서 해당 블록에 대한 디블록킹 필터링을 수행할 수 있다. 영상 부호화기에서와 마찬가지로 우선 수직 디블록킹 필터링 및 수평 디블록킹 필터링을 수행하되, 겹치는 부분에 있어서는 수직 디블록킹 및 수평 디블록킹 중 적어도 하나를 수행할 수 있다. 수직 디블록킹 필터링 및 수평 디블록킹 필터링이 겹치는 부분에서 이전에 수행되지 못한 수직 디블록킹 필터링 또는 수평 디블록킹 필터링이 수행될 수 있다. 이러한 디블록킹 필터링 과정을 통해서 디블록킹 필터링의 병행 처리(Parallel Processing)이 가능하다.
오프셋 보정부는 부호화시 영상에 적용된 오프셋 보정의 종류 및 오프셋 값정보 등을 기초로 복원된 영상에 오프셋 보정을 수행할 수 있다.
ALF는 필터링을 수행 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 부호화기로부터 제공된 ALF 적용 여부 정보, ALF 계수 정보 등을 기초로 부호화 단위에 ALF를 적용할 수 있다. 이러한 ALF 정보는 특정한 파라메터 셋에 포함되어 제공될 수 있다.
메모리(240)는 복원된 픽쳐 또는 블록을 저장하여 참조 픽쳐 또는 참조 블록으로 사용할 수 있도록 할 수 있고 또한 복원된 픽쳐를 출력부로 제공할 수 있다.
전술한 바와 같이 이하, 본 발명의 실시예에서는 설명의 편의상 코딩 유닛(Coding Unit)을 부호화 단위라는 용어로 사용하지만, 부호화 뿐만 아니라 복호화를 수행하는 단위가 될 수도 있다.
또한, 이하, 본 발명의 실시예에서 후술할 영상 부호화 방법 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 영상 부호화기 및 영상 복호화기에 포함된 각 구성부에서 수행될 수 있다. 구성부의 의미는 하드웨어로 구성될 수 있는 것을 의미할 뿐만 아니라 알고리즘을 통해 수행될 수 있는 소프트웨어적인 처리 단위도 포함할 수 있다.
화면 간 예측부에서는 현재 프레임이 아닌 복원된 다른 프레임들의 정보를 이용하여 예측 대상 블록의 픽셀값을 예측하는 화면 간 예측(Inter prediction)을 수행할 수 있는데, 예측에 이용되는 영상을 참조 영상(Reference picture, 또는 참조 프레임, 참조 픽쳐도 동일한 의미로 사용될 수 있음)이라고 한다. 예측 대상 블록을 예측하는데 이용하는 화면 간 예측 정보는 어떠한 참조 영상을 사용하는지를 나타낼 수 있는 참조 픽쳐 인덱스 정보 및 참조 영상의 블록과 예측 대상 블록 사이의 벡터를 나타내는 모션 벡터(motion vector) 정보 등이 될 수 있다.
예측 대상 블록의 화면 간 예측을 위하여 사용되는 영상들로 참조 영상 리스트를 구성할 수 있다. B slice의 경우에는 예측을 수행하기 위해 두 개의 참조 영상 리스트가 필요하다. 이하의 본 발명의 실시예에서는 두 개의 참조 영상 리스트 각각을 제1 참조 영상 리스트(List 0), 제2 참조 영상 리스트(List 1)라는 용어로 지칭할 수 있고 또한 B slice 중 제1 참조 영상 리스트(reference list 0)와 제2 참조 영상 리스트(reference list 1)가 동일한 slice를 GPB slice라고 지칭할 수 있다.
아래의 표 1은 상위 레벨 신텍스에 포함된 참조 픽쳐 정보와 관련된 구문 요소를 나타낸 것이다. 이하, 본 발명의 실시예에서 사용되는 구문 요소 및 구문 요소가 포함되는 상위 레벨 신택스(SPS)는 임의적인 것이며 구문 요소는 동일한 의미를 가지고 다르게 정의될 수 있다. 해당 구문 요소가 포함되는 상위 레벨 신택스도 다른 상위 레벨 신택스(예를 들어, 참조 픽쳐 정보만을 따로 분리한 신택스 또는 PPS)에 포함될 수 있다. 이하, 본 발명의 실시예에서는 특정한 경우를 가정하여 개시하나 구문 요소의 표현 형태 및 구문 요소가 포함된 신택스 구조는 다양할 수 있으며 이러한 실시예들은 본 발명의 권리 범위에 포함된다.
표 1을 참조하면, SPS(Sequence Parameter Set)와 같은 상위 레벨 신택스에는 화면 간 예측에 사용되는 참조 픽쳐와 관련된 정보가 포함될 수 있다.
max_num_ref_frames는 DPB(Decoded Picture Buffer)에 저장될 수 있는 최대 참조 픽쳐의 개수를 나타낸다. 만약 현재 DPB에 저장되어 있는 참조 픽쳐의 개수가 max_num_ref_frames에서 설정된 참조 픽쳐의 개수와 동일하다면 DPB에는 추가의 참조 픽쳐를 저장할 수 있는 공간이 없으므로 추가의 참조 픽쳐가 저장되어야 할 경우 DPB에 저장된 참조 픽쳐 중 하나의 참조 픽쳐를 DPB에서 제거해야 한다.
DPB에서 어떠한 참조 픽쳐가 제거되어야 할지 여부를 결정하기 위하여 slice header에 포함된 adaptive_ref_pic_marking_mode_flag와 같은 구문 요소를 참조할 수 있다.
adaptive_ref_pic_marking_mode_flag는 DPB에서 제거할 참조 영상을 결정하기 위한 정보로서 adaptive_ref_pic_marking_mode_flag가 1인 경우 어떠한 픽쳐를 제거할지에 대한 추가 정보를 전송하여 DPB에서 특정한 참조 픽쳐를 제거할 수 있다. adaptive_ref_pic_marking_mode_flag가 0인 경우 sliding window 방법에 의해 예를 들어, 픽쳐가 디코딩되어 DPB에 저장된 순서에 따라 DPB에 있는 참조 영상 중 하나의 참조 영상을 DPB에서 제거할 수 있다. 슬라이딩 윈도우에 의한 참조 픽쳐 제거 방법은 아래와 같은 방법을 사용할 수 있다.
(1) numShortTerm을 “단기간 참조 영상”으로 마킹된 참조 프레임의 전체 개수라고 하고 numLongTerm을 “장기간 참조 영상”으로 마킹된 참조 프레임의 전체 개수라고 정의한다.
(2) 단기간 참조 영상의 개수(numShortTerm)와 장기간 참조 영상의 개수(numLongTerm)를 더한 값이 Max(max_num_ref_frames, 1)인 경우, 단기간 참조 영상이 0보다 크다는 조건이 만족되면 FrameNumWrap이 가장 작은 값을 가진 단기간 참조 픽쳐를 “참조 픽쳐로 사용되지 않음”이라고 표시한다.
즉, 위와 같은 슬라이딩 윈도우 방법에서는 DPB에 저장된 단기간 참조 픽쳐 중 가장 먼저 디코딩된 참조 픽쳐가 제거될 수 있다.
본 발명의 실시예에 따르면, 픽쳐들이 계층적 픽쳐 구조를 가지고 부호화 및 복호화되는 경우 가장 높은 Temporal level(시간적 레벨)을 가지는 픽쳐를 제외한 나머지 영상들이 참조 픽쳐로서 사용될 수 있다. 만약 픽쳐가 B 슬라이스를 포함하는 경우 B 슬라이스에 포함된 블록은 L0 리스트 및 L1 리스트 중 적어도 하나의 참조 픽쳐 리스트를 통해서 블록의 예측값을 생성할 수 있고 L0 리스트 및 L1 리스트에 포함되어 참조 픽쳐로 사용될 수 있는 참조 픽쳐의 개수는 메모리 대역폭의 문제로 인해 제한될 수 있다.
DPB에 저장될 수 있는 최대한의 참조 프레임의 개수를 나타내는 구문 요소인 max_num_ref_frames에서 설정된 최대 참조 프레임의 개수가 충분히 큰 경우 DPB에 저장된 참조 영상이 많아지므로 예측 대상 블록을 생성하기 위한 참조 픽쳐의 대부분이 가용하지만, 영상의 해상도가 커지게 되면서 메모리의 필요량이 증가함에 따라 max_num_ref_frames에 제한이 생기게 되고 필요한 참조 픽쳐가 DPB에서 제거되는 경우가 발생되고 DPB에 참조 영상으로 사용되어야 할 픽쳐가 저장되어있지 않아 참조 픽쳐를 화면 간 예측에 사용할 수 없을 수 있다. 참조 픽쳐가 DPB에 저장되어 있지 않은 경우 예측 블록의 예측 정확도가 떨어질 수 있고 이러한 문제로 인해 부호화 효율이 떨어질 수 있다. 본 발명의 실시예에 따른 참조 픽쳐 관리 방법에서는 DPB에 참조 픽쳐가 저장이 되어있지 않아 가용하지 않은 경우(unavailable)를 줄여 화면 간 예측을 수행시 예측 대상 블록이 참조하는 참조 픽쳐가 가용(available)할 수 있도록 설정하는 방법에 대해 개시한다.
계층적 픽쳐 구조에서 참조 픽쳐로 사용되어야할 최적의 참조 픽쳐가 DPB에 저장되어 있지 않은 경우, 부호화 효율은 감소하나 다른 픽쳐를 참조 픽쳐로서 사용할 수도 있다. 이하, 본 발명의 실시예에서는 설명의 편의상 최적의 참조 픽쳐가 DPB에 존재하지 않는 경우를 참조 픽쳐가 가용하지 않은 경우(unavailable)라고 설명하며 이는 최적의 참조 픽쳐가 가용하지 않아 차선의 참조 픽쳐를 화면 간 예측에 사용하는 경우를 포함한다.
이하, 본 발명의 실시예에서는 설명의 편의상 DPB에서 허용되는 최대 참조 영상의 개수를 나타내는 max_num_ref_frames을 4, L0 리스트에 포함될 수 있는 최대 참조 영상의 개수(num_ref_idx_l0_active_minus1)를 1, L1 리스트에 포함될 수 있는 최대 참조 영상의 개수(num_ref_idx_l1_active_minus1)를 1, num_ref_idx_lc_active_minus1을 3으로 설정한다고 가정한다. 즉, DPB에서 허용되는 최대 참조 영상의 개수는 4개가 되고, L0 리스트에 포함될 수 있는 최대 참조 영상의 개수는 2개, L1 리스트에 포함될 수 있는 최대 참조 영상의 개수는 2개, LC 리스트에 포함될 수 있는 최대 참조 영상의 개수는 4개가 된다.
LC 리스트는 combination list를 나타내는 것으로서 L1 리스트와 L0 리스트를 조합하여 생성되는 참조 픽쳐 리스트를 나타낸다. LC 리스트는 예측 대상 블록이 unidirectional prediction 방법을 통해 화면 간 예측을 수행할 때 사용될 수 있는 리스트이다. ref_pic_list_combination_flag를 ref_pic_list_combination_flag가 1인 경우 LC 리스트를 사용함을 나타내고 ref_ic_list_combination_flag가 0인 경우 GPB(Generalized B)임을 나타낼 수 있다. GPB는 전술한 바와 같이 예측을 수행하기 위한 참조 픽쳐 리스트인 L0 리스트와 L1 리스트를 구성하는 참조 픽쳐가 동일한 픽쳐를 나타낸다.
본 발명의 실시예에서는 GOP(Group of Pictures) 구조가 8인 경우를 가정하여 설명하나 GOP를 구성하는 픽쳐의 개수는 변할 수 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 3은 본 발명의 실시예에 따른 계층적 픽쳐 구조를 나타낸 개념도이다.
도 3을 참조하면, GOP에 포함되는 픽쳐들의 POC(Picture Order Count)는 디스플레이의 순서, FrameNum은 픽쳐들의 부복호화의 순서를 나타낸다. 계층적 부호화 구조에서는 가장 높은 Temporal Level을 가지는 POC가 1,3,5,7,9,11,13,15인 경우를 제외한 나머지 시간적 계층에 존재하는 영상들이 참조 영상으로 사용될 수 있다.
본 발명의 실시예에 따르면 계층적 픽쳐 구조에서 픽쳐들의 부복호화 순서를 변화시켜서 unavailable한 참조 픽쳐의 개수를 줄여서 가능한 available한 참조 픽쳐가 되도록 할 수 있다.
계층적 픽쳐 구조는 픽쳐의 시간적 계층을 기준으로 정의될 수 있다.
임의의 픽쳐가 특정한 픽쳐를 참조하는 경우, 임의의 픽쳐는 자신이 참조하는 픽쳐보다 더 높은 시간적 계층에 포함될 수 있다.
도 3에서는 POC를 기준으로 제0 시간적 계층은 POC(0), 제1 시간적 계층은 POC(8), POC(16), 제2 시간적 계층은 POC(4), POC(12), 제3 시간적 계층은 POC(2), POC(6), POC(10), POC(14), 제4 시간적 계층은 POC(1), POC(3), POC(5), POC(7), POC(9), POC(11), POC(13), POC(15)에 해당할 수 있다.
본 발명의 실시예에 따르면, 최상위 시간적 레벨인 제4 시간적 계층(POC(1), POC(3), POC(5), POC(7), POC(9), POC(11), POC(13), POC(15))에 존재하는 픽쳐와 차상위 계층인 제3 시간적 계층에 존재하는 시간적 레벨(POC(2), POC(6), POC(10), POC(14))을 가진 참조 픽쳐의 복호화 순서(FrameNum)을 새롭게 설정함으로서 가용한 참조 영상이 기존의 계층적 픽쳐 구조보다 더 많이 존재하도록 변화시킬 수 있다.
복호화 순서(FrameNum)를 변화시킴에 있어 계층적 픽쳐 구조에서 차상위 시간적 계층의 하나의 픽쳐를 복호화한 후 차상위 계층의 POC를 기준으로 POC 순서상 앞과 뒤에 존재하는 최상위 시간적 계층에 존재하는 픽쳐를 순차적으로 복호할 수 있다. 즉, 복호화된 차상위 시간적 계층 픽쳐 주변에 존재하는 최상위 시간적 계층 픽쳐를 복호화된 차상위 시간적 계층 픽쳐보다 POC가 더 큰 나머지 차상위 시간적 계층에 존재하는 픽쳐보다 먼저 복호화함으로서 계층적 픽쳐 구조의 복호화 순서를 변화시킬 수 있다.
도 3을 참조하면, 제0 시간적 계층 내지 제4 시간적 계층으로 이루어진 계층적 픽쳐 구조에서는 제3 시간적 계층 픽쳐 중 하나의 픽쳐를 우선 복호화한 후 제3 시간적 계층 픽쳐의 POC(Picture Order Count)를 기준으로 POC 순서상 앞 뒤에 존재하는 제4 시간적 계층에 존재하는 픽쳐를 다른 제3 시간적 계측 픽쳐보다 우선적으로 복호화할 수 있다. 예를 들어, POC(2)인 제3 시간적 계층 픽쳐를 복호한 후 POC(2)인 픽쳐의 주변에 존재하는 제4 시간적 계층 픽쳐 중 POC(1) 픽쳐와 POC(3) 픽쳐를 순차적으로 복호화하는 방법을 통해 최상위 시간적 계층에 존재하는 참조 픽쳐의 복호화 단계와 차상위 시간적 계층에 존재하는 참조 픽쳐를 복호화하는 단계의 순서를 바꿈으로서 DPB에 존재하는 픽쳐가 가용한 참조 픽쳐가 되는 경우를 증가시킬 수 있다.
아래의 표 2는 도 3에서 개시된 각 픽쳐의 POC를 기준으로 L0, L1, LC에서 사용되어야 할 참조 픽쳐들의 POC와 계층적 픽쳐 구조를 기초로 DPB에 저장된 픽쳐를 나타낸 표이다. DPB에서는 전술한 슬라이딩 윈도우 방법을 사용하여 DPB에 포함된 참조 픽쳐 중 적어도 하나의 픽쳐를 제거할 수 있다.
표 2를 참조하면, POC가 0번 내지 16번인 경우와 POC가 11번 내지 15번인 경우 LO 리스트에 필요한 참조 픽쳐와 L1 리스트에 필요한 참조 픽쳐, LC 리스트에 필요한 참조 픽쳐가 모두 DPB에 저장되어 있는 참조 픽쳐이기 때문에 해당 POC의 픽쳐에 대하여 화면 간 예측을 수행 시 참조 픽쳐가 모두 가용하다.
예를 들면, POC(1)인 경우 L0 리스트는 우선적으로 POC(1)의 좌측에 존재하면서 POC(1)보다 시간적 계층이 낮은 POC(0)을 우선적으로 포함하고 다음으로 POC(1)의 우측에 존재하면서 POC(1)보다 시간적 계층이 낮은 POC(2)을 포함시킬 수 있다. L1 리스트는 우선적으로 POC(1)의 첫번째로 우측에 존재하면서 POC(1)보다 시간적 계층이 낮은 POC(2)을 우선적으로 포함하고 다음으로 POC(1)의 두번째로 우측에 존재하면서 POC(1)보다 시간적 계층이 낮은 POC(4)을 포함시킬 수 있다.
DPB에는 POC(0), POC(8), POC(2), POC(4)가 포함되어 있으므로 POC(1)을 예측하기 위한 모든 참조 픽쳐인 POC(0), POC(2), POC(4)가 모두 포함되어 있으므로 POC(1)을 예측하기 위한 모든 참조 픽쳐는 가용하다.
도 3의 경우에도, POC(12), POC(10), POC(9), POC(11)에서는 L0 예측에 대하여 4번, L1 예측에 대하여 1번 LC 예측에 대해 4번의 참조 영상이 unavailable 한 경우가 존재하나 기존의 계층적 픽쳐 구조에서 사용된 FrameNum 할당 방법과 비교하여 참조 영상에 대한 unavailable이 발생하는 횟수가 줄어들어 영상의 부복호화 효율을 높일 수 있다.
도 4는 본 발명의 실시예에 따른 계층적 픽쳐 구조에서 복호화 순서 결정 방법을 나타낸 순서도이다.
도 4를 참조하면, 차상위 계층의 픽쳐 중 하나의 픽쳐를 복호화한다(단계 S400).
차상위 계층의 픽쳐의 POC 순서보다 하나 작은 POC를 가진 최상위 계층 픽쳐 및 하나 큰 POC를 가진 최상위 계층 픽쳐를 복호화한다(단계 S410).
본 발명의 실시예에 따르면 차상위 계층의 픽쳐가 복호화되어 DPB에 저장된 후 다음으로 최상위 계층에 존재하는 참조 픽쳐 중 차상위 계층을 참조하는 최상위 픽쳐를 복호한다. 즉, 임의의 차상위 계층 픽쳐가 복호화된 후 상기 임의의 차상위 계층 픽쳐를 참조하는 최상위 계층 픽쳐가 복호화되고 다음으로 상기 임의의 차상위 계층 픽쳐보다 POC가 큰 차상위 계층 픽쳐가 복호화된다.
차상위 계층의 픽쳐가 POC(n)이라고 할 경우 다음으로 복호화되는 최상위 참조 픽쳐는 POC(n-1) 및 POC(n+1)가 될 수 있다.
본 발명의 또 다른 실시예에 따르면 계층적 부호화 구조에서 DPB에서 존재하는 참조 픽쳐에 대한 Sliding Window 방법을 다르게 적용하여 참조 픽쳐의 가용성을 높일 수 있다.
새로운 Sliding Window 방법은 아래와 같은 방식으로 적용될 수 있다.
(1) numShortTerm을 “단기간 참조 영상”으로 마킹된 참조 프레임의 전체 개수라고 하고 numLongtTerm을 “장기간 참조 영상”으로 마킹된 참조 프레임의 전체 개수라고 정의한다.
(2) numShortTerm과 numLongTerm을 더한 값이 Max(max_num_ref_frame, 1)이고 numShortTerm이 0보다 크면, PicOrderCnt(entryShortTerm)이 가장 작은 값을 가진 단기간 참조 영상을 “참조 영상으로 사용되지 않음”으로 마킹한다.
즉, 본 발명의 실시예에 따르면 DPB에 저장될 수 있는 픽쳐 중 가장 작은 POC값을 가진 픽쳐를 DPB에서 제거하는 슬라이딩 윈도우 방법을 사용하여 DPB에 저장된 참조 픽쳐를 관리할 수 있다.
도 5는 본 발명의 실시예에 따른 슬라이딩 윈도우 방법을 나타낸 순서도이다.
도 5를 참조하면, 단기간 참조 영상의 개수와 장기간 참조 영상의 개수를 산출한다(단계 S500).
DPB에 저장되어 있는 전체 참조 영상의 개수를 산출하기 위해 단기간 참조 영상으로 마킹되어 있는 참조 프레임의 개수를 산출하고 장기간 참조 영상으로 마킹되어 있는 참조 프레임의 개수를 산출할 수 있다.
DPB에 저장된 픽쳐를 기준으로 Max(max_num_ref_frame, 1)이고 numShortTerm이 0보다 큰지 여부를 판단한다(단계 S510).
단계 S510에서는 (1) 복호화된 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지는지 여부와 (2) numShortTerm이 0보다 큰지 여부와 같은 두 개의 판단이 각각의 판단 절차 또는 하나의 판단 절차로 이루어질 수 있다.
DPB에 저장된 픽쳐를 기준으로 Max(max_num_ref_frame, 1)이고 numShortTerm이 0보다 큰지 여부를 판단하여 DPB에서 픽쳐를 제거할지 여부를 결정할 수 있다. Max(max_num_ref_frame, 1)이고 numShortTerm이 0보다 큰 경우는 현재 DPB에 이미 허용될 수 있는 최대 참조 픽쳐의 개수 이상의 픽쳐가 존재한다는 것을 의미하고 numShortTerm이 0보다 크다는 것은 단기간 참조 픽쳐가 적어도 하나 존재한다는 것을 의미한다.
Max(max_num_ref_frame, 1)이고 numShortTerm이 0보다 큰 경우 DPB에 존재하는 단기 참조 픽쳐 중 PicOrderCnt(entryShortTerm)가 가장 작은, 즉, POC가 가장 작은 단기 참조 픽쳐가 DPB에서 제거된다(단계 S520).
DPB에 저장된 픽쳐를 기준으로 Max(max_num_ref_frame, 1)이 아니고 numShortTerm이 0보다 크지 않은 경우 DPB에서 픽쳐는 제거되지 않는다.
아래의 표 3은 본 발명의 실시예에 따른 새로운 슬라이딩 윈도우 방법을 사용한 경우 POC 별 참조 픽쳐 가용성을 나타낸 것이다.
표 3을 참조하면, POC(6)인 경우 DPB에 존재하는 픽쳐가 4 개(POC(0), POC(8), POC(4), POC(2))이고 추가적으로 POC(6)이 복호화된 경우, 가장 작은 POC에 해당하는 POC(0)을 DPB에서 제거함으로서 DPB에는 (POC(8), POC(4), POC(2), POC(6))가 포함될 수 있다.
즉, 본 발명의 실시예에서는 DPB에 존재하는 참조 픽쳐가 max_num_ref_frames에 해당하는 수의 프레임으로 모두 채워진 경우 POC 중 가장 작은 POC 넘버를 가진 참조 픽쳐가 DPB에서 제거된다.
표 3을 참조하면, 이러한 DPB 관리 방법을 사용함으로서 POC(1), POC(3), POC(9), POC(11)에서 L0 리스트가 가용하지 않은 경우 4번, L1 리스트가 가용하지 않은 경우가 4번이 발생하게 되어 기존의 계층적 픽쳐 구조를 사용할 경우와 비교하여 참조 픽쳐가 가용하지 않은 경우가 줄게 된다.
본 발명의 또 다른 실시예에 따르면 전술한 도 4 및 도 5에서 개시한 방법이 함께 사용될 수 있다.
즉, 본 발명의 실시예에 따르면 도 4에서 개시한 계층적 픽쳐 구조에서 FrameNum를 재배열하는 방법과 도 5에서 개시한 새로운 슬라이딩 윈도우 방법을 동시에 적용할 수 있다.
도 6은 본 발명의 실시예에 따른 참조 픽쳐 관리 방법을 나타낸 순서도이다.
도 6에서는 도 4 및 도 5의 상황이 함께 적용되는 경우에 대해 설명한다.
차상위 계층의 픽쳐 중 하나의 픽쳐를 복호화한다(단계 S600).
복호화된 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지고 numShortTerm이 0보다 큰지 여부를 판단한다(단계 S610).
단계 S610의 판단 단계에서는 (1) 복호화된 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지는 지 여부와 (2) numShortTerm이 0보다 큰지 여부와 같은 두 개의 판단 방법이 각각의 판단 절차로 이루어질 수도 있다.
DPB에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 numShortTerm이 0보다 큰 경우 DPB에 존재하는 단기 참조 픽쳐 중 PicOrderCnt(entryShortTerm)가 가장 작은, 즉, POC가 가장 작은 단기 참조 픽쳐가 DPB에서 제거된다(단계 S620).
DPB에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)이 아니거나 numShortTerm이 0보다 크지 않은 경우 DPB에 저장된 픽쳐를 제거하지 않는다.
차상위 계층의 픽쳐의 POC 순서보다 하나 작은 POC를 가진 상위 계층 픽쳐 및 하나 큰 POC를 가진 상위 계층 픽쳐를 복호화한다(단계 S630).
최상위 계층 픽쳐의 경우, 참조 픽쳐로 저장되지 않기 때문에 DPB에 저장된 참조 픽쳐를 관리하는 절차를 수행하지 않을 수 있다.
아래의 표 4는 도 3의 방법과 표 3에서 개시한 방법이 함께 적용된 경우 DPB에서 참조 픽쳐의 가용성과 L0 리스트 및 L1 리스트에 포함된 픽쳐의 가용성에 대하여 나타낸 것이다.
표 4를 참조하면, POC(9)에서 L0 리스트를 이용한 예측에 대하여 1번, LC 리스트를 이용한 예측에 대하여 1번의 unavailability가 발생함으로서 기존의 계층적 픽쳐 구조와 비교하여 참조 픽쳐의 unavailability가 줄게 된다.
도 7은 본 발명의 실시예에 따른 영상 복호화 장치를 나타낸 개념도이다.
도 7을 참조하면, 영상 복호화 장치의 DPB는 참조 픽쳐 저장부(700), 참조 픽쳐 정보 판단부(720), 참조 픽쳐 관리부(740)를 포함할 수 있다.
각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합 및 분리된 실시예의 경우도 본 발명의 본질에서 벋어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성부는 아니고 단지 성능을 향상 시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
예를 들어, 이하 본 발명의 실시예에서는 참조 픽쳐 저장부(700), 픽쳐 정보 판단부(720), 참조 픽쳐 정보 갱신부(740)를 구분하여 설명하지만 참조 픽쳐 저장부(700), 픽쳐 정보 판단부(720), 참조 픽쳐 정보 갱신부(740) 중 적어도 하나의 구성부를 포함한 것을 DPB 또는 메모리라는 용어로 표현될 수 있다.
참조 픽쳐 저장부(700)에는 단기 참조 픽쳐와 장기 참조 픽쳐가 저장되어 있을 수 있다. 단기 참조 픽쳐와 장기 참조 픽쳐는 참조 픽쳐 저장부에서 저장되고 제거되는 방식이 상이할 수 있다. 예를 들어, 단기 참조 픽쳐와 장기 참조 픽쳐는 메모리에 저장되어 관리되는 방식이 다를 수 있다. 예를 들어, 단기 참조 픽쳐는 메모리 내에서 FIFO(First in First out)과 같은 방식으로 운영될 수 있고 장기 참조 픽쳐는 FIFO로 개방되기에 부적합한 참조 픽쳐는 장기 참조 픽쳐로서 마킹되어 사용될 수 있다.
픽쳐 정보 판단부(720)는 계층적 픽쳐 구조에서 픽쳐의 정보 예를 들어 POC, FrameNum과 같은 픽쳐 정보를 판단하여 참조해야 할 픽쳐 정보, 복호화를 수행할 순차적 픽쳐 정보 등을 포함할 수 있다.
픽쳐 정보 판단부(720)에서는 계층적 픽쳐 구조를 기초로 차상위 시간적 계층 픽쳐 중 하나의 픽쳐를 복호화한 후 차상위 시간적 계층 픽쳐의 POC(Picture Order Count)를 기준으로 상기 POC 순서상 앞 뒤에 존재하는 최상위 시간적 계층 픽쳐에 대하여 복호화를 수행할 수 있도록 픽쳐 정보를 판단 후 참조 픽쳐 저장부(700)에 저장시킬 수 있다.
참조 픽쳐 정보 갱신부(740)에서는 또한, 계층적 픽쳐 구조 정보, GOP 구조 정보 등도 판단하여 복호화를 수행하여 참조 픽쳐 저장부(700)에 저장될 픽쳐 정보를 판단할 수 있다.
참조 픽쳐 정보 갱신부(740)에서는 복호화된 차상위 시간적 계층의 픽쳐를 포함하여 DPB에 저장된 단기간 참조 픽쳐 및 장기간 참조 픽쳐를 기준으로 합산된 픽쳐의 개수가 Max(max_num_ref_frame, 1)과 동일한 값을 가지는지 여부를 판단할 수 있고 또한 numShortTerm이 0보다 큰지 여부를 판단할 수 있다. 이와 같은 판단 결과를 기초로 참조 픽쳐 저장부(700)에 저장된 픽쳐의 수가 Max(max_num_ref_frame, 1)와 동일하고 numShortTerm이 0보다 큰 경우 DPB에 존재하는 상기 단기 참조 픽쳐 중 POC가 가장 작은 단기 참조 픽쳐를 참조 픽쳐 저장부에서 제거할 수 있다.
이상에서 설명한 영상 부호화 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 각 영상 부호화기 및 영상 복호화기 장치의 각 구성부에서 구현될 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Claims (7)
- 수신한 비트스트림으로부터 현재 픽처 내의 현재 블록에 대한 예측 모드 정보를 획득하는 단계;
상기 예측 모드 정보를 기반으로 상기 현재 블록에 대하여 인터 예측이 적용되는 것으로 결정하는 단계;
DPB(decoded picture buffer)에 저장된 복호화된 픽처들에 대하여 POC(picture order count) 순서에 기반하여 참조 픽처 집합을 구성하고 마킹 절차를 수행하는 단계;
상기 참조 픽처 집합에 포함된 참조 픽처를 기반으로 상기 인터 예측을 수행하여 상기 현재 블록에 대한 예측 샘플을 유도하는 단계;
상기 예측 샘플을 기반으로 복원된 픽처를 생성하는 단계;
상기 복원된 픽처에 대하여 디블록킹 필터링을 수행한 후 샘플 적응적 오프셋을 적용하는 필터링 단계; 및
상기 마킹 절차에 따라 참조되지 않는 픽처(unused for reference)로서 마킹된 픽처를 상기 DPB로부터 제거하는 단계를 포함함을 특징으로 하는, 비디오 디코딩 방법. - 제 1항에 있어서, 상기 예측 샘플을 유도하는 단계에서, 상기 예측 샘플은 휘도 화소의 경우 8탭 보간 필터를 기반으로 유도되고 색차 화소의 경우 4탭 보간 필터를 기반으로 유도됨을 특징으로 하는 비디오 디코딩 방법.
- 제 1항에 있어서, 상기 예측 샘플을 유도하는 단계에서, 상기 예측 샘플은 후보 예측 움직임 벡터 리스트를 기반으로 유도됨을 특징으로 하는 비디오 디코딩 방법.
- 제 1항에 있어서, 상기 DPB에 저장된 단기 참조 픽쳐들의 개수 및 장기 참조 픽쳐들의 개수를 유도하는 단계를 더 포함하며,
상기 DPB 내 단기 참조 픽쳐들 및 장기 참조 픽쳐들의 개수가 소정의 최대 참조 픽처 개수와 동일한 값을 가지고 상기 단기 참조 픽쳐의 개수가 0보다 큰 경우에는, POC 순서에 따라서 상기 DPB로부터 단기 참조 픽처를 제거하는 것을 특징으로 하는 비디오 디코딩 방법. - 제 1항에 있어서, 상기 현재 블록이 속하는 현재 픽처의 시간적 계층보다 낮은 시간적 계층의 픽처를 상기 참조 픽처로서 이용하는 것을 특징으로 하는 비디오 디코딩 방법.
- 제 1항에 있어서, 낮은 시간적 계층의 픽처는 높은 시간적 계층의 픽처보다 먼저 복호화되며,
상기 참조 픽처 집합은 상기 현재 블록이 속하는 현재 픽처의 시간적 계층보다 낮은 시간적 계층의 픽처인 상기 참조 픽처를 포함하는 것을 특징으로 하는 비디오 디코딩 방법. - 제 1항에 있어서, 낮은 시간적 계층의 픽처는 높은 시간적 계층의 픽처보다 먼저 복호화되며,
상기 현재 블록이 속하는 현재 픽처의 시간적 계층보다 낮은 시간적 계층의 픽처를 상기 참조 픽처로서 이용하는 것을 특징으로 하는 비디오 디코딩 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161479369P | 2011-04-26 | 2011-04-26 | |
US61/479,369 | 2011-04-26 | ||
PCT/KR2012/003094 WO2012148139A2 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137030938A Division KR101581100B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177019514A Division KR101794199B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150140849A KR20150140849A (ko) | 2015-12-16 |
KR101759672B1 true KR101759672B1 (ko) | 2017-07-31 |
Family
ID=47072877
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187011343A KR101911012B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020157033454A KR101759672B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020137030938A KR101581100B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020177031629A KR101852789B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020177019514A KR101794199B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187011343A KR101911012B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137030938A KR101581100B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020177031629A KR101852789B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
KR1020177019514A KR101794199B1 (ko) | 2011-04-26 | 2012-04-20 | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20140050270A1 (ko) |
JP (4) | JP5918354B2 (ko) |
KR (5) | KR101911012B1 (ko) |
CN (1) | CN103621091A (ko) |
DE (1) | DE112012001635T5 (ko) |
ES (1) | ES2489816B2 (ko) |
GB (2) | GB2548739B (ko) |
WO (1) | WO2012148139A2 (ko) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9948939B2 (en) * | 2012-12-07 | 2018-04-17 | Qualcomm Incorporated | Advanced residual prediction in scalable and multi-view video coding |
EP2946558B1 (en) * | 2013-01-15 | 2020-04-29 | Huawei Technologies Co., Ltd. | Method for decoding an hevc video bitstream |
CN105284115B (zh) * | 2013-04-05 | 2018-11-23 | 三星电子株式会社 | 用于对多层视频进行解码的方法和设备以及用于对多层视频进行编码的方法和设备 |
KR102222311B1 (ko) * | 2013-07-09 | 2021-03-04 | 한국전자통신연구원 | 영상의 복호화 방법 및 이를 이용하는 장치 |
US9510001B2 (en) | 2013-07-09 | 2016-11-29 | Electronics And Telecommunications Research Institute | Video decoding method and apparatus using the same |
CN105379277B (zh) | 2013-07-15 | 2019-12-17 | 株式会社Kt | 用于编码/解码可伸缩视频信号的方法和装置 |
CN105379276A (zh) * | 2013-07-15 | 2016-03-02 | 株式会社Kt | 可伸缩视频信号编码/解码方法和装置 |
WO2015009022A1 (ko) * | 2013-07-15 | 2015-01-22 | 주식회사 케이티 | 스케일러블 비디오 신호 인코딩/디코딩 방법 및 장치 |
US9807407B2 (en) * | 2013-12-02 | 2017-10-31 | Qualcomm Incorporated | Reference picture selection |
KR20150075041A (ko) | 2013-12-24 | 2015-07-02 | 주식회사 케이티 | 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치 |
WO2015102271A1 (ko) * | 2014-01-02 | 2015-07-09 | 한국전자통신연구원 | 영상의 복호화 방법 및 이를 이용하는 장치 |
KR102294092B1 (ko) | 2014-01-02 | 2021-08-27 | 한국전자통신연구원 | 영상의 복호화 방법 및 이를 이용하는 장치 |
KR20150110295A (ko) * | 2014-03-24 | 2015-10-02 | 주식회사 케이티 | 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치 |
US9756355B2 (en) * | 2014-06-20 | 2017-09-05 | Qualcomm Incorporated | Value ranges for syntax elements in video coding |
US20170359577A1 (en) * | 2014-10-07 | 2017-12-14 | Samsung Electronics Co., Ltd. | Method and device for encoding or decoding multi-layer image, using interlayer prediction |
CN107925769B (zh) * | 2015-09-08 | 2020-11-27 | 联发科技股份有限公司 | 管理已解码图像缓存器的方法及视频编码器或视频解码器 |
WO2017049518A1 (en) * | 2015-09-24 | 2017-03-30 | Intel Corporation | Techniques for video playback decoding surface prediction |
KR102476207B1 (ko) * | 2015-11-12 | 2022-12-08 | 삼성전자주식회사 | 반도체 장치의 동작 방법 및 반도체 시스템 |
US11595652B2 (en) | 2019-01-28 | 2023-02-28 | Op Solutions, Llc | Explicit signaling of extended long term reference picture retention |
CN106937168B (zh) * | 2015-12-30 | 2020-05-12 | 掌赢信息科技(上海)有限公司 | 一种利用长期参考帧的视频编码方法、电子设备及系统 |
CN106488227B (zh) * | 2016-10-12 | 2019-03-15 | 广东中星电子有限公司 | 一种视频参考帧管理方法和系统 |
KR20180057563A (ko) * | 2016-11-22 | 2018-05-30 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN110870307A (zh) * | 2017-07-06 | 2020-03-06 | 佳稳电子有限公司 | 同步影像的处理方法及其装置 |
JP6992351B2 (ja) | 2017-09-19 | 2022-01-13 | 富士通株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
US11825117B2 (en) * | 2018-01-15 | 2023-11-21 | Samsung Electronics Co., Ltd. | Encoding method and apparatus therefor, and decoding method and apparatus therefor |
BR112021002832A2 (pt) * | 2018-08-17 | 2021-05-04 | Huawei Technologies Co., Ltd. | gerenciamento de imagem de referência em codificação de vídeo |
JP2022508244A (ja) * | 2018-11-27 | 2022-01-19 | オーピー ソリューションズ, エルエルシー | 明示的信号伝達および暗黙的信号伝達を用いた、使用不可参照フレームの適応ブロック更新 |
US11196988B2 (en) * | 2018-12-17 | 2021-12-07 | Apple Inc. | Reference picture management and list construction |
WO2020159994A1 (en) * | 2019-01-28 | 2020-08-06 | Op Solutions, Llc | Online and offline selection of extended long term reference picture retention |
CN114205615B (zh) * | 2021-12-03 | 2024-02-06 | 北京达佳互联信息技术有限公司 | 解码图像缓存区的管理方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060083298A1 (en) | 2004-10-14 | 2006-04-20 | Nokia Corporation | Reference picture management in video coding |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4405272B2 (ja) * | 2003-02-19 | 2010-01-27 | パナソニック株式会社 | 動画像復号化方法、動画像復号化装置及びプログラム |
US20060013318A1 (en) * | 2004-06-22 | 2006-01-19 | Jennifer Webb | Video error detection, recovery, and concealment |
EP1949701A1 (en) * | 2005-10-11 | 2008-07-30 | Nokia Corporation | Efficient decoded picture buffer management for scalable video coding |
EP1806930A1 (en) * | 2006-01-10 | 2007-07-11 | Thomson Licensing | Method and apparatus for constructing reference picture lists for scalable video |
EP1827023A1 (en) * | 2006-02-27 | 2007-08-29 | THOMSON Licensing | Method and apparatus for packet loss detection and virtual packet generation at SVC decoders |
KR20070111968A (ko) * | 2006-05-19 | 2007-11-22 | 엘지전자 주식회사 | 비디오 신호의 디코딩 방법 및 장치 |
BRPI0718206B1 (pt) * | 2006-10-16 | 2020-10-27 | Nokia Technologies Oy | método para codificar uma pluralidade de visões de uma cena; método de codificação de uma sequência de bits de vídeo codificada e aparelho |
JP5023739B2 (ja) * | 2007-02-28 | 2012-09-12 | ソニー株式会社 | 画像情報符号化装置及び符号化方法 |
WO2008125900A1 (en) * | 2007-04-13 | 2008-10-23 | Nokia Corporation | A video coder |
US20080253467A1 (en) * | 2007-04-13 | 2008-10-16 | Nokia Corporation | System and method for using redundant pictures for inter-layer prediction in scalable video coding |
US8855199B2 (en) * | 2008-04-21 | 2014-10-07 | Nokia Corporation | Method and device for video coding and decoding |
US20090279614A1 (en) * | 2008-05-10 | 2009-11-12 | Samsung Electronics Co., Ltd. | Apparatus and method for managing reference frame buffer in layered video coding |
KR20090117863A (ko) * | 2008-05-10 | 2009-11-13 | 삼성전자주식회사 | 계층적 영상 부호화를 위한 참조 프레임 관리 장치 및 방법 |
JP2009296078A (ja) * | 2008-06-03 | 2009-12-17 | Victor Co Of Japan Ltd | 符号化データ再生装置、符号化データ再生方法、および符号化データ再生プログラム |
US8660174B2 (en) * | 2010-06-15 | 2014-02-25 | Mediatek Inc. | Apparatus and method of adaptive offset for video coding |
US20120230409A1 (en) * | 2011-03-07 | 2012-09-13 | Qualcomm Incorporated | Decoded picture buffer management |
-
2012
- 2012-04-20 GB GB1709457.4A patent/GB2548739B/en active Active
- 2012-04-20 DE DE112012001635.1T patent/DE112012001635T5/de active Pending
- 2012-04-20 KR KR1020187011343A patent/KR101911012B1/ko active IP Right Grant
- 2012-04-20 CN CN201280030271.0A patent/CN103621091A/zh active Pending
- 2012-04-20 KR KR1020157033454A patent/KR101759672B1/ko active IP Right Grant
- 2012-04-20 KR KR1020137030938A patent/KR101581100B1/ko active IP Right Grant
- 2012-04-20 KR KR1020177031629A patent/KR101852789B1/ko active IP Right Grant
- 2012-04-20 WO PCT/KR2012/003094 patent/WO2012148139A2/ko active Application Filing
- 2012-04-20 ES ES201390089A patent/ES2489816B2/es active Active
- 2012-04-20 JP JP2014508284A patent/JP5918354B2/ja active Active
- 2012-04-20 GB GB1319020.2A patent/GB2505344B/en active Active
- 2012-04-20 KR KR1020177019514A patent/KR101794199B1/ko active IP Right Grant
- 2012-04-20 US US14/114,012 patent/US20140050270A1/en not_active Abandoned
-
2016
- 2016-04-06 JP JP2016076447A patent/JP6276319B2/ja active Active
-
2018
- 2018-01-11 JP JP2018002659A patent/JP6568242B2/ja active Active
-
2019
- 2019-08-01 JP JP2019142126A patent/JP6867450B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060083298A1 (en) | 2004-10-14 | 2006-04-20 | Nokia Corporation | Reference picture management in video coding |
Non-Patent Citations (2)
Title |
---|
H. Schwarz, et al. Hierarchical B pictures. JVT of ISO/IEC MPEG & ITU-T VCEG. 16th Meeting. JVT-P014, Jul. 2005, pp.1-31 |
ITU-T Recommendation H.264 - Advanced video coding for generic audiovisual services. Mar. 2005, pp.i-xiv,1-324 |
Also Published As
Publication number | Publication date |
---|---|
GB201319020D0 (en) | 2013-12-11 |
KR20170085612A (ko) | 2017-07-24 |
JP6276319B2 (ja) | 2018-02-07 |
KR20170125122A (ko) | 2017-11-13 |
JP2018057049A (ja) | 2018-04-05 |
KR101581100B1 (ko) | 2015-12-29 |
KR20150140849A (ko) | 2015-12-16 |
JP6568242B2 (ja) | 2019-08-28 |
GB2505344A (en) | 2014-02-26 |
GB201709457D0 (en) | 2017-07-26 |
ES2489816B2 (es) | 2015-10-08 |
KR101911012B1 (ko) | 2018-12-19 |
JP2016146667A (ja) | 2016-08-12 |
JP2014519223A (ja) | 2014-08-07 |
GB2548739B (en) | 2018-01-10 |
WO2012148139A2 (ko) | 2012-11-01 |
JP5918354B2 (ja) | 2016-05-18 |
GB2505344B (en) | 2017-11-15 |
CN103621091A (zh) | 2014-03-05 |
KR101852789B1 (ko) | 2018-06-04 |
WO2012148139A3 (ko) | 2013-03-21 |
US20140050270A1 (en) | 2014-02-20 |
GB2548739A (en) | 2017-09-27 |
ES2489816R1 (es) | 2014-12-09 |
KR20180049130A (ko) | 2018-05-10 |
JP2019208268A (ja) | 2019-12-05 |
ES2489816A2 (es) | 2014-09-02 |
JP6867450B2 (ja) | 2021-04-28 |
DE112012001635T5 (de) | 2014-02-27 |
KR20140029459A (ko) | 2014-03-10 |
KR101794199B1 (ko) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101794199B1 (ko) | 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치 | |
KR101579356B1 (ko) | 화면 내 예측 방법 및 이러한 방법을 사용하는 장치 | |
KR101549910B1 (ko) | 화면 내 예측 모드에 기초한 적응적인 변환 방법 및 이러한 방법을 사용하는 장치 | |
KR101707088B1 (ko) | 휘도 샘플을 이용한 색차 블록의 화면 내 예측 방법 및 이러한 방법을 사용하는 장치 | |
KR101857725B1 (ko) | 움직임 벡터 리스트 설정 방법 및 이러한 방법을 사용하는 장치 | |
KR20140100462A (ko) | 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치 | |
KR101802375B1 (ko) | 시간적 후보 움직임 벡터 유도 방법 및 이러한 방법을 사용하는 장치 | |
KR102523384B1 (ko) | 비디오 신호의 복호화 방법 및 이의 장치 | |
KR20130139811A (ko) | 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치 | |
KR101938389B1 (ko) | 화면 내 예측 방법 및 이러한 방법을 사용하는 장치 | |
KR20130139808A (ko) | 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |