KR20100122450A - 비디오 신호 처리 방법 및 장치 - Google Patents
비디오 신호 처리 방법 및 장치 Download PDFInfo
- Publication number
- KR20100122450A KR20100122450A KR1020100043470A KR20100043470A KR20100122450A KR 20100122450 A KR20100122450 A KR 20100122450A KR 1020100043470 A KR1020100043470 A KR 1020100043470A KR 20100043470 A KR20100043470 A KR 20100043470A KR 20100122450 A KR20100122450 A KR 20100122450A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- macroblock
- macro block
- intra prediction
- prediction mode
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/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/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
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- 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)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
현재 매크로 블록의 매크로 블록 타입이 인트라 믹스드인 경우, 상기 현재 매크로 블록의 파티션에 대한 블록 타입 식별 정보를 획득하여 상기 현재 매크로 블록의 파티션에 대한 블록 타입을 특정하고, 상기 현재 매크로 블록의 파티션에 대한 블록 타입에 따라 상기 현재 매크로 블록의 인트라 예측 모드를 획득함으로써 상기 현재 매크로 블록을 예측할 수 있다. 16x16 보다 큰 매크로 블록의 경우, 다양한 블록 타입을 적응적으로 이용함으로써 매크로 블록 타입을 코딩함에 필요한 비트수를 줄일 수 있어 코딩의 효율성을 향상시킬 수 있다.
Description
본 발명은 인트라 또는 인터 예측 및 블록 단위 부호화에 관한 방법과 장치에 관한 것이다.
영상 신호의 압축률을 높이기 위해 시간적 중복성과 공간적 중복성을 제거하는 방법 즉, 인트라 또는 인터 예측을 수행하며, 직교 변환 및 벡터 양자화 등의 기술을 이용한다.
본 발명의 목적은 인트라 예측을 이용하여 비디오 신호를 효율적으로 처리하고자 함에 있다.
본 발명의 또 다른 목적은 출력 영역에 속하지 아니하는 영역을 코딩함에 필요한 비트수를 줄이고자 함에 있다.
상기 목적을 달성하기 위하여 본 발명은 16x16 보다 큰 매크로 블록인 경우 I 슬라이스의 매크로 블록 타입을 정의하고, 그에 따른 상기 매크로 블록의 예측 블록의 크기 및 인트라 예측 모드를 획득하는 방법을 제시한다.
본 발명은 슬라이스 타입에 따라 경계 매크로 블록의 매크로 블록 타입을 정의하고, I 슬라이스의 경계 매크로 블록에 대해서는 예측 블록의 크기 및 인트라 예측 모드를 결정하는 방법을 제시하고, P 슬라이스 또는 B 슬라이스의 경계 매크로 블록에 대해서는 스킵 모드를 이용한 인터 예측 방법을 제시한다.
본 발명에 따르면, 비디오 영상의 크기가 커짐에 따라 16x16 보다 큰 매크로 블록을 적응적으로 이용함으로써 매크로 블록 타입을 코딩함에 필요한 비트수를 줄일 수 있어 코딩의 효율성을 향상시킬 수 있다. I 슬라이스의 매크로 블록의 경우에도 서브 매크로 블록 단위로 코딩함으로써, 예측의 정확성을 높일 수 있으며, 동시에 상기 매크로 블록의 예측 블록의 크기를 변환 크기 정보에 기초하여 결정함으로써, 매크로 블록 타입을 코딩함에 필요한 비트수를 줄일 수 있어 코딩의 효율성도 향상시킬 수 있다. 경계 매크로 블록에 대한 매크로 블록 타입, 인트라 예측 모드, 모션 정보 등을 별도로 전송하지 아니하고 디코더에서 유도하거나 결정하도록 함으로써, 상기 매크로 블록 타입, 인트라 예측 모드, 모션 정보 등을 코딩함에 필요한 비트수를 줄일 수 있다.
도 1은 비디오 신호 디코딩 장치의 개략적인 블록도이다.
도 2는 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 장치를 도시한 것이다.
도 3은 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 과정을 도시한 블록도이다.
도 4는 매크로 블록이 32x32인 경우, P 매크로 블록 및 B 매크로 블록의 서브 매크로 블록 타입을 도시한 테이블이다.
도 5는 매크로 블록이 32x32인 경우, 인트라 매크로 블록 타입의 일 실시예를 도시한 것이다.
도 6은 매크로 블록 타입 정보 및 블록 타입 지시 정보를 이용하여 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도 이다.
도 7은 블록 타입 지시 정보를 이용하여 서브 매크로 블록 타입을 결정하는 방법의 일 실시예를 도시한 블록도이다.
도 8은 매크로 블록이 인트라 모드로 코딩되는 경우, 매크로 블록의 인트라 예측 모드를 획득하는 방법을 도시한 블록도이다.
도 9는 경계 매크로 블록 및 경계 서브 매크로 블록을 도시한 것이다.
도 10은 I슬라이스의 경우, 경계 매크로 블록 내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 11은 넌-경계 서브 매크로 블록의 인트라 예측 모드를 설정하는 방법의 일실시예를 도시한 것이다.
도 12는 P 슬라이스 또는 B 슬라이스의 경우, 경계 매크로 블록 내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 13은 P 슬라이스 또는 B 슬라이스 내의 경계 매크로 블록의 위치에 따라 매크로 블록 타입을 결정하는 방법을 도시한 것이다.
도 2는 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 장치를 도시한 것이다.
도 3은 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 과정을 도시한 블록도이다.
도 4는 매크로 블록이 32x32인 경우, P 매크로 블록 및 B 매크로 블록의 서브 매크로 블록 타입을 도시한 테이블이다.
도 5는 매크로 블록이 32x32인 경우, 인트라 매크로 블록 타입의 일 실시예를 도시한 것이다.
도 6은 매크로 블록 타입 정보 및 블록 타입 지시 정보를 이용하여 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도 이다.
도 7은 블록 타입 지시 정보를 이용하여 서브 매크로 블록 타입을 결정하는 방법의 일 실시예를 도시한 블록도이다.
도 8은 매크로 블록이 인트라 모드로 코딩되는 경우, 매크로 블록의 인트라 예측 모드를 획득하는 방법을 도시한 블록도이다.
도 9는 경계 매크로 블록 및 경계 서브 매크로 블록을 도시한 것이다.
도 10은 I슬라이스의 경우, 경계 매크로 블록 내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 11은 넌-경계 서브 매크로 블록의 인트라 예측 모드를 설정하는 방법의 일실시예를 도시한 것이다.
도 12는 P 슬라이스 또는 B 슬라이스의 경우, 경계 매크로 블록 내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 13은 P 슬라이스 또는 B 슬라이스 내의 경계 매크로 블록의 위치에 따라 매크로 블록 타입을 결정하는 방법을 도시한 것이다.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
먼저, 매크로 블록에 대해서 살펴보기로 한다. 매크로 블록은 비디오 프레임을 처리하기 위한 기본 단위로서, 16x16 화소로 이루어진 영역으로 정의할 수 있다. 그러나, 비디오 영상의 크기가 커짐에 따라 16x16 보다 큰 영역으로 정의될 수도 있다. 예를 들어, 매크로 블록은 32x32, 또는 64x64 화소로 이루어진 영역으로 정의할 수 있다. 이 경우, 16x16 보다 큰 매크로 블록은 종래보다 해상도가 큰 비디오 프레임을 처리하기 위한 기본 단위가 될 수 있다.
16x16 보다 큰 매크로 블록은 비디오 영상의 해상도에 따라 적응적으로 이용될 수 있다. 예를 들어, 비디오 영상의 해상도가 VGA이하인 경우에는 매크로 블록의 크기를 16x16으로 설정할 수 있으며, 이에 따라 매크로 블록의 파티션으로서 16x8, 8x16, 8x8, 4x8, 8x4, 4x4 크기의 블록들이 사용될 수 있다. 해상도가 VGA 이상 1080P 이하인 경우에는 매크로 블록의 크기를 32x32으로 설정할 수 있으며, 이에 따라 32x16, 16x32, 16x16, 16x8, 8x16, 8x8 크기의 블록들이 사용될 수 있고, 해상도가 1080P 이상 4Kx2K 이하인 경우에는 매크로 블록의 크기를 64x64으로 설정할 수 있으며, 64x32, 32x64, 32x32, 32x16, 16x32, 16x16 크기의 블록들이 사용될 수 있다. 다만, 인코더에서는 비디오 영상의 해상도에 따라 16x16 매크로 블록 또는 16x16 보다 큰 매크로 블록 가운데서 최적의 매크로 블록의 크기를 결정할 수 있다. 상기 결정된 매크로 블록의 크기 정보는 슬라이스 레벨이나 시퀀스 레벨에서 디코더로 전송될 수 있으며, 이에 따라 매크로 블록의 크기를 적응적으로 이용할 수 있다.
매크로 블록의 크기에 따른 매크로 블록 타입에 대해서 살펴보기로 한다. 매크로 블록 타입은 매크로 블록의 예측 모드에 따라, 즉, 인트라 모드인지 인터 모드인지 여부에 따라 각각 정의될 수 있다. 매크로 블록은 일정 크기의 블록 단위로 예측되며, 이하 예측 블록의 크기 정보는 상기 일정 크기의 블록 단위와 동일한 의미로 사용될 수 있다. 매크로 블록 타입은 예측 블록의 크기 정보를 포함할 수 있으며, 인터 예측을 수행하는 매크로 블록 타입은 참조 방향에 대한 정보도 포함할 수 있다.
구체적으로 살펴보면, 인트라 모드로 코딩된 매크로 블록은 16x16화소, 8x8화소, 4x4화소의 블록 단위로 코딩될 수 있다. 인터 모드로 코딩된 매크로 블록은 모션 보상을 위해 16x16화소, 16x8화소, 8x16화소 8x8화소가 매크로 블록 타입으로 사용되며, 8x8화소가 사용될 경우 8x4화소, 4x8화소, 4x4화소가 서브 매크로 블록 타입으로 사용될 수 있다.
이하, 16x16 보다 큰 매크로 블록에 따른 매크로 블록 타입을 정의하고자 한다. 비디오 영상의 크기가 커짐에 따라 상대적으로 크기가 작은 매크로 블록 타입은 사용빈도가 감소할 것인바, 이러한 매크로 블록 타입에 대한 정보를 제거할 수 있고, 그에 따라 매크로 블록 타입에 할당된 비트수를 줄일 수 있다. 예를 들어, 비디오 영상의 해상도가 VGA이하인 경우라면 앞서 설명한 매크로 블록 타입을 이용할 수 있다. 그러나, 해상도가 VGA 이상 1080P 이하인 경우라면, 8x8화소보다 작은 매크로 블록 타입은 이용하지 아니할 수 있다. 즉, 인트라 모드로 코딩된 매크로 블록은 16x16화소, 8x8화소의 블록 단위로 코딩될 수 있으며, 인터 모드로 코딩된 매크로 블록은 16x16화소, 16x8화소, 8x16화소 8x8화소가 매크로 블록 타입으로 이용될 수 있다. 이 경우 서브 매크로 블록 타입으로 8x4화소, 4x8화소, 4x4화소가 이용되지 않을 수 있다. 해상도가 1080P 이상 4Kx2K 이하인 경우라면, 16x16화소보다 작은 매크로 블록 타입은 이용하지 아니할 수 있다. 즉, 인트라 모드로 코딩된 블록 및 인터 모드로 코딩된 블록에 대해서는 16x16화소가 매크로 블록 타입으로 이용될 수 있다.
마찬가지로 인코더에서는 비디오 영상의 해상도에 따라 최적의 매크로 블록 타입을 결정할 수 있고, 상기 결정된 매크로 블록 타입 정보는 슬라이스 레벨이나 시퀀스 레벨에서 디코더로 전송될 수 있으며, 이에 따라 매크로 블록 타입을 적응적으로 이용할 수 있다.
도 1은 비디오 신호 디코딩 장치의 개략적인 블록도이다.
도 1을 참조하면, 본 발명의 비디오 신호 디코딩 장치는 엔트로피 디코딩부(110), 역양자화부(120), 역변환부(125), 디블록킹 필터링부(130), 복호 픽쳐 저장부(140), 인터 예측부(150), 인트라 예측부(160)를 포함한다.
엔트로피 코딩부(110)는 비디오 신호 비트스트림을 엔트로피 디코딩하여 각 매크로 블록의 변환 계수, 모션 벡터, 참조 픽쳐 인덱스 등을 추출한다. 역양자화부(120)는 엔트로피 디코딩된 변환 계수를 역양자화하고, 역변환부(125)는 역양자화된 변환 계수를 이용하여 원래의 화소값을 복원한다. 디블록킹 필터링부(130)는 블록 왜곡 현상을 감소시키기 위해 각각의 코딩된 매크로 블록에 적용된다. 필터링을 거친 픽쳐는 출력되거나 참조 픽쳐로 이용하기 위해 복호 픽쳐 저장부(140)에 저장된다. 인터 예측부(150)는 복호 픽쳐 저장부(140)에 저장된 참조 픽쳐와 엔트로피 디코딩부(110)로부터 전달받은 인터 예측 정보(참조 픽쳐 인덱스, 모션 벡터 등)를 이용하여 현재 픽쳐를 예측할 수 있다. 구체적으로 살펴보면, 비디오 신호로부터 현재 블록에 인접한 블록(이하, 이웃 블록이라 함.)의 모션 벡터를 추출하고, 상기 이웃 블록으로부터 상기 현재 블록의 모션 벡터 예측값을 획득할 수 있다. 상기 이웃 블록이라 함은 현재 블록의 좌측, 상단, 우측 상단의 블록을 포함할 수 있다. 예를 들어, 상기 이웃 블록들의 모션 벡터의 수평 성분과 수직 성분 각각의 중앙값을 사용하여 현재 블록의 모션 벡터 예측값을 획득하는 것으로 설정할 수 있다. 또는, 현재 블록의 좌측 블록이 하나 이상의 인터 모드로 코딩된 예측 블록을 가지는 경우에는 그 중 가장 상단에 위치한 예측 블록의 모션 벡터를 이용하여 현재 블록의 모션 벡터의 예측값을 획득하는 것으로 설정할 수도 있다. 현재 블록의 상단 블록이 하나 이상의 인터 모드로 코딩된 예측 블록을 가지는 경우에는 그 중 가장 좌측에 위치한 예측 블록의 모션 벡터를 이용하여 현재 블록의 모션 벡터의 예측값을 획득하는 것으로 설정할 수도 있다. 이웃 블록 중 현재 블록의 상단, 우측 상단의 블록이 픽쳐 또는 슬라이스의 경계 밖에 위치할 경우, 좌측 블록의 모션 벡터를 현재 블록의 모션 벡터의 예측값으로 설정할 수 있다. 이웃 블록 중 현재 블록과 참조 픽쳐 인덱스가 같은 블록이 하나만 있는 경우에는 그 블록의 모션 벡터를 예측에 사용하는 것으로 설정할 수 있다.
매크로 블록 타입에 따른 매크로 블록의 파티션에 기초하여 모션 벡터의 예측값을 획득할 수도 있다. 예를 들어, 현재 매크로 블록 타입에 따른 상기 현재 매크로 블록의 파티션이 8x16 인 경우, 상기 현재 매크로 블록의 파티션의 인덱스가 0이면, 상기 현재 매크로 블록의 좌측 블록을, 현재 블록의 인덱스가 1이면, 현재 블록의 우측 상단 블록을 예측에 사용하는 것으로 설정할 수 있다. 현재 매크로 블록 타입에 따른 매크로 블록의 파티션이 16x8 인 경우, 상기 매크로 블록의 파티션의 인덱스가 0이면, 현재 블록의 상단 블록을, 상기 매크로 블록의 파티션의 인덱스가 1이면, 현재 블록의 좌측 블록을 예측에 사용하는 것으로 설정할 수 있다.
현재 블록의 모션 벡터 예측값을 획득함에 있어서, 이웃 블록으로부터 추출가능한 여러 가지의 모션 벡터를 모션 벡터 예측값의 후보자로 정의할 수 있다. 상기 모션 벡터 예측값의 후보자는 상기 설명한 바와 같이 이웃 블록 중 어느 하나의 블록의 모션 벡터, 이웃 블록의 모션 벡터들의 중앙값 또는 평균값 등을 포함할 수 있으며, 이웃 블록의 모션 벡터의 빈도수를 고려하여 상기 모션 벡터의 예측값의 후보자를 결정할 수도 있으나, 이에 한정되지 아니한다. 그에 따라 인코더에서는 모션 벡터 예측값의 후보자 중 현재 블록의 모션 벡터 예측값으로 가장 효율성이 좋은 모션 벡터를 선택하고, 상기 선택된 모션 벡터 정보를 디코더로 전송할 수 있다. 상기 선택된 모션 벡터 정보는 슬라이스 레벨 또는 매크로 블록 레벨에서 획득될 수 있다. 상기 모션 벡터 예측값의 후보자를 인덱스를 이용하여 정의할 수도 있으며, 상기 선택된 모션 벡터 정보는 상기 인덱스를 포함할 수 있다.
현재 블록의 모션 벡터와 모션 벡터 예측값간의 차분 벡터만을 부호화함으로써 부호화해야 할 비트량을 줄일 수 있다. 상기 획득된 모션 벡터 예측값과 비디오 신호로부터 추출되는 차분 벡터를 이용하여 현재 블록의 모션을 보상한다. 또한, 이러한 모션 보상은 하나의 참조 픽쳐를 이용하여 수행될 수도 있고, 복수의 픽쳐를 이용하여 수행될 수도 있다.
예를 들어, 매크로 블록이 16x16 인 경우, 인터 예측을 위해 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, 4x4까지 총 7종류의 파티션이 사용될 수 있다. 이들은 매크로 블록 타입 또는 서브 매크로 블록 타입으로 계층화하여 표시될 수 있다. 구체적으로 예측 블록의 크기는 매크로 블록 타입으로 표시될 수 있으며, 16x16, 16x8, 8x16, 8x8 중 하나가 선택될 수 있다. 만일 8x8 이 선택되면, 서브 매크로 블록 타입으로 8x8, 8x4, 4x8, 4x4 중 하나의 파티션이 선택될 수 있다.
예측 블록마다 참조 픽쳐 인덱스와 모션 벡터를 코딩할 수 있다. 또는, 참조 픽쳐 인덱스는 매크로 블록마다, 모션 벡터는 예측 블록마다 코딩할 수도 있다. 서브 매크로 블록에서도 매크로 블록과 동일하게 코딩 방식을 결정할 수 있다. 상기 언급한 인터 예측에 관련된 내용은 이하 인터 예측을 수행하는 경우에 동일하게 적용될 수 있음을 이해하여야 한다.
스킵 매크로 블록은 스킵 모드로 코딩된 매크로 블록을 의미할 수 있으며, 이는 현재 매크로 블록을 복원함에 있어서, 현재 매크로 블록에 대한 정보, 즉, 모션 벡터, 참조 픽쳐 인덱스, 및 레지듀얼 데이터를 가지지 아니하고, 이전에 코딩된 참조 픽쳐 내의 매크로 블록의 화소값을 그대로 이용하는 방식으로 정의할 수 있다. 스킵 매크로 블록 코딩함에 있어서, 모션 벡터를 이용한 모션 보상이 수반될 수 있으며, 상기 모션 벡터는 이웃 블록을 이용하여 유도될 수 있다. 이웃 블록으로부터 상기 모션 벡터를 유도하는 방법은 앞서 설명한 모션 벡터 유도 방법을 동일하게 적용할 수 있다. 이하, B 스킵 매크로 블록의 모션 벡터 및 참조 픽쳐 인덱스를 유도하는 방법에 대해서 살펴보기로 한다. List1 참조 픽쳐 중 가장 작은 참조 인덱스를 가지는 픽쳐를 앵커 픽쳐라고 정의할 수 있다. 그리고, 상기 현재 블록과 같은 공간 위치에 있는 앵커 픽쳐의 블록을 앵커 블록이라고 정의할 수 있다.
예를 들어, 상기 앵커 블록의 모션 정보를 이용하여 현재 블록의 모션 정보를 예측할 수 있다. 상기 앵커 블록의 List0 방향의 모션 벡터를 mvCol 이라 정의할 수 있다. 이때, 상기 앵커 블록의 List0 방향의 모션 벡터가 없고, List1 방향의 모션 벡터가 있다면 List1 방향의 모션 벡터를 mvCol 로 할 수 있다. 여기서, B 픽쳐의 경우, 임의의 두 장을 참조 픽쳐로 사용할 수 있는데, 이 때 이용되는 예측을 List0 예측, List1 예측이라 한다. 예를 들어, List0 예측은 포워드 방향에 대한 예측을, List1 예측은 백워드 방향에 대한 예측을 의미할 수 있다.
현재 블록의 List0 참조 픽쳐는 상기 mvCol 이 참조하는 픽쳐가 되고, List1 참조 픽쳐는 앵커 픽쳐가 된다. 만일, 상기 앵커 블록이 모션 정보를 가지지 않는 경우(예를 들어, 인트라 모드로 코딩된 경우) 모션 벡터의 크기는 0이 되고, List0 참조 픽쳐는 참조 픽쳐 인덱스가 -1이 된다.
또한, 모션 벡터 mvCol로부터 List0의 모션 벡터 mvL0와 List1의 모션 벡터 mvL1을 구할 수 있다. 참조 픽쳐, 현재 픽쳐, 그리고 앵커 픽쳐 사이에서 모션의 속도가 일정하다고 가정하면, mvL0 와 mvL1의 크기는 참조 픽쳐, 현재 픽쳐, 앵커 픽쳐의 시간 간격에 비례하게 된다. 따라서, 참조 픽쳐와 현재 픽쳐의 간격, 그리고 참조 픽쳐와 앵커 픽쳐의 간격을 이용해서 mvL0와 mvL1을 구할 수 있다. 구체적으로 살펴보면, 앵커 블록의 List0 참조 인덱스가 장기 참조 픽쳐를 참조하고 있는 경우에는 다음 수학식 1과 같이 구할 수 있다.
앵커 블록의 List0 참조 인덱스가 장기 참조 픽쳐를 참조하고 있지 않은 경우에는 다음 수학식 2와 같이 구할 수 있다.
한편, 공간 방향의 모션 정보 상관도를 이용하여 현재 블록의 모션 정보를 예측할 수도 있다. 이 경우, 상기 앵커 픽쳐와 앵커 블록이 모션 정보를 유도하는데 사용될 수 있다.
먼저, 현재 슬라이스의 예측 모드를 식별하게 된다. 예를 들어, 현재 슬라이스의 슬라이스 타입이 B 슬라이스인 경우, B 스킵 모드가 이용될 수 있다. 그리고, 현재 블록의 이웃 블록들의 모션 정보를 획득할 수 있다. 예를 들어, 현재 블록의 좌측에 있는 블록을 이웃 블록 A, 상측에 있는 블록을 이웃 블록 B, 우측 상위에 있는 블록을 이웃 블록 C라 하면, 상기 이웃 블록 A,B,C의 모션 정보를 획득할 수 있다. 상기 이웃 블록들의 모션 정보를 이용하여 현재 블록의 List0 또는 List1 방향에 대한 참조 픽쳐 인덱스를 유도할 수 있다. 그리고, 상기 현재 블록의 참조 픽쳐 인덱스에 기초하여 제 1 변수를 유도할 수 있다. 상기 제 1 변수는 현재 블록의 모션 벡터를 임의의 값으로 예측하기 위해 이용되는 변수를 의미할 수 있다. 예를 들어, 현재 블록의 List0 또는 List1 방향에 대한 참조 픽쳐 인덱스는 상기 이웃 블록들의 참조 픽쳐 인덱스들 중에서 가장 작은 값으로 유도될 수 있다. 이 경우, 다음 수학식 3이 이용될 수 있다.
구체적 예로, MinPositive(0,1) = 0 이 된다. 즉, 두 개의 유효한 인덱스가 존재하는 경우 작은 값을 얻을 수 있다. 또는 MinPositive(-1,0) = 0 이 된다. 즉, 하나의 유효한 인덱스가 존재하는 경우 유효한 인덱스 값인 큰 값을 얻을 수 있다. 또는 MinPositive(-1,-1) = -1 이 된다. 즉, 두 개가 모두 유효하지 않은 인덱스인 경우, 예를 들어, 두 개의 이웃 블록이 모두 인트라 모드로 코딩된 블록이거나 두 개의 이웃 블록을 이용할 수 없는 경우에는 큰 값인 -1 값을 얻게 된다. 결국, 결과값이 유효하지 않은 값이 나오려면 하나라도 유효한 값이 있으면 안된다.
먼저, 상기 제 1 변수의 초기값으로, 상기 제 1 변수를 0으로 셋팅할 수 있다. 또한, 상기 유도된 List0 또는 List1 방향에 대한 참조 픽쳐 인덱스가 모두 0보다 작을 경우, 상기 현재 블록의 List0 또는 List1 방향에 대한 참조 픽쳐 인덱스는 0으로 셋팅될 수 있다. 그리고, 상기 제 1 변수는, 상기 현재 블록의 참조 픽쳐가 존재하지 않음을 나타내기 위한 값으로 셋팅될 수 있다. 이 때, 상기 유도된 List0 또는 List1 방향에 대한 참조 픽쳐 인덱스가 모두 0보다 작은 경우란, 예를 들면, 상기 이웃 블록이 인트라 모드로 코딩된 블록일 경우, 또는 상기 이웃 블록이 이용가능하지 않게 되는 경우를 의미할 수 있다. 이러한 경우, 상기 제 1 변수를 1로 셋팅함으로서 현재 블록의 모션 벡터를 0으로 셋팅할 수 있게 된다.
본 실시예에서는 3개의 이웃 블록을 이용하게 되므로, 결국 3개의 이웃 블록 모두가 인트라 모드로 코딩된 블록이거나 이용할 수 없는 경우, 현재 블록의 참조 픽쳐 인덱스가 유효하지 않은 -1 값을 가질 수 있게 된다. 따라서, 현재 블록의 참조 픽쳐 인덱스가 모두 유효하지 않은 경우 상기 제 1 변수가 1로 셋팅될 수 있다. 즉, 현재 블록이 사용할 참조 픽쳐가 존재하지 않는 경우에 상기 제 1 변수가 1로 셋팅될 수 있다.
앵커 픽쳐 내의 앵커 블록의 모션 정보를 이용하여 제 2 변수를 유도할 수 있다. 상기 제 2 변수는 현재 블록의 모션 벡터를 임의의 값으로 예측하기 위해 이용되는 변수를 의미할 수 있다. 예를 들어, 앵커 블록의 모션 정보가 일정한 조건을 만족하는 경우에 상기 제 2 변수를 1로 셋팅할 수 있다. 그리고, 상기 제 2 변수가 1로 셋팅되는 경우, 현재 블록의 List0 또는 List1 방향에 대한 모션 벡터를 0으로 셋팅할 수 있게 된다. 상기 일정한 조건은 다음과 같을 수 있다. 첫째, List1 방향에 대한 참조 픽쳐 중 가장 작은 참조 인덱스를 가지는 픽쳐가 단기 참조 픽쳐이어야 한다. 둘째, 앵커 블록의 참조하는 픽쳐의 참조 인덱스가 0 이어야 한다. 셋째, 앵커 블록의 모션 벡터의 수평 성분, 수직 성분 크기가 ±1 화소 이하이어야 한다. 이처럼, 상기 일정한 조건을 모두 만족하는 경우에 모션이 거의 없는 영상에 가깝다고 판단하여 현재 블록의 모션 벡터를 0으로 셋팅하는 것이다.
상기 유도된 제 1 변수와 제 2 변수에 기초하여 현재 블록의 모션 정보를 예측할 수 있다. 예를 들어, 상기 제 1 변수가 1로 셋팅될 경우, 현재 블록의 List0 또는 List1 방향에 대한 모션 벡터를 0으로 셋팅할 수 있다. 또한, 상기 제 2 변수를 1로 셋팅할 경우, 현재 블록의 List0 또는 List1 방향에 대한 모션 벡터를 0으로 셋팅할 수 있게 된다. 여기서, 0 또는 1로 셋팅하는 것은 일 실시예일 뿐이며, 상기 제 1 변수 또는 상기 제 2 변수는 다른 일정한 값으로 셋팅하여 이용할 수도 있다.
상기 일정한 조건을 만족하지 않는 경우에는 현재 픽쳐내의 이웃 블록들의 모션 정보로부터 현재 블록의 모션 정보를 유도할 수 있다. 예를 들어, 모션 벡터의 경우, 상기 스킵 매크로 블록의 모션 벡터 유도 방법이 동일하게 적용될 수 있다.
참조 픽쳐 인덱스는 좌측, 상단, 우측 상단에 위치한 모션 벡터의 참조 픽쳐 인덱스 가운데 최소값을 계산하고, 이를 현재 블록의 참조 픽쳐 인덱스로 할 수 있다. 상기 설명한 스킵 모드에 관련된 내용은 이하 현재 블록이 스킵 모드로 코딩되는 경우에 동일하게 적용될 수 있음을 이해하여야 한다.
인트라 예측부(160)는 현재 픽쳐내의 복원된 픽셀을 이용하여 인트라 예측을 수행할 수 있다. 상기 현재 픽쳐내의 복원된 픽셀은 디블록킹 필터링이 적용되지 아니한 픽셀일 수 있다. 상기 예측된 현재 픽쳐와 역변환부로부터 나온 레지듀얼이 더해져서 원래 픽쳐를 복원한다. 인트라 모드에 대해서 자세히 살펴보면, H.264/AVC에서 인트라 예측을 수행하는 블록 단위로 4x4화소, 8x8화소, 16x16화소가 사용될 수 있다. 인트라 4x4 예측은 현재 인트라 4x4 블록을 기준으로 좌측 블록내의 우측 4화소, 상단 블록내의 하단 4화소, 좌측 상단 블록내의 우측 하단 1화소, 우측 상단 블록내의 좌측 하단 1화소를 사용하여 예측 블록내의 4x4화소의 예측값을 획득한다. 이 경우 인트라 예측 모드는 H.264/AVC에서의 9가지 예측 방향 중 가장 적절한 예측 방향을 4x4화소 블록마다 1개씩 선택하고, 선택된 예측 방향에 기초하여 4x4화소의 블록 단위로 예측을 수행한다. 인트라 8x8 예측은 상기 인트라 4x4와 동일한 방식으로 예측을 수행할 수 있다. 인트라 16x16 예측은 현재 매크로 블록을 기준으로 상단 매크로 블록의 하단 16화소, 좌측 매크로 블록의 우측 16화소로부터 수직 예측, 수평 예측, 평균치 예측, 평면 예측의 4가지 방법 중에서 하나를 선택해서 예측을 수행한다.
이하, 앞서 설명한 매크로 블록 타입을 결정하는 구체적인 방법에 대해서 도 2, 도 3 및 도 4를 참조하여 살펴보기로 한다.
도 2는 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 장치를 도시한 것이다.
도 2를 참조하면, 매크로 블록 타입 결정부(200)는 현재 디코딩되는 매크로 블록의 매크로 블록 타입을 인코더부터 전송된 비트스트림으로부터 획득할 수 있다. 이하, 도 3을 참조하여 매크로 블록이 32x32인 경우를 예로 들어 설명하기로 한다.
도 3은 매크로 블록 타입 및 변환 크기 정보를 이용하여 매크로 블록을 디코딩하는 과정을 도시한 블록도이다.
도 3을 참조하면, 매크로 블록에 대한 스킵 매크로 블록 지시 정보를 획득할 수 있다(S300). 상기 스킵 모드 지시 정보라 함은 매크로 블록이 스킵 모드로 코딩되어 있는지 여부를 지시하는 정보일 수 있다. 예를 들어, 상기 스킵 모드 지시 정보가 1인 경우 상기 매크로 블록은 스킵 모드로 코딩됨을 의미할 수 있고, 상기 스킵 모드 지시 정보가 0인 경우 상기 매크로 블록은 스킵 모드로 코딩되지 않음을 의미할 수 있다. 상기 스킵 모드 지시 정보에 따라 상기 매크로 블록이 스킵 모드로 코딩되지 아니한 경우에는 매크로 블록 타입을 획득할 수 있다(S310). I 슬라이스인 경우, 상기 매크로 블록 타입에 따라 상기 매크로 블록은 32x32화소, 16x16화소, 또는 8x8화소의 블록 단위로 인트라 예측될 수 있다.
또는, P 매크로 블록 및 B 매크로 블록과 마찬가지로 서브 매크로 블록 타입을 정의할 수 있으며, 상기 매크로 블록 타입에 기초하여 상기 서브 매크로 블록 타입을 획득할 수 있다(S320).
예를 들어, 상기 매크로 블록 타입이 16x16인 경우, 서브 매크로 블록 타입을 획득할 수 있다. 상기 서브 매크로 블록 타입은 예측 모드 정보와 예측 블록 크기 정보를 포함할 수 있다. 따라서, 상기 서브 매크로 블록 타입에 따라 서브 매크로 블록은 16x16화소, 8x8화소, 또는 4x4화소의 블록 단위로 인트라 예측될 수 있다. 상기 서브 매크로 블록 타입은 예측 모드 정보만을 포함할 수도 있다. 즉, 상기 서브 매크로 블록 타입은 상기 서브 매크로 블록이 인트라 모드로 예측되는지 여부만을 나타낼 수 있다. 이하, 서브 매크로 블록 타입이 예측 모드 정보만을 포함하는 경우, 서브 매크로 블록의 예측 블록의 크기 정보 및 인트라 예측 모드를 획득하는 방법에 대해서 살펴보기로 한다.
인트라 예측부(210)는 예측 블록 크기 결정부(220) 및 인트라 예측 모드 획득부(230)를 포함할 수 있다. 상기 예측 블록 크기 결정부(220)는 상기 서브 매크로 블록 타입에 따라 상기 서브 매크로 블록이 인트라 모드로 예측됨을 나타내는 경우, 변환 크기 정보를 이용하여 예측 블록의 크기 정보를 결정할 수 있다. 상기 인트라 예측 모드 획득부(230)는 상기 서브 매크로 블록의 인트라 예측 모드를 인코더로부터 전송된 비트스트림으로부터 획득할 수 있다(S330).
예를 들어, 상기 서브 매크로 블록 타입에 따라 상기 서브 매크로 블록이 인트라 모드로 예측되는 경우, 상기 서브 매크로 블록에 대한 변환 크기 정보를 획득할 수 있다. 상기 변환 크기 정보라 함은 변환 계수 복호 및 영상 생성 과정을 수행하는 블록 단위를 지시하는 정보일 수 있다. 상기 변환 크기 정보가 4x4화소 블록 단위로 변환 계수 복호 및 영상 생성 과정을 수행함을 지시하는 경우, 상기 서브 매크로 블록의 예측 블록의 크기 정보는 4x4화소로 결정될 수 있고, 상기 서브 매크로 블록은 4x4화소의 블록 단위로 인트라 예측될 수 있다. 상기 변환 크기 정보가 8x8화소, 또는 16x16화소인 경우에도 동일한 방식이 적용될 수 있다.
상기 서브 매크로 블록 타입에 따라 상기 서브 매크로 블록이 인트라 모드로 예측되는 경우, 인트라 예측 모드 참조 정보에 기초하여 상기 서브 매크로 블록의 인트라 예측 모드를 획득할 수 있다. 상기 인트라 예측 모드 참조 정보라 함은 예측 블록을 기준으로 이웃하는 블록의 인트라 예측 모드로부터 상기 예측 블록의 인트라 예측 모드가 유도되는지를 지시하는 정보를 의미할 수 있다.
예를 들어, 상기 서브 매크로 블록 타입에 따라 상기 서브 매크로 블록이 인트라 모드로 예측되는 경우, 상기 인트라 예측 모드 참조 정보를 획득할 수 있다. 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도됨을 지시하는 경우, 상기 예측 블록을 기준으로 좌측 블록 및 우측 블록의 인트라 예측 모드를 이용하여 상기 서브 매크로 블록내의 예측 블록에 대한 인트라 예측 모드를 유도할 수 있다. 상기 유도된 인트라 예측 모드는 좌측 블록의 인트라 예측 모드와 우측 블록의 인트라 예측 모드 중에서 최소값으로 유도될 수 있다. 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도되지 아니함을 지시하는 경우, 상기 서브 매크로 블록내의 예측 블록에 대한 인트라 예측 모드를 파싱할 수 있다. 앞서 설명한 예측 블록의 크기 정보 및 인트라 예측 모드를 획득하는 방법은 이하 인트라 모드로 코딩되는 블록에 대해서 동일하게 적용될 수 있다.
상기 예측 블록의 크기 정보, 인트라 예측 모드, 및 서브 매크로 블록의 이웃 블록내의 픽셀값을 이용하여 상기 서브 매크로 블록을 예측할 수 있다(S350). 복원부(250)는 예측된 매크로 블록과 인코더로부터 전송된 레지듀얼을 더하여 매크로 블록을 복원할 수 있다. 상기 레지듀얼은 본래 매크로 블록의 픽셀값과 예측된 매크로 블록의 픽셀값간의 차분값으로 정의할 수 있다.
인터 예측부(240)는 상기 서브 매크로 블록 타입 정보에 따라 상기 서브 매크로 블록이 인터 모드로 코딩된 경우, 상기 서브 매크로 블록의 모션 정보를 획득할 수 있다(S340).
예를 들어, 상기 서브 매크로 블록 타입은 도 4와 같이 정의할 수 있다. 도 4는 매크로 블록이 32x32인 경우, P 매크로 블록 및 B 매크로 블록의 서브 매크로 블록 타입의 일 실시예를 도시한 테이블이다. 도 4를 참조하면, 상기 서브 매크로 블록 타입이 P_L0_16X8인 경우, 상기 서브 매크로 블록은 2개의 서브 매크로 블록의 파티션을 가지며, 16X8화소의 블록 단위로 인터 예측될 수 있다. 즉, 상기 서브 매크로 블록의 파티션별로 모션 벡터 및 참조 픽쳐 인덱스를 획득할 수 있다. 상기 모션 벡터 및 참조 픽쳐 인덱스를 이용하여 상기 서브 매크로 블록을 예측할 수 있다(S350). 복원부(250)는 예측된 매크로 블록과 인코더로부터 전송된 레지듀얼을 더하여 매크로 블록을 복원할 수 있다.
상기 스킵 모드 지시 정보에 따라 상기 매크로 블록이 스킵 모드로 코딩되는 경우에는 참조 픽쳐 및 참조 블록으로부터 모션 정보를 유도하여 상기 매크로 블록을 예측할 수 있다(S350).
이하, 도 5를 참조하여 16x16 보다 큰 매크로 블록에 대한 매크로 블록 타입을 살펴보기로 한다.
도 5는 매크로 블록이 32x32인 경우 매크로 블록 타입의 일 실시예를 도시한 것이다.
도 5(a)를 참조하면, 매크로 블록이 32x32인 경우, 상기 매크로 블록은 32x32화소, 16x16화소, 또는 8x8화소의 블록 단위로 인트라 예측될 수 있다. 상기 매크로 블록 타입이 인트라 32x32인 경우, 상기 매크로 블록을 기준으로 상단 매크로 블록의 하단 32화소, 좌측 매크로 블록의 우측 32화소로부터 수직 예측, 수평 예측, 평균치 예측, 평면 예측의 4가지 모드 중에서 하나를 획득해서 예측할 수 있다. 상기 매크로 블록 타입이 인트라 16x16인 경우에는 상기 매크로 블록내의 16x16 블록을 기준으로 좌측 블록내의 우측 16화소, 상단 블록내의 하단 16화소, 좌측 상단 블록내의 우측 하단 1화소, 우측 상단 블록내의 좌측 하단 1화소를 사용하여 16x16화소의 예측값을 획득할 수 있다. 이 경우 인트라 예측 모드는 H.264/AVC에서의 9가지 모드 중 가장 적절한 인트라 예측 모드를 16x16화소 블록마다 1개씩 획득할 수 있다. 상기 획득된 인트라 예측 모드에 기초하여 16x16화소의 블록 단위로 예측할 수 있다. 상기 매크로 블록 타입이 인트라 8x8인 경우, 앞서 설명한 인트라 16x16와 동일한 방법으로 예측할 수 있다.
도 5(b)를 참조하면, 매크로 블록이 32x32인 경우, 상기 매크로 블록은 32x32화소, 16x16화소, 또는 8x8화소 이외에 4x4화소의 블록 단위로 인트라 예측될 수도 있으며, 이 경우 앞서 설명한 인트라 16x16와 동일한 방법으로 예측할 수 있다.
도 5(c)를 참조하면, 매크로 블록이 32x32인 경우, 상기 매크로 블록 타입은 인트라 32x32, 인트라 16x16, 또는 인트라 8x8 이외에 인트라 믹스드(I_mixed)를 포함할 수 있다. 상기 매크로 블록 타입이 인트라 믹스드인 경우, 상기 매크로 블록의 파티션에 대한 블록 타입 정보를 획득할 수 있고, 이에 따라 인트라 8x8 또는 인트라 4x4의 블록 단위로 적응적으로 인트라 예측될 수 있다. 상기 매크로 블록의 파티션은 일정한 크기로 분할된 매크로 블록내의 블록을 의미하며, 이는 서브 매크로 블록을 의미할 수도 있다.
도 5(d)를 참조하여, 인트라 믹스드(I_mixed)의 다른 실시예를 살펴보기로 한다. 매크로 블록이 32x32인 경우, I 슬라이스의 매크로 블록 타입으로 인트라 32x32 및 인트라 믹스드를 정의할 수 있다. 상기 매크로 블록 타입이 인트라 믹스드인 경우, 상기 매크로 블록의 파티션에 대하여 인트라 16x16, 인트라 8x8 또는 인트라 4x4의 블록 단위로 적응적으로 인트라 예측될 수 있다. 따라서, 도 5(c)에서와 달리 매크로 블록 타입으로 인트라 16x16 및 인트라 8x8를 이용하지 아니할 수 있다.
이하, I 슬라이스의 매크로 블록 타입을 인트라 NxN (N은 16보다 큰 정수) 및 인트라 믹스드로 정의한 경우, 매크로 블록을 디코딩하는 방법에 대해서 도 6 내지 도 8을 참조하여 살펴보기로 한다.
도 6은 매크로 블록 타입 및 블록 타입 식별 정보를 이용하여 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
매크로 블록 레이어에서 현재 매크로 블록에 대한 매크로 블록 타입을 획득할 수 있다(S600). 상기 매크로 블록 타입이 인트라 믹스드인 경우, 상기 현재 매크로 블록의 파티션에 대하여 블록 타입 식별 정보를 획득할 수 있다(S610). 상기 매크로 블록의 파티션은 일정한 크기로 분할된 매크로 블록내의 블록을 의미한다. 예를 들어, 매크로 블록이 32x32 인 경우, 상기 매크로 블록의 파티션은 4개의 16x16 블록으로 설정할 수 있다. 상기 블록 타입 식별 정보를 이용하여 현재 매크로 블록의 파티션에 대한 블록 타입을 결정할 수 있으며(S620), 이는 도 7을 참조하여 살펴보기로 한다.
도 7은 블록 타입 식별 정보를 이용하여 매크로 블록의 파티션에 대한 블록 타입을 결정하는 방법의 일 실시예를 도시한 블록도이다.
도 7을 참조하면, 매크로 블록의 파티션에 대하여 제 1 블록 타입 식별 정보를 획득할 수 있다(S700). 상기 제 1 블록 타입 식별 정보는 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 4x4인지 여부를 지시하는 정보를 의미할 수 있다. 상기 제 1 블록 타입 식별 정보에 따라 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 4x4인 경우에는 상기 매크로 블록의 파티션은 4x4화소의 블록 단위로 인트라 예측될 수 있다(S720). 상기 제 1 블록 타입 정보에 따라 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 4x4가 아닌 경우에는 제 2 블록 타입 식별 정보를 획득할 수 있다(S710). 상기 제 2 블록 타입 식별 정보는 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 8x8인지 여부를 지시하는 정보를 의미할 수 있다. 상기 제 2 블록 타입 식별 정보에 따라 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 8x8인 경우에는 상기 매크로 블록의 파티션은 8x8화소의 블록 단위로 인트라 예측될 수 있다(S740). 상기 제 2 블록 타입 식별 정보에 따라 상기 매크로 블록의 파티션에 대한 블록 타입이 인트라 8x8가 아닌 경우에는 상기 매크로 블록의 파티션은 16x16화소의 블록 단위로 인트라 예측될 수 있다(S730).
도 6을 참조하면, 상기 현재 매크로 블록의 파티션에 대한 인트라 예측 모드를 획득할 수 있다(S630). 상기 현재 매크로 블록의 파티션에 대한 인트라 예측 모드는 앞서 살펴본 바와 같이 인트라 예측 모드 참조 정보에 기초하여 이웃 블록의 인트라 예측 모드로부터 유도되거나, 비트스트림으로부터 파싱할 수 있다. 예를 들어, 상기 현재 매크로 블록의 파티션이 16x16이고 상기 현재 매크로 블록의 파티션에 대한 블록 타입이 인트라 4x4인 경우, 상기 현재 매크로 블록의 파티션내의 4x4 블록 단위로 인트라 예측 모드를 획득할 수 있다.
다만, 상기 현재 매크로 블록의 매크로 블록 타입이 인트라 믹스가 아닌 경우에는 상기 매크로 블록 타입에 기초하여 상기 현재 매크로 블록을 예측할 수 있다(S650). 이 경우, 상기 매크로 블록 타입은 인트라 예측 모드 및 CBP 정보를 포함할 수 있다. 따라서,상기 매크로 블록 타입에 따른 인트라 예측 모드 및 이웃 블록의 픽셀을 이용하여 상기 현재 매크로 블록의 픽셀값을 예측할 수 있다. 상기 이웃 블록은 상기 현재 매크로 블록에 이전에 복원된 블록을 의미할 수 있다. 예를 들어, 상기 현재 매크로 블록을 기준으로 좌측에 위치한 블록과 상단에 위치한 블록을 의미할 수 있다. 상기 이웃 블록의 픽셀은 디블록킹 필터링이 적용되지 아니한 복원된 픽셀일 수 있다.
다만, 상기 매크로 블록 타입이 인트라 예측 모드 및 CBP 정보를 포함하지 않는 경우에는 별도로 상기 인트라 예측 모드 및 블록 패턴 정보를 획득할 수 있으며, 이는 도 8을 참조하여 살펴보기로 한다.
도 8은 매크로 블록이 인트라 모드로 코딩되는 경우, 매크로 블록의 인트라 예측 모드를 획득하는 방법을 도시한 블록도이다.
도 8을 참조하면, 현재 매크로 블록의 매크로 블록 타입을 획득할 수 있다(S800). 상기 매크로 블록 타입에 따라 상기 현재 매크로 블록이 인트라 모드로 예측되는 경우에는 상기 현재 매크로 블록에 대한 인트라 예측 모드 참조 정보를 획득할 수 있다(S810). 예를 들어, 상기 현재 매크로 블록이 인트라 모드로 예측되는 경우는 상기 매크로 블록 타입이 인트라 NxN 또는 인트라 믹스드인 경우일 수 있다. 상기 인트라 예측 모드 참조 정보는 상기 현재 매크로 블록의 예측 블록 단위로 획득될 수 있다. 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도됨을 지시하는 경우, 상기 예측 블록을 기준으로 좌측 블록 및 우측 블록의 인트라 예측 모드를 이용하여 상기 예측 블록에 대한 인트라 예측 모드를 유도할 수 있다(S820). 상기 유도된 인트라 예측 모드는 좌측 블록의 인트라 예측 모드와 우측 블록의 인트라 예측 모드 중에서 최소값으로 유도될 수 있다. 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도되지 아니함을 지시하는 경우, 상기 예측 블록에 대한 인트라 예측 모드를 비트스트림으로부터 파싱할 수 있다(S840). 상기 인트라 예측 모드 및 이웃 블록의 픽셀을 이용하여 상기 예측 블록의 픽셀을 예측할 수 있다(S830). 상기 이웃 블록은 상기 예측 블록에 이전에 복원된 블록을 의미할 수 있다. 예를 들어, 상기 예측 블록을 기준으로 좌측에 위치한 블록과 상단에 위치한 블록을 의미할 수 있다. 상기 이웃 블록의 픽셀은 디블록킹 필터링이 적용되지 아니한 복원된 픽셀일 수 있다.
상기 매크로 블록 타입에 따라 상기 현재 매크로 블록이 인터 모드로 예측되는 경우, 상기 현재 매크로 블록에 대한 모션 정보를 획득하고(S850), 상기 모션 정보를 이용하여 상기 현재 매크로 블록을 인터 모드로 예측할 수 있다(S860).
이하, 매크로 블록이 경계 매크로 블록에 해당하는 경우 상기 매크로 블록의 매크로 블록 타입을 결정하는 방법에 대해서 살펴보기로 한다.
도 9는 경계 매크로 블록 및 경계 서브 매크로 블록을 도시한 것이다.
도 9를 참조하면, 코딩 영역(coded region)은 디코딩 프로세스에 의해 출력된 프레임을 의미할 수 있다. 출력 영역(output region)은 상기 코딩 영역내에 특정된 사각형 영역을 의미할 수 있고, 좁게는 코딩 영역에서 실제로 디스플레이되는 영역으로 볼 수도 있다. 경계 매크로 블록이라 함은 상기 출력 영역에 속하지 않는 영역을 포함한 매크로 블록을 의미할 수 있고, 넌-경계 매크로 블록이라 함은 상기 출력 영역에 속한 영역만을 포함한 매크로 블록을 의미할 수 있다. 경계 서브 매크로 블록은 상기 경계 매크로 블록내의 서브 매크로 블록으로서, 상기 출력 영역에 속한 영역을 포함한 서브 매크로 블록을 의미할 수 있다. 반대로, 넌-경계 서브 매크로 블록은 상기 경계 매크로 블록내에서 상기 경계 서브 매크로 블록을 제외한 나머지 서브 매크로 블록을 의미할 수 있다. 즉, 상기 경계 매크로 블록내의 서브 매크로 블록으로서, 상기 출력 영역에 속한 영역을 포함하지 않는 서브 매크로 블록을 의미할 수 있다.
도 10은 I슬라이스의 경우, 경계 매크로 블록내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 10을 참조하면, 영상 시퀀스에 대한 프레임 오프셋 정보를 획득할 수 있다(S1000). 상기 프레임 오프셋 정보라 함은 영상 시퀀스의 픽쳐내의 샘플들로서, 프레임내의 특정 영역에 속한 샘플들을 특정하는 정보를 의미할 수 있다. 또는, 상기 출력 영역에 속한 샘플을 특정하는 정보를 의미할 수 있다. 상기 프레임 오프셋 정보를 이용하여 프레임내의 경계 매크로 블록을 특정할 수 있다(S1010). 상기 프레임 오프셋 정보에 따라 현재 매크로 블록이 경계 매크로 블록에 해당하는 경우, 상기 현재 매크로 블록의 매크로 블록 타입은 인트라 믹스드로 설정할 수 있다(S1020). 이 경우, 상기 프레임 오프셋 정보에 기초하여 상기 현재 매크로 블록의 파티션이 경계 서브 매크로 블록인지를 특정할 수 있다. 상기 현재 매크로 블록의 파티션이 경계 서브 매크로 블록인 경우에는 도 7에서 살명한 바와 같이 블록 타입 식별 정보를 이용하여 경계 서브 매크로 블록 타입을 결정할 수 있으며(S1050), 상기 경계 서브 매크로 블록 타입에 따라 상기 경계 서브 매크로 블록의 인트라 예측 모드를 획득할 수 있다(S1060). 상기 인트라 예측 모드 및 상기 경계 서브 매크로 블록의 이웃 블록내 픽셀값을 이용하여 상기 경계 서브 매크로 블록의 픽셀값을 예측할 수 있다(S1040). 그러나, 상기 현재 서브 매크로 블록이 넌-경계 서브 매크로 블록인 경우에는 상기 현재 서브 매크로 블록은 일정 크기의 블록 단위로 인트라 예측될 수 있다. 예를 들어, 상기 현재 매크로 블록이 32x32인 경우, 상기 현재 서브 매크로 블록의 블록 타입은 인트라 16x16으로 설정할 수 있다. 또한, 상기 현재 서브 매크로 블록이 휘도 계수를 가지는지 여부를 나타내는 CBP(Coded Block Pattern) 정보는 0으로 설정할 수 있다.
한편, 상기 현재 서브 매크로 블록이 넌-경계 서브 매크로 블록인 경우에는 상기 현재 서브 매크로 블록의 인트라 예측 모드를 별도로 획득하지 아니하고, 상기 현재 서브 매크로 블록의 위치 정보에 기초하여 9가지 인트라 예측 모드 중에서 가장 효율적인 모드를 상기 현재 서브 매크로 블록의 인트라 예측 모드로 설정할 수 있다(S1030). 상기 현재 서브 매크로 블록은 현재 프레임내에서 좌측, 우측, 상단, 하단, 좌측 상단, 좌측 하단, 우측 상단, 또는 우측 하단에 위치할 수 있으며, 상기 위치에 따른 상기 현재 서브 매크로 블록의 이웃 블록을 고려하여 인트라 예측 모드를 결정할 수 있다. 상기 이웃 블록은 상기 현재 서브 매크로 블록에 인접한 블록으로서, 상기 현재 서브 매크로 블록에 앞서 복원된 픽셀값을 가지는 블록을 의미할 수 있다. 구체적인 실시예는 도 11을 참조하여 살펴보기로 한다. 상기 인트라 예측 모드 및 상기 넌-경계 서브 매크로 블록의 이웃 블록내 픽셀값을 이용하여 상기 넌-경계 서브 매크로 블록의 픽셀값을 예측할 수 있다(S1040).
도 11은 넌-경계 서브 매크로 블록의 인트라 예측 모드를 설정하는 방법의 일실시예를 도시한 것이다.
도 11(a)를 참조하면, 넌-경계 서브 매크로 블록이 프레임내의 우측에 위치하는 경우, 상기 넌-경계 서브 매크로 블록의 좌측 서브 매크로 블록은 복원된 픽셀값을 가지는 바, 9가지 인트라 예측 모드 중에서 수평 예측를 이용하여 상기 넌-경계 서브 매크로 블록을 예측함이 효율적일 수 있다.
도 11(b)를 참조하면, 넌-경계 서브 매크로 블록이 프레임내의 하단에 위치하는 경우, 9가지 인트라 예측 모드 중에서 수직 예측을 이용하여 상기 넌-경계 서브 매크로 블록을 예측함이 효율적일 수 있다.
도 11(c)를 참조하면, 넌-경계 서브 매크로 블록이 프레임내의 우측 하단에 위치하는 경우, 수직 예측 및 수평 예측을 이용하여 상기 넌-경계 서브 매크로 블록을 예측할 수 있다. 즉, 인덱스가 1인 넌-경계 서브 매크로 블록은 인덱스가 0인 경계 서브 매크로 블록이 좌측에 위치하는 바, 수평 예측을 인트라 예측 모드로 설정할 수 있다. 인덱스가 2인 넌-경계 서브 매크로 블록은 인덱스가 0인 경계 서브 매크로 블록이 상단에 위치하는 바, 수직 예측을 인트라 예측 모드로 설정할 수 있고, 인덱스가 3인 넌-경계 서브 매크로 블록은 인덱스가 1인 넌-경계 서브 매크로 블록이 상단에 위치하는 바, 수직 예측을 인트라 예측 모드로 설정할 수 있다. 그 밖의 경우에는 넌-경계 서브 매크로 블록의 인트라 예측 모드를 평균 예측으로 설정할 수 있다.
상기 설정된 인트라 예측 모드 및 상기 넌-경계 서브 매크로 블록의 이웃 블록의 복원된 픽셀값을 이용하여 상기 넌-경계 서브 매크로 블록의 픽셀값을 예측할 수 있다(S1030).
도 12는 P/B슬라이스의 경우, 경계 매크로 블록내의 서브 매크로 블록을 디코딩하는 방법을 도시한 블록도이다.
도 12를 참조하면, 영상 시퀀스에 대한 프레임 오프셋 정보를 획득할 수 있다(S1200). 앞서 설명한 바와 같이 상기 프레임 오프셋 정보를 이용하여 프레임내의 경계 매크로 블록을 특정할 수 있다(S1205).
상기 프레임 오프셋 정보에 따라 현재 매크로 블록이 넌-경계 매크로 블록에 해당하는 경우, 슬라이스 헤더에서 스킵 모드 지시 정보를 획득할 수 있다(S1210). 상기 스킵 모드 지시 정보에 따라 상기 현재 매크로 블록이 스킵 모드로 코딩되는 경우에는 모션 정보, 참조 픽쳐 인덱스 등을 획득하지 아니하며, 참조 블록으로부터 모션 정보 및 참조 픽쳐 인덱스를 유도할 수 있다(S1215). 상기 유도된 모션 정보 및 참조 픽쳐 인덱스를 이용하여 상기 현재 매크로 블록을 예측할 수 있다(S1230). 상기 스킵 모드 지시 정보에 따라 상기 현재 매크로 블록이 스킵 모드로 코딩되지 아니하는 경우에는 매크로 블록 레이어에서 매크로 블록 타입을 획득할 수 있다(S1220). 상기 매크로 블록 타입에 따른 상기 현재 매크로 블록의 파티션에 대하여 모션 정보를 획득할 수 있고(S1225), 상기 모션 정보에 기초하여 상기 현재 매크로 블록을 예측할 수 있다(S1230).
상기 프레임 오프셋 정보에 따라 현재 매크로 블록이 경계 매크로 블록에 해당하는 경우, 상기 현재 매크로 블록의 매크로 블록 타입 정보는 디코더로 전송되지 아니하며, 슬라이스 타입을 고려하여 설정될 수 있다(S1235). 상기 현재 매크로 블록의 매크로 블록 타입 정보는 상기 현재 매크로 블록의 파티션 정보를 포함하며, 상기 현재 매크로 블록의 파티션 정보는 인터 예측을 수행하는 블록 단위를 의미할 수 있다.
상기 현재 매크로 블록이 32x32인 경우를 예로 들어 설명하면, 슬라이스 타입이 P슬라이스인 경우에는 P_16x16, P_32x16, 또는 P_16x32로 설정될 수 있고, 슬라이스 타입이 B슬라이스인 경우에는 B_16x16, B_32x16, 또는 B_16x32로 설정될 수 있다. 추가적으로, 경계 매크로 블록의 위치를 고려하여 상기 현재 매크로 블록의 매크로 블록 타입을 결정할 수도 있으며, 이는 도 13을 참조하여 설명하기로 한다.
도 13은 P/B슬라이스내의 경계 매크로 블록의 위치에 따라 매크로 블록 타입을 결정하는 방법을 도시한 것이다.
도 13(a)를 참조하면, 경계 매크로 블록이 프레임내의 좌측 또는 우측에 위치하는 경우, 상기 경계 매크로 블록의 매크로 블록 타입은 슬라이스 타입을 고려하여 P_16x32 또는 B_16x32로 설정될 수 있다.
도 13(b)를 참조하면, 경계 매크로 블록이 프레임내의 상단 또는 하단에 위치하는 경우, 상기 경계 매크로 블록의 매크로 블록 타입은 슬라이스 타입을 고려하여 P_32x16 또는 B_32x16으로 설정될 수 있다.
상기 현재 매크로 블록이 상기 경계 매크로 블록에 해당하는 경우, 상기 프레임 오프셋 정보를 이용하여 상기 현재 매크로 블록의 파티션에 대하여 경계 서브 매크로 블록인지 여부를 특정할 수 있다(S1240). 상기 현재 매크로 블록의 파티션은 현재 서브 매크로 블록과 동일한 의미로 해석될 수도 있다. 상기 현재 매크로 블록의 파티션이 경계 서브 매크로 블록인 경우에는 서브 매크로 블록 레이어에서 상기 현재 매크로 블록의 파티션에 대한 블록 타입을 획득하고(S1245), 상기 블록 타입에 기초하여 상기 현재 매크로 블록의 파티션에 대한 모션 정보를 획득할 수 있다(S1250). 상기 획득된 모션 정보를 이용하여 상기 현재 매크로 블록의 파티션을 예측할 수 있다(S1255).
상기 현재 매크로 블록의 파티션이 넌-경계 서브 매크로 블록인 경우에는 상기 현재 매크로 블록의 파티션은 스킵 모드를 이용하여 코딩되는 것으로 설정할 수 있다(S1260). 따라서, 상기 현재 매크로 블록의 파티션은 참조 블록으로부터 모션 정보를 유도하고, 상기 유도된 모션 정보에 기초하여 인터 예측을 수행할 수 있다(S1265).
본 발명은 비디오 신호를 인코딩하고 디코딩하는 데 적용될 수 있다.
Claims (11)
- 현재 매크로 블록의 매크로 블록 타입을 획득하는 단계;
상기 현재 매크로 블록 타입이 인트라 믹스드인 경우, 상기 현재 매크로 블록의 파티션에 대한 블록 타입 식별 정보를 획득하는 단계;
상기 블록 타입 식별 정보에 기초하여 상기 현재 매크로 블록의 파티션의 블록 타입을 특정하는 단계;
상기 현재 매크로 블록의 파티션의 블록 타입에 따라 상기 현재 매크로 블록의 인트라 예측 모드를 획득하는 단계; 및
상기 인트라 예측 모드 및 이웃 블록의 픽셀값을 이용하여 상기 현재 매크로 블록을 예측하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 처리 방법. - 제 1항에 있어서, 상기 블록 타입 식별 정보는 상기 현재 매크로 블록의 파티션의 예측 모드 및 예측 블록의 크기를 특정하는 정보인 것을 특징으로 하는 비디오 신호 처리 방법.
- 제 1항에 있어서, 상기 인트라 예측 모드를 획득하는 단계는
상기 현재 매크로 블록의 파티션의 블록 타입에 기초하여 인트라 예측 모드 참조 정보를 획득하는 단계를 더 포함하되,
상기 인트라 예측 모드 참조 정보라 함은 예측 블록을 기준으로 이웃하는 블록의 인트라 예측 모드로부터 상기 예측 블록의 인트라 예측 모드가 유도되는지를 지시하는 정보인 것을 특징으로 하는 비디오 신호 처리 방법. - 제 3항에 있어서, 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도됨을 지시하는 경우, 상기 현재 매크로 블록의 인트라 예측 모드는 이웃 블록의 인트라 예측 모드로부터 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.
- 제 4항에 있어서, 상기 이웃 블록이라 함은 상기 예측 블록을 기준으로 좌측 블록 및 우측 블록을 포함하며, 상기 현재 매크로 블록의 인트라 예측 모드는 상기 좌측 블록의 인트라 예측 모드와 상기 우측 블록의 인트라 예측 모드 중에서 최소값으로 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.
- 제 3항에 있어서, 상기 인트라 예측 모드 참조 정보가 이웃 블록의 인트라 예측 모드로부터 예측 블록의 인트라 예측 모드가 유도되지 아니함을 지시하는 경우, 상기 현재 매크로 블록의 인트라 예측 모드를 파싱하는 단계를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.
- 영상 시퀀스에 대한 프레임 오프셋 정보를 획득하되, 상기 프레임 오프셋 정보라 함은 영상 시퀀스의 픽쳐 내의 샘플들로서, 프레임 내의 특정 영역에 속한 샘플들을 특정하는 정보인 단계;
상기 프레임 오프셋 정보를 이용하여 현재 매크로 블록이 경계 매크로 블록에 해당하는 여부를 특정하되, 경계 매크로 블록이라 함은 상기 출력 영역에 속하지 않는 영역을 포함한 매크로 블록인 단계;
상기 프레임 오프셋 정보에 따라 상기 현재 매크로 블록이 경계 매크로 블록에 해당하는 경우, 슬라이스 타입을 고려하여 상기 현재 매크로 블록의 매크로 블록 타입을 유도하는 단계를 포함하되,
상기 출력 영역은 상기 코딩 영역 내에 특정된 사각형 영역이며, 상기 코딩 영역은 디코딩 프로세스에 의해 출력된 프레임인 것을 특징으로 하는 비디오 신호 처리 방법. - 제 7항에 있어서, 상기 매크로 블록 타입에 따라 상기 현재 매크로 블록이 인트라 모드로 코딩된 경우, 넌-경계 서브 매크로 블록에 대한 예측 블록의 크기 정보, CBP 정보, 및 인트라 예측 모드를 유도하는 단계를 더 포함하되,
상기 넌-경계 서브 매크로 블록은 상기 경계 매크로 블록의 서브 매크로 블록으로서, 상기 출력 영역에 속한 영역을 포함하지 않는 서브 매크로 블록이며, 상기 인트라 예측 모드는 수평 예측, 수직 예측, 평균 예측을 포함하는 것을 특징으로 하는 비디오 신호 처리 방법. - 제 8항에 있어서, 상기 CBP 정보는 0으로 설정되며, 상기 인트라 예측 모드는 상기 넌-경계 서브 매크로 블록의 현재 프레임 내에서의 위치를 고려하여 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.
- 제 9항에 있어서, 상기 넌-경계 서브 매크로 블록이 상기 현재 프레임 내의 좌측 또는 상단에 위치하는 경우, 상기 인트라 예측 모드는 평균 예측으로 유도되며, 상기 넌-경계 서브 매크로 블록이 상기 현재 프레임 내의 우측에 위치하는 경우, 상기 인트라 예측 모드는 수평 예측으로 유도되고, 상기 넌-경계 서브 매크로 블록이 상기 현재 프레임 내의 하단에 위치하는 경우, 상기 인트라 예측 모드는 수직 예측으로 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.
- 제 7항에 있어서, 상기 매크로 블록 타입에 따라 상기 현재 매크로 블록이 인터 모드로 코딩된 경우, 넌-경계 서브 매크로 블록은 스킵 모드로 코딩되는 것을 특징으로 하는 비디오 신호 처리 방법.
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2010/003006 WO2010131903A2 (en) | 2009-05-12 | 2010-05-12 | Method and apparatus for processing a video signal |
US12/778,327 US9113168B2 (en) | 2009-05-12 | 2010-05-12 | Method and apparatus of processing a video signal |
US14/694,280 US9819954B2 (en) | 2009-05-12 | 2015-04-23 | Method and apparatus for decoding a video signal |
US15/730,229 US10306252B2 (en) | 2009-05-12 | 2017-10-11 | Method and apparatus for decoding a video signal |
US16/380,345 US10880563B2 (en) | 2009-05-12 | 2019-04-10 | Method and apparatus for decoding a video signal |
US17/107,083 US11240520B2 (en) | 2009-05-12 | 2020-11-30 | Method and apparatus for decoding a video signal |
US17/563,914 US11665360B2 (en) | 2009-05-12 | 2021-12-28 | Method and apparatus for decoding a video signal |
US18/136,170 US11930201B2 (en) | 2009-05-12 | 2023-04-18 | Method and apparatus for decoding a video signal |
US18/435,754 US20240223791A1 (en) | 2009-05-12 | 2024-02-07 | Method and apparatus for decoding a video signal |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17763809P | 2009-05-12 | 2009-05-12 | |
US61/177,638 | 2009-05-12 | ||
US22625209P | 2009-07-16 | 2009-07-16 | |
US61/226,252 | 2009-07-16 | ||
US25631809P | 2009-10-30 | 2009-10-30 | |
US61/256,318 | 2009-10-30 | ||
US26136009P | 2009-11-15 | 2009-11-15 | |
US61/261,360 | 2009-11-15 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170063952A Division KR101775533B1 (ko) | 2009-05-12 | 2017-05-24 | 비디오 신호 처리 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100122450A true KR20100122450A (ko) | 2010-11-22 |
KR101742992B1 KR101742992B1 (ko) | 2017-06-02 |
Family
ID=43407388
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100043470A KR101742992B1 (ko) | 2009-05-12 | 2010-05-10 | 비디오 신호 처리 방법 및 장치 |
KR1020170063952A KR101775533B1 (ko) | 2009-05-12 | 2017-05-24 | 비디오 신호 처리 방법 및 장치 |
KR1020170109981A KR101821217B1 (ko) | 2009-05-12 | 2017-08-30 | 비디오 신호 처리 방법 및 장치 |
KR1020180005837A KR101931950B1 (ko) | 2009-05-12 | 2018-01-17 | 비디오 신호 처리 방법 및 장치 |
KR1020180163070A KR101984605B1 (ko) | 2009-05-12 | 2018-12-17 | 비디오 신호 처리 방법 및 장치 |
KR1020190059980A KR102037327B1 (ko) | 2009-05-12 | 2019-05-22 | 비디오 신호 처리 방법 및 장치 |
KR1020190131338A KR102168120B1 (ko) | 2009-05-12 | 2019-10-22 | 비디오 신호 처리 방법 및 장치 |
Family Applications After (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170063952A KR101775533B1 (ko) | 2009-05-12 | 2017-05-24 | 비디오 신호 처리 방법 및 장치 |
KR1020170109981A KR101821217B1 (ko) | 2009-05-12 | 2017-08-30 | 비디오 신호 처리 방법 및 장치 |
KR1020180005837A KR101931950B1 (ko) | 2009-05-12 | 2018-01-17 | 비디오 신호 처리 방법 및 장치 |
KR1020180163070A KR101984605B1 (ko) | 2009-05-12 | 2018-12-17 | 비디오 신호 처리 방법 및 장치 |
KR1020190059980A KR102037327B1 (ko) | 2009-05-12 | 2019-05-22 | 비디오 신호 처리 방법 및 장치 |
KR1020190131338A KR102168120B1 (ko) | 2009-05-12 | 2019-10-22 | 비디오 신호 처리 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (7) | KR101742992B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013005962A3 (ko) * | 2011-07-01 | 2013-03-14 | 삼성전자 주식회사 | 단일화된 참조가능성 확인 과정을 통해 인트라 예측을 수반하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
KR20140092756A (ko) * | 2011-11-02 | 2014-07-24 | 파나소닉 주식회사 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및, 동화상 부호화 복호 장치 |
WO2017043949A1 (ko) * | 2015-09-11 | 2017-03-16 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
US10939119B2 (en) | 2011-11-09 | 2021-03-02 | Sk Telecom Co., Ltd. | Method and apparatus for encoding and decoding video using skip mode |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010131903A2 (en) | 2009-05-12 | 2010-11-18 | Lg Electronics Inc. | Method and apparatus for processing a video signal |
KR101742992B1 (ko) * | 2009-05-12 | 2017-06-02 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
KR20190114913A (ko) * | 2018-03-29 | 2019-10-10 | 세종대학교산학협력단 | 디코더 사이드 움직임 유도 기반의 영상 부호화/복호화 방법 및 장치 |
MX2022005385A (es) | 2019-11-05 | 2022-07-11 | Lg Electronics Inc | Método y dispositivo para procesar información de imagen para la codificación de imágenes/video. |
CN117413515A (zh) * | 2021-06-24 | 2024-01-16 | Oppo广东移动通信有限公司 | 编解码方法、编码器、解码器以及计算机存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101742992B1 (ko) * | 2009-05-12 | 2017-06-02 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
-
2010
- 2010-05-10 KR KR1020100043470A patent/KR101742992B1/ko active IP Right Grant
-
2017
- 2017-05-24 KR KR1020170063952A patent/KR101775533B1/ko active IP Right Grant
- 2017-08-30 KR KR1020170109981A patent/KR101821217B1/ko active IP Right Grant
-
2018
- 2018-01-17 KR KR1020180005837A patent/KR101931950B1/ko active IP Right Grant
- 2018-12-17 KR KR1020180163070A patent/KR101984605B1/ko active IP Right Grant
-
2019
- 2019-05-22 KR KR1020190059980A patent/KR102037327B1/ko active IP Right Grant
- 2019-10-22 KR KR1020190131338A patent/KR102168120B1/ko active IP Right Grant
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9578329B2 (en) | 2011-07-01 | 2017-02-21 | Samsung Electronics Co., Ltd. | Video encoding method with intra prediction using checking process for unified reference possibility, video decoding method and device thereof |
WO2013005962A3 (ko) * | 2011-07-01 | 2013-03-14 | 삼성전자 주식회사 | 단일화된 참조가능성 확인 과정을 통해 인트라 예측을 수반하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
KR20140093200A (ko) * | 2011-07-01 | 2014-07-25 | 삼성전자주식회사 | 단일화된 참조가능성 확인 과정을 통해 인트라 예측을 수반하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
AU2012278478B2 (en) * | 2011-07-01 | 2015-09-24 | Samsung Electronics Co., Ltd. | Video encoding method with intra prediction using checking process for unified reference possibility, video decoding method and device thereof |
KR20200103121A (ko) * | 2011-11-02 | 2020-09-01 | 타지반 투 엘엘씨 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및, 동화상 부호화 복호 장치 |
KR20190133279A (ko) * | 2011-11-02 | 2019-12-02 | 타지반 투 엘엘씨 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및, 동화상 부호화 복호 장치 |
KR20140092756A (ko) * | 2011-11-02 | 2014-07-24 | 파나소닉 주식회사 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및, 동화상 부호화 복호 장치 |
US10939119B2 (en) | 2011-11-09 | 2021-03-02 | Sk Telecom Co., Ltd. | Method and apparatus for encoding and decoding video using skip mode |
US11425392B2 (en) | 2011-11-09 | 2022-08-23 | Sk Telecom Co., Ltd. | Method and apparatus for encoding and decoding video using skip mode |
WO2017043949A1 (ko) * | 2015-09-11 | 2017-03-16 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
GB2557544A (en) * | 2015-09-11 | 2018-06-20 | Kt Corp | Method and device for processing video signal |
US10554969B2 (en) | 2015-09-11 | 2020-02-04 | Kt Corporation | Method and device for processing video signal |
GB2557544B (en) * | 2015-09-11 | 2021-12-01 | Kt Corp | Method and device for processing video signal |
US11297311B2 (en) | 2015-09-11 | 2022-04-05 | Kt Corporation | Method and device for processing video signal |
Also Published As
Publication number | Publication date |
---|---|
KR20170102846A (ko) | 2017-09-12 |
KR101775533B1 (ko) | 2017-09-06 |
KR101821217B1 (ko) | 2018-01-23 |
KR20180136925A (ko) | 2018-12-26 |
KR102168120B1 (ko) | 2020-10-20 |
KR20190058427A (ko) | 2019-05-29 |
KR101931950B1 (ko) | 2018-12-24 |
KR20190122617A (ko) | 2019-10-30 |
KR20180009373A (ko) | 2018-01-26 |
KR101742992B1 (ko) | 2017-06-02 |
KR20170061649A (ko) | 2017-06-05 |
KR101984605B1 (ko) | 2019-05-31 |
KR102037327B1 (ko) | 2019-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102436983B1 (ko) | 비디오 신호 처리 방법 및 장치 | |
KR102037327B1 (ko) | 비디오 신호 처리 방법 및 장치 | |
KR101269116B1 (ko) | 인터 예측 부호화된 동영상 복호화 방법 | |
KR102081945B1 (ko) | 비디오 신호 처리 방법 및 장치 | |
KR20180018591A (ko) | 영상 복호화 장치 | |
KR101691553B1 (ko) | 영상 복호화 방법 및 장치 | |
KR101882949B1 (ko) | 영상 부호화 방법 및 장치, 및 컴퓨터로 판독가능한 기록매체 | |
KR101783965B1 (ko) | 영상 복호화 방법 및 장치 | |
KR102333745B1 (ko) | 비디오 신호 처리 방법 및 장치 | |
KR101617796B1 (ko) | 영상 복호화 방법 및 장치 | |
KR20130065673A (ko) | 움직임 벡터를 복호화하는 장치 | |
KR101606812B1 (ko) | 영상 복호화 방법 | |
KR20130065672A (ko) | 움직임 벡터를 복호화하는 방법 | |
KR20130062960A (ko) | 움직임 벡터를 복호화하는 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |