KR20080021654A - 양방향 예측 프레임에 대한 시간적 에러 은닉 - Google Patents

양방향 예측 프레임에 대한 시간적 에러 은닉 Download PDF

Info

Publication number
KR20080021654A
KR20080021654A KR1020077028972A KR20077028972A KR20080021654A KR 20080021654 A KR20080021654 A KR 20080021654A KR 1020077028972 A KR1020077028972 A KR 1020077028972A KR 20077028972 A KR20077028972 A KR 20077028972A KR 20080021654 A KR20080021654 A KR 20080021654A
Authority
KR
South Korea
Prior art keywords
section
motion vector
error
backward
sections
Prior art date
Application number
KR1020077028972A
Other languages
English (en)
Other versions
KR100930850B1 (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 KR20080021654A publication Critical patent/KR20080021654A/ko
Application granted granted Critical
Publication of KR100930850B1 publication Critical patent/KR100930850B1/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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/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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Landscapes

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

Abstract

에러 양방향 멀티미디어 데이터를 프로세싱하는 방법 및 장치가 개시된다. 이 방법은 에러 멀티미디어 데이터에 대한 시간적 예측 데이터를 결정하는 단계 및 결정된 시간적 예측 데이터에 기초하여 에러 멀티미디어 데이터를 추정하는 단계를 포함한다. 시간적 예측 데이터는 순방향 참조 섹션 및/또는 역방향 참조 섹션을 예측하기 위해 이용되었던 데이터를 포함한다. 일부 양태에서, 시간적 예측 데이터는 에러 데이터를 포함하는 프레임에 대응하기 위해 스케일링된 참조 프레임의 움직임 벡터 데이터를 포함한다.
움직임 벡터, 비디오 데이터

Description

양방향 예측 프레임에 대한 시간적 에러 은닉{TEMPORAL ERROR CONCEALMENT FOR BI-DIRECTIONALLY PREDICTED FRAMES}
관련 출원에 대한 상호 참조
본 특허 출원은, 본 명세서 전체에 걸쳐 참조로서 포함되고, 본 발명의 양수인에게 양도되며, 발명의 명칭이 "A METHOD AND APPARATUS FOR TEMPORAL ERROR CONCEALMENT" 로서 2005 년 5 월 11 일에 출원된 미국 가 특허 출원 제 60/680,278 호에 대해 우선권을 주장한다.
발명의 배경
발명의 분야
이 발명은 에러 관리와 함께 비디오 데이터 또는 오디오 데이터와 같은 멀티미디어 데이터를 인코딩 및 디코딩하는 방법 및 장치에 관한 것이다.
관련 분야의 설명
인터넷 및 무선 통신의 광범위한 이용은 인터넷 및 이동/무선 채널을 통해 미디어를 스트리밍하는 멀티미디어 서비스에 대한 요구를 증가시켜왔다. 인터넷 프로토콜 (IP) 에서, 비디오는 서버에 제공될 수 있고, 하나 이상의 유선 또는 무선 클라이언트에 의해 스트리밍될 수 있다. 유선 접속은 다이얼-업, 종합 정보 통신망 (ISDN), 케이블, 디지털 가입자 라인 프로토콜 (집합적으로 xDSL 로 지칭됨), 섬유 (fiber), 근거리 통신망 (LAN), 광역 통신망 (WAN) 등을 포함한다. 무선 통신을 사용하는 전기 디바이스는 전화 (예를 들어, 셀 전화), 개인 휴대 정보 단말기 (PDA), 핸드-헬드 및 포터블 컴퓨터 등을 포함한다. 이들 애플리케이션 전부가 아니라면, 대부분에서, 대역폭 요구사항 및/또는 제한은, 비디오 프로세싱이 "최소" 비트 수를 확장함으로써 최대 정보를 전달하기 위해 비디오 데이터를 분석하고 정량화하며 표현하는 비디오 압축 알고리즘을 포함하는 소스 인코더를 사용하는 것을 필요로 한다. 압축 알고리즘을 이용하는 비디오 프로세싱의 특성은 그들의 성능 (압축 효율성 및 비트 레이트와 같은) 에 있어서 큰 스케일의 변동을 야기할 수 있는 콘텐츠에 주로 기초하여 변화할 수 있다.
무선 채널은 에러의 가능성이 있다. 송신된 데이터의 일부는, 손실되거나 손상된 경우 "에러 (erroneous)" 이다. 비디오 압축이 본질적으로 리던던시를 제거하기 때문에, 압축된 데이터는 임계적이 된다. 송신 동안 에러가 된 임의의 데이터는 디코더에서 재구성된 비디오 품질에 영향을 미칠 수도 있다. 이 영향은, 에러 데이터가 움직임 보상 예측에 대한 참조 프레임의 일부인 경우, 악화되어 시간적 에러 전파를 유발한다.
에러로 수신된 비트스트림 데이터로 인한, 재구성된 비디오 품질에 대한 영향을 완화시키기 위해, 비디오디코더는 수신된 비디오 데이터를 프로세싱하여 비디오 품질을 개선한다. 이것은 에러 은닉이라 지칭된다. 에러 은닉 방식은 비디오 신호에 존재하는 공간적 및 시간적 상관관계를 이용한다. 따라서, 이들 방식은 공간적 또는 일시적 은닉이라 지칭된다.
채널 에러 (비트 에러 및/또는 패킷 손실) 및 패킷화 유형의 본질에 의존하 여, 하나 이상의 매크로블록 또는 슬라이스에 관계된 데이터의 전부 또는 일부가 송신 동안 에러일 수 있다. 매크로블록에 대해, 코딩 모드 (인터 (inter) 또는 인트라 (intra)), 움직임 벡터 (인터인 경우), 변환 계수 중 하나 이상을 포함하는 다양한 코딩된 매크로블록 데이터는 에러일 수 있다.
매크로블록이 에러인 경우, 통상적으로 상기 정보 모두가 에러인 것으로 가정된다. 인터-코딩된 매크로블록에 대해, 그 움직임 벡터 및 잔여 계수가 에러이다. 잔여 신호가 상당히 상관되지 않기 때문에, 잔여 신호는 이웃 매크로블록으로부터 추정하기 어렵다. 그러나, 연구는, 움직임 벡터가 복원될 수 있는 경우, 재구성된 비디오 품질이 상당히 개선될 수도 있음을 보여준다. 따라서, 시간적 에러 은닉의 주요 목표는 에러 움직임 벡터의 공간적 및 시간적 이웃으로부터 에러 움직임 벡터를 추정하는 것이다. 움직임 벡터가 구성된 경우, 움직임 보상은 0 잔여 계수를 갖는 구성된 움직임 벡터를 이용하여 수행될 수 있다.
몇몇 존재하는 시간적 에러 은닉 방식이 존재하지만, 이 은닉 방식은 양호한 결과를 제공하는데 실패한다. 또한, 그들은 양방향 예측 멀티미디어 데이터 및/또는 가변 움직임 보상 블록 사이즈와 호환하지 않는다. 따라서, 개선된 결과를 획득하고 광범위한 호환성을 제공하기 위해 새로운 시간적 에러 은닉 방식이 필요하다.
발명의 요약
데이터가 에러로 수신된 제 1 섹션을 포함하는, 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법이 제공된다. 이 방법은 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 단계를 포함하고, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응한다. 이 방법은 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 제 1 섹션을 추정하는 단계를 더 포함한다.
데이터가 에러로 수신된 제 1 섹션을 포함하는, 양방향 예측 멀티미디어 데이터를 프로세싱하는 프로세서가 제공된다. 이 프로세서는 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하도록 구성되며, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응한다. 이 프로세서는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 제 1 섹션을 추정하도록 더 구성된다.
데이터가 에러로 수신된 제 1 섹션을 포함하는, 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치가 제공된다. 이 장치는 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 결정기를 구비하며, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응한다. 이 장치는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 제 1 섹션을 추정하는 추정기를 더 구비한다.
데이터가 에러로 수신된 제 1 섹션을 포함하는, 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법을 구현하는 컴퓨터 판독가능 매체가 제공된다. 이 방법은 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 단계를 포함하고, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응한다. 이 방법은 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 제 1 섹션을 추정하는 단계를 더 포함한다.
도면의 간단한 설명
도 1 은 인커밍 멀티미디어 데이터 스트림 (미도시) 을 디코딩하고 디스플레이하는 디코더 시스템의 일 예를 설명하는 블록도를 도시한다.
도 2 는 도 1 에 도시된 시간적 예측 결정기 (170) 가 포함할 수도 있는 더욱 상세한 예를 설명하는 블록도를 도시한다.
도 3 은 에러 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법의 특정 블록을 설명하는 흐름도를 도시한다.
도 4 는 정확히 수신되고 디코딩된 매크로블록 및 에러로 수신된 매크로블록을 포함하는 매크로블록 그룹을 도시한다.
도 5a 는 도 3 의 블록 (304) 에서 시간적 예측 데이터를 결정하는 프로세스의 일 예를 설명하는 흐름도를 도시한다.
도 5b 는 도 5a 의 블록 (502) 에서 참조 영역을 제한하는 프로세스의 일 예를 설명하는 흐름도를 도시한다.
도 5c 는 도 5a 의 블록 (504) 에서 움직임 벡터를 생성하는 프로세스의 일 예를 설명하는 흐름도를 도시한다.
도 5d 는 도 5a 의 블록 (506) 에서 추정 모드를 결정하는 프로세의 일 예를 설명하는 흐름도를 도시한다.
도 6 은 시간적 예측 데이터를 결정하기 위해 순방향 및 역방향 참조 프레임 의 참조 영역을 제한하는 방법을 도시한다.
도 7a 및 도 7b 는 움직임 벡터 스케일링의 예를 도시한다.
도 8 은 현재 프레임에서 추정될 에러 섹션과 참조 섹션의 오버랩을 유발하는 움직임 벡터를 도시한다.
도 9 는 에러 매크로블록에 이웃하는 매크로블록의 4×4 픽셀 블록을 도시한다.
도 10 은 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치의 일 예를 설명하는 블록도를 도시한다.
바람직한 실시형태의 상세한 설명
에러로 수신된 멀티미디어 데이터에 대한 시간적 예측 데이터를 결정하는 단계, 및 결정된 시간적 예측 데이터에 기초하여 에러로 수신된 멀티미디어 데이터를 추정하는 단계를 포함하는, 에러로 수신된 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법 및 장치가 개시된다. 시간적 예측 데이터는 순방향 참조 섹션 및/또는 역방향 참조 섹션에 대응할 수도 있다. 일 양태에서, 시간적 예측 데이터는 순방향 참조 섹션 및/또는 역방향 참조 섹션에 대응하는 움직임 벡터를 포함할 수도 있다. 예를 들어 움직임 벡터인, 시간적 예측 데이터의 프로세싱은 스케일링 (scaling), 머징 (merging), 및 평활화 (smoothing) 동작을 포함할 수도 있다. 다음의 설명에서, 개시된 방법 및 장치의 전반적인 이해를 제공하기 위해 특정한 세부사항이 주어진다. 그러나, 당업자는 개시된 방법 및 장치가 이들 특정한 세부사항을 벗어나지 않고 실시될 수도 있음을 이해한다. 예를 들 어, 불필요한 세부사항의 특정 양태를 모호하게 하지 않기 위해 전기적 콤포넌트는 블록도로 도시될 수도 있다. 다른 예에서, 이러한 콤포넌트, 다른 구조 및 기술이 특정 양태를 더 설명하기 위해 상세히 도시될 수도 있다.
또한, 특정 양태는, 플로우챠트, 흐름도, 구조도, 또는 블록도로 나타낸 프로세스로서 개시될 수도 있다. 플로우챠트가 움직임을 순차적인 프로세스로서 개시할 수도 있지만, 다수의 움직임은 병렬적이거나 동시에 수행될 수 있고 이 프로세스는 반복될 수 있다. 또한, 움직임의 순서는 재배열될 수도 있다. 프로세스의 움직임이 완료되는 경우, 프로세스는 종결된다. 프로세스는 방법, 함수, 절차, 서브루틴, 서브프로그램 등에 대응할 수도 있다. 프로세스가 함수에 대응하는 경우, 함수의 종결은 호출 함수 또는 메인 함수로의 함수의 리턴에 대응한다.
도 1 은 인커밍 멀티미디어 데이터 스트림 (미도시) 을 디코딩하고 디스플레이하는 디코더 시스템의 일 예를 설명하는 블록도를 도시한다. 멀티미디어 데이터는 비디오, 오디오, 그래픽, 텍스트, 및 영상을 포함하지만 이에 한정되지 않는 다양한 형태일 수 있다. 데이터는 MPEG-x 및 H.26x 표준에서와 같은 압축된 비디오 및 오디오, MPEG-4 AAC, MP3, AMR 및 G.723 오디오 또는 음성 압축 표준에서와 같은 압축된 오디오, 또는 임의의 다른 유형의 디지털 데이터일 수 있다. 데이터 스트림은 전화, 케이블, 및 광섬유와 같은 유선 네트워크 또는 무선 네트워크를 통해 수신될 수 있다. 무선의 경우, 네트워크는 예를 들어, 코드 분할 다중 액세스 (CDMA 또는 CDMA2000) 통신 시스템의 일부를 포함할 수 있고, 또는 다른 방법으로, 이 시스템은 주파수 분할 다중 액세스 (FDMA) 시스템, 직교 주파수 분할 다중 (OFDM) 시스템, 서비스 산업에 대한 GSM/GPRS (General Packet Radio Service)/EDGE (enhanced data GSM environment) 또는 TETRA (Terrestrial Trunked Radio) 이동 전화 기술과 같은 시간 분할 다중 액세스 (TDMA) 시스템, 광대역 코드 분할 다중 액세스 (WCDMA), 고속 데이터 레이트 (1xEV-DO 또는 1xEV-DO 골드 멀티캐스트) 시스템, 또는 기술의 조합을 사용하는 일반적인 임의의 무선 통신 시스템일 수 있다.
시스템 (100) 은 디코더 디바이스 (110), 외부 저장부 (185) 및 디스플레이 (190) 를 포함한다. 예시적인 디코더 디바이스 (110) 는 네트워크 인터페이스 (155), 비디오 및/또는 오디오 디코더 (160), 에러 검출기/정정기 (165), 시간적 예측 결정기 (170), 메모리 (175) 및 프로세서 (180) 를 포함한다. 네트워크 인터페이스 (155) 는 내부 메모리 콤포넌트 (175) 또는 외부 저장부 (185) 와 같은 이미지 소스 또는 네트워크로부터 인코딩된 멀티미디어 데이터 (MPEG-4 또는 H.264 압축된 비디오 데이터와 같음) 를 수신할 수 있다. 인코딩된 멀티미디어 데이터는 MPEG-4 또는 H.264 압축된 비디오 데이터일 수도 있다. 메모리 콤포넌트 (175) 및/또는 외부 저장부 (185) 는 디지털 비디오 디스크 (DVD) 또는 인코딩된 비디오 데이터를 포함하는 하드-디스크 드라이브일 수도 있다.
비디오/오디오 디코더 (160) 는 임의의 다양한 유형의 인코딩된 데이터를 디코딩하도록 구성된다. 디코딩된 데이터는 압축된 데이터, 변환된 데이터, 양자화된 데이터, 또는 이들의 임의의 조합일 수 있다. 인코딩된 데이터는 비디오, 오디오, 폐쇄된 캡션, 그래픽 또는 이들의 임의의 조합과 같은 멀티미디어 데이터를 포함할 수도 있다.
에러 검출기/정정기 (165) 는 하나 이상의 다양한 에러 검출 및/또는 정정 방식을 수행하도록 구성된다. 인코딩된 데이터는 에러 복원을 제공하는 다양한 방식을 포함할 수도 있다. 무선 및/또는 유선 네트워크와 같이 에러가 발생하기 쉬운 채널은 디코더 (110) 에 의해 수신된 비트스트림에 에러를 도입한다. 이러한 에러 복원 방식은 하나 이상의 에러 제어 코딩 방식, 인터리빙 방식 및 당업자에 공지된 다른 방식을 포함할 수도 있다. 에러 검출기/정정기 (165) 는 에러를 검출 및 정정할 수 있는 대응 에러 디코딩 콤포넌트를 포함한다. 네트워크를 통해 도입된 일부 에러는 에러 검출기/정정기 (165) 에 의해 정정가능하지 않을 수도 있다. 정정가능하지 않은 이들 에러에 대해, 손상 콤포넌트의 재송신을 요구하는 해결책은 일부 상황에 대해 실현가능하지 않을 수도 있다. 디코더 (110) 가 에러 데이터의 재송신을 요구하는 옵션을 갖지 않을 수도 있는 상황에 대해, 에러 복원이 이용될 수도 있다. 에러 복원은 다양한 형태의 시간적 및/또는 공간적인 은닉 방법을 포함할 수도 있다.
시간적 예측 결정기 (170) 는 에러 인터-코딩된 데이터의 시간적 에러 은닉을 수행하도록 구성된다. 특히, 시간적 예측 결정기 (170) 는 양방향 예측 인터-코딩된 데이터의 시간적 에러 은닉을 수행하도록 구성된다. 인터 또는 예측 코딩은 화상 (필드 또는 프레임) 을 하나 이상의 다른 화상을 참조하여 인코딩함을 말한다. 이 출원 전반에 이용된 인터-코딩된 영상의 예는, 예측 프레임 (순방향 또는 역방향 예측 프레임 중 하나이고, "P-프레임" 으로 지칭됨) 및 양방향 예측 프레임 (순방향 프레임 및 역방향 프레임과 같은 2 개의 프레임으로부터의 예측 프레임이고, "B-프레임" 으로 지칭됨) 이다. B-프레임의 양방향 움직임 보상 특성으로 인해, B-프레임에 대한 압축 효율은 I-프레임 또는 P-프레임의 압축 효율보다 높을 수도 있다. 결과적으로, B-프레임 사이즈가 통상적으로 I-프레임 또는 P-프레임 사이즈보다 상당히 작다. 그 결과, 주어진 사이즈의 에러 데이터 세트로 인한 영역 손실은 P-프레임 또는 I-프레임에 대해서 보다 B-프레임에 대해서 더 클 수도 있다. 모든 유형 (P, B, 및/또는 I) 의 프레임은 인터 및 인트라 코딩된 영역 모두를 포함할 수도 있다. 인터-코딩의 다른 용어는 하이-패스 코딩, 잔여 코딩, 움직임 보상 내삽 및 당업자에게 주지된 다른 것을 포함한다. B-프레임 (또는 임의의 인터-코딩된 섹션) 은 현재 프레임의 영역과 2 개의 다른 참조 프레임의 최상의 매칭 예측 영역 사이의 시간적 리던던시를 사용할 수 있다. 최상의 매칭 영역은 평균화, 가중 평균화 및 당업자에 공지된 다른 방법에 의해 조합될 수도 있다. 현재 영역과, 조합된 최상의 매칭 참조 예측 영역 사이의 차이는 잔여 에러 (또는 예측 에러) 로서 공지된다. 참조 프레임에서의 최상의 매칭 예측 영역의 로케이션은 순방향 참조 프레임 리스트의 프레임으로 포인팅하는 순방향 움직임 벡터, 및 역방향 참조 프레임 리스트의 프레임으로 포인팅하는 역방향 움직임 벡터에서 인코딩될 수 있다.
프로세서 (180) 는 임의의 적합한 범용 단일의 또는 복수의 칩 마이크로프로 세서이거나, 디지털 신호 프로세서, 마이크로제어기, 또는 프로그래밍가능 게이트 어레이와 같은 임의의 적합한 특정 목적의 마이크로프로세서일 수도 있다. 프로세서 (180) 는 네트워크 인터페이스 (155), 비디오/오디오 디코더 (160), 에러 검출기/정정기 (165), 시간적 예측 결정기 (170; 및 도 2 에 도시된 서브-콤포넌트) 및 디스플레이 (190) 의 움직임을 제어하는 하나 이상의 애플리케이션을 실행하도록 구성된다. 프로세서 (180) 는 데이터를 판독 및/또는 저장하기 위해 메모리 (175) 또는 외부 저장부 (185) 에 액세스하도록 더 구성된다.
도 2 는 시간적 예측 결정기 (170) 가 포함할 수도 있는 특정 서브-콤포넌트를 설명하는 블록도를 도시한다. 도 2 에 도시된 시간적 예측 결정기 (170) 의 서브-콤포넌트는 움직임 벡터 스케일러 (1704), 움직임 벡터 머져 (1706), 움직임 벡터 스무더 (1708), 참조 영역 제한기 (1710), 참조 데이터 결정기 (1712), 추정 모드 결정기 (1714), 및 에러 데이터 추정기 (1716) 를 포함할 수도 있다. 시간적 예측 결정기 (170) 는 에러 양방향 예측 데이터를 포함하는 픽셀 그룹이 추정될 수 있는 하나 이상의 참조 프레임에 대응하는 시간적 예측 데이터를 획득하도록 구성된다. 시간적 예측 결정기 (170) 는 멀티미디어 데이터 중 임의의 사이즈 부분상에서 동작할 수도 있다. 데이터의 부분은 임의의 사이즈인 N×M 픽셀일 수도 있고, 여기서 N 및 M 은 정수이다. 일 예에서, 시간적 예측 결정기 (170) 의 동작에 대한 기본 단위는 매크로블록이다. 매크로블록은 관련 픽셀들의 그룹이고, 이 예에서는 16×16 픽셀로 이루어진다. 픽셀은 하나의 8-비트 휘도값 (Y) 및 2 개의 8-비트 색차값 (Cr 및 Cb) 에 의해 규정될 수 있다. MPEG 에서, Y, Cr 및 Cb 콤포넌트는 4:2:0 포맷으로 저장될 수 있고, 여기서 Cr 및 Cb 콤포넌트는 X 및 Y 방향으로 2 만큼 다운-샘플링된다. 따라서, 각각의 매크로블록은 256 개의 Y 콤포넌트, 64 개의 Cr 콤포넌트 및 64 개의 Cb 콤포넌트로 구성된다.
도 1 또는 도 2 에 도시된 콤포넌트 중 임의의 하나는 디코더의 기능을 변경하지 않고 하나 이상의 다른 콤포넌트와 결합하고 및/또는 재배열될 수도 있다. 예를 들어, 프로세서 (180) 는 디코더 디바이스 (110) 의 외부에 존재할 수도 있고, 또는 비디오 디코더 (160) 는 정정기 (165) 및 결정기 (170) 와 결합될 수도 있다. 특정 예에서, 도 1 또는 도 2 에 도시된 콤포넌트 중 하나 이상이 제거될 수도 있다.
도 3 은 에러 양방향 예측 멀티미디어 데이터를 프로세싱하기 위해 시간적 에러 은닉의 방법 중 일 예를 설명하는 흐름 챠트를 도시한다. 이 예에서, 시간적 에러 은닉 방법은 양방향 예측 데이터의 에러 섹션에 대한 순방향 및 역방향 시간적 예측 데이터의 추정을 유도한다. 추정될 시간적 예측 데이터는 순방향 참조 프레임 및 역방향 참조 프레임을 각각 향하는 (또는 포인팅하는) 순방향 움직임 벡터 및/또는 역방향 움직임 벡터일 수도 있다. 추정된 움직임 벡터는 순방향 및/또는 역방향 참조 프레임에서의 데이터의 섹션의 움직임 벡터에 일부 기초할 수도 있다. 데이터의 에러 섹션 및 참조 섹션은 예를 들어, 전술한 바와 같은 기본 단위의 임의의 형상 또는 사이즈의 것일 수도 있고, 픽셀로 구성될 수도 있다. 추정된 움직임 벡터는 또한 에러 데이터와 동일한 프레임의 손상되지 않은 데이터 블록의 움직임 벡터에 일부 기초할 수도 있다.
방법 (300) 은, 도 1 에 도시된 디코더 디바이스 (110) 가 양방향 예측 멀티미디어 데이터의 에러 섹션을 수신하는 것 (302) 에서 시작한다. 에러 데이터는 네트워크 인터페이스 (155) 에 의해 수신될 수도 있고, 이 예에서, 수신된 에러의 일부는 에러 검출기/정정기 (165) 에 의해 정정가능하지 않을 수도 있다. 그 후, 에러 데이터는 시간적 예측 결정기 (170) 에 의해 프로세싱될 수도 있다. 에러 검출기/정정기 (165) 는 에러인 멀티미디어 데이터의 섹션을 마킹하거나 플래그할 수도 있다. 그 후, 프로세서 (180) 는 시간적 예측 결정기 (170) 에 의해 은닉될 에러 섹션을 식별할 수도 있다.
시간적 예측 결정기 (170) 는 에러 섹션에 대한 시간적 예측 데이터를 결정한다 (304). 순방향 및 역방향 시간적 예측 데이터는 현재 프레임에서 에러 섹션을 추정 (306) 하기 위해 이용될 수 있다. 결정된 시간적 예측 데이터는 에러 섹션의 영역에 대응하는 순방향 움직임 벡터 및/또는 역방향 움직임 벡터를 포함할 수도 있다. 결정된 순방향 움직임 벡터는 프레임의 시퀀스에서 순방향 프레임을 포인팅할 수 있고, 결정된 역방향 참조 벡터는 시퀀스에서 역방향 프레임을 포인팅하며, 여기서 순방향 및 역방향은 에러 데이터를 포함하는 현재 프레임에 대한 시퀀스에서의 방향이다. 순방향 참조 섹션 및 역방향 섹션은 임의의 사이즈 부분일 수도 있다. 참조 데이터 결정기 (1712) 와 같은 결정 수단은 시간적 예측 데이터를 결정할 수도 있다 (304). 결정 (304) 에 대한 더욱 상세한 설명은 도 5a 를 참조하여 이하 논의한다.
시간적 예측 데이터는 현재 프레임의 에러 섹션에 대응하는 멀티미디어 데이 터의 섹션을 로케이팅하기 위해 이용될 수 있다. 방법 (300) 에 의해 프로세싱되는 데이터의 에러 섹션은 임의의 형상 또는 사이즈의 픽셀 그룹일 수도 있다. 방법 (300) 의 설명을 위해 이용되는 일 예는 픽셀 블록이다. 픽셀 블록은 N×M 픽셀을 포함할 수도 있고, 여기서 N 및 M 은 정수이다. 방법 (300) 은 추정될 에러 데이터의 기본 단위 또는 섹션으로서 매크로블록 (16×16 픽셀) 을 이용하여 설명된다. 에러 데이터 추정기 (1716) 와 같은 추정 수단은 에러 데이터를 추정할 수도 있다 (306). 도 3 에 도시된 플로우챠트에 설명된 블록 중 임의의 하나는 생략될 수도 있고, 순서상 재배열될 수도 있으며, 또는 하나 이상의 다른 블록과 결합될 수도 있다.
(302) 에서 에러로 수신된 섹션은 임의의 형상 또는 사이즈의 에러 데이터의 더 큰 부분 중 일부일 수도 있다. 도 4 는 정확히 수신되어 디코딩되었을 매크로블록 및 에러로 수신된 매크로블록을 포함하는 매크로블록 그룹을 도시한다. 프레임 (400) 은 12×13 매크로블록이고, 여기서 매크로블록의 수는 예시적이다. 프레임 (400) 은 에러없는 매크로블록 (402) 및 에러 매크로블록 (404) 을 포함한다. 프레임 (400) 은 또한 에러 매크로블록 (404) 에 이웃하는 에러없는 매크로블록 (406) 을 포함한다. 에러 매크로블록 (404) 은 슬라이스로 공지된 하나 이상의 독립적으로 디코딩가능한 매크로블록 그룹의 멤버일 수도 있다. 슬라이스는 에러없는 초기 부분을 가질 수도 있고 적절히 디코딩될 수도 있으며, 에러 부분이 후속한다. 또한, 그 후, 슬라이스는 중간에서 다소 에러 부분을 가질 수도 있다. 일부의 경우, 인코딩 방법 (및 따라서 디코딩 방법) 이 선행 데 이터의 콘텍스트를 아는것에 의존하는, 콘텍스트 어댑티브 코딩의 본질에 적어도 일부 기인하여, 에러 중간 부분 이후에 발생하는 슬라이스의 나머지는 또한 에러일 수도 있다. 그 결과, 예를 들어 하나 이상의 데이터 블록인 슬라이스의 일부가 에러일 수도 있고, 또는 전체 슬라이스, 복수의 슬라이스 또는 전제 프레임 (또는 그보다 많은) 이 에러일 수도 있다. 슬라이스는 매크로블록의 행 또는 행들, 매크로블록의 열 또는 열들, 매크로블록의 블록, 또는 매크로블록의 전체 프레임에대응할 수도 있다.
도 5a 는 도 3 의 블록 (304) 에서 시간적 예측 데이터를 결정하는 프로세스의 더욱 상세한 예를 설명하는 흐름차트를 도시한다. 옵션적 블록 (502) 에서, 순방향 및/또는 역방향 참조 프레임의 참조 섹션은 참조 프레임 내의 하나 이상의 영역으로 제한된다 (예를 들어, 하나 이상의 매크로블록 그룹). 시간적 예측 데이터를 결정하고 현재 프레임의 에러 섹션을 추정하기 위해 전체 순방향 및/또는 역방향 참조 프레임을 프로세싱하는 대신, 제한된 참조 영역이 프로세싱될 수 있다. 참조 영역을 제한하는 것은 참조 프레임의 부분 또는 지역을 선택하는 참조 정보를 포커싱하고, 프로세스 (300) 에서 이용되는 프로세싱 전력 및/또는 프로세싱 시간을 감소시킨다. 참조 프레임의 참조 영역을 제한하는 프로세스의 일 예의 세부사항은 도 5b 를 참조하여 이하 논의한다.
순방향 참조 프레임 및 역방향 참조 프레임의 참조 영역을 옵션적으로 제한한 (502) 이후, 시간적 예측 결정기 (170) 는 추정 (306) 하기 위해 이용될 에러 섹션에 대한 움직임 벡터를 생성하고 (504), 그 결과 현재 프레임의 에러 데이터를 은닉한다. (504) 에서 생성된 움직임 벡터는 순방향 및/또는 역방향 참조 섹션 (예를 들어, 순방향 프레임 및/또는 역방향 프레임의 매크로블록) 의 인터-코딩에서 이용된 움직임 벡터에 기초할 수도 있다. 이 예에서, 에러 섹션에 대한 움직임 벡터는 참조 프레임의 제한된 (502) 참조 영역의 움직임 벡터를 프로세싱함으로써 생성된다. 움직임 보상 예측은, 하나의 프레임의 비디오 섹션은 다른 프레임의 상이한 공간적 위치에서 로케이팅될지라도, 그 다른 프레임의 동일하거나 유사한 비디오 섹션상에서 예측될 수도 있다는 가정에 기초한다. 예측 참조 섹션이 연속적 (예를 들어, 선형 방식으로) 이었던 경우를 가정하는 경우, 참조 섹션을 예측하기 위해 이용된 움직임 벡터에 기초하여 에러 섹션에 대한 움직임 벡터를 결정하기 위해 움직임 벡터는 내삽되거나 외삽될 수도 있다. 각각의 에러 양방향 예측 섹션에 대해, 하나의 순방향 및 하나의 역방향인 2 개의 움직임 벡터가 생성될 수도 있다. 에러 섹션에 대응하는 움직임 벡터를 생성 (504) 하는 추가적인 세부사항이 도 5c 를 참조하여 이하 논의한다.
(504) 에서 움직임 벡터를 생성한 이후, 도 2 의 추정 모드 결정기 (1714) 는 에러 섹션을 추정하기 위해 이용될 추정 모드를 옵션적으로 결정할 수도 있다 (506). 2 개의 참조 프레임 (순방향 및 역방향 참조 프레임) 이 추정 목적을 위해 이용가능하기 때문에, 각각의 에러 기본 단위 섹션을 추정하는 4 개의 가능한 모드가 이용가능하다. 추정 모드는, 각각 역방향 참조 프레임 또는 순방향 참조 프레임을 포인팅하는 단일의 결정 움직임 벡터인 2 개의 단방향 모드, 및 하나는 순방향 참조 프레임을 포인팅하고 하나는 역방향 참조 프레임을 포인팅하는 2 개의 결정 움직임 벡터를 이용하는 양방향 모드를 포함한다. 4 개의 모드는 어떠한 움직임 벡터도 이용하지 않는다 (예를 들어 공간적 은닉). 추정 모드를 결정 (506) 하기 위해 이용되는 방법을 이하 더욱 상세히 논의한다.
에러 섹션을 추정하기 위해, 도 2 의 참조 데이터 결정기 (1712) 는 은닉될 에러 섹션의 오버랩을 유발하는, 생성된 (504) 움직임 벡터를 갖는 가능한 참조 섹션을 결정한다 (508). 결정 (508) 하는 단계는 순방향 및/또는 역방향 참조 프레임에서 하나 이상의 후보 참조 섹션을 식별하기 위해 스케일링된 움직임 벡터를 분석하는 단계를 포함할 수도 있고, 스케일링된 움직임 벡터는 은닉되는 에러 섹션의 오버랩을 유발한다.
예를 들어, 에러 섹션의 오버랩을 유발한 순방향 및/또는 역방향 움직임 벡터를 이용하여, 관련 참조 섹션을 결정한 (508) 이후, 도 2 의 에러 데이터 추정기 (1716) 는 에러 섹션을 추정한다 (306; 도 3 참조). 추정 (306) 은 스케일링된 움직임 벡터(들) 및 이 스케일링된 움직임 벡터(들) 에 의해 포인팅된 참조 섹션의 비디오 데이터를 이용하는 표준 시간적 예측 알고리즘을 이용할 수도 있다. 표준 시간적 예측 알고리즘은 MPEGx 및 H.26x 표준에서 이용된 움직임 보상 예측 모드를 포함하지만, 이에 제한되지 않는다. 후술하는 바와 같이, 순방향 및 역방향 프레임 모두에서의 스케일링된 움직임 벡터가 에러 섹션의 오버랩을 유발하는 것으로 결정된 (508) 경우, 에러 데이터 추정 (306) 의 양방향 모드가 이용될 수도 있다. 하나의 (순방향 또는 역방향) 움직임 벡터가 에러 섹션의 오버랩을 유발하는 것으로 결정된 (508) 경우, 단방향 예측 방법이 에러 데이터를 추정 (306) 하기 위해 이용될 수도 있다. 일부 예에서, 움직임 보상 예측 알고리즘에서 보통 이용되는 잔여 에러 데이터는 0 으로 세팅된다.
도 5b 는 시간적 예측 데이터를 결정 (304) 하는 참조 영역을 제한 (502) 하는 프로세스의 상세한 예를 설명하는 플로우챠트를 도시한다. 참조 영역을 제한 (502) 하는 일부 예시적인 방법은 에러 매크로블록 (404) 에 이웃하는 도 4 에 도시된 에러없는 매크로블록 (406) 의 움직임 벡터를 사용하는 참조 영역을 제한하는 것이다 (502). 도 2 의 참조 영역 제한기 (1710) 는 에러 매크로블록 (404) 에 이웃하는 에러없는 매크로블록 (406) 부분에 대응하는 움직임 벡터 세트를 생성한다 (510). 에러없는 매크로블록 (406) 은 각각 하나의 움직임 벡터를 가질 수도 있고, 또는 다양한 사이즈의 서브-매크로블록에 대한 복수의 움직임 벡터를 가질 수도 있다. 서브-매크로블록은 예를 들어, 16×8, 8×16, 8×8, 8×4, 4×8, 4×4 등과 같은 다양한 수의 픽셀을 포함할 수도 있다. 생성된 (510) 에러없는 움직임 벡터는 순방향 및/또는 역방향 참조 프레임에서 참조 섹션을 로케이팅하는 특정 직교 콤포넌트 "x" 및 "y" 를 포함한다. 또한, 움직임 벡터는 예측 매크로블록 (또는 서브-매크로블록) 을 포함하는 현재 프레임에 대한 참조 프레임의 위치를 식별하는 다른 유형의 데이터 또는 프레임 수를 포함할 수도 있다
이웃하는 에러없는 매크로블록 (406) 부분에 대응하는 움직임 벡터 리스트를 생성한 (510) 이후, 참조 영역 제한기 (1710) 는 순방향 및/또는 역방향 참조 프레임에서의 참조 영역을, 생성된 에러없는 움직임 벡터에 의해 경계된 영역으로 제한한다 (512). 도 6 은 에러없는 이웃 움직임 벡터에 기초하여 참조 영역을 제한 (512) 하는 예시적인 프로세스를 도시한다. 프레임 (600) 은 에러 매크로블록 (404) 을 포함하는 현재 참조 프레임이다. 프레임 (610) 은 순방향 참조 프레임이고 프레임 (620) 은 역방향 참조 프레임이다. 도 6 에 도시된 예에서, 에러 데이터는 현제 프레임 (600) 에서 하나의 측면에서 다른 측면으로 수평으로 연장 (도 4 의 에러 섹션과 같음) 하는 매크로블록의 슬라이스를 포함한다. 생성된 (510) 움직임 벡터 리스트는 순방향 참조 프레임 (610) 및 역방향 참조 프레임 (620) 의 참조 영역을, 각각 제한된 순방향 참조 영역 (615) 및 제한된 역방향 참조 영역 (625) 으로 제한하기 위해 이용된다. 순방향 및 역방향 참조 영역을 에러없는 이웃 매크로블록 (406) 에 대응하는 움직임 벡터에 의해 경계된 영역으로 제한함으로써, 효과적인 탐색이, 제한된 프로세싱 전력 및 시간과 함께 달성될 수도 있다.
제한된 순방향 영역 (615) 은 순방향 가장 최상부 (top-most) 움직임 벡터 (612) 및 순방향 가장 바닥 (bottom-most) 움직임 벡터 (614) 에 의해 각각 포인팅된 매크로블록의 행에 의한 최상부 및 바닥상에서 경계될 수도 있다. 제한된 역방향 영역 (625) 은 역방향 가장 최상부 움직임 벡터 (622) 및 역방향 가장 바닥 움직임 벡터 (624) 에 의해 각각 포인팅된 매크로블록의 행에 의한 최상부 및 바닥상에서 경계될 수도 있다. 가장 최상부 움직임 벡터 (612 및 622) 는 에러없는 이웃 움직임 벡터 중에서 선택하여 생성될 수도 있고, 각각 순방향 프레임 (610) 및 역방향 참조 프레임 (620) 에서 최고 로케이션을 포인팅한다. 가장 바닥 움직임 벡터 (614 및 624) 는 에러없는 이웃 움직임 벡터 중에서 선택하여 생성될 수 도 있고, 각각 순방향 프레임 (610) 및 역방향 참조 프레임 (620) 에서 최저 위치를 포인팅한다. 또한, 제한된 참조 영역 (615 및 625) 은 열 바이어스에 의한 열상에서 규정될 수도 있다. 열 제한된 참조 영역은 에러없는 매크로블록에 포함된 서브-매크로블록의 최고 포인팅 및 최저 포인팅 움직임 벡터에 의해 열로 제한될 수도 있다. 또한, 제한된 영역 (615 및 625) 은 가장-우측 움직임 벡터 및 가장-좌측 움직임 벡터 (미도시) 에 의해 우측 및 좌측으로 경계될 수도 있다. 순방향 및/또는 역방향 참조 영역을 제한 (612) 하는 다른 방법은 당업자에게 명백하다. 도 5b 에 도시된 플로우챠트에 설명된 블록 중 임의의 하나가 생략될 수도 있고, 순서상 재배열될 수도 있으며, 하나 이상의 다른 블록과 결합될 수도 있다.
도 5c 는 도 5a 의 순방향 및 역방향 참조 섹션에 기초하여 움직임 벡터를 생성 (504) 하는 프로세스의 상세한 예를 설명하는 플로우챠트를 도시한다. 일부 예에서, 순방향 및 역방향 참조 섹션은 섹션을 디코딩하기 위해 이용된 움직임 벡터 데이터 및 디코딩된 멀티미디어 데이터를 포함한다. 후술하는 바와 같이, 비디오 통신 시스템의 특정 예는 다양한 움직임 보상 블록 사이즈를 지원하는 디코더를 요구한다. 이러한 예에서, 디코더로의 입력 중 하나는 다양한 사이즈의 각각 디코딩된 블록의 움직임 벡터이다. 다른 입력은 디코딩된 프레임으로부터의 각각의 움직임 벡터에 대한 참조 프레임 인덱스 (ref_idx) 이다. 참조 프레임 인덱스 정보는 각각의 움직임 벡터에 대한 비트스트림으로 전달되고, 예측 프레임과 그 움직임 벡터의 참조 프레임 사이의 거리를 나타낸다. 일 예에서, 각각 의 매크로블록에 대해 7 개의 유효한 움직임 보상 블록 사이즈가 존재한다. 이들 블록 사이즈는 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, 및 4×4 이다. 이 예에서, 프로세스는 단일의 직접적인 참조 프레임 및 균일한 참조 블록 사이즈 (예를 들어, 16×16 픽셀 블록) 에 기초하여 참조 움직임 벡터를 움직임 벡터로 전환함으로써 가변 움직임 보상 블록 사이즈에 대한 움직임 벡터를 생성한다 (504).
에러 섹션을 포함하는 현재 프레임에 대한 움직임 벡터를 생성하기 위해, 도 2 의 움직임 벡터 스케일러 (1704) 는 순방향 및 역방향 참조 프레임의 참조 섹션을 예측하기 위해 이용되었던 움직임 벡터를 스케일링한다 (514). 움직임 벡터 스케일링의 이 예에서, 스케일링은 현재 프레임과 참조 프레임과 참조 프레임이 예측되는 프레임 사이의 거리의 비교에 기초한다. 움직임 벡터 스케일링 이후, 한쌍의 움직임 벡터가 현재 프레임으로부터 순방향 참조 프레임 및 역방향 참조 프레임으로 포인팅된다. 따라서, 순방향 및 역방향 참조 프레임의 움직임 벡터가 스케일링되어, 현재 프레임의 에러 데이터를 추정 (306) 하기 위해 이용될 수도 있는 움직임 벡터를 생성한다. 역방향 또는 순방향 참조 프레임으로 포인팅하는 생성된 움직임 벡터는,
Figure 112007089077967-PCT00001
로 특성될 수 있고,
여기서 MV_f_x 및 MV_f_y 은 새로운 움직임 벡터의 x 및 y 콤포넌트이고, MV_x 및 MV_y 는 에러없는 참조 움직임 벡터의 x 및 y 콤포넌트이고, N 은 현재 프 레임으로부터 순방향 또는 역방향 참조 프레임까지의 거리이며, M 은 순방향 또는 역방향 참조 프레임으로부터 참조 프레임이 예측되는 프레임까지의 거리이다. 움직임 벡터 스케일링과 관련된 추가적인 세부사항을 도 7a 및 도 7b 와 관련하여 이하 논의한다.
다음으로, 도 2 의 움직임 벡터 머져 (1706) 는 움직임 벡터를 머징한다 (516). 움직임 벡터 머징 (516) 은 변경가능한 블록-사이즈 움직임 벡터에 대한 지원을 제공할 수도 있다. 움직임 벡터 머징 (516) 동안, 상이한 블록 사이즈의 스케일링된 움직임 벡터가 기본 단위로 지칭되는 균일한 블록 사이즈를 나타내는 움직임 벡터로 전환된다. 기본 단위의 사이즈는 구성가능하다. 일부 16×16 픽셀 기본 단위가 이용된다.
기본 단위가 더 작은 사이즈(들) 의 몇몇 스케일링된 움직임 벡터를 포함하는 경우, 머징 동작이 적용되어 기본 단위 내의 움직임 벡터를 단일의 움직임 벡터로 머징하고 단일의 움직임 벡터를 기본 단위에 할당한다. 그러나, 스케일링된 움직임 벡터가 기본 단위보다 더 큰 블록에 대응하는 경우, 입력 움직임 벡터는 각각 기본 단위를 나타내고, 스케일링된 움직임 벡터와 동일한 움직임 벡터를 각각 갖는 몇몇의 움직임 벡터로 분할될 수도 있다. 머징 동작을 수행하기 위해 다양한 예가 이용가능하다. 일 예에서, 새로운 움직임 벡터는 기본 단위에 포함된 더 작은 블록 사이즈에 대응하는 몇몇 스케일링된 움직임 벡터의 평균 (mean) 이다. 또 다른 예에서, 새로운 움직임 벡터는 기본 단위에 포함된 몇몇 스케일링된 움직임 벡터의 평균이다. 또 다른 예에서, 새로운 움직임 벡터는 기본 단 위에 포함된 몇몇 스케일링된 움직임 벡터의 메디안 (median) 이다. 움직임 벡터 머징 (516) 이후, 움직임 벡터는 단일-사이즈의 기본 단위로 전환되었다.
일부 예에서, 스케일링된 (및 가능하게는 머징된) 움직임 벡터가 평활화된다 (518). 움직임 벡터 평활화 (518) 는 메디안 필터링을 포함할 수도 있다. 움직임 벡터 평활화 (518) 는 평균 필터링 또는 가중 평균 필터링을 포함할 수도 있다. 이전 블록 (514 및 516) 은 수신된 움직임 벡터 필드를 수정하여 균일한 사이즈 (기본 단위 사이즈) 의 순방향 및 역방향 참조 움직임 필트가 되게 한다 (현재 프레임으로부터 역방향 또는 순방향 참조 프레임으로 포인팅하기 위해 움직임 벡터가 스케일링됨). 예를 들어 메디안 필터링인, 움직임 벡터 평활화는 스케일링 (514) 및 머징 (516) 움직임에 의해 도입된 움직임 벡터에서의 특이성 (singularities) 을 제거하거나 감소시키도록 서빙하며, 따라서 더 양호한 에러 은닉 결과를 가져온다.
메디안 필터링이 신호 및 이미지 프로세싱에서 이용되어, 임펄스 잡음을 제거하고, 동시에 에지를 보존한다.
Figure 112007089077967-PCT00002
에 대해,
Figure 112007089077967-PCT00003
Figure 112007089077967-PCT00004
의 N 개의 스칼라의 어레이에 대한 메디안을 획득하기 위해, 일반적으로 어레이는 먼저
Figure 112007089077967-PCT00005
으로 분류된다. 그 후, 중간 성분
Figure 112007089077967-PCT00006
이 어레이의 메디안
Figure 112007089077967-PCT00007
로서 취해진다. 메디안
Figure 112007089077967-PCT00008
은,
Figure 112007089077967-PCT00009
의 특성을 충족시킨다.
마찬가지로,
Figure 112007089077967-PCT00010
에 대해
Figure 112007089077967-PCT00011
인, N 개의 m-차원 벡터
Figure 112007089077967-PCT00012
의 어레이에 대해, 메디안 벡터
Figure 112007089077967-PCT00013
는,
Figure 112007089077967-PCT00014
의 제한조건을 충족시키는 벡터이고,
여기서, p 는 벡터 사이의 p-놈 (norm) 행렬을 나타낸다. 일 예에서, p=1 이 이용된다. 2 차원 벡터
Figure 112007089077967-PCT00015
에 대해,
Figure 112007089077967-PCT00016
Figure 112007089077967-PCT00017
사이의 1-놈 거리는,
Figure 112007089077967-PCT00018
이다.
움직임 벡터 메디안 필터링은 모든 이용가능한 움직임 벡터에 적용될 수 있다. 움직임 벡터가 에러 매크로블록으로부터의 것이거나, 인트라-코딩된 매크로블록으로부터의 것인 경우, 움직임 벡터은 이용가능하지 않은 것으로 마킹될 수도 있고, 그렇지 않은 경우, 이용가능한 것으로 라벨링될 수도 있다. 일 예에서, 3×3 움직임 벡터 메디안 필터링 (VMF) 은 각각의 이용가능한 움직임 벡터에 적용된다. 각각의 이용가능한 움직임 벡터는 그 움직임 벡터를 센터링하는 3×3 블록에서의 움직임 벡터의 메디안에 의해 교체된다. 다른 예에서, 움직임 벡터 메디안 필터링을 수행하기 위해 상이한 사이즈의 블록이 이용될 수도 있다.
간단하게, 현재 프레임의 양방향 예측 에러 섹션에 대한 움직임 벡터를 생성하는 도 5c 의 프로세스는, 가변 블록 사이즈의 입력 움직임 벡터를 픽셀의 기본 단위 사이즈의 블록에 대응하는 기본 단위 움직임 벡터로 전환한다. 그 후, 프로세스는 순방향 및/또는 역방향 참조 프레임을 예측하기 위해 이용된 움직임 벡터를 현재 프레임의 에러 섹션으로부터 참조 프레임으로 포인팅하는 움직임 벡터로 전환한다. 도 5c 에 도시된 플로우챠트에 설명된 블록 중 임의의 하나는 생략될 수도 있고, 순서상 재배열될 수도 있으며, 또는 하나 이상의 다른 블록과 결합될 수도 있다.
도 7a 및 도 7b 는 도 5c 의 움직임 벡터 스케일링 (514) 의 예를 도시한다. 도 7a 에서, 현재 프레임 (700) 이 역방향 참조 프레임 (710) 에 기초하여 추정된다. 역방향 참조 프레임 (710) 의 매크로블록 (712) 은 또 다른 역방향 참조 프레임 (720) 을 참조하는 에러없는 움직임 벡터 (714) 에 기초하여 예측된다. 움직임 벡터 (714) 는 프레임 (720) 에서 비디오 데이터의 매크로블록 사이즈 섹션 (722) 을 로케이팅한다. 섹션 (722) 은 움직임 벡터 (714) 뿐만 아니라 매크로블록 (712 및 722) 의 상대적인 공간적 로케이션을 나타내기 위해 프레임 (720) 에서 파선 매크로블록으로 도시된다. 움직임 벡터 (714) 에 기초하여 프레임 (700) 의 섹션 (예를 들어, 은닉될 에러 섹션) 을 추정하기 위해, 스케일링 (514) 이 수행된다. 상기 식 (1) 및 식 (2) 를 언급하면, 역방향 참조 프레임 (710) 은 프레임 (700) 으로부터 1 프레임 이격되고 (N=1), 에러없는 움직임 벡터 (714) 는 프레임 (710) 으로부터 1 프레임인 (M=1) 프레임 (720) 을 포인팅하기 때문에, 스케일링된 움직임 벡터 x 및 y 콤포넌트는 팩터 1 (N/M=1/1=1) 만큼 곱해진다. 따라서, 스케일링된 움직임 벡터 (704) 는 프레임 (700) 의 에러 섹션을 추정하기 위해 이용될 수도 있다. 움직임 벡터 (704) 는 프레임 (700) 의 매크로블록과 정렬되지 않은 (다른 4 개의 매크로블록을 오버랩함) 매크로블록 사이즈 부분 (702) 으로부터 포인팅한다. 이하 더욱 상세히 설명할 바와 같이, 프레임 (700) 의 매크로블록 섹션의 추정은 프레임 (700) 에서 오버랩된 매크로블록 중 어느 매크로블록이 움직임 벡터 (704) 로 추정될 수 있는지를 결정하는 방식을 포함할 수도 있다.
도 7b 에서, 현재 프레임 (700) 은 순방향 참조 프레임 (730) 에 기초하여 추정된다. 순방향 참조 프레임 (730) 에서의 매크로블록 (732) 은 역방향 참조 프레임 (710) 으로 참조되었던 움직임 벡터 (734) 에 기초하여 예측된다. 움직임 벡터 (734) 는 프레임 (710) 에서 비디오 데이터의 매크로블록 사이즈 섹션 (716) 을 로케이팅한다. 섹션 (716) 은 움직임 벡터 (734) 뿐만 아니라 매크로블록 (732 및 716) 의 상대적인 로케이션을 나타내기 위해 프레임 (730) 에서 파선 매크로블록으로 도시된다. 움직임 벡터 (734) 에 기초하여 프레임 (700) 의 섹션 (예를 들어, 은닉될 에러 섹션 중 하나) 을 추정하기 위해, 스케일링 (514) 이 수행된다. 순방향 참조 프레임 (730) 은 프레임 (700) 으로부터 1 프레임 이격되고 (N=-1) 송신된 움직임 벡터 (734) 는 프레임 (730) 으로부터 프레임 (710) 까지 2 개의 프레임을 포인팅 (M=2) 하기 때문에, 스케일링된 움직임 벡터 x 및 y 콤포넌트는 팩터 -1/2 (N/M=-1/2=-0.5) 만큼 곱해진다. 따라서, 프레임 (700) 의 에러 섹션을 추정하기 위해 스케일링된 움직임 벡터 (709) 가 이용될 수도 있다. 움직임 벡터 (709) 는 프레임 (700) 의 매크로블록과 정렬되지 않은 (다른 4 개의 매크로블록을 오버랩함) 매크로블록 사이즈 부분 (706) 으로부터 포인팅한다. 다른 옵션과 같이, 움직임 벡터는 N=1 및 M=2 로 역방향 프레임 (710) 으로 포인팅하기 위해 생성될 수 있다. 이것은 스케일링 팩터 1/2 (N/M=1/2=0.5) 를 유발한다. 따라서, 역방향 참조 프레임 (710) 섹션 (716) 을 포인팅하는 스케일링된 움직임 벡터 (707) 는 프레임 (700) 의 에러 섹션을 추정하기 위해 이용될 수 있다.
도 5a 를 참조하여 전술한 바와 같이, 참조 데이터 결정기 (1712) 는 은닉될 에러 섹션의 오버랩을 유발하는 움직임 벡터를 스케일링한 후보 참조 섹션을 결정한다 (508 에서). 복수의 순방향 및/또는 역방향 후보 참조 섹션이 에러 섹션의 오버랩을 유발하는 움직임 벡터를 스케일링한 경우, 에러 섹션을 추정 (306; 도 3 참조) 하기 위해 어느 후보 참조 섹션을 이용할지의 결정이 수행된다. 도 8 은 에러 섹션을 포함하는 현재 프레임의 복수의 블록으로, 참조 섹션의 오버랩 (후보 참조 블록의 스케일링된 움직임 벡터로부터 유발함) 을 도시한다. (순방향 또는 역방향 참조 프레임으로부터의) 참조 블록 (802) 은 도 8 에 도시된 바와 같은 스케일링된 움직임 벡터 (804) 를 가진다. 스케일링된 움직임 벡터 (804) 는 에러 데이터를 포함하는 현재 프레임으로 포인팅한다. 스케일링된 움직임 벡터 (804) 는, 참조 블록 (802) 에 적용하는 경우, 참조 블록 (802) 을, 참조 블록 (802) 의 참조 프레임에서의 원래 위치로부터 현재 참조 프레임에서의 위치 (806) 로 이동시킨다. 스케일링된 움직임 벡터는 현재 프레임에서 4 개 이하의 블록의 오버랩을 유발한다. 이 예에서, 위치 (806) 는 블록 (808, 810, 812 및 814) 을 오버랩한다. 4 개 보다 작은 블록이 오버랩되는 경우는, 1) 정확한 오버랩으로 인해 1 개의 블록이 오버랩되는 경우, 2) 수직 또는 수평 방향으로 완전한 정렬로 인해 2 개의 블록이 오버랩되는 경우, 및 3) 오버랩된 블록들이 현재 프레임의 에지에 존재하는 경우를 포함한다.
일부 예에서, 후보 참조 섹션을 결정 (508) 하는 방법은 MCA (most covered area) 룰을 사용한다. MCA 룰은 후보 참조 세션이 가장 많이 오버랩하는, 현재 프레임의 에러 섹션에 후보 참조 세션을 할당한다. 일 양태에서, 오버랩의 퍼센티지가 오버랩의 척도로서 사용된다. 도 8 에 도시된 예에서, 움직임 벡터 (804) 는 현재 프레임의 블록 (808, 810, 812 및 814) 을 오버랩하는 참조 블록 (802) 을 유발한다 (위치 (806) 에서 블록으로 나타냄). 이 경우에, 블록 (808) 의 더 많은 퍼센티지가 블록 (810, 812 또는 814; 오버랩된 영역은 각각 A2, A3 및 A4 로 라벨링됨) 중 어느 블록보다 많이 오버랩된다 (블록 (808) 의 오버랩된 영역은 도 8 에서 A1 으로 라벨링됨). 따라서, MCA 룰은 현재 프레임의 에러 블록 (808) 에 블록 (802) 의 참조 움직임 벡터를 할당한다.
블록 (802) 이외의 다른 후보 참조 블록의 스케일링된 움직임 벡터가 또한 블록 (808) 의 오버랩을 유발할 수도 있다. 이 경우, 움직임 벡터가 현재 프레임에서 에러 섹션을 추정 (306) 하도록 이용되기 위해, 특정 에러 섹션과 참조 섹션의 가장 큰 오버랩을 유발하는 움직임 벡터가 결정될 수도 있다.
순방향 및 역방향 참조 프레임 모두에서의 후보 참조 섹션의 움직임 벡터가 가장 큰 영역 룰을 이용하여 에러 섹션에 할당될 수 있다. 이는 각각의 에러 섹션에 순방향 및 역방향 움직임 벡터의 할당을 유발한다. 일부 상황에서, 에러 섹션의 오버랩을 유발하는 후보 참조 섹션의 움직임 벡터가 존재하지 않을 수도 있다. 순방향 참조 섹션 또는 역방향 참조 섹션이 에러 섹션의 오버랩을 유발하는 시간적 예측 데이터 (예를 들어, 움직임 벡터) 를 포함하는 것으로 결정된 경우, 에러 섹션을 추정 (306) 하기 위해 단방향 모드가 이용될 수도 있다. 순방향 또는 역방향 참조 프레임으로부터 어떠한 후보 참조 블록도 에러 섹션의 오버랩을 유발하는 움직임 벡터를 갖지 않는 것으로 결정된 경우, 시간적 은닉 이외의 다른 은닉 방법 (예를 들어 또 다른 프레임의 함께 위치한 블록으로 은닉) 이 이용될 수도 있다.
일 예에서, 순방향 및/또는 역방향 참조 섹션을 결정 (508) 하는데 고려되는 참조 영역이, 전술되고 도 6 에 도시된 바와 같이 제한될 수도 있다. 도 6 은 MCA 룰에 대해 제한된 순방향 참조 영역 (615) 을 이용하여 현재 프레임 (600) 의 에러 섹션 (404) 으로의 움직임 벡터 (MV) 할당을 도시한다. 마찬가지로, MCA 룰을 적용하여 현재 프레임 (600) 의 에러 섹션 (404) 에 움직임 벡터를 할당하는 바와 같이, 역방향 참조 영역이 이용되는 것이 도시된다.
순방향 및/또는 역방향 프레임에서의 결정된 움직임 벡터의 부족은 에러 데이터를 추정 (306) 하기 위해 양방향 모드 이외의 추정 모드를 이용하는 하나의 이유이다. 추정 모드를 결정 (506) 하는 또 다른 예를 후술할 것이다.
B-프레임 (또는 슬라이스, 또는 매크로블록) 의 양방향 움직임 보상 특징으로 인해, 양방향 예측 섹션에 대한 압축 효율은 인트라-코딩된 섹션 (예를 들어, I-프레임 및 슬라이스) 및 단방향 예측 섹션 (예를 들어, P-프레임 및 슬리이스) 의 압축 효율보다 일반적으로 더 높다. 결과적으로, B-프레임 사이즈는 I-프레임 및 P-프레임 사이즈보다 통상적으로 상당히 더 작으며, 주어진 사이즈의 에러 데이터의 부분은 더 넓은 프레임 영역을 커버할 수도 있다. 더 크게 영향받은 영역 및 양방향 예측에 대해 이용된 복수의 움직임 벡터에 필요할 수도 있는 증가된 프로세싱으로 인해, 에러 섹션의 추정 모드 (단방향, 양방향 또는 다른 것) 를 결정하는 방법의 일부 예는 외부에서 내부로의 레이어 프로세싱 접근 방식을 이용하여 정확히 수신된 이웃 매크로블록 움직임 벡터 및 예측 모드 정보의 강한 영향력을 제공한다.
도 4 를 참조하면, 정확히 수신된 매크로블록 (406) 을 보더링하는 (border) 가장 위 및 가장 아래 행의 매크로블록을 포함한다. 또한, 에러 섹션 (404) 은 어떠한 정확히 수신된 매크로블록 (406) 도 보더링하지 않는 내부 매크로블록을 포함한다. 에러 섹션 (404) 에서 추정되는 에러 부분이 정확히 수신된 매크로블록 (406) 으로부터 더욱 제거되기 때문에, 이웃 매크로블록의 예측 모드 및/또는 움직임 벡터에 의해 제공된 은닉 효율성은 열화될 수도 있다. 따라서, 모드 결정에 대한 외부에서 내부로의 레이어 접근 방식은 정확히 수신된 및/또는 이미 은닉된 섹션에 대한 에러 섹션의 로케이션에 기초하여 변경될 수도 있다.
이웃 매크로블록으로부터의 정확히 수신된 정보의 효과를 향상시키기 위해, 움직임 벡터 및/또는 예측/추정 모드 정보의 3 개의 제네레이션이 에러 섹션의 추정 모드를 결정하는 경우 고려된다. 제 1 제네레이션 정보 (가장 영향력 있는) 는 에러없는 이웃 매크로블록의 예측 모드 및/또는 움직임 벡터를 포함할 수도 있다. 제 2 제네레이션 정보는 에러없는 이웃 매크로블록에 인접한 에러 매크로블록의 정보를 포함하고, 제 3 제네레이션 정보는 직접적으로 정확히 수신된 이웃 매크로블록을 갖지 않는 에러 매크로블록의 정보를 포함한다. 각각의 제네레이션 정보는 상이한 신뢰성 또는 컨피던스 레벨에서 움직임 벡터 및/또는 예측/추정 모드 정보를 포함한다. 따라서, 추정 모드를 결정하는 방법은 이들 컨피던스 또는 신뢰성 레벨을 반영할 수도 있다. 제 1 제네레이션 모드 정보는 정확히 수신된 이웃 매크로블록으로부터 추출되었기 때문에 최상의 신뢰성을 가질 수도 있다. 예시적인 결정 알고리즘은 제 1 제네레이션 정보가 이웃 에러 매크로블록에 대한 최종 모드 결정에 최강의 영향력을 가지게 하도록 설계된다. 제 2 제네레이션 모드 정보는 제 1 제네레이션 모드 정보를 이용하여 결정되었던 매크로블록의 추정 모드로부터 유도되며, 덜 신뢰할 수 있는 정보를 포함하는 것으로 고려된다. 제 3 제네레이션 모드 정보는 제 2 제네레이션 또는 이웃 제 3 제네레이션 정보로부터 유도된다.
도 5d 는 도 5a 의 에러 섹션 추정 모드를 결정 (506) 하는 프로세스의 일 예를 설명하는 플로우챠트를 도시한다. 도 2 의 추정 모드 결정기 (1714) 는 은닉되는 에러 섹션에 이웃하는 멀티미디어 데이터의 에러없는 (예를 들어, 정확히 수신된) 부분의 예측 모드를 식별한다 (520). 일부 예에서, 에러없는 부분 및 은닉되는 에러 섹션은 16×16 픽셀 매크로블록을 포함하지만, 다른 사이즈의 블록이 또한 전술한 바와 같이 이용될 수도 있다.
에러없는 이웃 매크로블록의 예측 모드는 하나 이상의 순방향 또는 역방향 참조 프레임으로부터의 단방향 예측 모드 (P-프레임에서와 같음), 인트라-코딩된 (비예측된) 모드, 및 양방향 예측 모드를 포함한다.
에러없는 이웃 부분의 예측 모드를 결정 (520) 한 이후, 추정 모드 결정기 (1714) 는 에러없는 부분에 이웃하는 에러 부분의 추정 모드를 결정한다 (522). 결정 (522) 은 에러없는 부분의 결정된 예측 모드에 적어도 일부 기초한다. 일부 예에서, 에러 매크로블록의 추정 모드는 에러없는 이웃 매크로블록의 예측 모드 또는 에러 이웃 매크로블록의 이미 결정된 추정 모드와 동일한 것으로 결정된다 (522).
일부 시간적 예측 섹션은 H.264 에서와 같이 4×4 픽셀만큼 작을 수도 있고, 추정 모드 결정 (522) 의 일부 예는 각각의 이웃 매크로블록에 대해 4 개의 가장 근접한 4×4 픽셀 블록의 움직임 벡터 및 예측 모드에 기초할 수도 있다. 에러 매크로블록은 에러없는 이웃 매크로블록을 4 개까지 가질 수도 있다. 다양한 블록 사이즈 (예를 들어, 4×4, 4×8, 8×4, 8×8, 16×8, 8×16 및 16×16) 의 이웃 매크로블록 움직임 벡터가 전체 매크로블록을 구성하는 4×4 픽셀 사이즈의 블록에 대응하는 16 개의 움직임 벡터를 형성하기 위해 오버-샘플링될 수도 있다. 일부 경우에, 에러 매크로블록에 가장 근접한 움직임 벡터는 제거되는 것보다는 에러 은닉 효과의 관점에서 더욱 신뢰할 수 있다. 일부 예에서, 직접적인 이웃 4×4 픽셀 블록 및 이들의 대응 예측 모드 및 움직임 벡터가 에러 매크로블록의 추정 모드를 결정하는데 이용될 수도 있다. 도 9 는 에러 매크로블록에 이웃하는 에러없는 매크로블록의 4×4 픽셀 블록을 도시한다. 매크로블록 (910) 은 에러 매크로블록의 우측의 에러없는 매크로블록이다 (도 9 에 에러 매크로블록은 미도시됨). 매크로블록 (910) 중 0, 2, 8 및 10 으로 라벨링된 4×4 픽셀 블록이 우측에 에러없는 이웃을 갖는 에러 매크로블록의 추정 모드를 결정하는데 이용될 수도 있다. 매크로블록 (920) 중 10, 11, 14 및 15 로 라벨링된 4×4 픽셀 블록이 최상부에 에러없는 이웃을 갖는 에러 매크로블록의 추정 모드를 결정하는데 이용될 수도 있다. 매크로블록 (930) 중 5, 7, 13 및 15 로 라벨링된 4×4 픽셀 블록이 좌측에 에러없는 이웃을 갖는 에러 매크로블록의 추정 모드를 결정하는데 이용될 수도 있다. 매크로블록 (940) 중 0, 1, 4 및 5 로 라벨링된 4×4 픽셀 블록이 바닥에 에러없는 이웃을 갖는 에러 매크로블록의 추정 모드를 결정하는데 이용될 수도 있다. 에러 매크로블록이 하나 보다 많은 에러없는 이웃 매크로블록을 갖는 경우, 모든 4×4 픽셀 블록의 결합 세트가 추정 모드를 결정하는데 이용될 수도 있다.
에러없는 이웃 매크로블록의 4 개의 가장 근접한 4×4 픽셀 블록의 4 개의 예측 모드를 이용하는 경우, 에러 매크로블록 추정 모드는 표 1 에 리스트된 기준에 따라 결정된다 (522).
4 개의 이웃 4×4 픽셀 블록의 예측 모드 에러 이웃 매크로블록의 결정된 추정 모드
4 개 모두가 인트라-코딩된 모드임 비움직임 보상 (예를 들어, 공간적 은닉) 추정
4 개 모두가 단방향 순방향임 단방향 순방향 추정
4 개 모두가 단방향 역방향임 단방향 역방향 추정
모두 다른 경우 양방향 추정
표 1 의 리스트된 기준은 에러 섹션의 양방향 추정을 이용하는 바이어스 방향을 제공한다. 모두 4 개의 에러없는 4×4 픽셀 이웃 블록이 동일한 예측 모드인 경우, 추정 모드는 양방향과 상이하다. 4 개의 이웃 4×4 픽셀 블록 중 3 개 이상이 동일한 모드인 경우, 비양방향 추정 모드 중 하나를 수행하기 위해 표 1 의 기준은 변경될 수 있다. 이웃 블록의 예측 모드 (또는 모드들) 에 기초하여 에러블록의 추정 모드를 결정하는 다른 방법이 또한 이용될 수 있다.
에러 매크로블록이 이웃 에러없는 매크로블록을 가지지 않지만, 에러없는 매크블록에 이웃하는 이웃 매크로블록을 가지는 경우, 추정 모드를 결정하는 기준은 이웃 매크로블록의 예측 모드에 덜 기초할 수도 있다. 일부 예에서, 내부 매크로블록 (에러없는 매크로블록에 이웃하지 않는 매크로블록) 의 추정 모드를 결정하는 기준은 하나 이상의 이미 결정된 (에러이고 은닉될 것으로, 또는 이미 은닉된 것으로) 매크로블록의 결정된 추정 모드 및 도 5a 의 블록 (504) 에서 생성된 스케일링된 순방향 및 역방향 움직임 벡터의 정렬에 기초한다.
에러 매크로블록의 순방향 및 역방향 스케일링된 움직임 벡터가 정렬된 경우에 대해 (예를 들어, 순방향 및 역방향 스케일링된 움직임 벡터의 x-콤포넌트 또는 y-콤포넌트의 절대차가 소정의 임계값보다 작은 경우), 모든 이미 결정된 매크로블록의 결정된 추정 모드가 단방향 (모두 순방향 또는 역방향) 인 경우, 현재 에러 매크로블록의 모드는 단방향 모드 (각각 순방향 또는 역방향) 로 정해지고, 이웃 외부 로케이팅된 매크로블록의 결정된 추정 모드가 하나 이상의 유형인 경우, 현재 매크로블록의 모드는 양방향 모드로 할당된다. 에러 매크로블록의 순방향 및 역방향 스케일링된 움직임 벡터가 정렬되지 않은 경우에 대해 (예를 들어, 순방향 및 역방향 스케일링된 움직임 벡터의 x-콤포넌트 또는 y-콤포넌트의 절대차가 소정의 임계값보다 큰 경우), 현재 에러 매크로블록에 대한 모드는 이용가능한 이미 결정된 이웃 매크로블록의 주요 모드로 정해진다. 이웃 매크로블록의 결정된 추정 모드에 기초하여 추정 모드를 결정하는 다른 방법이 또한 이용될 수도 있다.
임의의 에러없는 매크로블록으로부터 제거된 2 개 이상의 매크로블록인 매크로블록에 대해 (2 개 이상의 인터리빙 에러 또는 이전의 매크로블록만큼 임의의 에러없는 매크로블록으로부터 분리됨), 추정 모드를 결정하는 기준은 이웃 매크로블록의 예측/추정 모드에 상당히 덜 기초할 수도 있다. 이러한 경우, 현재 에러 매크로블록의 추정 모드는 모든 이웃 매크로블록의 이미 결정된 추정 모드의 조합 및 현재 에러 매크로블록의 스케일링된 움직임 벡터 정렬에 기초하여 결정될 수도 있다. 현재 매크로블록의 순방향 및 역방향 스케일링된 움직임 벡터가 정렬된 경우에 대해 (예를 들어, 순방향 및 역방향 움직임 벡터의 x-콤포넌트 또는 y-콤포넌트의 절대차가 소정의 임계값보다 작은 경우), 현재 MB 의 모드가 양방향 모드로 정해진다. 현재 MB 의 순방향 및 역방향 스케일링된 움직임 벡터가 정렬되지 않은 경우에 대해 (예를 들어, 순방향 및 역방향 움직임 벡터의 x-콤포넌트 또는 y-콤포넌트의 절대차가 소정의 임계값보다 큰 경우), 현재 에러 매크로블록에 대한 모드는 이용가능한 이미 결정된 이웃 매크로블록 추정 모드 중 주요 모드로 정해진다. 이웃 매크로블록의 결정된 추정 모드에 기초하여 에러 매크로블록의 추정 모드를 결정하는 다른 방법이 또한 이용될 수도 있다.
도 6 에 관해 전술한 바와 같은, 시간적 예측 데이터를 결정 (도 3 의 (304) 참조) 하는 참조 영역을 제한하는 프로세스는 제한된 참조 영역 (도 6 의 영역 (615 및 625) 참조) 의 가장 위 및 가장 아래 경계 (또한 일부 예에서 가장 우측 및 가장 좌측 경계) 를 식별하는 오버-샘블링된 4×4 픽셀 블록 움직임 벡터를 사용할 수 있다.
도 5a 에 도시된 플로우챠트에 설명된 블록 중 임의의 하나는 생략될 수도 있고, 순서상 재배열될 수도 있으며, 또는 하나 이상의 다른 블록과 결합될 수도 있다.
일 예는 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치를 제공한다. 예시적인 장치는 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 수단으로서, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는 상기 결정 수단, 및 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 또는 모두에 적어도 부분적으로 기초하여 제 1 섹션을 추정하는 수단을 포함한다. 시간적 예측 데이터를결정하는 수단은 도 1 및 도 2 의 시간적 예측 결정기 (170) 를 포함할 수도 있다. 제 1 섹션을 결정하는 수단은 도 2 의 에러 데이터 추정기 (1716) 를 포함할 수도 있다.
도 10 은 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치의 일 예를 설명하는 블록도를 도시한다. 도 10 의 예시적인 장치 (1000) 는 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 수단으로서, 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는 상기 결정 수단, 및 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션 중 하나 또는 모두에 적어도 부분적으로 기초하여 제 1 섹션을 추정하는 수단을 포함한다. 시간적 예측 데이터를 결정하는 수단은 도 10 의 시간적 예측 결정기 (1005) 를 포함할 수도 있다. 제 1 섹션을 결정하는 수단은 도 10 의 에러 데이터 추정기 (1010) 를 포함할 수도 있다.
당업자는 정보 및 신호가 임의의 다양한 상이한 테크놀리지 및 기술을 이용하여 표현될 수도 있음을 이해한다. 예를 들어, 명세서 전반에 걸쳐 참조될 수도 있는 데이터, 명령, 커멘드, 정보, 신호, 비트, 심볼 및 칩은 전압, 전류, 전자기파, 자계 또는 파티클, 광계 또는 파티클, 또는 이들의 임의의 조합으로 표현될 수도 있다.
또한, 당업자는 명세서에 개시된 예와 관련하여 설명된 다양한 예시적인 로직 블록, 모듈, 및 알고리즘 단계가 전기 하드웨어, 펌웨어, 컴퓨터 소프트웨어, 미들웨어, 마이크로코드, 또는 이들의 조합으로 구현될 수도 있음을 이해한다. 하드웨어와 소프트웨어의 이 상호교환성을 명백히 하기 위해, 다양한 예시적인 콤포넌트, 블록, 모듈, 회로, 및 단계가 일반적으로 이들의 기능성의 관점에서 설명되었다. 이러한 기능성이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 전체 시스템에 부과된 설계 제한 및 특정 애플리케이션에 의존한다. 당업자는 개시된 기능성을 각각 특정 애플리케이션에 대해 변화하는 방법으로 구현할 수도 있지만, 이러한 구현 결정은 개시된 방법의 범위로부터 벗어나는 것으로 해석되어서는 않된다.
명세서에 개시된 예와 관련하여 설명된 다양한 예시적인 로직 블록, 콤포넌트, 모듈, 및 회로는 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 반도체 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 디스크리트 게이트 또는 트랜지스터 로직, 디스크리트 하드웨어 콤포넌트, 또는 여기서 개시된 기능을 수행하도록 설계된 이들의 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세스는 마이크로프로세서일 수도 있지만, 대신에, 이 프로세서는 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 와 관련된 하나 이상의 마이크로프로세서, 또는 임의의 다른 이러한 구성인, 컴퓨터 디바이스의 조합으로 구현될 수도 있다.
본 명세서에서 개시된 실시형태와 관련하여 설명된 방법 또는 알고리즘은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈, 또는 이 둘의 조합으로 직접 구체화될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플레시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈 가능 디스크, CD-ROM, 또는 이 분야에 공지된 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 프로세서가 저장 매체로부터 정보를 판독하고, 저장 매체에 정보를 기입할 수 있도록 예시적인 저장 매체가 프로세서에 결합될 수도 있다. 또한, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 에 상주할 수도 있다. ASIC 는 무선 모뎀에 상주할 수도 있다. 또한, 프로세서 및 저장 매체는 무선 모뎀에 디스크리트 콤포넌트로서 상주할 수도 있다.
개시된 실시형태의 이전의 설명은 이 분야의 당업자가 본 발명을 제조하고 이용할 수 있도록 제공된다. 이들 실시형태의 다양한 변경들이 이 분야의 당업자에게 용이하게 명백할 것이고, 본 명세서에 규정된 원리는 다른 예에 적용되 수도 있고, 추자적인 성분이 부가될 수도 있다.
그 결과, 에러 양방향 예측 멀티미디어 데이터의 시간적 에러 은닉을 수행하는 방법 및 장치가 개시되었다.

Claims (58)

  1. 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법으로서,
    상기 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 단계로서, 상기 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는, 상기 결정 단계, 및
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 상기 제 1 섹션을 추정하는 단계를 포함하는, 프로세싱 방법.
  2. 제 1 항에 있어서,
    상기 시간적 예측 데이터는 상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션에 대응하는 움직임 벡터를 더 포함하는, 프로세싱 방법.
  3. 제 1 항에 있어서,
    상기 결정하는 단계는,
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션을 결정하기 위해 복수의 순방향 후보 참조 섹션 및 복수의 역방향 후보 참조 섹션을 프로세싱하는 단계를 더 포함하는, 프로세싱 방법.
  4. 제 3 항에 있어서,
    스케일링된 움직임 벡터가 상기 제 1 섹션을 포함하는 프레임에 대응하도록, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션에 대응하는 움직임 벡터를 스케일링하는 단계를 더 포함하는, 프로세싱 방법.
  5. 제 4 항에 있어서,
    상기 움직임 벡터를 스케일링하는 단계는, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션 중 하나 이상이 상기 제 1 섹션을 오버랩하도록 유발하며, 또한,
    상기 추정하는 단계는, 상기 하나 이상의 오버랩 후보 참조 섹션에 기초하여 상기 제 1 섹션을 추정하는 단계를 더 포함하는, 프로세싱 방법.
  6. 제 4 항에 있어서,
    상기 움직임 벡터를 스케일링하는 단계는, 상기 제 1 섹션을 오버랩하는 복수의 순방향 후보 참조 섹션 및 상기 제 1 섹션을 오버랩하는 복수의 역방향 후보 참조 섹션을 유발하며, 또한,
    상기 제 1 섹션을 추정하는 단계는, 순방향 후보 섹션의 최대 오버랩을 유발하는 순방향 후보 참조 섹션, 및 역방향 후보 섹션의 최대 오버랩을 유발하는 역방향 후보 참조 섹션 중 하나 또는 그 양자에 기초하여 상기 제 1 섹션을 추정하는 단계를 더 포함하는, 프로세싱 방법.
  7. 제 4 항에 있어서,
    상기 움직임 벡터를 평활화하는 단계를 더 포함하는, 프로세싱 방법.
  8. 제 7 항에 있어서,
    상기 평활화하는 단계는 메디안 필터링을 포함하는, 프로세싱 방법.
  9. 제 3 항에 있어서,
    상기 제 1 순방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 순방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 단계; 및
    상기 제 1 역방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 역방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 단계를 더 포함하고,
    상기 기본 단위 부분은 상기 머징된 움직임 벡터에 대응하는 섹션을 포함하고,
    상기 기본 단위 부분은 N×M 픽셀 블록이며, 또한
    상기 N 및 M 은 정수인, 프로세싱 방법.
  10. 제 9 항에 있어서,
    상기 움직임 벡터를 머징하는 단계는,
    단순한 평균화, 가중 평균화 및 메디안 필터링 중 하나 이상을 포함하는, 프로세싱 방법.
  11. 제 3 항에 있어서,
    상기 시간적 예측 데이터를 결정하는데 이용된 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션을, 상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분에 대응하는 움직임 벡터에 의해 경계된 섹션으로 제한하는 단계를 더 포함하는, 프로세싱 방법.
  12. 제 1 항에 있어서,
    상기 제 1 순방향 참조 섹션, 상기 제 1 역방향 참조 섹션 및 상기 제 1 섹션은 동일한 사이즈인, 프로세싱 방법.
  13. 제 1 항에 있어서,
    상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션을 추정하는 모드를 결정하는 단계를 더 포함하는, 프로세싱 방법.
  14. 제 1 항에 있어서,
    상기 제 1 섹션의 제 1 부분에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 에러로 수신된 제 1 섹션의 하나 이상의 상기 제 1 부분을 추정하는 모드를 결정하는 단계; 및
    제 2 부분에 이웃하는 상기 제 1 부분의 결정된 모드 중 하나 이상에 적어도 부분적으로 기초하여, 상기 제 1 섹션의 하나 이상의 상기 제 2 부분을 추정하는 모드를 결정하는 단계를 더 포함하고,
    상기 하나 이상의 제 2 부분은 어떠한 에러없는 부분에도 이웃하지 않는, 프로세싱 방법.
  15. 제 14 항에 있어서,
    상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하는 단계는,
    순방향 움직임 벡터 및 역방향 움직임 벡터의 상대적인 정렬에 적어도 부분적으로 기초하여, 상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하는 단계를 더 포함하고,
    상기 순방향 움직임 벡터는 상기 제 1 순방향 참조 섹션에 대응하고, 상기 역방향 움직임 벡터는 상기 제 1 역방향 참조 섹션에 대응하는, 프로세싱 방법.
  16. 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 프로세서로서,
    상기 에러로 수신된 제 1 섹션에 대한, 제 1 순방향 참조 섹션 및 제 1 역방 향 참조 섹션에 대응하는 시간적 예측 데이터를 결정하고,; 그리고
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 상기 제 1 섹션을 추정하도록 구성되는, 프로세서.
  17. 제 16 항에 있어서,
    상기 프로세서는,
    복수의 순방향 후보 참조 섹션 및 복수의 역방향 후보 참조 섹션을 프로세싱함으로써 상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션을 결정하도록 더 구성되는, 프로세서.
  18. 제 17 항에 있어서,
    상기 프로세서는,
    스케일링된 움직임 벡터가 상기 제 1 섹션을 포함하는 프레임에 대응하도록 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션에 대응하는 움직임 벡터를 스케일링하도록 더 구성되는, 프로세서.
  19. 제 18 항에 있어서,
    상기 프로세서는 상기 움직임 벡터를 평활화하도록 더 구성되는, 프로세서.
  20. 제 17 항에 있어서,
    상기 프로세서는,
    상기 제 1 순방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 순방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하고; 그리고
    상기 제 1 역방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 역방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하도록 더 구성되고,
    상기 기본 단위 부분은 상기 머징된 움직임 벡터에 대응하는 섹션을 포함하고,
    상기 기본 단위 부분은 N×M 픽셀 블록이며, 또한
    상기 N 및 M 은 정수인, 프로세서.
  21. 제 17 항에 있어서,
    상기 프로세서는,
    상기 시간적 예측 데이터를 결정하기 위해 이용된 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션을, 상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분에 대응하는 움직임 벡터에 의해 경계된 섹션으로 제한하도록 더 구성되는, 프로세서.
  22. 제 16 항에 있어서,
    상기 프로세서는,
    상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션을 추정하는 모드를 결정하도록 더 구성되는, 프로세서.
  23. 제 16 항에 있어서,
    상기 프로세서는,
    상기 제 1 섹션의 제 1 부분에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 에러로 수신된 제 1 섹션의 하나 이상의 상기 제 1 부분을 추정하는 모드를 결정하고; 그리고
    제 2 부분에 이웃하는 상기 제 1 부분의 결정된 모드 중 하나 이상에 적어도 부분적으로 기초하여, 상기 제 1 섹션의 하나 이상의 상기 제 2 부분을 추정하는 모드를 결정하도록 더 구성되며,
    상기 하나 이상의 제 2 부분은 어떠한 에러없는 부분에도 이웃하지 않는, 프로세서.
  24. 제 23 항에 있어서,
    상기 프로세서는,
    순방향 움직임 벡터 및 역방향 움직임 벡터의 상대적인 정렬에 적어도 부분적으로 기초하여, 상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하도록 더 구성되며,
    상기 순방향 움직임 벡터는 상기 제 1 순방향 참조 섹션에 대응하고, 상기 역방향 움직임 벡터는 상기 제 1 역방향 참조 섹션에 대응하는, 프로세서.
  25. 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치로서,
    상기 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 결정기로서, 상기 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는, 상기 결정기, 및
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 상기 제 1 섹션을 추정하는 추정기를 구비하는, 프로세싱 장치.
  26. 제 25 항에 있어서,
    상기 시간적 예측 데이터는 상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션에 대응하는 움직임 벡터를 더 포함하는, 프로세싱 장치.
  27. 제 25 항에 있어서,
    상기 결정기는, 복수의 순방향 후보 참조 섹션 및 복수의 역방향 후보 참조 섹션을 프로세싱함으로써 상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션을 결정하는, 프로세싱 장치.
  28. 제 27 항에 있어서,
    상기 장치는,
    스케일링된 움직임 벡터가 상기 제 1 섹션을 포함하는 프레임에 대응하도록, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션에 대응하는 움직임 벡터를 스케일링하는 스케일러를 더 구비하는, 프로세싱 장치.
  29. 제 28 항에 있어서,
    상기 스케일링된 움직임 벡터는 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션 중 하나 이상이 상기 제 1 섹션을 오버랩하도록 유발하며,
    상기 추정기는 상기 하나 이상의 오버랩 후보 참조 섹션에 기초하여 상기 제 1 섹션을 추정하는, 프로세싱 장치.
  30. 제 28 항에 있어서,
    상기 스케일링된 움직임 벡터는, 상기 제 1 섹션을 오버랩하는 복수의 순방향 후보 참조 섹션 및 상기 제 1 섹션을 오버랩하는 복수의 역방향 후보 참조 섹션을 유발하며,
    상기 추정기는, 순방향 후보 섹션의 최대 오버랩을 유발하는 순방향 후보 참조 섹션, 및 역방향 후보 섹션의 최대 오버랩을 유발하는 역방향 후보 참조 섹션 중 하나 또는 그 양자에 기초하여 상기 제 1 섹션을 추정하는, 프로세싱 장치.
  31. 제 28 항에 있어서,
    상기 장치는 상기 움직임 벡터를 평활화하는 스무더를 더 구비하는, 프로세싱 장치.
  32. 제 27 항에 있어서,
    상기 장치는,
    상기 제 1 순방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 순방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하고, 그리고
    상기 제 1 역방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 역방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 머저를 더 구비하고,
    상기 기본 단위 부분은 상기 머징된 움직임 벡터에 대응하는 섹션을 포함하고,
    상기 기본 단위 부분은 N×M 픽셀 블록이며, 또한
    상기 N 및 M 은 정수인, 프로세싱 장치.
  33. 제 27 항에 있어서,
    상기 장치는,
    상기 시간적 예측 데이터를 결정하는데 이용된 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션을, 상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분에 대응하는 움직임 벡터에 의해 경계된 섹션으로 제한하는 제한기를 더 구비하는, 프로세싱 장치.
  34. 제 25 항에 있어서,
    상기 장치는,
    상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션을 추정하는 모드를 결정하는 제 2 결정기를 더 구비하는, 프로세싱 장치.
  35. 제 25 항에 있어서,
    상기 제 1 섹션의 제 1 부분에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 에러로 수신된 제 1 섹션의 하나 이상의 상기 제 1 부분을 추정하는 모드를 결정하고, 그리고, 제 2 부분에 이웃하는 상기 제 1 부분의 결정된 모드 중 하나 이상에 적어도 부분적으로 기초하여, 상기 제 1 섹션의 하나 이상의 상기 제 2 부분을 추정하는 모드를 결정하는 제 2 결정기를 더 구비하며,
    상기 하나 이상의 제 2 부분은 어떠한 에러없는 부분에도 이웃하지 않는, 프 로세싱 장치.
  36. 제 35 항에 있어서,
    상기 제 2 결정기는, 순방향 움직임 벡터 및 역방향 움직임 벡터의 상대적인 정렬에 적어도 부분적으로 기초하여, 상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하며,
    상기 순방향 움직임 벡터는 상기 제 1 순방향 참조 섹션에 대응하고, 상기 역방향 움직임 벡터는 상기 제 1 역방향 참조 섹션에 대응하는, 프로세싱 장치.
  37. 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 장치로서,
    상기 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 수단으로서, 상기 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는, 상기 결정 수단, 및
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 상기 제 1 섹션을 추정하는 수단을 포함하는, 프로세싱 장치.
  38. 제 37 항에 있어서,
    상기 결정하는 수단은,
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션을 결정하기 위 해 복수의 순방향 후보 참조 섹션 및 복수의 역방향 후보 참조 섹션을 프로세싱하는, 프로세싱 장치.
  39. 제 38 항에 있어서,
    스케일링된 움직임 벡터가 상기 제 1 섹션을 포함하는 프레임에 대응하도록, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션에 대응하는 움직임 벡터를 스케일링하는 수단을 더 포함하는, 프로세싱 장치.
  40. 제 39 항에 있어서,
    상기 움직임 벡터를 스케일링하는 수단은, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션 중 하나 이상이 상기 제 1 섹션을 오버랩하도록 유발하며, 또한,
    상기 추정하는 수단은 상기 하나 이상의 오버랩 후보 참조 섹션에 기초하여 상기 제 1 섹션을 추정하는, 프로세싱 장치.
  41. 제 39 항에 있어서,
    상기 움직임 벡터를 스케일링하는 수단은, 상기 제 1 섹션을 오버랩하는 복수의 순방향 후보 참조 섹션 및 상기 제 1 섹션을 오버랩하는 복수의 역방향 후보 참조 섹션을 유발하며, 또한,
    상기 제 1 섹션을 추정하는 수단은, 순방향 후보 섹션의 최대 오버랩을 유발 하는 순방향 후보 참조 섹션, 및 역방향 후보 섹션의 최대 오버랩을 유발하는 역방향 후보 참조 섹션 중 하나 또는 그 양자에 기초하여 상기 제 1 섹션을 추정하는, 프로세싱 장치.
  42. 제 39 항에 있어서,
    상기 움직임 벡터를 평활화하는 수단을 더 포함하는, 프로세싱 장치.
  43. 제 38 항에 있어서,
    상기 제 1 순방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 순방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 수단; 및
    상기 제 1 역방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 역방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 수단을 더 포함하고,
    상기 기본 단위 부분은 상기 머징된 움직임 벡터에 대응하는 섹션을 포함하고,
    상기 기본 단위 부분은 N×M 픽셀 블록이며, 또한
    상기 N 및 M 은 정수인, 프로세싱 장치.
  44. 제 43 항에 있어서,
    상기 움직임 벡터를 머징하는 수단은,
    단순한 평균화 및 메디안 필터링 중 하나 이상을 이용하여 상기 움직임 벡터를 머징하는, 프로세싱 장치.
  45. 제 38 항에 있어서,
    상기 시간적 예측 데이터를 결정하는데 이용된 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션을, 상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분에 대응하는 움직임 벡터에 의해 경계된 섹션으로 제한하는 수단을 더 포함하는, 프로세싱 장치.
  46. 제 37 항에 있어서,
    상기 제 1 순방향 참조 섹션, 상기 제 1 역방향 참조 섹션 및 상기 제 1 섹션은 동일한 사이즈인, 프로세싱 장치.
  47. 제 37 항에 있어서,
    상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션을 추정하는 모드를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  48. 제 37 항에 있어서,
    상기 제 1 섹션의 제 1 부분에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 에러로 수신된 제 1 섹션의 하나 이상의 상기 제 1 부분을 추정하는 모드를 결정하는 수단; 및
    제 2 부분에 이웃하는 상기 제 1 부분의 하나 이상의 결정된 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션의 하나 이상의 상기 제 2 부분을 추정하는 모드를 결정하는 수단을 더 포함하고,
    상기 하나 이상의 제 2 부분은 어떠한 에러없는 부분에도 이웃하지 않는, 프로세싱 장치.
  49. 제 48 항에 있어서,
    상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하는 수단은,
    순방향 움직임 벡터 및 역방향 움직임 벡터의 상대적인 정렬에 적어도 부분적으로 기초하여, 상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하며,
    상기 순방향 움직임 벡터는 상기 제 1 순방향 참조 섹션에 대응하고, 상기 역방향 움직임 벡터는 상기 제 1 역방향 참조 섹션에 대응하는, 프로세싱 장치.
  50. 에러로 수신된 제 1 섹션을 포함하는 양방향 예측 멀티미디어 데이터를 프로세싱하는 방법을 구현하는 컴퓨터 판독가능 매체로서,
    상기 방법은,
    상기 에러로 수신된 제 1 섹션에 대한 시간적 예측 데이터를 결정하는 단계 로서, 상기 시간적 예측 데이터는 제 1 순방향 참조 섹션 및 제 1 역방향 참조 섹션에 대응하는, 상기 결정 단계, 및
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션 중 하나 이상에 기초하여 상기 제 1 섹션을 추정하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  51. 제 50 항에 있어서,
    상기 결정하는 단계는,
    상기 제 1 순방향 참조 섹션 및 상기 제 1 역방향 참조 섹션을 결정하기 위해 복수의 순방향 후보 참조 섹션 및 복수의 역방향 후보 참조 섹션을 프로세싱하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  52. 제 51 항에 있어서,
    상기 방법은,
    스케일링된 움직임 벡터가 상기 제 1 섹션을 포함하는 프레임에 대응하도록, 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션에 대응하는 움직임 벡터를 스케일링하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  53. 제 52 항에 있어서,
    상기 방법은 상기 움직임 벡터를 평활화하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  54. 제 51 항에 있어서,
    상기 방법은,
    상기 제 1 순방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 순방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 단계; 및
    상기 제 1 역방향 참조 섹션의 하나 이상의 기본 단위 부분에 대응하는 하나 이상의 기본 움직임 벡터를 형성하기 위해, 상기 복수의 역방향 후보 참조 섹션 중 2 개 이상에 대응하는 움직임 벡터를 머징하는 단계를 더 포함하고,
    상기 기본 단위 부분은 상기 머징된 움직임 벡터에 대응하는 섹션을 포함하고,
    상기 기본 단위 부분은 N×M 픽셀 블록이며, 또한
    상기 N 및 M 은 정수인, 컴퓨터 판독가능 매체.
  55. 제 51 항에 있어서,
    상기 방법은,
    상기 시간적 예측 데이터를 결정하는데 이용된 상기 복수의 순방향 후보 참조 섹션 및 상기 복수의 역방향 후보 참조 섹션을, 상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분에 대응하는 움직임 벡터에 의해 경계된 섹션으로 제한하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  56. 제 50 항에 있어서,
    상기 방법은,
    상기 제 1 섹션에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션을 추정하는 모드를 결정하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  57. 제 50 항에 있어서,
    상기 방법은,
    상기 제 1 섹션의 제 1 부분에 이웃하는 멀티미디어 데이터의 에러없는 부분의 하나 이상의 예측 모드에 적어도 부분적으로 기초하여, 상기 에러로 수신된 제 1 섹션의 하나 이상의 상기 제 1 부분을 추정하는 모드를 결정하는 단계; 및
    제 2 부분에 이웃하는 상기 제 1 부분의 하나 이상의 결정된 모드에 적어도 부분적으로 기초하여, 상기 제 1 섹션의 하나 이상의 상기 제 2 부분을 추정하는 모드를 결정하는 단계를 더 포함하고,
    상기 하나 이상의 제 2 부분은 어떠한 에러없는 부분에도 이웃하지 않는, 컴퓨터 판독가능 매체.
  58. 제 57 항에 있어서,
    상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하는 단계는,
    순방향 움직임 벡터 및 역방향 움직임 벡터의 상대적인 정렬에 적어도 부분적으로 기초하여, 상기 하나 이상의 제 2 부분을 추정하는 모드를 결정하는 단계를 더 포함하고,
    상기 순방향 움직임 벡터는 상기 제 1 순방향 참조 섹션에 대응하고, 상기 역방향 움직임 벡터는 상기 제 1 역방향 참조 섹션에 대응하는, 컴퓨터 판독가능 매체.
KR1020077028972A 2005-05-11 2006-05-11 양방향 예측 프레임에 대한 시간적 에러 은닉 방법, 장치, 프로세서, 및 컴퓨터 판독가능 매체 KR100930850B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US68027805P 2005-05-11 2005-05-11
US60/680,278 2005-05-11
PCT/US2006/018597 WO2006122314A2 (en) 2005-05-11 2006-05-11 Temporal error concealment for bi-directionally predicted frames

Publications (2)

Publication Number Publication Date
KR20080021654A true KR20080021654A (ko) 2008-03-07
KR100930850B1 KR100930850B1 (ko) 2009-12-10

Family

ID=37397344

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077028972A KR100930850B1 (ko) 2005-05-11 2006-05-11 양방향 예측 프레임에 대한 시간적 에러 은닉 방법, 장치, 프로세서, 및 컴퓨터 판독가능 매체

Country Status (6)

Country Link
US (1) US7660354B2 (ko)
EP (1) EP1880346A4 (ko)
JP (1) JP2008546228A (ko)
KR (1) KR100930850B1 (ko)
CN (1) CN101379816B (ko)
WO (1) WO2006122314A2 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4879558B2 (ja) * 2005-11-02 2012-02-22 パナソニック株式会社 動きベクトル検出装置
JP4730183B2 (ja) * 2006-04-17 2011-07-20 株式会社日立製作所 映像表示装置
US8514728B2 (en) * 2006-06-22 2013-08-20 Broadcom Corporation Methods and systems for estimating temporal correlation of a propagation channel
US8238442B2 (en) * 2006-08-25 2012-08-07 Sony Computer Entertainment Inc. Methods and apparatus for concealing corrupted blocks of video data
WO2008078807A1 (ja) * 2006-12-27 2008-07-03 Panasonic Corporation 動画像復号化装置
FR2915342A1 (fr) * 2007-04-20 2008-10-24 Canon Kk Procede et dispositif de codage video
US8565309B2 (en) * 2007-08-28 2013-10-22 Surapong Lertrattanapanich System and method for motion vector collection for motion compensated interpolation of digital video
EP2071852A1 (en) 2007-12-11 2009-06-17 Alcatel Lucent Process for delivering a video stream over a wireless bidirectional channel between a video encoder and a video decoder
ATE526787T1 (de) * 2007-12-11 2011-10-15 Alcatel Lucent Verfahren zum zustellen eines videostroms über einen drahtlosen kanal
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
TW201028964A (en) * 2009-01-23 2010-08-01 Ind Tech Res Inst Depth calculating method for two dimension video and apparatus thereof
TWI442777B (zh) * 2009-06-23 2014-06-21 Acer Inc 空間性錯誤隱藏方法
KR101611437B1 (ko) * 2009-10-28 2016-04-26 삼성전자주식회사 복수의 프레임을 참조하여 영상을 부호화, 복호화하는 방법 및 장치
KR20110068792A (ko) 2009-12-16 2011-06-22 한국전자통신연구원 적응적 영상 부호화 장치 및 방법
EP2559243B1 (en) * 2010-04-13 2014-08-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A video decoder and a video encoder using motion-compensated prediction
EP2663078A4 (en) * 2011-01-07 2015-02-11 Samsung Electronics Co Ltd VIDEO PRESENTATION METHOD FOR CARRYING OUT BILATERAL PREDICTIONS AND UNILATERAL PREDICTIONS AND DEVICE THEREFOR, VIDEO CODING METHOD AND DEVICE THEREFOR AND VIDEO DECODING METHOD AND DEVICE THEREFOR
US9532066B2 (en) 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction
JP5837575B2 (ja) 2011-04-12 2015-12-24 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動画像符号化方法、動画像符号化装置、動画像復号化方法、動画像復号化装置、および動画像符号化復号化装置
MX2013012020A (es) 2011-05-24 2013-12-10 Panasonic Corp Metodo de codificacion de imagenes, aparato de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion /decodificacion de imagenes.
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
JP5865366B2 (ja) * 2011-05-27 2016-02-17 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置、および、画像符号化復号装置
ES2779226T3 (es) 2011-05-31 2020-08-14 Sun Patent Trust Procedimiento de descodificación de vídeo y dispositivo de descodificación de vídeo
SG194746A1 (en) * 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
WO2012173745A1 (en) * 2011-06-13 2012-12-20 Dolby Laboratories Licensing Corporation Fused region-based vdr prediction
JP5786478B2 (ja) * 2011-06-15 2015-09-30 富士通株式会社 動画像復号装置、動画像復号方法、及び動画像復号プログラム
EP2728878B1 (en) 2011-06-30 2020-02-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
EP3487178A1 (en) 2011-08-03 2019-05-22 Sun Patent Trust Video encoding method, video encoding apparatus, video decoding method, video decoding apparatus, and video encoding/decoding apparatus
CA2850595C (en) 2011-10-19 2020-09-08 Panasonic Corporation Picture coding method, picture coding apparatus, picture decoding method, and picture decoding apparatus
TWI523497B (zh) * 2011-11-10 2016-02-21 Sony Corp Image processing apparatus and method
CA2855777C (en) 2011-12-23 2017-10-24 Electronics And Telecommunications Research Institute Method and apparatus for setting reference picture index of temporal merging candidate
BR112014031122A2 (pt) * 2012-07-17 2017-06-27 Thomson Licensing avaliação de qualidade de vídeo em um nível de fluxos de bits
US9872046B2 (en) * 2013-09-06 2018-01-16 Lg Display Co., Ltd. Apparatus and method for recovering spatial motion vector
EP3780608A4 (en) 2018-04-02 2021-12-01 SZ DJI Technology Co., Ltd. IMAGE PROCESSING PROCESS AND IMAGE PROCESSING DEVICE

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0125581B1 (ko) * 1991-07-24 1998-07-01 구자홍 디지탈 영상신호의 에러수정 시스템
US5638128A (en) * 1994-11-08 1997-06-10 General Instrument Corporation Of Delaware Pixel interpolation filters for video decompression processor
JPH08223568A (ja) * 1995-02-10 1996-08-30 Alpine Electron Inc Bピクチャのマクロブロック画像復元方法
US5621467A (en) * 1995-02-16 1997-04-15 Thomson Multimedia S.A. Temporal-spatial error concealment apparatus and method for video signal processors
US5724369A (en) * 1995-10-26 1998-03-03 Motorola Inc. Method and device for concealment and containment of errors in a macroblock-based video codec
EP0859524B1 (en) * 1996-08-29 2007-06-27 Matsushita Electric Industrial Co., Ltd. Image decoder and image memory overcoming various kinds of delaying factors caused by hardware specifications specific to image memory by improving storing system and reading-out system
JP3895414B2 (ja) * 1996-12-16 2007-03-22 松下電器産業株式会社 映像復号化装置
US6005624A (en) * 1996-12-20 1999-12-21 Lsi Logic Corporation System and method for performing motion compensation using a skewed tile storage format for improved efficiency
AU1941797A (en) * 1997-03-17 1998-10-12 Mitsubishi Denki Kabushiki Kaisha Image encoder, image decoder, image encoding method, image decoding method and image encoding/decoding system
GB2343321B (en) * 1998-11-02 2003-03-26 Nokia Mobile Phones Ltd Error concealment in a video signal
GB9928022D0 (en) * 1999-11-26 2000-01-26 British Telecomm Video coding and decording
GB2362533A (en) * 2000-05-15 2001-11-21 Nokia Mobile Phones Ltd Encoding a video signal with an indicator of the type of error concealment used
JP2002290978A (ja) * 2001-03-26 2002-10-04 Hitachi Ltd 動画像エラー回復方法
KR100916312B1 (ko) * 2002-09-27 2009-09-11 주식회사 케이티 적응적 가중 오류 정정 부호화 및 다중 표현열 부호화를사용한 비디오 전송 장치 및 그 방법
KR100941123B1 (ko) * 2003-10-09 2010-02-10 톰슨 라이센싱 에러 은닉을 위한 직접 모드 도출 프로세스
US20060133495A1 (en) * 2004-12-22 2006-06-22 Yan Ye Temporal error concealment for video communications
US8693540B2 (en) * 2005-03-10 2014-04-08 Qualcomm Incorporated Method and apparatus of temporal error concealment for P-frame

Also Published As

Publication number Publication date
KR100930850B1 (ko) 2009-12-10
EP1880346A4 (en) 2011-10-19
US20060269153A1 (en) 2006-11-30
CN101379816B (zh) 2010-12-22
JP2008546228A (ja) 2008-12-18
EP1880346A2 (en) 2008-01-23
WO2006122314A3 (en) 2008-11-06
WO2006122314A2 (en) 2006-11-16
CN101379816A (zh) 2009-03-04
US7660354B2 (en) 2010-02-09

Similar Documents

Publication Publication Date Title
KR100930850B1 (ko) 양방향 예측 프레임에 대한 시간적 에러 은닉 방법, 장치, 프로세서, 및 컴퓨터 판독가능 매체
KR100926205B1 (ko) P-프레임에 대한 시간 에러 은폐 방법 및 장치
US7120197B2 (en) Motion compensation loop with filtering
JP5280531B2 (ja) フィルタ選択によるビデオ符号化
EP1457056B1 (en) Skip macroblock coding
JP4908522B2 (ja) 誤り隠蔽に関連する歪み値に基づいてエンコード方法を決定する方法および装置
TWI442777B (zh) 空間性錯誤隱藏方法
KR101012624B1 (ko) 통합 에러 은폐 프레임워크를 위한 방법 및 장치
JP2007532036A (ja) インターレース・ビデオの進歩した双方向予測コーディング
JP5222958B2 (ja) 動画像符号化装置、動画像符号化方法、動画像復号化装置および動画像復号化方法
Tsai et al. Joint temporal and spatial error concealment for multiple description video coding
CN113259661A (zh) 视频解码的方法和装置
TW200942045A (en) Method for video coding
US20090028241A1 (en) Device and method of coding moving image and device and method of decoding moving image
JP7462792B2 (ja) ビデオ・コーディングのための方法及び装置
Zheng Efficient error concealment and error control schemes for H. 264 video
CN116806427A (zh) 用于基于偏移的修正和多参考行选择的协调设计
Liu et al. Multiframe error concealment for whole-frame loss in H. 264/AVC
JP2023546674A (ja) イントラモードコーディングのための改良
WO2024064421A1 (en) Method and apparatus for motion vector prediction based on subblock motion vector
JP2023543892A (ja) イントラ双方向予測及び複数参照ライン選択のための調和設計
Yang et al. Decoder motion vector estimation for scalable video error concealment
JP2011239464A (ja) 復号器
JP2009105986A (ja) 復号器
Andrews et al. Test model 11 Purpose: Information

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

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161125

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 11