KR100701129B1 - 영상 부호화기에서 고속 블록 모드 결정 방법 - Google Patents
영상 부호화기에서 고속 블록 모드 결정 방법 Download PDFInfo
- Publication number
- KR100701129B1 KR100701129B1 KR1020050090726A KR20050090726A KR100701129B1 KR 100701129 B1 KR100701129 B1 KR 100701129B1 KR 1020050090726 A KR1020050090726 A KR 1020050090726A KR 20050090726 A KR20050090726 A KR 20050090726A KR 100701129 B1 KR100701129 B1 KR 100701129B1
- Authority
- KR
- South Korea
- Prior art keywords
- mode
- block mode
- motion
- skip
- inter
- 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/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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
영상 부호화기에서 고속 블록 모드 결정 방법이 개시된다. 영상 부호화기에서 움직임 추정을 통해 부호화를 위한 블록 모드를 결정하는 본 발명에 따른 고속 블록 모드 결정 방법은 이웃한 프레임간의 움직임을 고려하여 적응적 임계값을 구하는 (a)단계, 적응적 임계값을 이용하여, 입력된 16x16 매크로 블록을 SKIP 블록 모드로 할 것인가를 판별하는 (b)단계, (b)단계에서 SKIP 블록 모드로 판별되면 SKIP 블록 모드에 대한 움직임 검색을 통해 부호화 코스트를 구하고, SKIP 블록 모드로 판별되지 않으면 가변 블록 모드에 대한 움직임 검색을 통해 가변 블록 모드 각각에 대한 부호화 코스트를 구하는 (c)단계, 공간 예측 모드에 대한 움직임 검색을 통해 공간 예측 모드 각각에 대한 부호화 코스트를 구하는 (d)단계 및 (c)단계 및 (d)단계에서 구한 부호화 코스트를 비교하여 최소의 부호화 코스트를 갖는 블록 모드를 16x16 매크로 블록의 움직임 추정을 위한 최종 블록 모드로 결정하는 (e)단계를 포함하는 것을 특징으로 하며, 움직임 예측을 위한 블록 모드 결정시 가변 블록 모드에 대한 움직임 검색에 앞서 SKIP 블록 모드 여부를 먼저 판정하고, SKIP 블록 모드로 판정된 블록에 대해서는 가변 블록 모드로 움직임을 검색하는 과정을 생략할 수 있으므로 보다 적은 계산량으로 빠르게 블록 모드를 결정할 수 있다.
Description
도 1은 입력 비디오 신호를 압축하는 동작을 설명하기 위한 블록 기반의 영상 부호화기를 개략적으로 나타내는 블록도이다.
도 2는 H.264와 같이 움직임 검색을 하기 위한 다양한 블록 모드를 나타내는 도면이다.
도 3은 종래의 블록 모드 결정을 위한 움직임 검색 과정을 구체적으로 보이는 흐름도이다.
도 4는 전술된 바와 같은 SKIP 블록 모드의 특성을 이용한 본 발명에 따른 고속 블록 모드 결정 방법의 일실시예를 나타내는 흐름도이다.
본 발명은 영상 부호화기에 관한 것으로, 특히, 움직임 추정을 통해 부호화를 위한 블록 모드를 결정하는 고속 블록 모드 결정 방법에 관한 것이다.
도 1은 입력 비디오 신호를 압축하는 동작을 설명하기 위한 블록 기반의 영상 부호화기를 개략적으로 나타내는 블록도이다. 도 1에 도시된 영상 부호화기는 블록 단위화부(10), 감산부(20), 블록 이산 코사인 변환기(블록 DCT, 30), 양자화기 (40), 가변 길이 부호화기(50), 멀티플렉서(60), 움직임 보상기(70), 역 양자화/IDCT(80), 움직임 추정기(110), 프레임 메모리(100) 및 가산기(90)를 포함하여 구성된다.
도 1을 참조하여, 블록 단위화부(10)는 비디오 입력의 매 프레임을 블록 단위로 분할한다. 감산기(20)는 블록 단위화부(10)에서 제공되는 현재 프레임 I(t)으로부터 움직임 보상기(70)에서 제공되는 프레임 I(t')을 감산한다. 블록 DCT(30)는 감산기(20)에서 감산된 결과를 이산 코사인 변환하고, 양자화기(40)는 블록 DCT(30)에서 변환된 계수들을 양자화한다. 가변길이 부호화기(50)는 양자화기(40)에서 양자화된 값을 가변길이 코딩을 수행하여 압축 스트림으로 생성한다. 한편, 역 양자화기/IDCT(80)는 양자화기(40)에서 양자화된 값을 역 양자화 및 역 이산 코사인 변환을 수행하며, 가산기(90)는 역 양자화 및 역 이산 코사인 변환결과를 움직임 보상기(70)에서 제공되는 프레임에 가산한다. 프레임 메모리(100)는 가산기(90)에서 가산된 결과를 이전 프레임 I(t-1)으로서 저장한다. 움직임 추정기(110)는 프레임 메모리(100)에 저장된 이전 프레임 I(t-1)과 현재 프레임 I(t) 간의 화소값 비교를 통해 움직임 벡터(MV)를 예측한다. 움직임 보상기(70)는 움직임 예측기(110)에서 제공되는 움직임 벡터(MV)를 프레임 메모리(100)로부터 제공되는 이전 프레임 I(t-1)에 적용하여 새로운 프레임 I(t')을 생성한다. 멀티-플렉서(60)는 가변길이 부호화기(50)에서 생성되는 영상 데이터 또는 움직임 추정기(110)에서 생성되는 움직임 벡터(MV)를 멀티 플렉싱한다.
한편, 현재의 영상 압축 표준들은 구현의 용이성 때문에 블록 기반의 정합 알고리즘을 움직임 추정기(110)에 적용하여 움직임 벡터(MV)를 검출한다. 이경우, 두 프레임간의 상관성을 최대로 제거함으로써 전송해야 할 데이터를 줄일 수 있다. 영상 신호의 압축 표준 중 하나인 H.264는, 움직임 추정기가 현재 입력되는 매크로 블록을 다양한 블록 모드로 움직임 검색을 하고, 그 중 부호화 효율이 가장 높은 블록 모드를 매크로 블록의 최종적인 블록 모드로 선택하므로, 부호화 효율에 있어 많은 이득을 제공한다. 그리고 복수개의 참조영상을 지원하기 때문에 현재 블록과 중복성이 가장 많은 프레임의 블록을 참조영상으로 선택하여 이전 프레임만을 참조영상으로 사용할때보다 더욱 큰 부호화 효율을 얻을 수 있다.
도 2는 H.264와 같이 움직임 검색을 하기 위한 다양한 블록 모드를 나타내는 도면이다. H.264에서는 도 2에 도시된 인터 모드(Inter16x16, Inter16x8, Inter8x16, P8x8)와 인트라 모드(INT16x16, INT4x4), 그리고 SKIP 블록 모드 등 7가지의 가능한 블록 모드 중 부호화 코스트가 최소가 되는 블록 모드를 최종적인 매크로 블록의 블록 모드로 결정한다. 여기서, 부호화 코스트는 화질의 열화와 비트량을 고려한 율-왜곡 최적화 함수값이다.
도 3은 종래의 블록 모드 결정을 위한 움직임 검색 과정을 구체적으로 보이는 흐름도이다.
도 2 및 도 3을 참조하여, 종래의 블록 모드 결정 과정을 설명한다. H.264에서는 매크로 블록의 블록 모드를 결정하기 위한 움직임 검색시, 인터 모드에 대해 검색을 수행한 후 인트라 모드, SKIP 블록 모드에 대해 검색을 수행한다. 먼저, 인 터 모드는 하나의 16x16 매크로 블록을 16x16 블록으로 움직임 검색을 수행하여 Inter 16x16 모드에 대한 부호화 코스트를 구한(제300단계) 후, 16x8 블록으로 나누어 움직임 검색을 수행하여 Inter 16x8 모드에 대한 부호화 코스트를 구한다(제310단계). 그런 다음, 16x16 매크로 블록을 8x16 블록으로 나누어 움직임 검색을 수행하여 Inter 8x16 모드에 대한 부호화 코스트를 구한(제320단계) 후, 8x8 블록으로 나누어 움직임 검색을 수행하여 부호화 코스트를 구한다(제330단계). 제330단계는 구체적으로, 매크로 블록을 8x8 블록으로 나누어 움직임 검색을 수행하여 P8x8 모드에 대한 부화화 코스트를 구하는 단계(제332단계), 8x4 블록으로 나누어 움직임 검색을 수행하여 Inter 8x4에 대한 부화화 코스트를 구하는 단계(제334단계), 4x8블록으로 나누어 움직임 검색을 수행하여 Inter 4x8 모드에 대한 부화화 코스트를 구하는 단계 및 4x4 블록으로 나누어 움직임 검색을 수행하여 Inter 4x4 모드에 대한 부화화 코스트를 구하는 단계(제338단계)를 수행한다. 이상에서와 같이, 다양한 가변 블록 크기로 움직임 검색을 하면 영상의 특성과 움직임에 따라서 영상을 효과적으로 부호화 할 수 있다. 예컨대, 영상의 움직임이 적고 물체가 큰 경우 큰 블록 크기로, 영상의 움직임이 많고 물체가 작을 경우 작은 블록 크기로 움직임 추정 및 부호화 하는 것이 효과적이다.
계속해서, 인터 모드에 대한 움직임 검색이 완료되면 인트라 모드 즉, Intra 4x4, Intra 16x16 및 SKIP 블록 모드로 움직임 검색을 수행하여 각각에 대한 부호화 코스트를 구한다(제340~360단계). 여기서 SKIP 블록 모드는 움직임 벡터가 원점(0,0) 또는 Inter 16x16 모드의 움직임 벡터를 가지며 DCT 및 양자화 후 잔여신호 가 모두 0인 경우이다.
이상에서와 같이, 7가지 블록 모드 모두에 대한 부호화 코스트가 모두 구해지면, 그 중 최소의 코스트를 갖는 블록 모드를 최종적으로 선택한다(제370단계).
이상에서 설명된 바와 같이, 종래에는 다수의 블록 모드 별로 움직임 검색을 수행하여 부화화 코스트를 구하고, 그 중 부호화 코스트가 가장 낮은 것 즉, 부호화 효율이 가장 좋게 판정된 블록 모드를 매크로 블록의 최종적인 블록 모드로 결정한다. 따라서, 비트 레이트 측면에서 많은 이득을 볼 수 있으며, 동일 비트 레이트로 더 좋은 화질을 제공하는 영상 압축이 가능하다.
그러나, 영상 부호화기 측면에서는 블록 모드를 결정하기 위해서 다수의 블록 모드를 이용하여 움직임 검색을 수회 수행하므로 계산량이 매우 많아져 영상 부호기의 복잡도를 증가시킨다는 문제가 있다.
본 발명이 이루고자 하는 기술적 과제는, 영상 부호화기에서 움직임 추정을 통해 부호화를 위한 블록 모드 결정시, 입력된 매크로 블록을 SKIP 블록 모드로 할 것인지의 여부를 먼저 판정하고, SKIP 블록 모드로 판정된 매크로 블록에 대해서는 인터 모드에 대한 움직임 검색을 생략함으로써 계산량을 크게 줄일 수 있는 고속 블록 모드 결정 방법에 관한 것이다.
본 발명이 이루고자 하는 다른 기술적 과제는 상기 고속 블록 모드 결정 방법을 컴퓨터에서 실행 가능한 프로그램 코드로 기록된 기록 매체를 제공하는 데 있다.
상기 기술적 과제를 이루기 위해, 영상 부호화기에서 움직임 추정을 통해 부호화를 위한 블록 모드를 결정하는 본 발명에 따른 고속 블록 모드 결정 방법은 이웃한 프레임간의 움직임을 고려하여 적응적 임계값을 구하는 (a)단계, 적응적 임계값을 이용하여, 입력된 16x16 매크로 블록을 SKIP 블록 모드로 할 것인가를 판별하는 (b)단계, (b)단계에서 SKIP 블록 모드로 판별되면 SKIP 블록 모드에 대한 움직임 검색을 통해 부호화 코스트를 구하고, SKIP 블록 모드로 판별되지 않으면 인터 블록 모드에 대한 움직임 검색을 통해 인터 블록 모드 각각에 대한 부호화 코스트를 구하는 (c)단계, 인트라 블록 모드에 대한 움직임 검색을 통해 인트라 블록 모드 각각에 대한 부호화 코스트를 구하는 (d)단계 및 (c)단계 및 (d)단계에서 구한 부호화 코스트를 비교하여 최소의 부호화 코스트를 갖는 블록 모드를 16x16 매크로 블록의 움직임 추정을 위한 최종 블록 모드로 결정하는 (e)단계를 포함하는 것이 바람직하다.
이하, 본 발명에 따른 고속 블록 모드 결정 방법을 첨부한 도면들을 참조하여 다음과 같이 설명한다.
본 발명에 따른 블록 모드 결정 방법을 설명하기에 앞서 SKIP 블록 모드의 특성에 대해 살펴보면, 7가지 블록 모드 중 SKIP 블록 모드는 동영상에서 배경과 같이 매 프레임마다 반복되는 부분을 효과적으로 부호화하기 위하여 사용한다. 16x16의 매크로 블록이 SKIP 블록 모드로 결정되려면 다음 4가지 조건을 만족해야 한다.
1. 움직임 보상 블록이 16x16 이어야 한다.
2. 참조 영상이 바로 이전 영상이어야 한다.
3. 움직임 벡터가 예측 움직임 벡터와 같아야 한다.
4. 잉여 데이터의 비트량이 0 이어야 한다.
한편, 영상의 특성상 SKIP 블록 모드에 대한 부호화 코스트는 인터 블록 모드(Inter 16x16, Inter 8x16, Inter 16x8 및 P8x8)에 대한 부호화 코스트보다 낮을 가능성이 매우 높다. 본 발명에 따른 고속 블록 모드 결정 방법은 이와 같은 영상의 특성을 이용하여, 입력된 매크로 블록에 대해 인터 블록 모드로 움직인 검색을 수행하기 전에 SKIP 블록 모드 여부를 먼저 판정하고 SKIP 블록 모드로 판정되면 인터 블록 모드에 대한 움직임 검색을 생략함으로써, 영상 부호화기에서 영상 추정기가 보다 빠르고 간단하게 블록 모드를 결정할 수 있다.
도 4는 전술된 바와 같은 SKIP 블록 모드의 특성을 이용한 본 발명에 따른 고속 블록 모드 결정 방법의 일실시예를 나타내는 흐름도이다.
도 4를 참조하여, 움직임 추정기(도 1참조)는 이웃한 프레임간의 움직임을 고려하여 적응적 임계값(Thskip)을 구한다(제400단계).
적응적 임계값(Thskip)은 현재의 영상과 이전의 영상의 차 영상에 대한 화소값의 평균 MAFD(Mean Absolute Frame difference)를 이용하여 구할 수 있다. 먼저, 이웃한 두 영상에 대한 화소값의 평균 MAFD는 다음 수학식 1과 같이 구할 수 있다.
여기서 M,N은 영상의 가로, 세로 크기를 나타내고, Xi,j는 현재 영상에서 (i,j)번째의 화소값을 나타내고, Yi,j는 이전 영상에서 (i,j)번째의 화소값을 나타낸다.
일반적으로 MAFD는 연속한 프레임의 움직임에 대한 많은 정보를 포함하고 있다. 예컨대, MAFD가 큰 값을 가지면 움직임 경계 또는 움직이는 객체의 경계를 나타내고, 반면 작은 값을 가지면 객체의 움직임이 적은 시퀀스임을 나타낸다. 따라서, 시퀀스 내에서 이웃한 프레임간 움직임이 많이 발생한 부분에서 MAFD는 큰 값을 가질 것이고, 반대로 두 프레임간의 객체의 움직임이 적거나 움직임이 없는 경우 MAFD는 작은 값을 가지게 된다. 이러한 MAFD의 특성을 이용하여 SKIP 블록 모드를 결정하기 위한 임계값을 설정할 수 있다. MAFD를 이용하여 설정한 임계값을 시퀀스 내에서 이웃한 프레임간의 움직임 정도에 따라 추출 프레임마다 적응적으로 적용하여 보다 정확한 SKIP 블록 모드를 추출할 수 있다. MAFD를 이용한 적응적 임계값(Thskip)은 다음 수학식 2와 같이 구한다.
여기서, w는 임계 최소값(Thskipmin)을 고려한 가중치 성분을 나타내고, 임계 최소값(Thskipmin)은 SAD(0,0)의 실험에 의한 화질 저화 정도의 측정을 통해 결정된다. 수학식 2와 같이, MAFD를 이용하여 구한 적응적 임계값(Thskip)이 임계 최소값(Thskipmin)보다 크면 그 값을 적응적 임계값(Thskip)로 설정하나, 그렇지 않으면 임계 최소값(Thskipmin)을 적응적 임계값(Thskip)으로 설정한다.
제400단계 후에, 입력된 16x16 매크로 블록을 Inter 16x16 모드로 움직임 검색을 수행하여 움직임 벡터 및 부호화 코스트를 구한다(제410단계). 여기서, 부호화 코스트는 전술된 바와 같이 화질의 열화와 발생 비트량을 고려한 율-왜곡 최적화를 통해 구한다. 열화 측정을 위한 함수로는 SAD(Sum of Absolute Difference), SATD(Sum of Absolute Transformed Difference), SSD(Sum of Squared Difference), MAD(Mean of Absolute Difference) 또는 라그란지 함수(Lagrange Function) 등이 있으나 이에 한정되지 않는다. 이 중, SAD 함수를 이용하여 측정된 부호화 코스트는 현재 서브 블록의 각 픽셀의 예측값과 실제 픽섹 값들이 차이의 절대값을 모두 더한 값이다.
계속해서, 제410단계에서 구한 Inter 16x16 모드 움직임 벡터 및 부호화 코스트가 SKIP 블록 모드의 조건 즉, 움직임 벡터가 원점(0,0)이거나 또는 예측 움직임 벡터와 동일하고, 부호화 코스트는 적응적 임계값(Thskip)보다 작은가의 여부를 판단한다(제420단계).
제410단계에서 구한 Inter 16x16의 움직임 벡터 및 부호화 코스트가 제420단계에서의 SKIP 블록 모드의 조건을 만족하면, 현재 입력된 16x16 매크로 블록을 SKIP 블록 모드로 움직임 검색하여 움직임 벡터 및 부호화 코스트를 구한다(제430단계).
반면, 410단계에서 구한 움직임 벡터 및 부호화 코스트가 SKIP 블록 모드의 조건을 만족하지 않으면, 나머지 인터 모드인 Ineter16x8 모드, Inter8x16 모드 및 P8x8 모드에 대해 순차적으로 움직임 검색을 하여 각각에 대한 움직 벡터 및 부호화 코스트를 구하고, 이들 중 부호화 코스트가 가작 낮은 모드를 1차 선택한다(제440~470단계).
제470단에서 1차 선택된 모드가 Inter 16x16 모드이면 움직임 벡터(MV)가 원점(0,0)인가의 여부를 확인하여(제480단계), 움직임 벡터가 원점(0,0)이면 1차 선택된 모드를 SKIP 블록 모드로 변환한다(제430단계). 이처럼, 1차 선택된 모드가 Inter 16x16 모드이면 움직임 벡터(MV)가 원점(0,0)인가의 여부를 다시 확인함으로써, 제420단계에서 걸러지지 않은 SKIP 블록 모드를 다시 한 번 거를 수 있다. 또한, 이처럼 Inter 16x16 모드에 대해서 SKIP 블록 모드인가의 여부를 판단하는 이유는 전술된 바와 같이, SKIP 블록 모드로 결정되기 위한 기본 조건이 움직임 검색 블록이 16x16 이어야하기 때문이다.
입력된 16x16 매크로 블록이 1차 선택된 블록 모드 또는 SKIP 블록 모드로 결정되면, Intra 4x4 모드 및 Intra 16x16 모드를 순차적으로 검색하여 각각의 움직임 벡터 및 부호화 코스트를 구한다(제490 ~ 500단계).
1차 선택된 블록 모드의 부호화 코스트 또는 SKIP 블록 모드의 부호화 코스트와, Intra 4x4 모드 및 Intra 16x16 모드의 부호화 코스트를 비교하여 부호화 코스트가 가장 낮은 블록 모드를 입력된 16x16 매크로 블록의 움직임 예측을 위한 최종 블록 모드로 결정한다.
이상에서와 같이, 본 발명에 따른 고속 블록 모드 결정 방법은 제420단계에서 SKIP 블록 모드로 결정된 매크로 블록에 대해서는 Ineter16x8 모드, Inter8x16 모드 및 P8x8 모드에 대한 움직임 검색 및 부호화 코스트를 구하는 계산 과정을 수행하지 않아도 되므로 영상 부호화기의 계산량을 크게 줄일 수 있다. 특히, 본 발명에 따른 고속 블록 모드 결정 방법은 움직임이 많지 않고, 평탄한 영역을 많이 포함하고 있는 시퀀스, 즉 SKIP 블록 모드를 많이 포함하고 있는 영상, 예를 들어 영상 전화, 화상 회의 시스템과 같은 분야에서 뛰어난 성능을 발휘 할 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상에서 본 발명의 바람직한 실시 예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
상술한 바와 같이, 본 발명에 따른 고속 블록 모드 결정 방법은 움직임 예측을 위한 블록 모드 결정시 인터 모드에 대한 움직임 검색에 앞서 SKIP 블록 모드 여부를 먼저 판정하고, SKIP 블록 모드로 판정된 블록에 대해서는 인터 모드로 움직임을 검색하는 과정을 생략할 수 있으므로 보다 적은 계산량으로 빠르게 블록 모드를 결정 할 수 있다.
Claims (8)
- 영상 부호화기에서 움직임 추정을 통해 부호화를 위한 블록 모드를 결정하는 고속 블록 모드 결정 방법에 있어서,(a)이웃한 프레임간의 움직임을 고려하여 적응적 임계값을 구하는 단계;(b)상기 적응적 임계값을 이용하여, 입력된 16x16 매크로 블록을 SKIP 블록 모드로 할 것인가를 판별하는 단계;(c)상기 (b)단계에서 SKIP 블록 모드로 판별되면 SKIP 블록 모드에 대한 움직임 검색을 통해 부호화 코스트를 구하고, SKIP 블록 모드로 판별되지 않으면 인터 모드들에 대한 움직임 검색을 통해 인터 모드 각각에 대한 부호화 코스트를 구하는 단계;(d)인트라 모드들에 대한 움직임 검색을 통해 인트라 모드 각각에 대한 부호화 코스트를 구하는 단계; 및(e)상기 (c)단계 및 상기 (d)단계에서 구한 부호화 코스트를 비교하여 최소의 부호화 코스트를 갖는 블록 모드를 상기 16x16 매크로 블록의 움직임 예측을 위한 최종 블록 모드로 결정하는 단계를 포함하는 것을 특징으로 하는 고속 블록 모드 결정 방법.
- 제1항에 있어서,상기 적응적 임계값은 현재 영상과 이전 영상의 차 영상에 대한 화소값의 평 균 MAFD(Mean Absolute Frame difference)을 이용하여 설정하는 것을 특징으로 하는 고속 블록 모드 결정 방법.
- 제4항에 있어서,상기 임계 최소값은 SAD(0,0)의 실험에 의한 화질 저화 정도의 측정을 통해 결정되는 것을 특징으로 하는 고속 블록 모드 결정 방법.
- 제1항에 있어서, 상기 (b) 및 (c)단계는(b1)상기 16x16 매크로 블록에 대해 인터 모드 중 Inter 16x16 모드로 움직임 검색을 수행하여 움직임 벡터 및 부호화 코스트를 구하는 단계;(b2)상기 (b1)단계에서 구한 움직임 벡터가 소정의 SKIP 블록 모드의 조건을 만족하고 상기 (b1)단계에서 구한 부호화 코스트가 상기 적응적 임계값보다 작은가의 여부를 판단하는 단계;(b3)상기 (b2)단계의 조건을 만족하면, 상기 16x16 매크로 블록을 SKIP 블록 모드로 하여 움직임 검색을 수행하여 부호화 코스트를 구하는 단계; 및(b4)상기 (b2)단계의 조건을 만족하지 않으면, 상기 16x16 매크로 블록을 Inter 16x8 모드, Inter8x16 모드 및 P8x8 모드로 하여 움직임 검색을 하고, 각 모드에 대한 움직 벡터 및 부호화 코스트를 구하는 단계를 포함하는 것을 특징으로 하는 고속 블록 모드 결정 방법.
- 제6항에 있어서, 상기 SKIP 블록 모드의 조건은상기 (b1)단계에서 구한 움직임 벡터가 원점(0,0)이거나 또는 예측 움직임 벡터와 동일한가의 여부임을 특징으로 하는 고속 블록 모드 결정 방법.
- 제6항에 있어서,(b5)상기 Inter 16x16 모드, 상기 Inter 16x8 모드, 상기 Inter8x16 모드 및 상기 P8x8 모드 각각에 대한 움직임 벡터 및 부호화 코스트가 구해지면, 이들 중 부호화 코스트가 가장 낮은 블록 모드를 1차 선택하는 단계;(b6)상기 1차 선택된 블록 모드가 상기 Inter 16x16 모드이면 움직임 벡터가 원점(0,0)인가의 여부를 확인하는 단계; 및(b7)상기 (b6)단계에서 움직임 벡터가 원점(0,0)이면 상기 1차 선택된 모드를 SKIP 블록 모드로 변환하는 단계를 더 포함하는 것을 특징으로 하는 고속 블록 모드 결정 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050090726A KR100701129B1 (ko) | 2005-09-28 | 2005-09-28 | 영상 부호화기에서 고속 블록 모드 결정 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050090726A KR100701129B1 (ko) | 2005-09-28 | 2005-09-28 | 영상 부호화기에서 고속 블록 모드 결정 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100701129B1 true KR100701129B1 (ko) | 2007-03-28 |
Family
ID=41565078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050090726A KR100701129B1 (ko) | 2005-09-28 | 2005-09-28 | 영상 부호화기에서 고속 블록 모드 결정 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100701129B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140043014A (ko) * | 2012-09-28 | 2014-04-08 | 연세대학교 산학협력단 | 영상 부호화 방법 및 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050063776A (ko) * | 2002-10-01 | 2005-06-28 | 톰슨 라이센싱 소시에떼 아노님 | 비디오 인코더에서 기준 화상의 암시적인 가중 |
-
2005
- 2005-09-28 KR KR1020050090726A patent/KR100701129B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050063776A (ko) * | 2002-10-01 | 2005-06-28 | 톰슨 라이센싱 소시에떼 아노님 | 비디오 인코더에서 기준 화상의 암시적인 가중 |
Non-Patent Citations (1)
Title |
---|
한국공개공보 10-2005-63776 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140043014A (ko) * | 2012-09-28 | 2014-04-08 | 연세대학교 산학협력단 | 영상 부호화 방법 및 장치 |
KR101924959B1 (ko) * | 2012-09-28 | 2018-12-04 | 연세대학교 산학협력단 | 영상 부호화 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8155191B2 (en) | Method and apparatus for fast mode decision of B-frames in a video encoder | |
KR100957316B1 (ko) | 멀티미디어 코딩을 위한 모드 선택 기술 | |
JP4127818B2 (ja) | 動画像符号化方法及びその装置 | |
KR100627329B1 (ko) | H.264 비디오 코덱을 위한 적응형 움직임 예측 및 모드결정 장치 및 그 방법 | |
US8891619B2 (en) | Rate control model adaptation based on slice dependencies for video coding | |
KR101177031B1 (ko) | 인터-코딩에 사용된 기준 화상의 수를 최소화하기 위한 방법 및 장치 | |
Merritt et al. | x264: A high performance H. 264/AVC encoder | |
KR101656091B1 (ko) | 효율성과 주관적 품질의 개선을 지원하는 예측 프레임 선택을 위한 방법 및 장치 | |
JP2006513636A (ja) | インター・フレーム符号化に関する高速モード意思決定 | |
KR20110050283A (ko) | 다중 참조 영상을 이용한 고속 움직임 추정 방법 | |
KR20090099234A (ko) | 영상의 부호화, 복호화 방법 및 장치 | |
JP4702059B2 (ja) | 動画像を符号化する方法及び装置 | |
KR20050119422A (ko) | 움직임 보상에 기반한 입력 영상의 노이즈 예측 및 그장치와, 이를 사용한 노이즈 제거 및 동영상 부호화 방법,이를 수행하기 위한 프로그램이 기록된 기록 매체 | |
JP2007267414A (ja) | フレーム内画像符号化方法及びその装置 | |
KR20080009608A (ko) | 움직임 예측장치 및 방법과 이를 채용하는 영상 부호화장치및 방법 | |
KR20070064598A (ko) | 인터프레임에 대한 고속 모드 결정 방법 및 장치 | |
EP2710802A1 (en) | Rate -distortion optimization for video coding | |
KR100723507B1 (ko) | I-프레임 움직임 예측을 이용한 동영상 압축 장치의 적응양자화 제어기 및 적응 양자화 제어 방법 | |
KR101623064B1 (ko) | 영상 부호화 장치, 영상 부호화 방법 및 영상 부호화 프로그램 | |
JP4994877B2 (ja) | ビデオのフレームシーケンスにおけるマクロブロックの符号化モードを選択する方法及びシステム | |
JP5649296B2 (ja) | 画像符号化装置 | |
JP4130617B2 (ja) | 動画像符号化方法および動画像符号化装置 | |
KR100701129B1 (ko) | 영상 부호화기에서 고속 블록 모드 결정 방법 | |
KR100657277B1 (ko) | 매크로블록 타입 결정 방법 | |
KR100708182B1 (ko) | 동영상 부호화기의 비트율 제어 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |