KR100845644B1 - 고속 움직임 모드 결정 방법 - Google Patents

고속 움직임 모드 결정 방법 Download PDF

Info

Publication number
KR100845644B1
KR100845644B1 KR1020060128081A KR20060128081A KR100845644B1 KR 100845644 B1 KR100845644 B1 KR 100845644B1 KR 1020060128081 A KR1020060128081 A KR 1020060128081A KR 20060128081 A KR20060128081 A KR 20060128081A KR 100845644 B1 KR100845644 B1 KR 100845644B1
Authority
KR
South Korea
Prior art keywords
motion
block
similarity
block type
mode
Prior art date
Application number
KR1020060128081A
Other languages
English (en)
Other versions
KR20080055135A (ko
Inventor
김문철
이범식
박근수
이근식
함상진
김병선
Original Assignee
한국정보통신대학교 산학협력단
한국방송공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국정보통신대학교 산학협력단, 한국방송공사 filed Critical 한국정보통신대학교 산학협력단
Priority to KR1020060128081A priority Critical patent/KR100845644B1/ko
Publication of KR20080055135A publication Critical patent/KR20080055135A/ko
Application granted granted Critical
Publication of KR100845644B1 publication Critical patent/KR100845644B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/567Motion estimation based on rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

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

Abstract

본 발명은 고속 움직임 모드 결정 방법에 관한 것으로, 비디오 압축 부호화에 있어서 적어도 하나의 움직임 블록 타입을 이용하여 움직임 예측 및 보상 과정을 수행하는 고속 움직임 모드 결정 방법으로서, 부호화 대상 블록과 참조 블록 사이의 대상 움직임 블록 타입에 대해 유사도를 계산하는 단계와, 상기 계산된 유사도를 기 설정된 임계값과 비교하여 유사도를 판정하는 단계와, 상기 판정 결과, 유사도가 높다고 판정되는 경우 대상 움직임 블록 타입을 움직임 추정 블록 타입으로 결정하는 단계와, 율-왜곡 비용을 계산하는 단계와, 상기 계산된 율-왜곡 비용의 비교를 통한 최종 움직임 블록 타입으로 결정하는 단계를 포함함으로써, 비디오 부호화 시에 많은 연산량이 소요되는 움직임 예측 과정을 고속화할 수 있으며, 연산량을 보다 효과적으로 감소시킬 수 있다.
움직임 예측, 부호화기

Description

고속 움직임 모드 결정 방법{FAST MOTION MODE DECISION METHOD}
도 1은 본 발명의 MPEG-4 AVC|H.264의 부호화기 구조 형태를 나타낸 도면.
도 2는 본 발명의 MPEG-4 AVC|H.264 움직임 예측 가변 블록 타입형태를 나타낸 도면.
도 3은 다양한 블록 사이즈로 움직임 예측 블록 모드가 결정된 화면을 나타낸 도면.
도 4는 본 발명의 일 실시예에 적용된 t 통계 분포의 일 예를 나타낸 도면.
도 5는 본 발명의 일 실시예에 따른 고속 움직임 결정 방법을 적용하기 위한 연속된 프레임에 대해 통계적 가설 검증이 적용되는 현재 블록과 복원된 블록을 나타낸 도면.
도 6은 본 발명의 일 실시예에 따른 고속 움직임 모드 결정 방법을 설명하기 위한 흐름도.
본 발명은 고속 움직임 모드 결정 방법에 관한 것으로, 보다 상세하게는 다양한 움직임 블록을 사용하여 움직임 예측을 수행하는 과정에서의 화질 저하 및 발생 비트양을 최소화하면서 효과적으로 단축할 수 있도록 한 고속 움직임 모드 결정 방법에 관한 것이다.
일반적으로, 움직임 예측에 소요되는 연상량은 전체 부호화에 소요되는 연산량의 절대적 영향을 주게 된다.
예컨대, H.264|AVC 압축 부호화 방식과 같이 한 장 이상의 순방향 및 역방향 참조 프레임에 대해 움직임 예측을 수행하게 되는 경우 그 복잡도는 매우 높으며, MPEG-4 AVC|H.264 압축 비디오 구조의 경우, 시간적 스케일러빌러티(Scalability)를 갖기 위해 계층적 B-픽처에 대해 다양한 블록을 사용하여 움직임 예측을 수행 할 경우 그 복잡도는 기하급수적으로 증가하게 된다.
따라서, 소프트웨어 실시간 부호화기를 구현하는데 많은 걸림돌로 작용되어 왔으며 상대적으로 하드웨어에만 의존해 구현하는 문제점이 있다.
본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 비디오 부호화 시에 많은 연산량이 소요되는 움직임 예측 과정을 고속화함으로써, 연산량을 효과적으로 감소시킬 수 있는 고속 움직임 모드 결정 방법을 제공하는데 있다.
본 발명의 다른 목적은, 다양한 움직임 블록을 사용하여 움직임 예측을 수 행하는 과정에서의 화질 저하 및 발생 비트양을 최소화하면서 효과적으로 단축할 수 있는 고속 움직임 모드 결정 방법을 제공하는데 있다.
전술한 목적을 달성하기 위하여 본 발명의 제1 측면은, 비디오 압축 부호화에 있어서 적어도 하나의 움직임 블록 타입을 이용하여 움직임 예측 및 보상 과정을 수행하는 고속 움직임 모드 결정 방법으로서, (a) 주어진 대상 움직임 블록 타입에 대해 부호화 대상 블록내의 픽셀들과 참조 블록 내의 픽셀들과의 유사도를 계산하는 단계; (b) 상기 계산된 유사도를 기 설정된 임계값과 비교하여 유사도를 판정하는 단계; (c) 상기 단계(b)에서의 판정 결과, 유사도가 높다고 판정되는 경우 대상 움직임 블록 타입을 움직임 추정 블록 타입으로 결정하는 단계; (d) 율-왜곡 비용을 계산하는 단계; 및 (e) 상기 계산된 율-왜곡 비용의 비교를 통한 최종 움직임 블록 타입으로 결정하는 단계를 포함하여 이루어진 고속 움직임 모드 결정 방법을 제공하는 것이다.
여기서, 상기 단계(a)는, 부호화 대상 블록과 참조 블록 내의 픽셀 값들의 유사도를 계산하기 위해 유사도 비교를 위한 통계적 가설을 세우고, 이 통계적 가설 검증을 위한 검증 통계량을 계산함이 바람직하다.
바람직하게는, 현재 블록 내의 픽셀 값들과 참조 블록 내의 픽셀 값들에 대해 평균과 분산 중 적어도 하나에 대한 유사도 측정을 위한 검증 통계량을 계산한다.
바람직하게는, 현재 블록과 참조 블록 내 상호간의 픽셀 값들에 대한 유사도 검정을 위해 통계적 가설을 세우는 것에 있어서, 평균과 분산 중 적어도 하나에 대해 두 블록의 픽셀 값을 비교하기 위한 가설로 세우는 과정을 더 포함한다.
바람직하게는, 상기 단계(b)는, 통계적 가설 검증을 이용하기 위한 가설에 대해 검증 통계량이 주어진 신뢰구간에 존재하는지 여부에 대해 판정하여 유사도를 판정한다.
바람직하게는, 상기 단계(c)에서, 기타 움직임 블록 타입에 대해 움직임 예측 및 보상 과정을 수행하지 않고 움직임 예측 및 보상 과정을 조기 종료하는 단계를 더 포함한다.
바람직하게는, 상기 단계(e)는, 각 움직임 추정 블록 타입에 대한 율-왜곡 비용을 비교하여 최소 비용을 발생시키는 움직임 추정 블록 타입을 최종 움직임 블록 타입으로 결정한다.
본 발명의 제2 측면은, 상술한 고속 움직임 모드 결정 방법을 실행시키기 위한 프로그램을 기록한 기록매체를 제공한다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설 명하기 위하여 제공되어지는 것이다.
먼저, 영상 데이터를 압축하기 위해 움직임 예측을 이용한 부호화기는 높은 압축률을 얻을 수 있으나, 정확한 움직임 예측을 하기 위한 움직임 추정과정에 많은 연상량이 소요된다.
이러한 움직임 예측을 이용한 부호화기는 정확한 움직임 예측을 하기 위해 다양한 블록을 사용한다. 예컨대, H.264|AVC 압축 부호기의 경우, 움직임 예측을 하기 위한 블록 크기가 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, 4x4까지 7가지 타입이 있다.
즉, 움직임 예측 시에 7가지 타입을 모두 사용하여 부호화 과정을 수행한 후, 원 영상과 복원 영상의 왜곡 정도와 발생 비트량을 가중치 비용이 최소가 되는 움직임 추정 블록 타입을 최종 블록 타입으로 결정한다.
이때, 부호화기는 모든 블록에 대해 움직임 예측을 수행하므로 많은 연상량이 소요되며 실시간 소프트웨어 부호화의 큰 걸림돌로 작용한다. 따라서, 본 발명에서는 이러한 종래의 과도한 연상량을 요구하는 움직임 예측 과정을 보다 효율적으로 수행함으로써, 부호화 시에 연산량을 효과적으로 줄일 수 있도록 한 고속 움직임 모드 결정 방법을 제공하는 것이다.
한편, 화면간 움직임 예측은 블록기반 움직임 보상을 사용하여 이전 또는 이후 하나 이상의 여러 프레임이나 필드로부터 예측 모델을 만들어 낸다. 예컨대, MPEG-4 AVC|H.264에서는 가변 블록 크기의 움직임 예측 및 움직임 보상을 위하여 총 7개의 블록 크기를 이용한다.
또한, 각 블록 크기마다 각 1개씩 움직임 벡터를 측정하며, 그 움직임 벡터는 1/4 화소 정밀도로 측정되어 보상된다. 하기의 표 1은 기존의 비디오 부호화 표준과 MPEG-4 AVC|H.264와의 차이를 나타낸다.
Figure 112006092789230-pat00001
상기의 표 1과 같이, MPEG-4 AVC|H.264 부호화 효율의 증가를 위해 기존의 비디오 코덱 보다 훨씬 높은 연산량을 요구하게 된다.
도 1은 본 발명의 MPEG-4 AVC|H.264의 부호화기 구조 형태를 나타낸 도면으로서, 부호화기는 화면간 움직임 예측 및 보상을 위한 움직임 블록 모드의 사용을 나타낸다.
도 1을 참조하면, MPEG-4 AVC|H.264의 부호화기는, 크게 코더 제어(Coder Control), 변환/스케일링/양자화(Transform/Scaling/Quantization), 디코더(Decoder), 움직임 추정(Motion Estimation), 엔트로피 코딩(Entropy Coding) 등이 유기적으로 서로 결합되어 있다.
여기서, 디코더(Decoder)는 스케일링 & 역변환(Scaling & Inv. Transform), 디블록킹 필터(Deblocking Filter), 인트라-프레임 예측(Intra-frame Prediction), 움직임 보상(Motion Compensation) 등으로 구성되어 있다.
한편, 전술한 각각의 구성요소들은 통상적인 것으로서, 이에 대한 구체적인 설명은 생략하기로 한다.
상기와 같이 구성된 MPEG-4 AVC|H.264의 부호화기는 움직임 추정 및 보상을 7가지의 블록 타입에 대해 모두 수행하고, 그 각각에 대해 율-왜곡(Rate-Distortion, RD) 비용을 비교하여 최소값을 나타내는 블록 모드를 최종 블록 모드로 결정한다. 이렇게 함으로써 부호화 시에 특히 많은 연산량이 요구된다.
도 2는 본 발명의 MPEG-4 AVC|H.264 움직임 예측 가변 블록 타입형태를 나타낸 도면으로서, 계층적으로 구분되는 다양한 크기를 갖는 블록들을 보여 준다.
도 2를 참조하면, 첫 번째 레벨에서는 16x16, 16x8, 8x16 및 8x8 등 비교적 큰 크기를 갖는 블록들이 있으며, 하위 레벨에서는 8x8, 8x4, 4x8 및 4x4와 같이 작은 크기를 갖는 블록들이 존재한다.
이전의 비디오 코덱 표준과 다른 점은 여러 블록 크기(16x16, 16x8, 8x16, 8x8, 8x4, 4x8 및 4x4)와 1/4 정밀도를 가지는 서브 샘플 움직임 벡터를 지원한다는 것이다. 이전의 비디오 부호화 표준에서는 움직임 벡터의 측정을 16x16 매크로 블록 단위로 수행하였다.
하지만, 16x16 매크로 블록만으로는 다양한 객체의 움직임 및 텍스처 특성을 반영하지 못하므로, MPEG-4 AVC|H.264 비디오 표준에서는 상기 7개의 블록 모드를 사용하여 콘텐츠의 특성을 반영하도록 하였다.
다시 말해 16x16 블록과 같이 블록 사이즈가 큰 경우는 움직임이 거의 없거나 동일 조직(homogeneous)의 특성을 보이는 영역에 할당되며, 8x8∼4x4 같이 작은 블록 사이즈를 갖는 서브 매크로 블록은 움직임이 큰 영역이나 세밀한 텍스처 특성을 보이는 영역에 할당된다.
이러한 블록 크기의 결정은 모든 블록에 대하여 율-왜곡(Rate-Distortion, RD) 비용(cost)을 구하여 가장 작은 율-왜곡 비용을 갖는 블록을 할당하도록 하는 원칙을 따른다.
도 3은 다양한 블록 사이즈로 움직임 예측 블록 모드가 결정된 화면을 나타낸 도면이다.
도 3을 참조하면, 이렇게 다양한 블록 크기를 갖는 모드 결정과 움직임 벡터 결정으로 연산량이 급격하기 증가한다. 왜냐하면, 각 블록별로 각각의 움직임 벡터가 존재하며, 하나의 매크로 블록에서 블록 사이즈를 결정하기 위하여 7개의 모든 블록에 대하여 율-왜곡 비용을 구하는 과정의 복잡도가 크기 때문이다. 이는 부호화 효율을 극대화하기 위하여 연산량 증가에 대한 희생을 감수하였기 때문이다.
예컨대, MPEG-4 AVC|H.264에서는 화면간 모드 결정은 하기의 수학식 1을 최소로 하는 블록을 최적의 블록으로 판단하는 것이다.
Figure 112006092789230-pat00002
여기서, s는 원 영상을 의미하며, c는 복원된 영상을 의미한다. Qp는 움직임 벡터와 프레임간 모드 결정 시 사용되는 양자화 파라미터를 의미한다. λmode는 라그랑지안 계수로서
Figure 112006092789230-pat00003
으로 계산된다. 그리고, SSD는 원 영상과 복원된 영상간의 왜곡도를 나타내며 클수록 왜곡이 심하며 모드 결정이 잘못된 것을 의미한다.
또한, 화면간 예측 시 MPEG-4 AVC|H.264에서는 복수개의 참조 픽처로부터 최적의 블록을 선택할 수 있도록 설계되어 있다. 이것은 참조 픽처를 여러 개로 함으로써 부호화 효율을 증대하기 위한 목적이지만, 복수 개의 참조 픽처로부터 7개의 블록 유형에 따른 움직임 벡터를 추정해야 하므로 연산량은 급격히 증가한다.
본 발명의 핵심 기술요지는, 복잡도가 높은 움직임 예측 모드를 효과적으로 수행하여 연산량을 급격히 감소시킴으로써, 부호화 시에 연산을 고속화할 수 있는 고속 움직임 결정 방법을 제공한다는 것으로, 이러한 기술적 수단을 통해 본 발명에서 목적으로 하는 바를 쉽게 달성할 수 있다.
본 발명은 MPEG-4 AVC|H.264 (ISO/IEC 14496-10) 비디오 압축 규격에 대해 한 일례로 설명한다. 그러나, 본 발명의 적용범위가 MPEG-4 AVC|H.264(ISO/IEC 14496-10) 비디오 압축 규격에 한정되는 것은 아니며, 적어도 하나 이상의 움직임 블록을 사용하여 움직임 모드 결정을 하는 어떠한 비디오 압축 방법 및 방식에도 적용가능하다.
먼저, 이 가설 검증법을 SVC(Scalable Video Coding)의 고속 프레임 간 모드 결정 방법에 사용하기 위하여, XC와 XR을 각각 현재 블록과 참조 블록의 픽셀값 을 나타내는 랜덤변수로서 독립적인 정규 모집단이라고 가정하고 하기의 수학식 2와 같이 정의한다.
Figure 112006092789230-pat00004
여기서, μc와 μR은 각각 현재 블록과 참조 블록의 픽셀값 랜덤변수의 평균을 나타내며, 이미 이 값들이 알려져 있다고 가정하고, 하기의 수학식 3과 같은 가설 검증을 실시한다.
Figure 112006092789230-pat00005
여기서, H0를 귀무가설(null hypothesis)이라고 하며, 현재 블록과 참조 블록의 픽셀 값들이 같은 모집단으로부터 온 것인지를 판단한다. 만일, 설정된 귀무가설이 받아들여지면, 현재 블록과 복원된 참조 블록내의 두 개의 픽셀 그룹은 같은 모집단으로부터 온 것으로 판단하고 현재 테스트하는 블록의 크기로 모드를 결정하게 된다.
Figure 112006092789230-pat00006
을 현재 블록과 참조 블록 내 픽셀들의 샘플 평균과 분산이라고 하자. 이때, 알려지지 않은 모집단의 분산이 같다고 가정하고, 상기의 수학식 3에 대하여 가설 검증을 실시한다. 두 평균에 대하여 귀무가설을 테스트하기 위해 다음과 같은 t 통계 분포를 사용한다. 이때, 자유도
Figure 112006092789230-pat00007
(n1 및 n2는 매크로 블록 의 수)를 가진 t 통계 분포는 하기의 수학식 4 및 수학식 5와 같다.
Figure 112006092789230-pat00008
Figure 112006092789230-pat00009
여기서,
Figure 112006092789230-pat00010
는 두 개의 샘플 집단을 대표하는 분산으로 공분산이라고 한다. 일단 t 통계 분포가 생성되면, α를 갖는 신뢰 구간(Confidence Interval)을 설정하여, 구간 내에 t 통계 분포가 존재하면, 즉,
Figure 112006092789230-pat00011
이면 귀무가설을 받아들이고(H0 accepted), 그렇지 않을 경우 받아들이지 않는다(H0 rejected).
도 4는 본 발명의 일 실시예에 적용된 t 통계 분포의 일 예를 나타낸 도면으로서, 일단 신뢰 구간을 설정하여 샘플의 평균과 분산을 이용한 t 검증통계량이 신뢰 구간 내로 들어오면 두 모집단의 평균이 같다고 판단하는 것이다.
다음은 분산에 대한 가설 검증 방법으로서, 두 개의 평균에 대한 가설 검증과 마찬가지로 두 개의 분산에 대한 가설 검증을 실행한다. 상기의 수학식 3과 마찬가지로 하기의 수학식 6과 같이 분산에 대한 귀무가설을 설정한다.
Figure 112006092789230-pat00012
이 두 개의 분산에 대한 가설(H0, H1)을 검증하기 위하여 z 통계 분포를 이용한다. z 통계 분포는 하기의 수학식 7과 같이 정의한다.
Figure 112006092789230-pat00013
여기서, 공통 표준 편차의 예측치인 Sp는 하기의 수학식 8과 같이 정의한다.
Figure 112006092789230-pat00014
그리고, z 통계 분포는 일반적으로 정규 분포를 따른다. 이 것 역시 일단 신뢰 구간을 설정하고 두 블록(현재 블록과 참조 블록)의 픽셀 값에 대한 각각의 분산이 서로 같은지를 검증하기 위한 z 검증통계량을 계산하고 이것이 신뢰 구간에 존재하면, 귀무가설을 받아들이고 그렇지 않으면 받아들이지 않는다.
여기서, 평균과 분산에 대한 귀무가설이 모두 받아들여지지만, 현재 블록과 참조 블록은 같은 모집단으로부터 온 일치된 블록이라고 판단하기 때문에, 현재 블록과 하위 블록에 대한 움직임 벡터 측정 및 모드 결정 없이 현재 블록을 16x16 블록이나 8x8 블록으로 결정하여 모드 결정 과정을 조기에 완료한다.
이하 본 발명의 일 실시예에 따른 프레임 간 고속 블록 모드 결정 방법을 상세하게 설명하기로 한다.
먼저, 연산량 감소를 위한 고속 블록 모드 결정 방법은 전술한 통계적 가설 검증 테스트에 기반 한다. 본 발명에서 제안하는 블록 모드 결정 방법은 다음과 같은 과정을 따른다.
과정 1 : 현재 블록이 P-픽처 예측이면 먼저 스킵모드(SKIP Mode) 실행, B 예측이면 직접모드(Direct Mode)를 실행한다.
과정 2 : 16x16 매크로 블록에 대하여 움직임 벡터를 측정한다.
과정 3 : 움직임 벡터를 이용하여 이동한 최적의 복원된 참조 매크로 블록과 현재 블록에 대하여 평균과 분산의 통계적 가설 검증을 실시한다.
과정 4 : 평균과 분산에 대한 가설 검증을 모두 통과하면, 현재의 블록은 직접 또는 스킵 모드와 16x16 블록을 비교하여 최적의 모드를 결정하고, 모드 결정과정을 완료한다. 통과하지 않으면 과정 5로 진행한다.
과정 5 : 율-왜곡(RD) 최적화(Optimization) 방법에 기반하여 16x8, 8x16 및8x8 블록에 대하여 움직임 벡터를 측정한다.
과정 6 : 각 8x8 블록에 대하여 평균과 분산의 통계적 가설 검증 테스트를 한다.
과정 7 : 각각의 8x8 블록에 대하여 가설 검증이 통과되면, 현재 블록은 8x8 블록으로 결정되고, 8x8 서브 블록에 대한 모드 결정과정을 완료한다. 그렇지 않으면 과정 8로 간다.
과정 8 : 율-왜곡(RD) 최적화(Optimization) 방법에 기반하여 8x4, 4x8 및 4x4 블록에 대하여 움직임 벡터 측정 및 모드 결정을 한다.
과정 9 : 다음 매크로 블록에 대한 모드 결정을 진행한다.
상기의 과정 2에서 율-왜곡 비용이 최소가 되는 움직임 벡터를 추정하여 가설검증 테스트를 할 참조 블록을 찾는다. 즉, 다중 참조 프레임 중에서 몇 번째 프레임의 매크로 블록인지 찾아 현재 블록과 참조 블록간의 가설 검증 테스트를 한다. 도 5는 본 발명의 일 실시예에 따른 고속 움직임 결정 방법을 적용하기 위한 연속된 프레임에 대해 통계적 가설 검증이 적용되는 현재 블록과 복원된 블록을 보여주고 있다.
한편, 상기의 과정 1의 스킵모드(SKIP Mode) 및 직접모드(Direct Mode)는 통상적인 기술로서, 이에 대한 상세한 설명은 생략하기로 한다(대한민국 공개특허공보 제2005-98243호(향상된 코딩 모드 선택 방법 및 장치) 참조).
도 6은 본 발명의 일 실시예에 따른 고속 움직임 모드 결정 방법을 설명하기 위한 흐름도이다.
도 6을 참조하면, 먼저, 입력영상의 현재 프레임(매크로 블록)에 대해 참조프레임을 입력 영상으로 하는 입력영상 단계(S100)와, 스킵(SKIP)/직접(Direct) 및 16x16 모드 움직임 예측 및 보상 단계(S101)와, 스킵(SKIP)/직접(Direct) 모드 및 16x16 모드 율-왜곡(RD) 비용 계산 단계(S102)와, 16x16 모드 가설 검증 단계(S103)와, 가설 검증 통계량의 신뢰구간 존재 여부 판정 단계(S104)와, 16x8, 8x16 및 8x8 모드 움직임 예측 및 보상 단계(S105)와, 16x8, 8x16 및 8x8 모드 율-왜곡(RD) 비용 계산 단계(S106)와, 8x8 모드 율-왜곡 비용의 최소여부 판정 즉, 8x8 모드 가설 검증 단계(S107)와, 가설 검증 통계량의 신뢰구간 존재 여부 판정 단계(S108)와, 8x4, 4x8 및 4x4 모드 움직임 예측 및 보상 단계(S109)와, 8x4, 4x8 및 4x4 모드 율-왜곡(RD) 비용 계산 단계(S110)와, 최소 율-왜곡(RD) 비용 결정 및 최종 움직임 블록 모드 결정 단계(S111)들이 연계되어 지속적으로 수행된다.
전술한 바와 같이, 움직임 모드 결정에서, 16x16 블록에 대해 가설 검증을 수행(S104)함에 있어 검증통계량 값이 주어진 신뢰구간 내에 존재할 경우 최종 움직임 모드가 16x16 움직임 블록으로 결정함으로써, 움직임 모드 예측 및 보상 과정을 조기에 마치게 된다. 이러한 경우 하위 16x8, 8x16 및 8x8 움직임 블록에 대한 움직임 예측 및 보상 과정을 수행하지 않아도 되므로 많은 계산량을 줄일 수 있다.
만약, 검증통계량 값이 주어진 신뢰구간 내에 존재하지 않을 경우, 16x8, 8x16 및 8x8 블록에 대해 움직임 예측 및 보상과정을 수행한 후(S105), 율-왜곡 비용을 계산한다(S106).
여기서, 16x8 또는 8x16 움직임 블록 모드가 최소 율-왜곡 비용 값을 발생시키면, 최종 움직임 블록모드를 16x8 또는 8x16 움직임 블록 모드로 정한다(S107).
그러나, 8x8 움직임 블록이 최소 율-왜곡 비용 값을 발생시킬 경우 이에 대해 가설 검증 과정을 수행하고(S108), 검증 통계량 값이 신뢰구간에 존재하면 8x8 움직임 블록 모드를 최종 움직임 블록 모드로 결정한 후, 움직임 예측 및 보상 과정을 종료한다(S111). 이러한 경우 하위 8x4, 4x8 및 4x4 움직임 블록에 대한 움 직임 예측 및 보상 과정을 수행하지 않아도 되므로 많은 계산량을 줄일 수 있다.
만약, 검증통계량 값이 주어진 신뢰구간 내에 존재하지 않을 경우, 8x4, 4x8 및 4x4 블록에 대해 움직임 예측 및 보상과정을 수행한 후(S109), 율-왜곡 비용 값을 계산한다(S110). 여기서, 최소 율-왜곡 비용 값을 발생시키는 블록이 최종 움직임 모드로 결정된다.
한편, 본 발명의 일 실시예에 따른 고속 움직임 모드 결정 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
예컨대, 컴퓨터가 읽을 수 있는 기록매체로는 롬(ROM), 램(RAM), 시디-롬(CD-ROM), 자기 테이프, 하드디스크, 플로피디스크, 이동식 저장장치, 비휘발성 메모리(flash memory), 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.
또한, 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
전술한 본 발명에 따른 고속 움직임 모드 결정 방법에 대한 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명에 속한다.
이상에서 설명한 바와 같은 본 발명의 고속 움직임 모드 결정 방법에 따르면, 비디오 부호화 시에 많은 연산량이 소요되는 움직임 예측 과정을 고속화함으로써, 연산량을 효과적으로 감소시킬 수 있는 이점이 있다.
또한, 본 발명에 따르면, 다양한 움직임 블록을 사용하여 움직임 예측을 수행하는 과정을 화질 저하 및 발생 비트양을 최소화하면서 효과적으로 단축할 수 있는 이점이 있다.
또한, 본 발명에 따르면, 부호화 과정에서 움직임 예측 및 보상 과정에 소요되는 과도한 연산량을 줄임으로써, 부호화 처리 속도를 향상시켜 실시간 소프트웨어 부호화기를 설계하는데 중요한 고속 처리 요구사항을 충족시킬 수 있는 이점이 있다.

Claims (8)

  1. 비디오 압축 부호화에 있어서 적어도 하나의 움직임 블록 타입을 이용하여 움직임 예측 및 보상 과정을 수행하는 고속 움직임 모드 결정 방법으로서,
    (a) 주어진 대상 움직임 블록 타입에 대해 부호화 대상 블록내의 픽셀들과 참조 블록 내의 픽셀들과의 유사도를 계산하는 단계;
    (b) 상기 계산된 유사도를 기 설정된 임계값과 비교하여 유사도를 판정하는 단계;
    (c) 상기 단계(b)에서의 판정 결과, 유사도가 높다고 판정되는 경우 대상 움직임 블록 타입을 움직임 추정 블록 타입으로 결정하는 단계;
    (d) 율-왜곡 비용을 계산하는 단계; 및
    (e) 상기 계산된 율-왜곡 비용의 비교를 통한 최종 움직임 블록 타입으로 결정하는 단계를 포함하여 이루어진 고속 움직임 모드 결정 방법.
  2. 제 1 항에 있어서, 상기 단계(a)는,
    부호화 대상 블록과 참조 블록 내의 픽셀 값들의 유사도를 계산하기 위해 유사도 비교를 위한 통계적 가설을 세우고, 이 통계적 가설 검증을 위한 검증 통계량을 계산하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  3. 제 2 항에 있어서, 현재 블록 내의 픽셀 값들과 참조 블록 내의 픽셀 값들에 대해 평균과 분산 중 적어도 하나에 대한 유사도 측정을 위한 검증 통계량을 계산하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  4. 제 2 항에 있어서, 현재 블록과 참조 블록 내 상호간의 픽셀 값들에 대한 유사도 검정을 위해 통계적 가설을 세우는 것에 있어서, 평균과 분산 중 적어도 하나에 대해 두 블록의 픽셀 값을 비교하기 위한 가설로 세우는 과정을 더 포함하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  5. 제 1 항에 있어서, 상기 단계(b)는,
    통계적 가설 검증을 이용하기 위한 가설에 대해 검증 통계량이 주어진 신뢰구간에 존재하는지 여부에 대해 판정하여 유사도를 판정하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  6. 제 1 항에 있어서, 상기 단계(c)에서,
    기타 움직임 블록 타입에 대해 움직임 예측 및 보상 과정을 수행하지 않고 움직임 예측 및 보상 과정을 조기 종료하는 단계를 더 포함하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  7. 제 1 항에 있어서, 상기 단계(e)는,
    각 움직임 추정 블록 타입에 대한 율-왜곡 비용을 비교하여 최소 비용을 발생시키는 움직임 추정 블록 타입을 최종 움직임 블록 타입으로 결정하는 것을 특징으로 하는 고속 움직임 모드 결정 방법.
  8. 제 1 항 내지 제 7 항 중 어느 한 항의 방법을 컴퓨터로 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020060128081A 2006-12-14 2006-12-14 고속 움직임 모드 결정 방법 KR100845644B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060128081A KR100845644B1 (ko) 2006-12-14 2006-12-14 고속 움직임 모드 결정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060128081A KR100845644B1 (ko) 2006-12-14 2006-12-14 고속 움직임 모드 결정 방법

Publications (2)

Publication Number Publication Date
KR20080055135A KR20080055135A (ko) 2008-06-19
KR100845644B1 true KR100845644B1 (ko) 2008-07-10

Family

ID=39801998

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060128081A KR100845644B1 (ko) 2006-12-14 2006-12-14 고속 움직임 모드 결정 방법

Country Status (1)

Country Link
KR (1) KR100845644B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100100540A (ko) * 2009-03-06 2010-09-15 삼성전자주식회사 동영상 부호화기/복호화기 및 그 동영상 부호화기/복호화기에서의 동영상 부호화/복호화를 위한 블록모드 결정방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060021149A (ko) * 2004-09-02 2006-03-07 삼성전자주식회사 매크로블록 타입 결정 방법
KR20060092813A (ko) * 2004-06-27 2006-08-23 애플 컴퓨터, 인크. 비디오 데이터의 인코딩을 위한 인코딩 유형 및 예측 모드선택
KR20070050335A (ko) * 2005-11-10 2007-05-15 한국전자통신연구원 동영상 부호화기를 위한 부호 블록 패턴 예측 방법과 그를적용한 블록 모드 결정 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060092813A (ko) * 2004-06-27 2006-08-23 애플 컴퓨터, 인크. 비디오 데이터의 인코딩을 위한 인코딩 유형 및 예측 모드선택
KR20060021149A (ko) * 2004-09-02 2006-03-07 삼성전자주식회사 매크로블록 타입 결정 방법
KR20070050335A (ko) * 2005-11-10 2007-05-15 한국전자통신연구원 동영상 부호화기를 위한 부호 블록 패턴 예측 방법과 그를적용한 블록 모드 결정 방법

Also Published As

Publication number Publication date
KR20080055135A (ko) 2008-06-19

Similar Documents

Publication Publication Date Title
Yang et al. Low-complexity CTU partition structure decision and fast intra mode decision for versatile video coding
KR100898176B1 (ko) 비디오 인코딩을 위한 인터 모드 결정 방법
CN101023674B (zh) 用于中间帧的快速模式判定的方法和装置
KR100728031B1 (ko) 가변 블록 크기 움직임 예측을 위한 부호화 모드 결정 방법및 장치
KR100957316B1 (ko) 멀티미디어 코딩을 위한 모드 선택 기술
JP4777889B2 (ja) 映像符号化における中間予測のためのモード判定
CN100551025C (zh) 宏块编码方法及编码器
KR100739714B1 (ko) 인트라 예측 모드 결정 방법 및 장치
US20090279603A1 (en) Method and Apparatus for Adaptively Determining a Bit Budget for Encoding Video Pictures
US20060120452A1 (en) Fast multi-frame motion estimation with adaptive search strategies
JP2014090427A (ja) ビデオ符号器におけるbフレームの高速モード決定のための方法および装置
JP2005191706A (ja) 動画像符号化方法及びその装置
US10440384B2 (en) Encoding method and equipment for implementing the method
KR20080009608A (ko) 움직임 예측장치 및 방법과 이를 채용하는 영상 부호화장치및 방법
Kuo et al. A spatiotemporal content-based CU size decision algorithm for HEVC
CN109688411B (zh) 一种视频编码率失真代价估计方法和装置
JP2008503919A (ja) ビデオ符号化を最適化する方法および装置
JP4130617B2 (ja) 動画像符号化方法および動画像符号化装置
KR100845644B1 (ko) 고속 움직임 모드 결정 방법
Chen et al. CNN-based fast HEVC quantization parameter mode decision
CN109587487B (zh) 一种对rdo策略的结构性失真度的评估方法及***
Kuo et al. Fast macroblock partition prediction for H. 264/AVC
CN117294861B (zh) 一种基于帧间预测的编码块划分方法及编码器
Amara et al. Trailing artifact avoidance for low bit-rate block-based video coders
Lu et al. Fast block size selection for H. 264 video-downsizing transcoding

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
FPAY Annual fee payment

Payment date: 20131007

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140630

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee