KR100933119B1 - 개선된 멀티미디어 데이터 인코딩 - Google Patents

개선된 멀티미디어 데이터 인코딩 Download PDF

Info

Publication number
KR100933119B1
KR100933119B1 KR1020077022765A KR20077022765A KR100933119B1 KR 100933119 B1 KR100933119 B1 KR 100933119B1 KR 1020077022765 A KR1020077022765 A KR 1020077022765A KR 20077022765 A KR20077022765 A KR 20077022765A KR 100933119 B1 KR100933119 B1 KR 100933119B1
Authority
KR
South Korea
Prior art keywords
frame
quantization parameter
block
determining
motion vector
Prior art date
Application number
KR1020077022765A
Other languages
English (en)
Other versions
KR20070110533A (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 콸콤 인코포레이티드
Publication of KR20070110533A publication Critical patent/KR20070110533A/ko
Application granted granted Critical
Publication of KR100933119B1 publication Critical patent/KR100933119B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

비디오 데이터와 같은 멀티미디어 데이터를 코딩하기 위한 방법들 및 장치가 개시된다. 그러한 실시예들에서, 그러한 방법들 및 장치는 효과적으로 그러한 멀티미디어 데이터를 코딩하는데 이용되는 적절한 양자화 파라미터를 선택한다.

Description

개선된 멀티미디어 데이터 인코딩{IMPROVED ENCODING OF MULTIMEDIA DATA}
본 출원은 "개선된 B 프레임 인코딩"이라는 명칭으로 2005년 3월 10일에 출원된 미국 가출원번호 제60/660,874호의 우선권을 주장하며, 이 가출원은 본 발명의 양수인에게 양도되고 여기에 참조로 통합된다.
본 발명은 일반적으로 멀티미디어 데이터의 코딩, 더 상세하게는 비디오 데이터의 코딩에 관한 것이다.
멀티미디어 서비스들에 대한 증가하는 요구와 함께 인터넷 및 무선 통신의 폭발적 성장 및 큰 성공에 힘입어, 인터넷 또는 무선 채널들을 통해 멀티미디어 데이터를 스트리밍(stream)하는 것은 대단한 주의를 끌었다. 예를 들어, 비디오 데이터와 같은 멀티미디어 데이터가 네트워크에 의해 전송되고 이동 전화들 또는 텔레비젼들과 같은 하나 이상의 클라이언트(client)들에 의해 스트리밍될 수 있다. 전송 모드는 유니-캐스트(uni-cast) 또는 멀티-캐스트(multi-cast) 어느 쪽일 수도 있다. 무선 통신 시스템들의 경우에, 무선 인터페이스(air interface)는 다음의 기술들 중 하나를 이용하여 구현될 수 있다: 코드 분할 다중 접속(CDMA), 주파수 분할 다중 접속(FDMA), 직교 주파수 분할 다중접속(OFDMA), 시분할 다중 접속(TDMA), 이동 통신 세계화 시스템(Global System for Mobile Communication, GSM) 및 광대역 CDMA(WCDMA).
전송에 앞서, 비디오 데이터는 코딩된다. 많은 비디오 코딩 표준들이 존재하며 이들 중 일부는 MPEG-2, MPEG-4, H.263, H.264 등이다. 비디오 데이터는 세 가지 종류의 프레임들을 포함한다 - I 프레임들(인트라프레임(intraframe)들), P 프레임들(예측프레임(predictive frame)들) 및 B 프레임들(양-방향 프레임(bi-directional frame)들).
먼저 I 프레임들을 보면, 이들은 임의의 다른 프레임들을 참조하지 않고 코딩된다. 즉, 이들은 예를 들어, 이산 코사인 변환(discrete cosine transform, DCT), 양자화, 런-렝스 부호화(run-length encoding) 등을 이용함으로써 정지 화상(still image)들이 코딩되는 것과 동일한 방식으로, 프레임 자체 내의 정보를 이용하여 코딩된다. 이는 인트라코딩(intracoding)이라 불리운다. 일반적으로 각각 제 2 비디오 데이터와 관련된 하나 또는 두 개의 I 프레임들이 있다. 복합 프레임(complex frame)들은 I 프레임들로서 인코딩된다.
P 및 B 프레임들에 있어서, 이들 모두는 이전 프레임을 참조로 하여 코딩, 즉 인터코딩 ( intercode ) 된다. P 프레임들은, 전방 예측(forward prediction)이라고 지칭되는 이전 프레임을 참조로 코딩된다. B 프레임들은 이전 프레임(전방 예측) 및 다음 프레임(후방 예측(backward prediction)) 중 하나 또는 모두를 참조로 코딩된다. 전방, 후방 또는 전방 및 후방 예측들 모두를 이용함으로써 코딩에 더 적은 비트들이 이용될 수 있는데 이는 하나의 프레임으로부터 다음 프레임까지의 변화들만이 코딩되기 때문이다.
또한, 비디오 코딩에 있어서 B프레임들이 도입되어 시간 확장성(scalability)과 코딩 효율과 같은 더 나은 기능성들을 제공한다. B프레임들은 상기 기술된 바와 같이 그 인접한 과거 또는 미래의 프레임들로부터 모션 보상 예측(motion compensated prediction)을 이용할 수 있다. 이러한 기준 프레임(reference frame)들은 인코딩된후 B프레임들 전에 재구성된다. 각각의 블록, 예컨대 픽셀들의 16 x 16 블록 또는 매크로블록(macroblock, MB)은, B프레임에서 어느 한 방향 또는 두가지 방향들 모두로부터의 예측을 이용할 수 있어서 이러한 옵션들은 시간 확장성을 제공한다. 코딩 효율이 달성되는데 이는 상기 예측 후에 결정되는 B프레임과 기준 프레임 간의 데이터 차이 또는 잔여 데이터 만이 변환되고, 양자화되며 코딩되기 때문이다.
비디오 프레임과 같은 멀티미디어 데이터를 효율적으로 코딩하기 위해, 적절한 양자화 파라미터 결정이 비디오 프레임을 코딩하는데 요망된다.
기술되는 방법들 및 장치는 일반적으로 비디오 데이터의 코딩에 관한 것이다. 일 실시예로, 그 안에 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들이 수신된다. B프레임의 블록이 어떻게 구분(partition)될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 상기 B 프레임 및 제 1 기준 프레임과 관련되는 제 1 모션 벡터(motion vector)가 결정되고 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터(default quantization parameter)를 이용함으로써 코스트(cost)가 결정된다. 상기 코스트 결정들에 기초하여, 상기 코딩 모드들 중 하나가 상기 코스트 결정들에 기초하여 선택된다. 양자화 파라미터는 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 결정된다. B프레임의 블록은 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용함으로써 인코딩된다.
다른 실시예로, 그 안에 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들이 수신된다. 상기 B 프레임의 블록이 어떻게 구분될 수 있는지를 지시하는 둘 이상의 코딩 모드에 대해, 상기 B 프레임과 관련된 제 1 모션 벡터 및 제 1 기준 프레임이 결정되고 양자화 파라미터는 상기 제 1 모션 벡터를 이용하여 B 프레임의 블록에 대해 결정된다. 상기 코딩 모드들에 대해 결정되는 양자화 파라미터들 중 하나가 선택된다. B 프레임의 블록은 상기 선택된 양자화 파라미터 및 이와 관련된 코딩 모드를 이용하여 인코딩된다.
도 1은 인코더 및 디코더를 포함하는 시스템을 나타낸다;
도 2는 특정 프레임 블록과 관련된 양자화 파라미터의 결정을 나타낸다;
도 3은 비디오 프레임 블록이 인코딩을 위해 어떻게 구분될 수 있는지를 지시하는 다양한 코딩 모드들을 나타낸다;
도 4는 데이터를 인코딩하기 위한 예시적인 방법을 나타낸다;
도 5는 데이터를 인코딩하기 위한 예시적인 장치를 나타낸다;
도 6은 데이터를 인코딩하기 위한 방법의 다른 예를 나타낸다; 그리고
도 7은 데이터를 인코딩하기 위한 장치의 다른 예를 나타낸다.
이하의 실시예는 예를 들어 종래의 방법들과 비교하여 비디오 프레임을 코딩하는데 더 적은 비트들이 할당될 수 있도록 양자화 파라미터가 어떻게 결정될 수 있는지에 대한 몇가지 예들을 제시한다. 그러한 비트 감소(bit reduction)는 특히 비디오 방송(broadcasting)과 같은 대역폭 제한 애플리케이션들에 대해 더 높은 효율을 가져올 수 있다.
이하의 실시예에서, 특정한 상세한 설명이 본 실시예들의 완전한 이해를 제공하기 위해 주어진다. 그러나, 당업자는 실시예들이 이러한 특정 상세한 설명들 없이도 실시될 수 있음을 이해할 것이다. 예를 들어, 전기 소자(component)들은 실시예들을 불필요한 상세한 설명으로 모호하게 하지 않기 위해 블록 다이어그램들로 도시될 수 있다. 다른 예들로, 그러한 소자들, 다른 구조들 및 기술들은 실시예들을 더 설명하기 위해 상세하게 도시될 수 있다. 또한 당업자들은 개별적인 블록들로 도시되는 전기 소자들이, 재배열되고, 결합되거나 재배열되어 하나의 소자로 결합될 수 있음을 이해할 것이다.
또한 일부 실시예들은 프로세스로서 기술될 수 있으며, 이들은 순서도, 순서 다이어그램, 구조 다이어그램, 또는 블록다이어그램으로 표시됨에 유의하여야 한다. 순서도가 순차적 프로세스로서 동작들을 기술할 수 있을지라도, 그러한 동작들 중 다수는 병행하여 또는 동시에 수행될 수 있으며 상기 프로세스는 반복될 수 있다. 추가로, 동작들의 순서는 재-배열될 수 있다. 프로세스는 그 동작들이 완료되면 종결된다. 프로세스는 방법, 함수, 절차, 서브루틴, 서브프로그램 등에 대응할 수 있다. 프로세스가 함수에 대응할 때, 그 종결은 호출 함수(calling function) 또는 주 함수(main function)로의 함수 복귀에 대응한다.
더 특정하게는, 여기 기술되는 방법들 및 장치가 이동 전화들, 무선 장치들, 개인 휴대 정보 단말(PDA)들, 핸드-헬드 또는 휴대용 컴퓨터들, GPS 수신기/네비게이터들, 카메라들, MP3 플레이어들, 캠코더들, 게임 콘솔들, 손목 시계들, 계산기 들, 텔레비전 모니터들, 평판 디스플레이들, 컴퓨터 모니터들, 전자 사진(electronic photograph)들, 전자 광고판 또는 사인들, 프로젝터들, 건축 구조들 및 미적 구조들(aesthetic structure)과 같은(그러나 이에 제한되는 것은 아님) 다양한 전자 장치들 내에서 구현되거나 관련될 수 있음을 고려하여야 한다. 또한 여기 논의되는 것들과 유사한 장치들은, 개별 디스플레이 장치들에 대한 디스플레이 신호들을 출력하기 보다는 그 자체로 비-디스플레이(non-display) 장치들로서 구성될 수 있다.
도 1은 인코더(105) 및 디코더(110)를 포함하는 시스템(100)을 나타낸다. 앞의 설명중 특정 실시예들은 상기 인코더(105) 내에서 구현될 수 있으며 어떠한 실시예들은 상기 디코더(110) 내에서 구현될 수 있을 것이다. 먼저 인코더(105)를 보면, 인코더(105)는 저장 매체(130)에 접속된 처리기(125)를 포함한다. 상기 처리기(105)는 수신된 비디오 데이터를 인코딩하는데 필요한 다른 소자들(미도시)의 프로세스들 중 일부 또는 전부를 수행하는 컴퓨팅 플랫폼을 제공한다. 일단 상기 수신된 비디오 데이터가 인코딩되면, 그러한 인코딩된 비디오는 상기 저장 매체(130)에 저장될 수 있다. 또한 저장 매체(130)는 상기 인코더(105)의 외부에 위치할 수도 있다.
수신된 비디오 데이터를 코딩하기 위해, 인코더(105)는, 예컨대 [1] DCT를 이용하여 시간 영역에서 표현된 상기 수신된 비디오 데이터를 주파수 영역에서 표현된 비디오 데이터로 변환할 수 있고, [2] 양자화를 이용하여 상기 변환된 비디오 데이터를 인코딩하는데 요구되는 비트들을 감소시킬 수 있으며 [3] 가변 길이 코딩(variable length coding)을 이용하여 디코더(110)로의 종국적인 전송을 위해 상기 양자화된 비디오 데이터를 인코딩하는데 필요한 비트들을 결정할 수 있다.
상기 인코딩된 비디오 데이터가 상기 디코더(110)에 의해 수신된 후, 상기 수신된, 인코딩된 비디오 데이터가 디코딩된다. 더 상세하게는, 상기 디코더(110)의 처리기(165)는 상기 수신된, 인코딩된 비디오 데이터를 디코딩하는데 필요한 다른 소자들(미도시)의 프로세스들중 일부 또는 전부를 수행하는 컴퓨팅 플랫폼을 제공한다. 일단 상기 수신된, 인코딩된 비디오 데이터가 디코딩되면, 그러한 디코딩된 비디오 데이터는 저장 매체(170)에 저장되거나 또는 디스플레이 장치(미도시)에 제공될 수 있다. 또한 저장 매체(170)는 인코더(110)의 외부에 위치할 수 있다.
도 2는 적어도 하나의 인접하는 또는 기준 프레임에 기초하여 결정될 수 있는 B 프레임과 같은 프레임의 특정 블록과 관련된 양자화 파라미터(quantization parameter, QP)의 결정을 나타낸다. 종래의 방법들은 일반적으로 단 하나의 QP를 이용하여 전체 비디오 프레임을 인코딩한다. 어떠한 예들로, 인코딩된 기준 프레임의 하나 이상의 블록들은 그와 함께 관련된 QP를 가질 수 있는데 이는 아마도 인간 시각 체계(HVS: Human Visual System)의 특성들에 기초하여 상기 블록 내의 비디오 데이터의 품질을 고려함으로써 그러한 기준 프레임을 블록 단위로 인코딩하는 것이 바람직할 수 있기 때문이다. 도 2는 블록들(200-216)을 포함하는 기준 프레임 A를 나타내며, 이들 각각은 그와 관련된 QP를 가진다. 더 상세하게는, QP1은 블록(210)에 관련되고, QP2는 블록(208)에 관련되고, QP3는 블록(216)에 관련되며 QP4는 블록(214)과 관련된다. 따라서, 본 명세서는 상기 QP가 어떻게 인코딩될 비디오 프레임의 픽셀 데이터의 블록들 일부에 대해 적응적으로 결정될 수 있는지에 대한 예시들을 기술한다. 그러한 비디오 프레임은 P 프레임 또는 B 프레임일 수 있다.
비디오 프레임의 특정 블록이 인코딩되기 전에, 코딩 모드가 그러한 특정 블록에 대해 선택된다. 도 3은 비디오 프레임의 블록이 어떻게 구분될 수 있는지를 지시하는 다양한 코딩 모드들을 나타낸다. 예를 들어, 픽셀들의 16 x 16 블록은 도시되는 코딩 모드들 중 하나에 따라 구분되어 결과적으로 [a] 두 개의 16 x 8 파티션(partition)들, [b] 두 개의 8 x 16 파티션들 또는 [c] 4 개의 8 x 8 파티션들이 될 수 있다. 또한 도 3은 어떻게 4개의 8 x 8 파티션들 각각이 다른 코딩 모드들에 따라서 추가로 구분될 수 있는지를 나타낸다. 다양한 코딩 모드들이 구분하는데 이용될 수 있으며 따라서 도 3은 이용가능한 코딩 모드들 중 일부 예시들을 나타낸 것으로, 이로부터 하나가 선택되어 픽셀 데이터의 특정 블록을 구분하는 것임을 유의하여야 한다. 코딩 모드들 중 어느 것이 선택될 수 있을 것인지를 결정하기 위해, 각각의 코딩 모드에 대해, 모션 정보, 예컨대 모션 벡터가 결정되고 상기 코딩 모드들 중 하나가 이하에서 추가로 설명되는 바와 같이 선택된다.
도 4는 도 2 및 4을 참조로 추가로 설명되는 복수의 블록들을 자체에 포함하는 비디오 프레임을 코딩하기 위한 방법의 블록도를 나타낸다. 블록(400)을 참조하면, 내부에 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들이 수신된다. 블록(402)을 참조하면, 어떻게 B 프레임의 특정 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 적어도 하나의 모션 벡터, 예컨대 상기 B 프레임 및 제 1 기준 프레임과 관련된 제 1 모션 벡터가 결정된다. 블록(404)을 참조하면, 적어도 두 개의 코딩 모드들 각각에 대해, 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트(cost)가 결정된다. 블록(406)을 참조하면, 코딩 모드들 중 하나가 코스트 결정들에 기초하여 선택된다. 블록(408)을 참조하면, 양자화 파라미터는 상기 선택된 코딩 모드와 관련된 제 1 모션 벡터를 이용함으로써 결정된다. 블록(410)을 참조하면, 상기 QP가 결정되었던 B 프레임의 특정 블록은 그러한 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 인코딩된다.
일부 실시예에서, 상기 제 1 기준 프레임은 시간상 도 2에 도시되는 기준 프레임 A와 같이 B 프레임 전에 수신된다. 다른 실시예에서, 그러한 기준 프레임은 시간상 도 2에 도시되는 기준 프레임 B와 같이 B프레임 후에 수신된다. 또한, 상기 결정된 QP 및 선택된 코딩 모드를 이용하여 인코딩될 특정한 블록은 바람직하게는 MB이다.
블록(408)을 참조하면, 상기 제 1 모션 벡터에 기초하는 B프레임의 특정한 블록과 관련된 제 1 기준 프레임의 픽셀들의 영역은 그와 관련된 하나 이상의 QP들을 가질 수 있다. 예를 들어, 도 2에 도시된 바와같이 관련된 4개의 QP들을 갖는 기준 프레임 A의 음영 영역(218)을 참조하라. 만일 그렇다면, 일부 실시예에서, 양자화 파라미터의 결정은 상기 제 1 기준 프레임의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균(weighted average)을 계산하는 단계를 포함한다. 그러한 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 B 프레임의 특정 블록에 대응한다.
블록(402)를 참조하면, 상기 B 프레임 및 상기 제 1 기준 프레임과 관련되는 모션 벡터들의 제 1 세트가 상기 제 1 모션 벡터를 결정하는 것에 대신하여 결정될 수 있다. 만일 그렇다면, 일부 실시예에서, 코스트 결정은 모션 벡터들의 상기 제 1 세트 및 디폴트 양자화 파라미터를 이용한다. 또한, 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련되는 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함한다. 그러한 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 B 프레임의 특정 블록에 대응한다.
적어도 두 개의 코딩 모드들 각각에 대한 제 1 모션 벡터를 결정하는 것과 더불어, 제 2 모션 벡터가 블록(402)을 참조하여 결정될 수도 있다. 그러한 제 2 모션 벡터는 B 프레임 및 제 2 기준 프레임과 관련된다. 만일, 예컨대 상기 제 1 기준 프레임이 도 2에 도시되는 바와 같이 기준 프레임 A라면, 상기 제 2 기준 프레임은 도 2에 도시되는 기준 프레임 B이거나 또한 시간상 B 프레임 전에 수신되는 다른 기준 프레임일 것이다. 이러한 실시예들에서, 또한 코스트 결정은 상기 제 2 모션 벡터를 이용하며 상기 양자화 파라미터의 결정은 상기 선택된 코딩 모드와 관련된 제 1 및 제 2 모션 벡터들을 이용하는 것을 포함한다.
또한, 상기 제 1 및 제 2 모션 벡터들을 결정하는 것 대신, B 프레임과 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트와 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트가 블록(402)을 참조로 결정될 수 있다. 예를 들어, 상기 제 1 기준 프레임은 도 2에 도시되는 상기 기준 프레임 A일 수 있으며 상기 제 2 기준 프레임은 도 2에 도시되는 기준 프레임 B일 수 있다. 만일 그렇다면, 이러한 실시예들에서, 코스트 결정은 모션 벡터들의 상기 제 1 및 제 2 세트들을 이용한다. 또한, 양자화 파라미터의 결정은 도 2에 도시되는 바와 같이 기준 프레임 A의 픽셀들의 제 1 영역(218)과 관련된 QP1 - QP4 및 기준 프레임 B의 픽셀들의 제 2 영역(220)과 관련된 QP5 - QP8의 가중 평균을 계산하는 단계를 포함한다. 그러한 제 1 영역(218)은 모션 벡터들의 상기 제 1 세트에 기초하는 B 프레임의 블록(222)에 대응하고 상기 제 2 영역(220)은 모션 벡터들의 상기 제 2 세트에 기초하는 B 프레임의 블록(222)에 대응한다.
블록(404)을 참조하면, 상기 코스트 결정은 다음 수식을 이용할 수 있다:
C = R + λD,
여기서 R은 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터에 기초하여 결정되고, λ는 디폴트 양자화 파라미터에 기초하여 결정되며 D는 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터에 기초하여 결정된다.
도 5는 어떠한 기능들을 수행하기 위해 내부에 어떠한 수단을 포함하는 장치의 블록도를 나타낸다. 특히, 그 안에 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 장치가 도 5를 참조로 더 기술된다. 블록(500)을 참조하면, 수신 수단이 그 안에 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하도록 구성된다. 블록(502)를 참조하면, 어떻게 B 프레임의 특정 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 결정 수단이 B 프레임 및 제 1 기준 프레임과 관련되는, 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하도록 구성된다. 블록(504)을 참조하면, 적어도 두 개의 코딩 모드들 각각에 대해, 결정 수단은 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하도록 구성된다. 블록(506)을 참조하면, 선택수단이 코스트 결정들에 기초하여 상기 코딩 모드들 중 하나를 선택하도록 구성된다. 블록(508)을 참조하면, 결정 수단은 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하도록 구성된다. 블록(510)을 참조하면, 인코딩 수단은 상기 QP가 그러한 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 결정되었던 B 프레임의 특정 블록을 인코딩하도록 구성된다. 또한 도 5를 참조하여 앞서 기술된 장치는 도 4에 대체적으로(broadly) 기술된 방법들에 대한 단락 식별항목<26>-<31>에 기술된 추가적인 양상들과 유사한 다른 기능적 양상들을 수행하는 다른 추가적인 수단을 포함한다.
다른 실시예는 그 안에 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 처리기를 포함한다. 더 상세하게는, 상기 처리기는 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하도록 구성된다. 어떻게 B 프레임의 특정 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 상기 처리기는 또한 B 프레임 및 제 1 기준 프레임과 관련되는, 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하도록 구성된다. 또한 상기 적어도 두 개의 코딩 모드들 각각에 대해, 상기 처리기는 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하도록 구성된다. 또한 처리기는 코스트 결정들에 기초하여 상기 코딩 모드들 중 하나를 선택하도록 구성된다. 또한 처리기는 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하도록 구성된다. 또한 처리기는 QP가 그러한 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 결정되었던 B 프레임의 특정 블록을 인코딩하도록 구성된다. 추가로, 앞서 기술된 처리기는 도 4에 의해 대체적으로 기술된 방법에 대한 단락 식별항목<26>-<31>에 기술된 추가적인 양상들과 유사한 다른 양상들을 수행하도록 구성된다.
다른 실시예는 그 안에 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 장치를 포함한다. 특히, 상기 장치는 그 안에 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 수신기를 포함한다. 어떻게 B 프레임의 특정 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 또한 상기 장치는 상기 B 프레임 및 제 1 기준 프레임과 관련된, 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하는 제 1 결정기(determiner)를 포함한다. 또한 적어도 두 개의 코딩 모드들 각각에 대해, 상기 장치는 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하는 제 2 결정기도 포함한다. 또한 상기 장치는 코스트 결정들에 기초하여 상기 코딩 모드들 중 하나를 선택하는 선택기(selector)를 포함한다. 또한 상기 장치는 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하는 제 3 결정기도 포함한다. 또한 상기 장치는 QP가 그러한 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 결정되었던 B 프레임의 특정 블록을 인코딩하는 인코더를 포함한다. 추가로, 앞서 기술된 장치는 도 4에 의해 대체적으로 기술된 방법에 대한 단락 식별항목<26>-<31>에 기술된 추가적인 양상들과 유사한 다른 양상들을 수행하는 추가적인 소자들도 포함한다.
다른 실시예는 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 방법을 구현하는 컴퓨터 판독가능 매체를 포함한다. 그러한 방법은 도 4와 관련하여 대체적으로 기술된 방법에 유사하다. 추가로, 상기 컴퓨터 판독가능 매체는 도 4에 대체적으로 기술된 방법에 대한 단락 식별항목<26>-<31>에 기술된 추가적인 양상들과 유사한 다른 양상들을 포함한다.
도 6은 도 2 및 6을 참조로 하여 추가로 설명되는 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 방법의 블록도이다. 블록(600)을 참조하면, 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들이 수신된다. 블록(602)을 참조하면, 어떻게 B 프레임의 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터가 결정된다. 그러한 제 1 모션 벡터는 상기 B 프레임 및 제 1 기준 프레임과 관련된다. 블록(604)을 참조하면, 또한 상기 적어도 두 개의 코딩 모드들 각각에 대해, B 프레임의 특정 블록에 대한 양자화 파라미터가 상기 제 1 모션 벡터를 이용하여 결정된다. 블록(606)을 참조하면, 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나가 선택된다. 블록(608)을 참조하면, 상기 B 프레임의 특정 블록은 상기 선택된 양자화 파라미터 및 그 관련된 코딩 모드를 이용하여 인코딩된다.
일부 실시예에서, 상기 제 1 기준 프레임은 시간상 도 2에 도시된 바와같이 기준 프레임 A와 같이 B 프레임 전에 수신된다. 다른 실시예에서, 그러한 기준 프레임은 시간상 도 2에 도시된 바와같이 기준 프레임 B와 같이 B 프레임 후에 수신된다. 게다가, 상기 결정된 QP 및 상기 선택된 코딩 모드를 이용하여 인코딩되는 특정 블록은 바람직하게는 MB 이다.
블록(604)을 참조하면, 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 특정 블록과 관련된 제 1 기준 프레임의 픽셀들의 영역은 그와 관련된 하나 이상의 QP들을 가질 수 있다. 예를 들어, 도 2에 도시되는 바와 같이 그와 함께 관련된 4개의 QP들을 가지는 기준 프레임 A의 음영 영역(218)을 참조하라. 만일 그렇다면, 일부 실시예들에서, 양자화 파라미터의 결정은 상기 제 1 기준 프레임의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함한다. 그러한 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 B 프레임의 블록에 대응한다.
블록(602)을 참조하면, 상기 B 프레임 및 상기 제 1 기준 프레임과 관련되는 모션 벡터들의 제 1 세트가 상기 제 1 모션 벡터를 결정하는 대신 결정된다. 만일 그렇다면, 일부 실시예에서, 상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함한다. 그러한 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 B 프레임의 블록에 대응한다.
적어도 두 개의 코딩 모드들 각각에 대한 제 1 모션 벡터를 결정하는 것과 더불어, 제 2 모션 벡터도 결정될 수 있다. 그러한 제 2 모션 벡터는 B 프레임 및 제 2 기준 프레임과 관련된다. 이러한 실시예들에서, 상기 양자화 파라미터의 결정은 상기 제 1 및 제 2 모션 벡터들을 이용하는 것을 포함한다.
게다가, 상기 제 1 및 제 2 모션 벡터들을 결정하는 대신, B 프레임 및 상기 제 1 기준 프레임과 관련되는 모션 벡터들의 제 1 세트와 B 프레임 및 상기 제 2 기준 프레임과 관련되는 모션 벡터들의 제 2 세트는 블록(402)을 참조로 결정될 수 있다. 예를 들어, 상기 제 1 기준 프레임은 도 2에 도시되는 바와 같이 기준 프레임 A일 수 있고 상기 제 2 기준 프레임은 도 2에 도시되는 바와 같이 기준 B일 수 있다. 만일 그렇다면, 이러한 실시예들에서, 양자화 파라미터의 결정은 도 2에 도시되는 바와 같이 기준 프레임 A의 픽셀들의 제 1 영역(218)과 관련된 QP1 - QP4 및 기준 프레임 B의 픽셀들의 제 2 영역(220)과 관련된 QP5 - QP8의 가중 평균을 계산하는 단계를 포함한다. 그러한 제 1 영역(218)은 모션 벡터들의 상기 제 1 세트에 기초하는 B 프레임의 블록(222)에 대응하고 상기 제 2 영역(220)은 모션 벡터들의 상기 제 2 세트에 기초하는 B 프레임의 블록(222)에 대응한다.
블록(606)을 참조하면, 양자화 파라미터 선택은 관련있는 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트들 및 상기 블록과 관련된 왜곡(distortion) 값을 이용하여 적어도 두 개의 모드들 각각에 대한 코스트를 결정하는 단계를 더 포함한다. 만일 그렇다면, 상기 선택된 양자화 파라미터는 최저 코스트 또는 최저 코스트들 중 하나와 관련된다.
도 7은 어떠한 수단을 포함하여 어떠한 기능들을 수행하는 장치의 블록도를 나타낸다. 더 상세하게는, 복수의 블록들을 포함하는 비디오 프레임을 코딩하는 장치가 도 7을 참조로 추가로 설명된다. 블록(700)을 참조하면, 수신 수단은 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하도록 구성된다. 블록(702)을 참조하면, 어떻게 B 프레임의 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해 결정 수단은 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하도록 구성된다. 그러한 제 1 모션 벡터는 B 프레임 및 제 1 기준 프레임과 관련된다. 블록(704)를 참조하면, 적어도 두 개의 코딩 모드들 각각에 대해서도, 결정 수단은 상기 제 1 모션 벡터를 이용하여 B 프레임의 특정 블록에 대한 양자화 파라미터를 결정하도록 구성된다. 블록(706)을 참조하면, 선택 수단은 상기 코딩 모드들에 대해 결정된 양자화 파라미터들 중 하나를 선택하도록 구성된다. 블록(708)을 참조하면, 인코딩 수단은 상기 선택된 양자화 파라미터 및 그 관련된 코딩 모드를 이용하여 B 프레임의 특정 블록을 인코딩하도록 구성된다. 또한 도 7을 참조로 앞서 기술된 장치는 도 6에 의해 대체적으로 기술된 방법에 대한 단락 식별항목 <39>-<44>에 기술된 추가적인 양상들과 유사한 다른 기능적 양상들을 수행하는 다른 추가적인 수단을 포함한다.
다른 실시예는 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 처리기를 포함한다. 더 상세하게는, 상기 처리기는 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하도록 구성된다. 어떻게 B 프레임의 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 또한 상기 처리기는 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하도록 구성된다. 그러한 제 1 모션 벡터는 B 프레임 및 제 1 기준 프레임과 관련된다. 또한 상기 적어도 두 개의 코딩 모드들 각각에 대해, 상기 처리기는 상기 제 1 모션 벡터를 이용하여 B 프레임의 특정 블록에 대한 양자화 파라미터를 결정하도록 구성된다. 또한, 상기 처리기는 상기 코딩 모드들에 대해 결정된 양자화 파라미터들 중 하나를 선택하도록 구성된다. 또한, 상기 처리기는 상기 선택된 양자화 파라미터 및 그와 관련된 코딩 모드를 이용하여 B 프레임의 특정 블록을 인코딩하도록 구성된다. 추가로, 앞서 기술된 처리기는 도 6에 의해 대체적으로 기술된 방법에 대한 단락 식별항목 <39>-<44>에 기술된 추가적인 양상들과 유사한 다른 양상들을 수행하도록 구성된다.
다른 실시예는 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 장치를 포함한다. 더 상세하게는, 상기 장치는 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 수신기를 포함한다. 어떻게 B 프레임의 블록이 구분될 수 있는지를 지시하는 적어도 두 개의 코딩 모드들 각각에 대해, 상기 장치는 또한 적어도 하나의 모션 벡터, 예컨대 제 1 모션 벡터를 결정하는 제 1 결정기를 포함한다. 그러한 제 1 모션 벡터는 B 프레임 및 제 1 기준 프레임과 관련된다. 또한 상기 적어도 두 개의 코딩 모드들 각각에 대해, 상기 장치는 상기 제 1 모션 벡터를 이용하여 B 프레임의 특정 블록에 대한 양자화 파라미터를 결정하는 제 2 결정기를 포함한다. 또한 상기 장치는 상기 코딩 모드들에 대해 결정된 양자화 파라미터들 중 하나를 선택하는 선택기를 포함한다. 또한 상기 장치는 상기 선택된 양자화 파라미터 및 그와 관련된 코딩 모드를 이용하여 B 프레임의 특정 블록을 인코딩하는 인코더를 포함한다. 추가로, 앞서 기술된 장치는 도 6에 의해 대체적으로 기술된 방법에 대한 단락 식별항목 <39>-<44>에 기술된 추가적인 양상들과 유사한 다른 양상들을 수행하는 추가적인 소자들을 포함한다.
다른 실시예는 복수의 블록들을 포함하는 비디오 프레임을 코딩하기 위한 방법을 구현하는 컴퓨터 판독가능 매체를 포함한다. 그러한 방법은 도 6과 관련하여 앞서 대체적으로 기술된 방법과 유사하다. 게다가, 상기 컴퓨터 판독가능 매체는 도 6에 의해 대체적으로 기술된 방법에 대한 단락 식별항목 <39>-<44>에 기술된 추가적인 양상들과 유사한 다른 양상들도 포함한다.
당업자는 정보 및 신호들이 다양한 기술들 및 기법들중 일부를 사용하여 표현될 수 있음을 잘 이해할 것이다. 예를 들어, 본 명세서상에 제시된 데이터, 지령, 명령, 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광 필드 또는 입자, 또는 이들의 임의의 조합으로 표현될 수 있다.
앞서 기술된 실시예들에서, QP는 프레임 내의 각각의 인터 블록(inter block), 예컨대 인터 MB(inter MB)에 대해 결정될 수 있다. 그러한 인터 블록들은 QP들이 전방, 후방 또는 전방 및 후방 예측들 모두에 기초하여 결정될 수 있는 블록들이다. 동일한 프레임의 인트라 블록(intra block)들에 대해, 또한 QP들이 결정될 필요가 있다. 특정 인트라 블록에 대해 그렇게 하기 위해서, 인접 블록들과 관련된 QP(들)은 그러한 특정 인트라 블록의 QP를 결정하기 위하여 사용될 수 있다.
당업자는 여기에서 제시된 예들과 관련하여 기술된 다양한 예시적인 논리블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 펌웨어, 컴퓨터 소프트웨어, 미들웨어, 마이크로코드 또는 또는 이들의 조합으로서 구현될 수 있음을 잘 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 기술하기 위하여, 다양한 예시적인 소자들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능적 관점에서 기술되었다. 이러한 기능이 하드웨어로 구현되는지, 또는 소프트웨어로 구현되는지는 특정 애플리케이션 및 전체 시스템에 대해 부가된 설계 제한들에 의존한다. 당업자는 이러한 기능들을 각각의 특정 애플리케이션에 대해 다양한 방식으로 구현할 수 있지만, 이러한 구현 결정이 제시된 방법들의 범위를 벗어나는 것은 아니다.
여기에서 제시된 실시예들과 관련하여 기술된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들이 범용 처리기; 디지털 신호 처리기(DSP); 주문형 집적회로(ASIC); 필드 프로그램어블 게이트 어레이(FPGA); 또는 다른 프로그램어블 논리 장치; 이산 게이트 또는 트랜지스터 논리; 이산 하드웨어 소자들; 또는 여기에 기술된 기능들을 수행하도록 설계된 것들의 조합을 통해 구현 또는 수행될 수 있다. 범용 처리기는 마이크로 처리기 일 수 있지만; 대안적 실시예에서, 이러한 처리기는 기존 처리기, 제어기, 마이크로제어기, 또는 상태 머신일 수 있다. 처리기는 예를 들어, DSP 및 마이크로처리기, 복수의 마이크로처리기들, DSP 코어와 결합된 하나 이상의 마이크로 처리기, 또는 이러한 구성들의 조합과 같이 계산 장치들의 조합으로서 구현될 수 있다.
여기에서 제시된 실시예들과 관련하여 기술된 방법의 단계들 및 알고리즘은 하드웨어에서, 처리기에 의해 실행되는 소프트웨어 모듈에서, 또는 이들의 조합에 의해 직접 구현될 수 있다. 소프트웨어 모듈들은 RAM 메모리; 플래시 메모리; ROM 메모리; EPROM 메모리; EEPROM 메모리; 레지스터들, 하드 디스크; 휴대용 디스크; CD-ROM; 또는 공지된 임의의 다른 형태의 저장 매체에 상주할 수 있다. 예시적인 저장매체는 처리기와 접속되어, 처리기는 저장매체로부터 정보를 판독하여 저장매체에 정보를 기록한다. 대안적으로, 저장 매체는 처리기의 구성요소일 수 있다. 이러한 처리기 및 저장매체는 ASIC 에 위치한다. ASIC는 사용자 단말에 위치할 수 있다. 대안적으로, 처리기 및 저장 매체는 사용자 단말에서 이산 소자로서 존재할 수 있다.
제시된 실시예들에 대한 이전 설명은 당업자로 하여금 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들이 당업자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 다른 예들에 적용될 수 있으며, 추가 엘리먼트들이 추가될 수 있다. 따라서, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.

Claims (80)

  1. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법으로서:
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 단계;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분(partition)될 수 있는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하는 단계, 및
    (b) 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터(default quantization parameter)를 이용하여 코스트(cost)를 결정하는 단계;
    (3) 상기 결정된 코스트에 기초하여 상기 코딩 모드들 중 하나를 선택하는 단계;
    (4) 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하는 단계; 및
    (5) 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하는 단계를 포함하는,
    비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  2. 제 1 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  3. 제 1 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균(weighted average)을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  4. 제 1 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 세트 및 상기 디폴트 양자화 파라미터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  5. 제 1 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    제 2 모션 벡터를 결정하는 단계를 더 포함하며, 상기 제 2 모션 벡터는 상기 B 프레임 및 제 2 기준 프레임과 관련되고;
    상기 코스트 결정은 또한 상기 제 2 모션 벡터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 선택된 코딩 모드와 관련된 상기 제 1 및 제 2 모션 벡터들을 이용하는 단계를 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  6. 제 5 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 단계를 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 및 제 2 세트들을 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  7. 제 1 항에 있어서,
    상기 코스트 결정은 상기 제 1 모션 벡터 및 상기 디폴트 양자화 파라미터에 기초하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  8. 제 1 항에 있어서,
    상기 인코딩된 블록은 매크로블록(macroblock)인, 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법.
  9. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법을 처리기의 사용으로 구현하는 컴퓨터 판독가능 매체로서, 상기 방법은:
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 단계;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하는 단계, 및
    (b) 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하는 단계;
    (3) 상기 결정된 코스트에 기초하여 상기 코딩 모드들 중 하나를 선택하는 단계;
    (4) 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하는 단계; 및
    (5) 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  10. 제 9 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 컴퓨터 판독가능 매체.
  11. 제 9 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  12. 제 9 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 세트 및 상기 디폴트 양자화 파라미터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  13. 제 9 항에 있어서, 상기 방법은:
    상기 두 개 이상의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하는 단계를 더 포함하고;
    상기 코스트 결정은 또한 상기 제 2 모션 벡터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 선택된 코딩 모드와 관련된 상기 제 1 및 제 2 모션 벡터들을 이용하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  14. 제 13 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 단계를 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 및 제 2 세트들을 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  15. 제 9 항에 있어서,
    상기 코스트 결정은 상기 제 1 모션 벡터 및 상기 디폴트 양자화 파라미터에 기초하는, 컴퓨터 판독가능 매체.
  16. 제 9 항에 있어서,
    상기 인코딩된 블록은 매크로블록인, 컴퓨터 판독가능 매체.
  17. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치로서,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하기 위한 수단;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하기 위한 수단, 및
    (b) 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하기 위한 수단;
    (3) 상기 결정된 코스트에 기초하여 상기 코딩 모드들 중 하나를 선택하기 위한 수단;
    (4) 상기 선택된 코딩 모드와 관련된 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하기 위한 수단; 및
    (5) 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하기 위한 수단을 포함하는,
    비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  18. 제 17 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  19. 제 17 항에 있어서,
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  20. 제 17 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 코스트를 결정하기 위한 수단은 모션 벡터들의 상기 제 1 세트 및 상기 디폴트 양자화 파라미터를 이용하고; 및
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  21. 제 17 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하기 위한 수단을 더 포함하며;
    상기 코스트를 결정하기 위한 수단은 또한 상기 제 2 모션 벡터를 이용하고; 및
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 선택된 코딩 모드와 관련된 상기 제 1 및 제 2 모션 벡터들을 이용하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  22. 제 21 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 제 2 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하고;
    상기 코스트를 결정하기 위한 수단은 모션 벡터들의 상기 제 1 세트 및 제 2 세트를 이용하고; 및
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  23. 제 17 항에 있어서,
    상기 결정 수단은 상기 제 1 모션 벡터 및 상기 디폴트 양자화 파라미터에 기초하여 상기 코스트를 결정하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  24. 제 17 항에 있어서,
    상기 인코딩된 블록은 매크로블록인, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  25. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기로서, 상기 처리기는,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하고;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하고, 및
    (b) 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하고;
    (3) 상기 결정된 코스트에 기초하여 상기 코딩 모드들 중 하나를 선택하고;
    (4) 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하고; 및
    (5) 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하도록 구성되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  26. 제 25 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  27. 제 25 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  28. 제 25 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 것을 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 세트 및 상기 디폴트 양자화 파라미터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  29. 제 25 항에 있어서, 상기 처리기는,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하도록 추가로 구성되고;
    상기 코스트 결정은 상기 제 2 모션 벡터를 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 선택된 코딩 모드와 관련된 상기 제 1 및 제 2 모션 벡터들을 이용하는 것을 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  30. 제 29 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 것을 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 것을 포함하고;
    상기 코스트 결정은 모션 벡터들의 상기 제 1 및 제 2 세트들을 이용하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  31. 제 25 항에 있어서,
    상기 코스트 결정은 상기 제 1 모션 벡터 및 상기 디폴트 양자화 파라미터에 기초하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  32. 제 25 항에 있어서,
    상기 인코딩된 블록은 매크로블록인, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  33. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치로서,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하기 위한 수신기;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하기 위한 제 1 결정기(determiner), 및
    (b) 상기 제 1 모션 벡터 및 디폴트 양자화 파라미터를 이용하여 코스트를 결정하기 위한 제 2 결정기;
    (3) 상기 결정된 코스트에 기초하여 상기 코딩 모드들 중 하나를 선택하기 위한 선택기(selector);
    (4) 상기 선택된 코딩 모드와 관련된 상기 제 1 모션 벡터를 이용하여 양자화 파라미터를 결정하기 위한 제 3 결정기; 및
    (5) 상기 결정된 양자화 파라미터 및 상기 선택된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하기 위한 인코더를 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  34. 제 33 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  35. 제 33 항에 있어서,
    상기 제 3 결정기는 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  36. 제 33 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 결정기는 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 제 2 결정기는 모션 벡터들의 상기 제 1 세트 및 상기 디폴트 양자화 파라미터를 이용하고; 및
    상기 제 3 결정기는 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  37. 제 33 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하기 위한 제 4 결정기를 더 포함하고;
    상기 제 2 결정기는 또한 상기 제 2 모션 벡터를 이용하고; 및
    상기 제 3 결정기는 상기 선택된 코딩 모드와 관련된 상기 제 1 및 제 2 모션 벡터들을 이용하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  38. 제 37 항에 있어서,
    선택된 코딩 모드에 대해 상기 제 1 결정기는 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 제 4 결정기는 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하고;
    상기 제 2 결정기는 모션 벡터들의 상기 제 1 및 제 2 세트들을 이용하고; 및
    상기 제 3 결정기는 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  39. 제 33 항에 있어서,
    상기 제 2 결정기는 상기 제 1 모션 벡터 및 상기 디폴트 양자화 파라미터를 이용하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  40. 제 33 항에 있어서,
    상기 인코딩된 블록은 매크로블록인, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치
  41. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법으로서,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 단계;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하는 단계, 및
    (b) 상기 제 1 모션 벡터를 이용하여 상기 B 프레임의 블록에 대한 양자화 파라미터를 결정하는 단계;
    (3) 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나를 선택하는 단계; 및
    (4) 상기 선택된 양자화 파라미터 및 상기 선택된 양자화 파라미터와 관련된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하는 단계를 포함하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  42. 제 41 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  43. 제 41 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  44. 제 41 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  45. 제 41 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하는 단계를 더 포함하며, 상기 양자화 파라미터의 결정은 상기 제 1 및 제 2 모션 벡터들을 이용하는 단계를 포함하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  46. 제 45 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 단계를 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  47. 제 41 항에 있어서,
    상기 양자화 파라미터 선택은 상기 코딩 모드와 관련된 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트(bit)들 및 상기 블록과 관련된 왜곡(distortion) 값을 이용하여 각각의 모드에 대한 코스트를 결정하는 단계를 더 포함하는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  48. 제 47 항에 있어서,
    상기 선택된 양자화 파라미터는 각각의 모드에 대한 최저 코스트들 중 하나와 관련되는, 비디오 프레임의 하나 이상의 비디오 블록들을 코딩하는 방법.
  49. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 방법을 구현하는 컴퓨터 판독가능 매체로서, 상기 방법은:
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하는 단계;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하는 단계, 및
    (b) 상기 제 1 모션 벡터를 이용하여 상기 B 프레임의 블록에 대한 양자화 파라미터를 결정하는 단계;
    (3) 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나를 선택하는 단계; 및
    (4) 상기 선택된 양자화 파라미터 및 상기 선택된 양자화 파라미터와 관련된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  50. 제 49 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 컴퓨터 판독가능 매체.
  51. 제 49 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  52. 제 49 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  53. 제 49 항에 있어서, 상기 방법은:
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하는 단계를 더 포함하며, 상기 양자화 파라미터의 결정은 상기 제 1 및 제 2 모션 벡터들을 이용하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  54. 제 53 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 단계를 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 단계를 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 단계를 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 컴퓨터 판독가능 매체.
  55. 제 49 항에 있어서,
    상기 양자화 파라미터 선택은 상기 코딩 모드와 관련된 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트(bit)들 및 상기 블록과 관련된 왜곡(distortion) 값을 이용하여 각각의 모드에 대한 코스트를 결정하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  56. 제 55 항에 있어서,
    상기 선택된 양자화 파라미터는 각각의 모드에 대한 최저 코스트들 중 하나와 관련되는, 컴퓨터 판독가능 매체.
  57. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치로서,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하기 위한 수단;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하기 위한 수단; 및
    (b) 상기 제 1 모션 벡터를 이용하여 상기 B 프레임의 블록에 대한 양자화 파라미터를 결정하기 위한 수단;
    (3) 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나를 선택하기 위한 수단; 및
    (4) 상기 선택된 양자화 파라미터 및 상기 선택된 양자화 파라미터와 관련된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하기 위한 수단을 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  58. 제 57 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  59. 제 57 항에 있어서,
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  60. 제 57 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고; 및
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  61. 제 57 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하기 위한 수단을 더 포함하며, 상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 및 제 2 모션 벡터들을 이용하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  62. 제 61 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 제 2 모션 벡터를 결정하기 위한 수단은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하고; 및
    상기 양자화 파라미터를 결정하기 위한 수단은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  63. 제 57 항에 있어서,
    상기 선택 수단은 상기 코딩 모드와 관련된 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트(bit)들 및 상기 블록과 관련된 왜곡 값을 이용하여 각각의 모드에 대한 코스트를 결정하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  64. 제 63 항에 있어서,
    상기 선택된 양자화 파라미터는 각각의 모드에 대한 최저 코스트들 중 하나와 관련되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  65. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기로서, 상기 처리기는,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하고;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하고, 및
    (b) 상기 제 1 모션 벡터를 이용하여 상기 B 프레임의 블록에 대한 양자화 파라미터를 결정하고;
    (3) 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나를 선택하고; 및
    (4) 상기 선택된 양자화 파라미터 및 상기 선택된 양자화 파라미터와 관련된 코딩 모드를 이용하여 상기 B 프레임의 블록을 인코딩하도록 구성되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  66. 제 65 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  67. 제 65 항에 있어서,
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  68. 제 67 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 것을 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  69. 제 65 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하도록 추가로 구성되며, 상기 양자화 파라미터의 결정은 상기 제 1 및 제 2 모션 벡터들을 이용하는 것을 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  70. 제 65 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터의 결정은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하는 것을 포함하고;
    상기 제 2 모션 벡터의 결정은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하는 것을 포함하고; 및
    상기 양자화 파라미터의 결정은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하는 것을 포함하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  71. 제 65 항에 있어서,
    상기 양자화 파라미터 선택은 상기 코딩 모드와 관련된 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트(bit)들 및 상기 블록과 관련된 왜곡 값을 이용하여 각각의 모드에 대한 코스트를 결정하는 것을 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  72. 제 71 항에 있어서,
    상기 선택된 양자화 파라미터는 각각의 모드에 대한 최저 코스트들 중 하나와 관련되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 처리기.
  73. 복수의 블록들을 포함하는 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치로서,
    (1) 적어도 하나의 B 프레임을 포함하는 연속적인 비디오 프레임들을 수신하기 위한 수단;
    (2) 적어도 두 개의 코딩 모드들―상기 적어도 두개의 코딩 모드들은 상기 B 프레임의 블록이 구분되는 상이한 방식들을 정의함 ―에 대해:
    (a) 상기 B 프레임 및 제 1 기준 프레임(reference frame)과 관련된 제 1 모션 벡터(motion vector)를 결정하기 위한 수단, 및
    (b) 상기 제 1 모션 벡터를 이용하여 상기 B 프레임의 블록에 대한 양자화 파라미터를 결정하기 위한 수단;
    (3) 상기 코딩 모드들에 대해 결정된 상기 양자화 파라미터들 중 하나를 선택하기 위한 수단; 및
    (4) 상기 선택된 양자화 파라미터 및 상기 선택된 양자화 파라미터와 관련된 코딩 모드를 이용하여 상기 B 프레임의 상기 블록을 인코딩하기 위한 수단을 포함하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  74. 제 73 항에 있어서,
    상기 제 1 기준 프레임은 시간적으로 상기 B 프레임 전에 또는 후에 수신되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  75. 제 73 항에 있어서,
    상기 양자화 파라미터 결정 수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 상기 제 1 모션 벡터에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  76. 제 73 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터 결정수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하며; 및
    상기 양자화 파라미터 결정수단은 상기 제 1 기준 프레임 내의 픽셀들의 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  77. 제 73 항에 있어서,
    상기 적어도 두 개의 코딩 모드들에 대해:
    상기 B 프레임 및 제 2 기준 프레임과 관련된 제 2 모션 벡터를 결정하기 위한 수단을 더 포함하며, 상기 양자화 파라미터 결정수단은 상기 제 1 및 제 2 모션 벡터들을 이용하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  78. 제 77 항에 있어서,
    상기 코딩 모드들 중 하나에 대해 상기 제 1 모션 벡터 결정수단은 상기 B 프레임 및 상기 제 1 기준 프레임과 관련된 모션 벡터들의 제 1 세트를 결정하고;
    상기 제 2 모션 벡터 결정수단은 상기 B 프레임 및 상기 제 2 기준 프레임과 관련된 모션 벡터들의 제 2 세트를 결정하고; 및
    상기 양자화 파라미터 결정수단은 상기 제 1 기준 프레임 내의 픽셀들의 제 1 영역 및 상기 제 2 기준 프레임 내의 픽셀들의 제 2 영역과 관련된 양자화 파라미터들의 가중 평균을 계산하며, 상기 픽셀들의 제 1 영역은 모션 벡터들의 상기 제 1 세트에 기초하는 상기 B 프레임의 블록에 대응하고 상기 픽셀들의 제 2 영역은 모션 벡터들의 상기 제 2 세트에 기초하는 상기 B 프레임의 블록에 대응하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  79. 제 73 항에 있어서,
    상기 양자화 파라미터 선택수단은 상기 코딩 모드와 관련된 결정된 양자화 파라미터, 상기 블록을 인코딩하는데 이용되는 비트들 및 상기 블록과 관련된 왜곡(distortion) 값을 이용하여 각각의 모드에 대해 코스트를 결정하는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
  80. 제 79 항에 있어서,
    상기 선택된 양자화 파라미터는 각각의 모드에 대한 최저 코스트들 중 하나와 관련되는, 비디오 프레임의 하나 이상의 블록들을 코딩하는 장치.
KR1020077022765A 2005-03-10 2006-03-10 개선된 멀티미디어 데이터 인코딩 KR100933119B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US66087405P 2005-03-10 2005-03-10
US60/660,874 2005-03-10
PCT/US2006/008770 WO2006099229A1 (en) 2005-03-10 2006-03-10 Improved encoding of multimedia data

Publications (2)

Publication Number Publication Date
KR20070110533A KR20070110533A (ko) 2007-11-19
KR100933119B1 true KR100933119B1 (ko) 2009-12-21

Family

ID=36642963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077022765A KR100933119B1 (ko) 2005-03-10 2006-03-10 개선된 멀티미디어 데이터 인코딩

Country Status (16)

Country Link
US (1) US8548055B2 (ko)
EP (2) EP2453653A3 (ko)
JP (1) JP5048645B2 (ko)
KR (1) KR100933119B1 (ko)
CN (1) CN101171842B (ko)
AR (1) AR053164A1 (ko)
AU (1) AU2006223197C1 (ko)
BR (1) BRPI0608231A2 (ko)
CA (1) CA2600455A1 (ko)
IL (1) IL185826A0 (ko)
MX (1) MX2007011098A (ko)
NO (1) NO20075132L (ko)
RU (2) RU2345503C1 (ko)
TW (1) TW200711479A (ko)
UA (1) UA87901C2 (ko)
WO (1) WO2006099229A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548055B2 (en) 2005-03-10 2013-10-01 Qualcomm Incorporated Encoding of multimedia data
CN102611892B (zh) 2006-03-16 2014-10-08 华为技术有限公司 在编码过程中实现自适应量化的方法及装置
KR101356734B1 (ko) * 2007-01-03 2014-02-05 삼성전자주식회사 움직임 벡터 트랙킹을 이용한 영상의 부호화, 복호화 방법및 장치
AU2007351295B2 (en) 2007-03-20 2011-03-31 Fujitsu Limited Time-varying image encoding method and device, and time-varying image decoding device
JP4842899B2 (ja) * 2007-08-15 2011-12-21 Kddi株式会社 動画像符号化装置、動画像符号化方法およびプログラム
US8542730B2 (en) * 2008-02-22 2013-09-24 Qualcomm, Incorporated Fast macroblock delta QP decision
US8588297B2 (en) * 2009-12-23 2013-11-19 Oracle America, Inc. Quantization parameter prediction
CN101888550A (zh) * 2010-06-28 2010-11-17 中兴通讯股份有限公司 一种slice头信息中量化参数编码方法和装置
JP6056122B2 (ja) * 2011-01-24 2017-01-11 ソニー株式会社 画像符号化装置と画像復号装置およびその方法とプログラム
BR122020015657B1 (pt) * 2011-03-09 2023-04-11 Nec Corporation Dispositivo de decodificação de vídeo e método de decodificação de vídeo
EP2648409B1 (en) * 2011-03-10 2016-08-17 Nippon Telegraph And Telephone Corporation Quantization control device and method, and quantization control program
US10298939B2 (en) 2011-06-22 2019-05-21 Qualcomm Incorporated Quantization in video coding
US9521410B2 (en) 2012-04-26 2016-12-13 Qualcomm Incorporated Quantization parameter (QP) coding in video coding
CN103577503A (zh) * 2012-08-10 2014-02-12 鸿富锦精密工业(深圳)有限公司 云端文件存储系统及方法
JP2019149591A (ja) 2016-07-14 2019-09-05 シャープ株式会社 端末装置、基地局装置、通信方法、および、集積回路
CN106254868B (zh) * 2016-08-19 2019-08-27 浙江宇视科技有限公司 视频编码码率控制方法、装置及系统
US10674152B2 (en) * 2018-09-18 2020-06-02 Google Llc Efficient use of quantization parameters in machine-learning models for video coding
CN112235576B (zh) * 2020-11-16 2024-04-30 北京世纪好未来教育科技有限公司 编码方法、装置、电子设备及存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236681B1 (en) * 1997-07-31 2001-05-22 Lsi Logic Corporation Method for decoding MPEG compliant video bitstreams meeting 2-frame and letterboxing requirements
CN1166213C (zh) 1999-04-30 2004-09-08 皇家菲利浦电子有限公司 选择b帧编码模式的视频编码方法和系统
JP2001086512A (ja) * 1999-09-14 2001-03-30 Nec Corp 可変ビットレート符号化装置
US6631163B1 (en) * 2000-11-14 2003-10-07 Koninklijke Philips Electronics N.V. Dynamic adaptation of complexity in an MPEG-2 scalable decoder
KR100739133B1 (ko) 2001-04-17 2007-07-13 엘지전자 주식회사 디지털 비디오 코딩시 b프레임 코딩 방법
KR100748495B1 (ko) 2001-04-20 2007-08-13 엘지전자 주식회사 복수 참조 프레임을 이용한 b프레임 코딩시 직접 예측 방법
KR100778471B1 (ko) 2001-04-21 2007-11-21 엘지전자 주식회사 비디오 신호의 인코딩 또는 디코딩 방법
US7266150B2 (en) * 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
FI114433B (fi) * 2002-01-23 2004-10-15 Nokia Corp Otossiirtymän koodaaminen videokoodauksessa
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
KR101108661B1 (ko) * 2002-03-15 2012-01-25 노키아 코포레이션 비디오 시퀀스에서의 움직임 부호화 방법
KR100627597B1 (ko) * 2002-04-26 2006-09-25 가부시키가이샤 엔티티 도코모 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
US7280700B2 (en) * 2002-07-05 2007-10-09 Microsoft Corporation Optimization techniques for data compression
MXPA05000559A (es) * 2002-07-15 2005-04-19 Nokia Corp Metodo para ocultamiento de errores en secuencias de video.
US7142601B2 (en) * 2003-04-14 2006-11-28 Mitsubishi Electric Research Laboratories, Inc. Transcoding compressed videos to reducing resolution videos
US7280597B2 (en) 2003-06-24 2007-10-09 Mitsubishi Electric Research Laboratories, Inc. System and method for determining coding modes, DCT types and quantizers for video coding
US7342964B2 (en) * 2003-07-15 2008-03-11 Lsi Logic Corporation Multi-standard variable block size motion estimation processor
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
CN100524346C (zh) * 2004-06-14 2009-08-05 普瑞科德公司 过滤数字图像的方法和系统、数字图像处理器
JP2006074474A (ja) * 2004-09-02 2006-03-16 Toshiba Corp 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
KR100681252B1 (ko) * 2004-10-02 2007-02-09 삼성전자주식회사 트랜스코딩을 위해 출력 매크로블록 모드와 출력움직임벡터를 추정하는 방법 및 이를 이용한 트랜스코더
US8548055B2 (en) 2005-03-10 2013-10-01 Qualcomm Incorporated Encoding of multimedia data
US8204129B2 (en) * 2007-03-27 2012-06-19 Freescale Semiconductor, Inc. Simplified deblock filtering for reduced memory access and computational complexity

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
proposed draft description of rate control on JVT standard(JVT-F086) 13 December 2002

Also Published As

Publication number Publication date
AU2006223197A1 (en) 2006-09-21
AR053164A1 (es) 2007-04-25
EP1856916A1 (en) 2007-11-21
TW200711479A (en) 2007-03-16
CA2600455A1 (en) 2006-09-21
KR20070110533A (ko) 2007-11-19
RU2345503C1 (ru) 2009-01-27
US8548055B2 (en) 2013-10-01
WO2006099229A1 (en) 2006-09-21
US20060245496A1 (en) 2006-11-02
JP2008533855A (ja) 2008-08-21
EP2453653A3 (en) 2013-01-23
BRPI0608231A2 (pt) 2009-11-24
CN101171842B (zh) 2010-09-01
MX2007011098A (es) 2007-11-22
AU2006223197B2 (en) 2009-03-12
RU2008144373A (ru) 2010-05-20
JP5048645B2 (ja) 2012-10-17
NO20075132L (no) 2007-12-10
CN101171842A (zh) 2008-04-30
AU2006223197C1 (en) 2009-07-30
UA87901C2 (ru) 2009-08-25
IL185826A0 (en) 2008-01-06
EP2453653A2 (en) 2012-05-16

Similar Documents

Publication Publication Date Title
KR100933119B1 (ko) 개선된 멀티미디어 데이터 인코딩
RU2452128C2 (ru) Адаптивное кодирование информации заголовка видеоблока
CN109644270B (zh) 视频编码方法和编码器、视频解码方法和解码器、存储介质
TWI400953B (zh) 用於可延展的視訊編碼的粗粒度可延展性增強層編碼之內容適應性可變長度編碼增強之方法、設備、視訊編碼器及電腦可讀媒體
US20110235710A1 (en) Image encoding and decoding apparatus and method
WO2007091601A1 (ja) 符号化装置、符号化方法およびプログラム
US10939100B2 (en) Method, system and apparatus for intra-prediction in a video signal processing
KR20170137090A (ko) 디스플레이 스트림 압축을 위한 레이트 제약형 폴백 모드
KR20140089487A (ko) 위상차를 고려한 영상 업샘플링을 이용하는 스케일러블 비디오 부호화 방법 및 장치, 스케일러블 비디오 복호화 방법 및 장치
TW201404172A (zh) 視頻編碼方法和系統
US8705617B2 (en) Multiple layer video encoding
KR20120105396A (ko) 모션 추정을 위한 기법들
JP4834590B2 (ja) 動画像復号化装置及び動画像復号化方法
US20060120449A1 (en) Method of coding and decoding moving picture
WO2006068422A1 (en) Video codec
KR102281154B1 (ko) 비디오 데이터의 통합된 공간 다운샘플링
JP2003116140A (ja) 動画像可逆符号化方法とその復号化方法、及びそれらの装置
Fang et al. Robust group-of-picture architecture for video transmission over error-prone channels

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: 20121129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee