KR100938568B1 - 프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션 - Google Patents

프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션 Download PDF

Info

Publication number
KR100938568B1
KR100938568B1 KR1020077023112A KR20077023112A KR100938568B1 KR 100938568 B1 KR100938568 B1 KR 100938568B1 KR 1020077023112 A KR1020077023112 A KR 1020077023112A KR 20077023112 A KR20077023112 A KR 20077023112A KR 100938568 B1 KR100938568 B1 KR 100938568B1
Authority
KR
South Korea
Prior art keywords
block
motion vector
reference block
boundary strength
video data
Prior art date
Application number
KR1020077023112A
Other languages
English (en)
Other versions
KR20070110543A (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 KR20070110543A publication Critical patent/KR20070110543A/ko
Application granted granted Critical
Publication of KR100938568B1 publication Critical patent/KR100938568B1/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/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/513Processing of motion vectors
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • 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/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level

Landscapes

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

Abstract

복원된 비디오 데이터로부터 구성되고, 보간된 비디오 데이터를 노이즈 제거하는 단계를 포함하는, 보간된 비디오의 품질을 높이기 위한 방법 및 장치가 기술된다. 로우 패스 필터가 보간된 비디오 데이터를 필터링하는 데에 사용된다. 일 실시형태에서, 로우 패스 필터의 필터링 레벨은 보간된 비디오 데이터 및 (보간된 및/또는 보간되지 않은) 인접 비디오 데이터에 대해 결정된 경계 강도 값에 기초하여 결정된다. 이 실시형태의 일 양태에서, 보간된 비디오 데이터 및 인접 비디오 데이터에 대한 기준 비디오 데이터의 인접성에 기초하여 경계값이 결정된다.
보간, 노이즈 제거, 경계 강도 값

Description

프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션{INTERPOLATED FRAME DEBLOCKING OPERATION IN FRAME RATE UP CONVERSION APPLICATION}
35 U.S.C §119 에 따른 우선권 주장
본 특허 출원은, 2005 년 3 월 10 일자로 출원되어 본 발명의 양수인에게 양도되었으며, 여기서 참조로서 명백하게 포함되는 가출원 제 60/660,909 호를 우선권 주장한다.
발명의 배경
발명의 분야
본 발명은 일반적으로는 데이터 압축에 관련되고, 상세하게는 프로세스 비디오의 노이즈 제거 (denoising) 에 관련된다.
관련 기술의 설명
블록-기반 압축은 블록 경계들 간에 아티팩트를 도입할 수도 있으며, 특히 블록 경계들 간의 코릴레이션이 고려되지 않는 경우에 그러하다.
스캐일러블 (scalable) 비디오 코딩은 로우 비트 레이트 애플리케이션으로 광범위한 수용을 획득하며, 특히 변동 대역폭을 갖는 이종의 네트워크 (예를 들어, 인터넷 및 무선 스트리밍) 에서 그러하다. 스캐러블 비디오 코딩은 코딩된 비디오가 다중 계층으로서 송신되도록 한다-일반적으로, 기본 계층은 가장 가치있는 정보를 포함하고, 가장 적은 대역폭 (비디오에 대한 최저 비트 레이트) 을 차지하며, 향상 계층은 기본 계층 상에 정제를 제공한다. 대부분의 스캐러블 비디오 압축 기술은, 휴먼 비주얼 시스템이 저주파수 영역, 플래터 (flatter) 보다 이미지의 고주파수 영역에서 (압축으로 인한) 잡음에 관대하다는 사실을 활용한다. 따라서, 기본 계층은 저주파수 정보를 우세하게 포함하고, 고주파수 정보는 향상 계층에서 운반된다. 네트워크 대역폭이 부족할 때, 코딩된 비디오의 기본 계층만 (향상 계층 없음) 을 수신하는 확률이 더 높다.
향상 계층 또는 기본 계층 비디오 정보가 채널 조건 때문에 분실되거나, 배터리 전력을 보존하기 위해 탈락된다면, 임의의 몇몇 타입의 보간 (interpolating) 기술이 분실된 데이터를 대신하기 위해 채용될 수도 있다. 예를 들어, 향상 계층 프레임이 분실된 경우, 기본 계층 프레임과 같은, 다른 프레임을 나타내는 데이터가 분실된 향상 계층 데이터를 대신하는 데이터를 보간 하는 데에 사용될 수 있다. 보간은 모션 보상된 예측 데이터를 보간하는 것을 포함할 수도 있다. 대체 비디오 데이터는 일반적으로 불완전한 보간으로 인한 아티팩트때문에 손상될 수도 있다.
결과적으로, 보간 아티팩트를 감소 및/또는 제거하기 위해서 보간된 데이터를 노이즈 제거하는 포스트-프로세싱 알고리즘에 대한 요구가 있다.
발명의 요약
비디오 데이터를 프로세싱하는 방법이 제공된다. 이 방법은 비디오 데이터를 보간하는 단계와 보간된 비디오 데이터를 노이즈 제거하는 단계를 포함한다. 일 양태에서, 보간된 비디오 데이터는 제 1 및 제 2 블록을 포함하고, 이 방법은 제 1 및 제 2 블록과 관련된 경계 강도 값을 결정하는 단계와 결정된 경계 강도 값을 이용하여 제 1 및 제 2 블록을 노이즈 제거하는 단계를 포함한다.
비디오 데이터를 프로세싱하는 프로세서가 제공된다. 이 프로세서는 비디오 데이터를 보간하고, 보간된 비디오 데이터를 노이즈 제거하도록 구성된다. 일 양태에서, 보간된 비디오 데이터는 제 1 및 제 2 블록을 포함하고, 이 프로세서는 제 1 및 제 2 블록과 관련된 경계 강도 값을 결정하고, 결정된 경계 강도 값을 이용하여 제 1 및 제 2 블록을 노이즈 제거하도록 구성된다.
비디오 데이터를 프로세싱하는 장치가 제공된다. 이 장치는 비디오 데이터를 보간하는 보간기 및 보간된 비디오 데이터를 노이즈 제거하는 노이즈 제거기를 포함한다. 일 양태에서, 보간된 비디오 데이터는 제 1 및 제 2 블록을 포함하고, 이 장치는 제 1 및 제 2 블록과 관련된 경계 강도 값을 결정하는 결정기 및 결정된 경계 강도 값을 이용하여 제 1 및 제 2 블록을 노이즈 제거하는 노이즈 제거기를 포함한다.
비디오 데이터를 프로세싱하는 장치가 제공된다. 이 장치는 비디오 데이터를 보간하는 수단 및 보간된 비디오 데이터를 노이즈 제거하는 수단을 포함한다. 일 양태에서, 보간된 비디오 데이터는 제 1 및 제 2 블록을 포함하고, 이 장치는 제 1 및 제 2 블록과 관련된 경계 강도 값을 결정하는 수단 및 결정된 경계 강도 값을 이용하여 제 1 및 제 2 블록을 노이즈 제거하는 수단을 포함한다.
비디오 데이터를 프로세싱하는 방법이 구현된 컴퓨터 판독 가능 매체가 제공된다. 이 방법은 비디오 데이터를 보간하는 단계 및 보간된 비디오 데이터를 노이즈 제거하는 단계를 포함한다. 일 양태에서, 보간된 비디오 데이터는 제 1 및 제 2 블록을 포함하고, 이 방법은 제 1 및 제 2 블록과 관련된 경계 강도 값을 결정하는 단계 및 결정된 경계 강도 값을 이용하여 제 1 및 제 2 블록을 노이즈 제거하는 단계를 포함한다.
도 1 은 스트리밍 비디오를 디코딩하고 디스플레이하는 비디오 디코더 시스템의 일 예의 도해이다.
도 2 는 디스플레이 디바이스 상에 디스플레이되는 보간된 비디오 데이터의 노이즈 제거를 수행하는 프로세스의 일 예를 도해하는 플로우차트이다.
도 3a 는 도 1 의 프로세스의 일부에 사용되는 모션 벡터 보간의 일 예를 도시한다.
도 3b 는 도 1 의 프로세스의 일부에 사용되는 공간 보간의 일례를 도시한다.
도 4 는 수직 및 수평 4X4 블록 경계에 인접한 픽셀의 도해이다.
도 5a, 5b, 및 5c 는 도 1 의 프로세스의 일부 실시형태에서 경계 강도 값을 결정하는 데에 사용되는 기준 블록 위치를 도시한다.
도 6a 및 도 6b 는 경계 강도 값을 결정하는 프로세스의 예를 도시하는 플로우차트이다.
도 7 은 비디오 데이터를 프로세싱하는 예시 방법을 도시한다.
도 8 은 비디오 데이터를 프로세싱하는 예시 장치를 도시한다.
바람직한 실시형태의 상세한 설명
복원된 비디오 데이터로부터 만들어진, 보간된 비디오의 품질을 높이기 위해, 보간된 비디오 데이터를 노이즈 제거하는 단계를 포함하는 방법 및 장치가 설명된다. 로우 패스 필터가 보간된 비디오 데이터를 필터링하는 데에 사용된다. 일 예에서, 로우 패스 필터의 필터링 레벨은, 보간된 비디오 데이터 및 (보간된 및/또는 보간되지 않은) 인접 비디오 데이터에 대해 결정된 경계 강도 값에 기초하여 결정된다. 이 예의 일 양태에서, 경계 강도는, 보간된 비디오 데이터 및 인접 비디오 데이터에 대한 기준 비디오 데이터의 접근에 기초하여 결정된다. 후술하는 설명에서, 실시형태의 완전한 이해를 제공하기 위해 특정한 세부 항목이 제공된다. 그러나, 실시형태들이 이러한 특정한 세부항목 없이도 실시될 수 있다는 것은 당업자에 의해 인식될 수 있다. 예를 들어, 불필요한 세부 항목에서 실시형태를 애매하게 하지 않기 위해 블록 다이어그램에서 전기적 구성요소가 보여질 수도 있다. 다른 예에서, 그런 구성 요소, 다른 구조 및 기술이 실시형태를 더 설명하기 위해 세부적으로 보여질 수도 있다. 분리된 블록처럼 보이는 전기적 구성요소가 하나의 구성요소로 재배치 및/또는 결합될 수 있다는 것도 당업자에 의해 인지될 수 있다.
일부 실시형태는, 플로우차트, 플로우 다이어그램, 구조 다이어그램, 또는 블록 다이어그램으로서 묘사되는, 프로세스로서 설명될 수도 있음을 또한 유념한다. 플로우차트가 순차적인 프로세스로서의 동작을 설명할 수도 있지만, 많은 동작들이 병행하여 또는 동시에 수행될 수 있고, 프로세스는 반복될 수 있다. 또한, 동작들의 순서가 재배열될 수도 있다. 프로세스는 프로세스의 동작이 완료된 경우에 종료된다. 프로세스는 방법, 기능, 절차, 서브루틴, 서브프로그램 등에 해당될 수도 있다. 프로세스가 기능에 해당되는 경우, 그것의 종료는 콜링 기능 또는 메인 기능으로의 기능의 복귀에 해당한다.
도 1 은 스트리밍 데이터를 디코딩하는 비디오 디코더 시스템의 블록 다이어그램이다. 시스템 (100) 은 디코더 디바이스 (110), 네트워크 (150), 외부 스토리지 (185), 및 디스플레이 (190) 을 포함한다. 디코더 디바이스 (110) 는 비디오 보간기 (155), 비디오 노이즈 제거기 (160), 경계 강도 결정기 (165), 에지 동작 결정기 (170), 메모리 컴포넌트 (175), 및 프로세서 (180) 를 포함한다. 프로세서 (180) 는 일반적으로 예시된 디코더 디바이스 (110) 의 전체 동작을 제어한다. 하나 이상의 구성 요소가 디코더 디바이스 (110) 에서 부가, 재배열, 또는 결합될 수도 있다. 예를 들어, 프로세서 (180) 가 디코더 디바이스 (110) 의 외부에 놓일 수도 있다.
도 2 는 디스플레이 디바이스 상에 디스플레이되는 보간된 비디오 데이터의 노이즈 제거를 수행하는 프로세스의 일 예를 도시하는 플로우차트이다. 도 1 및 도 2 를 참조하면, 프로세스 (300) 는 인코딩된 비디오 데이터를 수신하면서 단계 305 에서 시작한다. 프로세서 (180) 는, 네트워크 (150) 또는 내부 메모리 컴포넌트 (175) 또는 외부 스토리지 (185) 와 같은 이미지 소스로부터 (MPEG-4 또는 H.264 압축된 비디오 데이터와 같이) 인코딩된 비디오 데이터를 수신할 수 있다. 인코딩된 비디오 데이터는 MPEG-4 또는 H.264 압축된 비디오 데이터일 수도 있다. 여기서, 메모리 구성 (175) 및/또는 외부 스토리지 (185) 는, 인코딩된 비디오 데이터를 포함하는 하드 디스크 드라이브이거나 디지털 비디오 디스크 (digital video disc; DVD) 일 수도 있다.
네트워크 (150) 는 텔레폰, 케이블, 및 광섬유와 같은 유선 시스템, 또는 무선 시스템의 일부일 수 있다. 무선 통신 시스템인 경우에, 네트워크 (150) 는 예를 들어, 코드 분할 다중 접속 (CDMA 또는 CDMA2000) 통신 시스템의 일부를 포함 할 수 있고, 또는 교호로, 시스템은 FDMA (frequency division multiple access) 시스템, OFDMA (orthogonal frequency division multiple access) 시스템, GSM/GPRS (General Packet Radio Service)/EDGE (enhanced data GSM environment) 또는 서비스 산업을 위한 TETRA (Terrestrial Trunked Radio) 모바일 텔레폰 기술과 같은 TDMA 시스템, WCDMA (wideband code division multiple access), 고 데이터 레이트 (1xEV-DO 또는 1xEV-DO 골드 멀티캐스트) 시스템, 또는 기술들의 조합을 채용하는 일반적인 임의의 무선 통신 시스템일 수 있다.
프로세스 (300) 는 수신된 비디오 데이터를 디코딩하면서 단계 310 에서 계속되며, 수신된 비디오 데이터의 적어도 일부는 후술할 보간된 비디오 데이터를 만드는 기준 데이터로서 디코딩되고 이용될 수도 있다. 일 예에서, 디코딩된 비디오 데이터는 픽셀의 휘도 및 색차 값과 같은 텍스쳐 정보를 포함한다. 수신된 비디오 데이터는, 실제 비디오 데이터가 (예를 들어, 이산 코사인 변환, 아다마르 (Hadamard) 변환, 이산 웨이블렛 변환 또는 H.264 에서 사용되는 것과 같은 정수형 변환을 이용하여) 변환되는 인트라-코딩된 데이터이거나, 모션 벡터 및 잔여 에러가 (예를 들어, 모션 보상 예측을 이용하여) 변환되는 인터-코딩된 데이터일 수 있다. 단계 310 에서의 디코딩 행동의 세부 사항은 당업자에게 잘 알려져 있으므로, 여기에서 더 논의하지 않을 것이다.
프로세스 (300) 는 디코딩된 기준 데이터가 보간되는 단계 315 로 계속된다. 일 예에서, 단계 315 에서의 보간은 기준 비디오 데이터로부터 모션 벡터 데이터의 보간을 포함한다. 모션 벡터 데이터의 보간을 설명하기 위해, 간략화된 예가 이용될 것이다. 도 3a 는 단계 315 에서 이용되는 모션 벡터 보간의 일 예를 보여준다. 프레임 10 은 스트리밍 비디오의 시퀀스에서 제 1 시간 포인트에서의 프레임을 나타낸다. 프레임 20 은 스트리밍 비디오의 시퀀스에서 제 2 시간 포인트에서의 프레임을 나타낸다. 당업자에게 알려져 있는 모션 보상 예측 루틴은, 프레임 20 에 대상 (35) 을 포함하는 비디오의 부분에 가깝게 매칭하는, 프레임 10 에 대상 (25A) 을 포함하는 비디오의 부분을 위치시키는 데에 이용될 수도 있다. 모션 벡터 (40) 는 프레임 20 내의 대상 (35) 에 대응하여, 프레임 10 내에 대상 (25A) 를 위치시킨다.(프레임 20 에서 파선의 아웃라인 라벨이 붙은 25C 가 대상 (25A 및 35) 의 상대적인 위치를 설명하는 데에 이용된다.) 프레임 10 및 20 이 시퀀스에서 각각으로부터 시간 "T" 에 위치되는 경우, 프레임 10 과 20 사이에 위치한, 프레임 15 는 프레임 10 및/또는 프레임 20 에서 디코딩된 비디오 데이터에 기초하여 보간될 수 있다. 예를 들어, 프레임 15 가 프레임 10 과 20 사이에 중간 시간 (프레임 10 과 20 모두로부터 T/2 시간) 의 포인트에 위치되는 경우, 대상 35 (또는 대상 25A) 의 픽셀 데이터는, 모션 벡터 (40) 와 같이 동일하게 향하면서 보간을 통해 원래의 절반 사이즈가 되도록 결정될 수도 있는, 모션 벡터 (45) 에 의해 위치된 포인트에 위치될 수 있다(프레임 15 에서 파선의 아웃라인 라벨이 붙은 25B 가 대상 25A 및 30 의 상대적인 위치를 설명하는 데에 이용된다). 대상 (35) 이, (대상 (25A) 를 가리키는 모션 벡터 및 대상 (25A) 의 픽셀 값에 더해진 잔여 에러로서 표현되는) 대상 (25A) 에 기초하여 예측되기 때문에, 대상 25A 및/또는 대상 35 는 프레임 15 에서의 대상 (30) 을 보간하는 기준 부분으로서 이용될 수도 있다. 당업자에게 명백한 것처럼, 하나 이상의 기준 부분의 모션 벡터 및/또는 잔여 에러 데이터를 보간하는 다른 방법 (예를 들어, 양방향 예측으로서 블록당 두 개의 모션 벡터를 이용하는 것) 이, 단계 (315) 에서 보간된 데이터를 생성하는 데에 사용될 수 있다.
다른 예에서, 단계 (315) 에서의 보간은 비디오 프레임의 다른 공간 영역에 위치된 픽셀 값의 결합을 포함한다. 도 3b 는 프로세스 (300) 의 단계 (315) 에서 사용된 공간 보간의 일 예를 도시한다. 프레임 (50) 은 하우스 (55) 의 비디오 이미지를 포함한다. 60 이라고 라벨이 붙은, 비디오 데이터의 영역은 데이터 변조 때문에 손실된다. 손실 부분 (60) 에 가깝게 위치된 특성 (65 및 70) 의 공간 보간은 영역 (60) 을 보간하기 위해 기준 부분으로서 이용될 수도 있다. 보간은 영역 65 와 70 의 픽셀 값 사이의 단순한 선형 보간일 수 있다. 다른 예에서, 손실 데이터를 포함하는 프레임으로부터 다른 시간 프레임에 위치된 픽셀 값은, 보간된 픽셀 데이터를 형성하기 위해 (평균내짐으로써) 결합될 수 있다. 도 1 의 비디오 보간기 (155) 와 같은 보간 수단이 단계 (315) 에서의 보간 동작을 수행할 수도 있다.
모션 벡터 외에도, 광학 플로우 데이터 및 이미지 몰핑 (morphign) 데이터와 같은 다른 시간 예측 방법들도 비디오 데이터를 보간하는 데에 이용될 수도 있다. 광학 플로우 보간은 시간에 따라 이미지에서 픽셀의 속도 필드를 전송할 수도 있다. 보간은, 주어진 픽셀에 대해 광학 플로우 필드로부터 파생된 픽셀-기반일 수도 있다. 보간 데이터는 속도 및 방향 정보를 포함할 수도 있다.
이미지 몰핑은, 한 이미지에서 다른 이미지로의 변환을 계산하는 데에 사용되는 이미지 프로세싱 기술이다. 이미지 몰핑은, 원 이미지와 함께 합해지는 경우에, 한 이미지에서 다른 이미지로의 변화를 나타내는, 중간 이미지의 시퀀스를 생성한다. 이 방법은 소스 이미지의 메쉬 포인트 및 비선형 보간에 대한 포인트의 워핑 (warping) 함수를 식별한다(Wolberg,G.,"Digital Image Warping". IEEE Computer Society Press,1990 참조).
단계들 (320, 325, 및 330) 은 단계 (335) 에서 수행되는 노이즈 제거의 일부 실시형태에 사용되는 옵션 단계들이고, 이하에서 상세히 설명될 것이다. 단계 (335) 로 계속하면, 단계 (315) 의 보간 동작으로부터 초래될 수도 있는 아티팩트를 제거하기 위해 보간된 비디오 데이터가 노이즈 제거된다. 도 1 의 비디오 노이즈 제거기 (160) 와 같은 노이즈 제거 수단이 단계 (335) 의 동작을 수행할 수도 있다. 노이즈 제거는 블록킹 아티팩트를 감소하기 위한 디블록킹, 링잉 아티팩트를 감소하기 위한 디링잉, 및 모션 스미어를 감소하기 위한 방법을 포함하는, 당업자에게 잘 알려진 하나 이상의 방법을 포함할 수도 있다. 노이즈 제거 후에, 노이즈 제거된 비디오 데이터가 예를 들어, 도 1 에 도시된 디스플레이 (190) 상에 디스플레이된다.
단계 (335) 에서 노이즈 제거하는 일 예는 디블록킹 필터, 예를 들어, H.264 비디오 압축 표준의 디블록킹 필터를 사용하는 단계를 포함한다. H.264 에서 지정된 디블록킹 필터는 블록 경계를 따라 동작을 결정하는 결정 트리를 요구한다. 저동작 블록을 따라서는 강하게 필터링되는 반면에, H.264 에서 원래 디자인된 것처럼, 세트 임계값을 넘어 이미지 동작을 갖는 블록 에지는 필터링되지 않거나 약하게 필터링된다. 적용되는 필터는 예를 들어, 3-탭 또는 5-탭 로우 패스 FIR (Finite Impulse Response) 필터일 수 있다.
도 4 는 수직 및 수평 4x4 블록 경계 (현재 블록 "q" 및 인접 블록 "p") 에 인접한 픽셀의 도해이다. 수직 경계 (200) 는 두 개의 나란한 (side-by-side) 4x4 블록 사이의 임의의 경계를 나타낸다. 각각 q0, q1, q2, 및 q3 로 라벨이 붙은 픽셀들 (212, 214, 216, 218) 이 (블록 "q" 에서) 수직 경계 (200) 의 오른쪽에 놓인 반면에, 각각 p0, p1, p2, 및 p3 으로 라벨이 붙은 픽셀들 (202, 204, 206, 및 208) 이 (블록 "p" 에서) 수직 경계 (200) 의 왼쪽에 놓여 있다. 수평 경계 (220) 는 하나가 다른 것의 바로 위에 있는, 두 개의 4x4 블록 사이의 임의의 경계를 나타낸다. 각각 q0, q1, q2, 및 q3 로 라벨이 붙은 픽셀들 (232, 234, 236, 238) 이 수평 경계 (220) 의 아래쪽에 놓인 반면에, 각각 p0, p1, p2, 및 p3 으로 라벨이 붙은 픽셀들 (222, 224, 226, 및 228) 이 수평 경계 (220) 의 위쪽에 놓여 있다. H.264 에서 디블록킹하는 일 실시형태에서, 필터링 동작은 경계의 위 또는 아래 중의 어느 쪽에 있는 세 개의 픽셀까지 영향을 미친다. 변환된 계수에 대해 사용되는 양자기, (인트라 또는 인터 코딩된) 블록의 코딩 모드, 및 경계에 걸친 이미지 샘플의 증감에 따라, 필터링된 픽셀이 없는 것에서부터 필터링 픽 셀 p0, p1, p2, q0, q1, 및 q2 까지 이르는 수 개의 결과가 가능하다.
비디오 압축에 기초한 블록에 대해 디블록킹 필터 디자인은 우세하게, 블록 에지를 따라 강도 변화를 측정, 이에 뒤따르는 적용되는 필터의 세기를 결정, 및 블록 에지를 따라 실제 로우 패스 필터링 동작인 공통 원리를 따른다. 디블록킹 필터는 블록 에지를 따라 스무딩 (로우 패스 필터링) 함으로써 블록킹 아티팩트를 감소시킨다. 경계 강도로 알려진 측정은, 단계 (320) 에서 결정된다. 경계 강도 값은 비디오 데이터의 컨텐트에 기초하거나, 비디오 데이터의 컨텍스트에 기초하여 결정될 수도 있다. 일 양태에서, 더 높은 경계 강도가 더 높은 필터링 레벨 (예를 들어, 더 블러링) 을 초래한다. 경계 강도에 영향을 주는 파라미터는, 데이터가 인트라-코딩되었는지 또는 인터-코딩되었는지 여부와 같은, 컨텍스트 및/또는 컨텐트 의존 상황을 포함하며, 여기서 인트라-코딩된 영역은 일반적으로 인터-코딩된 부분보다 더 심하게 필터링된다. 경계 강도 측정에 영향을 주는 다른 파라미터는 4바이4 픽셀 블록에서의 논-제로 (non-zero) 계수의 개수의 함수인, 코딩된 블록 패턴 (coded block pattern; CPB) 및 양자화 파라미터이다.
이미지에서 에지 특성의 블러링을 피하기 위해, 옵션 에지 동작 측정이 단계 325 에서 수행될 수도 있고, (노이즈 제거 단계 (335) 에서의) 로우 패스 필터가 논-에지 (non-edge) 영역에 정규적으로 적용된다(영역에서의 에지 동작 측정이 낮을수록, 단계 335 에서의 노이즈 제거에 사용되는 필터는 더 강해짐). 경계 강도 결정 및 에지 동작 결정의 세부 사항은 당업자에게 잘 알려져 있고, 개시된 방법을 이해할 필요는 없다. 단계 330 에서, 경계 강도 측정 및/또는 에지 동작 측정이 단계 335 에서 수행되는 노이즈 제거의 레벨을 결정하는 데에 이용된다. 경계 강도 및/또는 에지 동작 측정과 같은 디블록킹 파라미터로의 변형을 통해, 보간된 영역은 효과적으로 노이즈 제거될 수 있다. 프로세스 (300) 는 노이즈 제거된 보간된 비디오 데이터를 디스플레이 (340) 함으로써 결론지어질 수 있다. 하나 이상의 요소가 프로세스 (300) 내에서 부가, 재배열, 또는 결합될 수도 있다.
도 5a, 5b, 및 5c 는, 단계 335 의 노이즈 제거 동작이 디블록킹을 포함하는, 도 1 의 프로세스의 일부 실시형태에서의 단계 (320) 에서 경계 강도 값을 결정하는데 이용되는 기준 블록 위치의 도해를 보여준다. 도 5 에 도시된 시나리오는 도 3a 와 관련하여 상술한 바와 같이, 기준 블록당 하나의 모션 벡터를 갖는 모션 보상 예측을 대표한다. 도 5a, 5b, 및 5c 에서, 보간될 프레임 (75) 은, 기준 프레임 (80) 에 기초하여 보간된다. 보간된 블록 (77) 은 기준 블록 (81) 에 기초하여 보간되고, 블록 (77) 의 인접 블록인 보간된 블록 (79) 은 기준 블록 (83) 에 기초하여 보간된다. 도 5a 에서, 기준 블록 (81 및 83) 들도 인접하고 있다. 이것은 보간된 프레임 (75) 과 기준 프레임 (80) 사이에 고정된 비디오 이미지를 나타낸다. 이 경우에, 노이즈 제거 레벨을 낮게 하기 위해 경계 강도는 낮게 셋팅될 수도 있다. 도 5b 에서, 기준 블록 81 과 83 은 공통 비디오 데이터를 포함하기 위해 오버랩핑된다. 오버랩핑된 블록은 어떤 근소한 모션을 나타낼 수도 있고, 경계 강도는 도 5a 에서의 경우에 대해서 보다 더 높게 셋팅될 수도 있다. 도 5c 에서, 기준 블록 81 과 83 은 서로 떨어져 있다 (논-인접 블록). 이것은 이미지가 서로에게 가깝게 관련되어 있지 않고, 블록킹 아티팩트가 더 심할 수 있다는 것을 나타낸다. 도 5c 의 경우에, 경계 강도는 도 5a 또는 5b 의 시나리오보다 블록킹을 더 초래하는 값으로 셋팅될 것이다. 도 5 의 어디에서도 도시되지 않은 시나리오가 다른 기준 프레임으로부터의 기준 블록 (81 및 83) 을 포함한다. 이 경우는 도 5c 에서 도시된 경우와 비슷한 방식으로 취급될 수도 있으며, 또는 도 5c 에서 도시된 경우보다 디블록킹을 더 초래하는 값이 되도록 경계 강도 값이 결정될 수도 있다.
도 6a 는 블록당 하나의 모션 벡터를 갖는, 도 5a, 5b, 및 5c 에 도시된 상황에 대해 경계 강도 값을 결정하는 프로세스의 일 예를 도시하는 플로우차트이다. 도 6a 에 도시된 프로세스는 도 2 에 도시된 프로세스 (300) 의 단계 (320) 에서 수행될 수도 있다. 도 5 및 도 6 을 참조하여, 기준 블록 81 과 83 도 인접 블록인지를 결정하기 위해, 결정 블록 (405) 에서 체크가 행해진다. 도 5a 에서 도시된 것처럼 그들이 인접 블록인 경우, 경계 강도는 단계 (407) 에서 "0" 으로 셋팅된다. 이들 실시형태에서, 인접 기준 블록들 (81 및 83) 이 이미 노이즈 제거되는 한, 단계 (335) 에서 보간된 블록들 (77 및 79) 의 노이즈 제거는 생략될 수도 있다. 기준 블록들 (81 및 83) 이 인접 기준 블록이 아닌 경우, 기준 블록들 (81 및 83) 이 오버랩핑되는지 여부를 결정하기 위해 결정 블록 (410) 에서 체크가 행해진다. 기준 블록들 (81 및 83) 이 오버랩핑된 경우, 도 5b 에서 도시된 바와 같이, 단계 (412) 에서 경계 강도가 "1" 로 셋팅된다. 기준 블록들이 오버랩핑되지 않은 경우 (즉, 기준 블록들 (81 및 83) 이 동일한 프레임 내 또는 다른 프레임들 내에서 떨어져 있는 경우), 프로세스는 결정 블록 (415) 에서 계속된다. 기준 블록들 (81 및 83) 의 하나 또는 양자가 인트라-코딩되었는지 여부를 결정하기 위해 결정 블록 (415) 에서 체크가 행해진다. 기준 블록 중의 하나가 인트라-코딩된 경우, 경계 강도는 단계 (417) 에서 "2" 로 셋팅되고, 그렇지 않은 경우에는 경계 강도는 단계 (419) 에서 "3" 으로 셋팅된다. 이 예에서, 서로 인접하게 위치한 기준 블록들로부터 보간되는 인접 블록들이, 독립된 기준 블록들로부터 보간되는 블록들보다 낮은 레벨에서 노이즈 제거된다.
보간된 블록은 하나 이상의 기준 블록으로부터도 형성될 수도 있다. 도 6b 는 두 개의 기준 블록을 가리키는 두 개의 모션 벡터를 포함하는, 보간된 블록에 대해 (도 2 의 단계 320 에서 수행된 것과 같은) 경계 강도 값을 결정하는 프로세스의 다른 실시형태를 도시하는 플로우차트이다. 도 6b 에서 도시된 예는, 모션 벡터가 양방향 예측 프레임 내부로서 전방 (forward) 프레임 및 후방 (backward) 프레임을 가리킨다는 사실을 가정한다. 당업자는 다중 기준 프레임이 다중 전방 또는 다중 후방 기준 프레임 또한 포함할 수 있다는 것을 인식할 것이다. 이 예는 보간되는 현재의 블록 및 동일한 프레임에 있는 인접 블록의 전방 및 후방 모션 벡터를 고찰한다. 현재의 블록 및 인접 블록의 전방 모션 벡터에 의해 나타난 것과 같이 전방에 위치된 기준 블록이 결정 블록 (420) 에서 인접 블록으로 결정되는 경우, 현재의 블록 및 인접 블록의 후방 모션 벡터에 의해 나타난 것과 같이 후방 기준 블록도 인접하는지 여부를 결정하기 위해, 결정 블록 (425) 에서 프로세스가 계속된다. 전방 및 후방 기준 블록 양자가 인접하는 경우, 이것은 매우 작은 이미지 모션을 나타내고, 낮은 디블록킹 레벨을 초래하는 단계 (427) 에서 경계 강도는 "0" 으로 셋팅된다. (결정 블록 (425) 또는 결정 블록 (430) 에서) 전방 또는 후방 기준 블록들 중 하나가 인접하는 것으로 결정되는 경우, 경계 강도는 "1" 로 셋팅되고, 두 기준 블록 양자가 인접한 경우보다 더 디블록킹을 초래한다. 결정 블록 (430) 에서, 전방 또는 후방 기준 블록 중 어느 것도 인접하고 있지 않은 것으로 결정된 경우, 경계 강도는 "2" 로 셋팅되고, 심지어 디블록킹을 더 초래한다.
도 6a 및 6b 에서 도시된 결정 트리는, 보간된 비디오 데이터의 하나 이상의 기준 부분의 상대적인 위치 및 블록당 모션 벡터의 개수에 기초하여, 경계 강도를 결정하는 프로세스의 일 예이다. 다른 방법들이 이용될 수도 있고, 이는 당업자에게 명백할 것이다. 도 1 에서의 경계 강도 결정기 (165) 와 같은 결정기 수단은 도 6a 및 도 6b 에 설명되고 도 2 에 도시된 단계 (320) 의 동작을 수행할 수도 있다. 하나 이상의 구성 요소가 도 6a 및 도 6b 에 도시된 결정 트리에서 부가, 재배열, 또는 결합될 수도 있다.
도 7 은 상기 설명에 따른 비디오 데이터의 프로세싱의 일 예시 방법 (700) 을 도시한다. 일반적으로, 방법 (700) 은, 비디오 데이터를 보간하는 단계 (710) 및 보간된 비디오 데이터를 노이즈 제거하는 단계 (720) 를 포함한다. 보간된 비디오 데이터의 노이즈 제거는 상술한 바와 같이 경계 강도 값에 기초할 수도 있다. 경계 강도는 비디오 데이터의 컨텐트 및/또는 컨텍스트에 기초하여 결정될 수도 있다. 또한, 경계 강도는, 비디오 데이터가 하나의 모션 벡터 또는 하나 이상의 모션 벡터를 이용하여 보간되는지 여부에 기초하여 결정될 수도 있다. 하나의 모션 벡터가 사용되는 경우, 모션 벡터가 기준 프레임의 인접 블록으로부터의 모션 벡터인지, 오버랩핑된 인접 블록으로부터의 모션 벡터인지, 비인접 블록으로부터의 모션 벡터인지, 또는 다른 기준 프레임으로부의 모션 벡터인지 여부에 기초하여, 경계 강도가 결정될 수도 있다. 하나 이상의 모션 벡터가 사용되는 경우, 전방 모션 벡터가 인접 기준 블록을 가리키는지 여부 또는 후방 모션 벡터가 인접 기준 블록을 가리키는지 여부에 기초하여, 경계 강도가 결정될 수도 있다.
도 8 은 방법 (700) 을 실행하도록 구현될 수도 있는 일 예시 장치 (800) 를 보여준다. 장치 (800) 는 보간기 (810) 및 노이즈 제거기 (820) 를 포함한다. 상술한 바와 같이, 보간기 (810) 는 비디오 데이터를 보간할 수도 있고, 노이즈 제거기 (820) 는 보간된 비디오 데이터를 노이즈 제거할 수도 있다.
상기에서 설명된 디블록킹의 실시형태는 단지 노이즈 제거의 일 타입의 일 예이다. 노이즈 제거의 다른 타입들이 당업자에게 명백할 것이다. 상술한 H.264 의 디블록킹 알고리즘은 4x4 픽셀 블록을 이용한다. 다양한 크기의 블록들, 예를 들어, N 과 M 이 정수인, 픽셀의 어떠한 NxM 블록이라도 비디오 데이터의 보간된 및/또는 기준 부분으로서 이용될 수 있음은 당업자에 의해 이해될 것이다.
당업자는 다양한 서로 다른 기술들 및 기법들 중 임의의 기술 또는 기법을 이용하여 정보 및 신호를 나타낼 수도 있음을 알 수 있다. 예를 들어, 상기의 설명 전반에 걸쳐 참조될 수도 있는 데이터, 명령, 커맨드 (commands), 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기파, 자계 또는 자성 입자, 광계 또는 광자, 또는 이들의 임의의 조합으로 나타낼 수도 있다.
또한, 당업자는 여기에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들을 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로 구현할 수도 있음을 알 수 있다. 하드웨어와 소프트웨어의 이러한 대체 가능성을 분명히 설명하기 위하여, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들을 주로 그들의 기능의 관점에서 상술하였다. 그러한 기능이 하드웨어로 구현될지 소프트웨어로 구현될지는 전체 시스템에 부과된 특정한 애플리케이션 및 설계 제약조건들에 의존한다. 당업자는 설명된 기능을 각각의 특정한 애플리케이션에 대하여 다양한 방식으로 구현할 수도 있지만, 그러한 구현의 결정이 본 발명의 범위를 벗어나도록 하는 것으로 해석하지는 않아야 한다.
여기에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그래머블 게이트 어레이 (FPGA), 또는 기타 프로그래머블 로직 디바이스, 별도의 게이트 또는 트랜지스터 로직, 별도의 하드웨어 컴포넌트들, 또는 여기서 설명된 기능을 수행하도록 설계된 이들의 임의의 결합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다른 방법으로, 그 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 결합, 예를 들어, DSP 와 마이크로프로세서의 결합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들 또는 임의의 기타 다른 구성물로 구현될 수도 있다.
여기에 개시된 실시형태들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되며, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.
개시되어 있는 실시형태들에 대한 이전의 설명은 당업자로 하여금 본 발명을 제조 또는 이용할 수 있도록 제공된다. 당업자는 이들 실시형태에 대한 다양한 변형들을 명백히 알 수 있으며, 여기에서 정의된 일반적인 원리들은 본 발명의 사상 또는 범위를 벗어나지 않고도 다른 실시형태들에 적용될 수도 있다.
따라서, 손실 데이터의 우수한 에러 은폐 및 에러 정정을 수행하기 위해, 디코더 애플리케이션에서 비트 손실을 알리는 정보 및 손실 데이터를 이용하여, 실시간 스트리밍 멀티미디어를 디코딩하는 방법 및 장치가 설명되었다.

Claims (50)

  1. 비디오 데이터를 프로세싱하는 방법으로서,
    제 1 기준 블록으로부터 비디오 데이터의 제 1 블록을, 제 2 기준 블록으로부터 비디오 데이터의 제 2 블록을 보간 (interpolating) 하는 단계;
    상기 제 1 블록 및 상기 제 2 블록과 관련된 경계 강도 값을 결정하는 단계; 및
    상기 결정된 경계 강도 값에 따라서 상기 보간된 비디오 데이터를 노이즈 제거 (denoising) 하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 경계 강도 값을 결정하는 단계는, 상기 비디오 데이터의 컨텐트에 기초하여 상기 경계 강도 값을 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  4. 제 1 항에 있어서,
    상기 경계 강도 값을 결정하는 단계는, 상기 비디오 데이터의 컨텍스트에 기초하여 상기 경계 강도 값을 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  5. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 (per) 하나의 모션 벡터에 기초하여 보간하는 단계를 포함하며, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 인접 블록들인지 여부를 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  6. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 (per) 하나의 모션 벡터에 기초하여 보간하는 단계를 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 오버랩핑된 인접 블록들인지 여부를 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  7. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 (per) 하나의 모션 벡터에 기초하여 보간하는 단계를 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 비인접 블록들인지 여부를 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  8. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 (per) 하나의 모션 벡터에 기초하여 보간하는 단계를 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상이한 기준 프레임들로부터의 블록들인지 여부를 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  9. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 두 개의 모션 벡터에 기초하여 보간하는 단계를 포함하고, 전방 (forward) 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하며, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며, 제 1 후방 (backward) 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상기 전방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정하는 단계를 포함하는, 비디오 데이터 프로세싱 방법.
  10. 제 1 항에 있어서,
    상기 보간하는 단계는, 블록 당 두 개의 모션 벡터에 기초하여 보간하는 단계를 포함하고,
    제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하며, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하며, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하고, 후방 기준 프레임은 상기 제 3 기준 블록 및 상기 제 4 기준 블록을 포함하며,
    상기 경계 강도 값을 결정하는 단계는, 상기 제 3 기준 블록 및 상기 제 4 기준 블록이 상기 후방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정함으로써 상기 경계 강도 값을 결정하는 단계를 더 포함하는, 비디오 데이터 프로세싱 방법.
  11. 비디오 데이터를 프로세싱하는 프로세서로서,
    제 1 기준 블록으로부터 비디오 데이터의 제 1 블록을, 제 2 기준 블록으로부터 비디오 데이터의 제 2 블록을 보간하고,
    상기 제 1 블록 및 상기 제 2 블록과 관련된 경계 강도 값을 결정하며,
    상기 결정된 경계 강도 값에 따라서 상기 보간된 비디오 데이터를 노이즈 제거하도록 구성된, 프로세서.
  12. 삭제
  13. 제 11 항에 있어서,
    상기 비디오 데이터의 컨텐트에 기초하여 상기 경계 강도 값을 결정하도록 더 구성된, 프로세서.
  14. 제 11 항에 있어서,
    상기 비디오 데이터의 컨텍스트에 기초하여 상기 경계 강도 값을 결정하도록 더 구성된, 프로세서.
  15. 제 11 항에 있어서,
    블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 상기 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 인접 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되는, 프로세서.
  16. 제 11 항에 있어서,
    블록 당 하나의 모션 벡터에 기초하여 보간하고,
    제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 상기 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 오버랩핑된 인접 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되는, 프로세서.
  17. 제 11 항에 있어서,
    블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 상기 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 비인접 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되며, 프로세서.
  18. 제 11 항에 있어서,
    블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 상기 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상이한 기준 프레임들로부터의 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되며, 프로세서.
  19. 제 11 항에 있어서,
    상기 프로세서는,
    블록 당 두 개의 모션 벡터에 기초하여 보간하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하고, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며,
    상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상기 전방 기준 프레임내에서 인접 기준 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되며, 프로세서.
  20. 제 11 항에 있어서,
    상기 프로세서는,
    블록 당 두 개의 모션 벡터에 기초하여 보간하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하고, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며, 후방 기준 프레임은 상기 제 3 기준 블록 및 상기 제 4 기준 블록을 포함하고,
    상기 제 3 기준 블록 및 상기 제 4 기준 블록이 상기 후방 기준 프레임내에서 인접 기준 블록들인지 여부에 기초하여 상기 경계 강도 값을 결정하도록 더 구성되며, 프로세서.
  21. 비디오 데이터를 프로세싱하는 장치로서,
    제 1 기준 블록으로부터 비디오 데이터의 제 1 블록을, 제 2 기준 블록으로부터 비디오 데이터의 제 2 블록을 보간하는 보간기;
    상기 제 1 블록 및 상기 제 2 블록과 관련된 경계 강도 값을 결정하는 결정기; 및
    상기 결정된 경계 강도 값에 따라서 상기 보간된 비디오 데이터를 노이즈 제거하는 노이즈 제거기를 포함하는, 프로세싱 장치.
  22. 삭제
  23. 제 21 항에 있어서,
    상기 결정기는 상기 비디오 데이터의 컨텐트에 기초하여 상기 경계 강도 값을 결정하는, 프로세싱 장치.
  24. 제 21 항에 있어서,
    상기 결정기는 상기 비디오 데이터의 컨텍스트에 기초하여 상기 경계 강도 값을 결정하는, 프로세싱 장치.
  25. 제 21 항에 있어서,
    상기 보간기는 블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 결정기는 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 인접 블록들인지 여부를 결정하는, 프로세싱 장치.
  26. 제 21 항에 있어서,
    상기 보간기는 블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 결정기는 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 오버랩핑된 인접 블록들인지 여부를 결정하는, 프로세싱 장치.
  27. 제 21 항에 있어서,
    상기 보간기는 블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 결정기는 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 비인접 블록들인지 여부를 결정하는, 프로세싱 장치.
  28. 제 21 항에 있어서,
    상기 보간기는 블록 당 하나의 모션 벡터에 기초하여 보간하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 결정기는 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상이한 기준 프레임들로부터의 블록들인지 여부를 결정하는, 프로세싱 장치.
  29. 제 21 항에 있어서,
    상기 보간기는 블록 당 두 개의 모션 벡터에 기초하여 보간하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하고, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하며, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하며, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하고,
    상기 결정기는 상기 제 1 및 제 2 블록의 전방 모션 벡터가 인접 기준 블록을 가리키고 있는지 여부에 기초하여 상기 경계 강도 값을 결정하는, 프로세싱 장치.
  30. 제 21 항에 있어서,
    상기 보간기는 블록 당 두 개의 모션 벡터에 기초하여 보간하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하고, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하며, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하고, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하며, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하고, 후방 기준 프레임은 상기 제 3 기준 블록 및 상기 제 4 기준 블록을 포함하며,
    상기 결정기는 상기 제 3 기준 블록 및 상기 제 4 기준 블록이 상기 후방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정함으로써 상기 경계 강도 값을 결정하는, 프로세싱 장치.
  31. 비디오 데이터를 프로세싱하는 장치로서,
    제 1 기준 블록으로부터 비디오 데이터의 제 1 블록을, 제 2 기준 블록으로부터 비디오 데이터의 제 2 블록을 보간하는 수단;
    상기 제 1 블록 및 상기 제 2 블록과 관련된 경계 강도 값을 결정하는 수단; 및
    상기 보간된 비디오 데이터를 노이즈 제거하는 수단을 구비하는, 프로세싱 장치.
  32. 삭제
  33. 제 31 항에 있어서,
    상기 경계 강도 값을 결정하는 수단은, 상기 비디오 데이터의 컨텐트에 기초하여 상기 경계 강도 값을 결정하는 수단을 더 포함하는, 프로세싱 장치.
  34. 제 31 항에 있어서,
    상기 경계 강도 값을 결정하는 수단은, 상기 비디오 데이터의 컨텍스트에 기초하여 상기 경계 강도 값을 결정하는 수단을 더 포함하는, 프로세싱 장치.
  35. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 하나의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 인접 기준 블록들인지 여부를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  36. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 하나의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 오버랩핑된 인접 기준 블록들인지 여부를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  37. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 하나의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 비인접 기준 블록들인지 여부를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  38. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 하나의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상이한 기준 프레임들로부터의 블록들인지 여부를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  39. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 두 개의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하며, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상기 전방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정하는 수단을 더 포함하는, 프로세싱 장치.
  40. 제 31 항에 있어서,
    상기 보간하는 수단은, 블록 당 두 개의 모션 벡터에 기초하여 보간하는 수단을 더 포함하고, 전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하며, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며, 후방 기준 프레임은 상기 제 3 기준 블록 및 상기 제 4 기준 블록을 포함하고,
    상기 경계 강도 값을 결정하는 수단은, 상기 제 3 기준 블록 및 상기 제 4 기준 블록이 상기 후방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정함으로써 상기 경계 강도 값을 결정하는 수단을 더 포함하는, 프로세싱 장치.
  41. 프로그램가능한 프로세서로 하여금, 명령어들의 실행에 의해,
    제 1 기준 블록으로부터 비디오 데이터의 제 1 블록을, 제 2 기준 블록으로부터 비디오 데이터의 제 2 블록을 보간하도록 하는 명령어들;
    상기 제 1 블록 및 상기 제 2 블록과 관련된 경계 강도 값을 결정하도록 하는 명령어들; 및
    상기 보간된 비디오 데이터를 노이즈 제거하도록 하는 명령어들로 인코딩된 컴퓨터 판독 가능 매체.
  42. 삭제
  43. 제 41 항에 있어서,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 비디오 데이터의 컨텐트에 기초하여 상기 경계 강도 값을 결정하는 명령어들을 더 포함하는, 컴퓨터 판독 가능 매체.
  44. 제 41 항에 있어서,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 비디오 데이터의 컨텍스트에 기초하여 상기 경계 강도 값을 결정하는 명령어들을 더 포함하는, 컴퓨터 판독 가능 매체.
  45. 제 41 항에 있어서,
    상기 보간하도록 하는 명령어들은, 블록 당 하나의 모션 벡터에 기초하여 보간하도록 하는 명령어들을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 인접 블록들인지 여부를 결정하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
  46. 제 41 항에 있어서,
    상기 보간하도록 하는 명령어들은, 블록 당 하나의 모션 벡터에 기초하여 보간하도록 하는 명령어들을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 오버랩핑된 인접 블록들인지 여부를 결정하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
  47. 제 41 항에 있어서,
    상기 보간하도록 하는 명령어들은, 블록 당 하나의 모션 벡터에 기초하여 보간하도록 하는 명령어들을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 기준 프레임의 비인접 블록들인지 여부를 결정하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
  48. 제 41 항에 있어서,
    상기 보간하도록 하는 명령어들은, 블록 당 하나의 모션 벡터에 기초하여 보간하도록 하는 명령어들을 더 포함하고, 제 1 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상이한 기준 프레임들로부터의 블록들인지 여부를 결정하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
  49. 제 41 항에 있어서,
    상기 보간하도록 하는 명령어들은, 블록 당 두 개의 모션 벡터에 기초하여 보간하도록 하는 명령어들을 더 포함하고,
    전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하며, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 1 기준 블록 및 상기 제 2 기준 블록이 상기 전방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정하도록 하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
  50. 제 41 항에 있어서,
    상기 보간하는 단계는, 블록 당 두 개의 모션 벡터에 기초하여 보간하는 단계를 포함하고,
    전방 기준 프레임은 상기 제 1 기준 블록 및 상기 제 2 기준 블록을 포함하며, 제 1 전방 모션 벡터는 상기 제 1 블록 및 상기 제 1 기준 블록을 기준으로 하고, 제 2 전방 모션 벡터는 상기 제 2 블록 및 상기 제 2 기준 블록을 기준으로 하며, 제 1 후방 모션 벡터는 상기 제 1 블록 및 제 3 기준 블록을 기준으로 하고, 제 2 후방 모션 벡터는 상기 제 2 블록 및 제 4 기준 블록을 기준으로 하며, 후방 기준 프레임은 상기 제 3 기준 블록 및 상기 제 4 기준 블록을 포함하고,
    상기 경계 강도 값을 결정하도록 하는 명령어들은, 상기 제 3 기준 블록 및 상기 제 4 기준 블록이 상기 후방 기준 프레임내에서 인접 기준 블록들인지 여부를 결정함으로써, 상기 경계 강도 값을 결정하도록 하는 명령어들을 포함하는, 컴퓨터 판독 가능 매체.
KR1020077023112A 2005-03-10 2006-03-10 프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션 KR100938568B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66090905P 2005-03-10 2005-03-10
US60/660,909 2005-03-10

Publications (2)

Publication Number Publication Date
KR20070110543A KR20070110543A (ko) 2007-11-19
KR100938568B1 true KR100938568B1 (ko) 2010-01-26

Family

ID=36581794

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020077023112A KR100938568B1 (ko) 2005-03-10 2006-03-10 프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션
KR1020077023217A KR20070118636A (ko) 2005-03-10 2006-03-10 프레임 레이트 업 컨버젼 애플리케이션에서 보간 프레임디블록킹 동작

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020077023217A KR20070118636A (ko) 2005-03-10 2006-03-10 프레임 레이트 업 컨버젼 애플리케이션에서 보간 프레임디블록킹 동작

Country Status (13)

Country Link
US (1) US20060233253A1 (ko)
EP (1) EP1864503A1 (ko)
JP (1) JP4927812B2 (ko)
KR (2) KR100938568B1 (ko)
CN (1) CN101167369B (ko)
AU (1) AU2006223192A1 (ko)
BR (1) BRPI0608283A2 (ko)
CA (1) CA2600476A1 (ko)
IL (1) IL185822A0 (ko)
MX (1) MX2007011099A (ko)
NO (1) NO20075126L (ko)
RU (1) RU2380853C2 (ko)
WO (1) WO2006099321A1 (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703744B1 (ko) * 2005-01-19 2007-04-05 삼성전자주식회사 디블록을 제어하는 fgs 기반의 비디오 인코딩 및디코딩 방법 및 장치
KR100870115B1 (ko) * 2005-12-21 2008-12-10 주식회사 메디슨 블록정합 및 움직임 보상 보간을 이용한 영상 형성 방법
JP4771539B2 (ja) * 2006-07-26 2011-09-14 キヤノン株式会社 画像処理装置及びその制御方法及びプログラム
KR100819289B1 (ko) 2006-10-20 2008-04-02 삼성전자주식회사 영상 데이터의 디블록킹 필터링 방법 및 디블록킹 필터
CN105392007A (zh) 2006-11-08 2016-03-09 汤姆逊许可证公司 用于环内去伪影滤波的方法和设备
KR101366244B1 (ko) * 2007-04-24 2014-02-21 삼성전자주식회사 레지듀얼 데이터를 이용한 영상의 에러 은닉 방법 및 장치
US8433159B1 (en) * 2007-05-16 2013-04-30 Varian Medical Systems International Ag Compressed target movement model using interpolation
US8325271B2 (en) * 2007-06-12 2012-12-04 Himax Technologies Limited Method of frame interpolation for frame rate up-conversion
TWI335764B (en) * 2007-07-10 2011-01-01 Faraday Tech Corp In-loop deblocking filtering method and apparatus applied in video codec
US8767831B2 (en) 2007-10-31 2014-07-01 Broadcom Corporation Method and system for motion compensated picture rate up-conversion using information extracted from a compressed video stream
US8514939B2 (en) * 2007-10-31 2013-08-20 Broadcom Corporation Method and system for motion compensated picture rate up-conversion of digital video using picture boundary processing
US9426414B2 (en) * 2007-12-10 2016-08-23 Qualcomm Incorporated Reference selection for video interpolation or extrapolation
JP5413923B2 (ja) * 2008-04-11 2014-02-12 トムソン ライセンシング 変位イントラ予測およびテンプレート・マッチングのためのデブロッキング・フィルタリング
US8208563B2 (en) * 2008-04-23 2012-06-26 Qualcomm Incorporated Boundary artifact correction within video units
CN101477412B (zh) * 2008-06-27 2011-12-14 北京希格玛和芯微电子技术有限公司 子像素级精度的运动感知方法
US8861586B2 (en) 2008-10-14 2014-10-14 Nvidia Corporation Adaptive deblocking in a decoding pipeline
US8867605B2 (en) 2008-10-14 2014-10-21 Nvidia Corporation Second deblocker in a decoding pipeline
US8724694B2 (en) 2008-10-14 2014-05-13 Nvidia Corporation On-the spot deblocker in a decoding pipeline
US9179166B2 (en) 2008-12-05 2015-11-03 Nvidia Corporation Multi-protocol deblock engine core system and method
US8761538B2 (en) 2008-12-10 2014-06-24 Nvidia Corporation Measurement-based and scalable deblock filtering of image data
WO2010072946A2 (fr) * 2008-12-22 2010-07-01 France Telecom Prediction d'images par repartionnement d'une portion de zone causale de reference, codage et decodage utilisant une telle prediction
JP5490404B2 (ja) 2008-12-25 2014-05-14 シャープ株式会社 画像復号装置
JP5583992B2 (ja) * 2010-03-09 2014-09-03 パナソニック株式会社 信号処理装置
US9930366B2 (en) * 2011-01-28 2018-03-27 Qualcomm Incorporated Pixel level adaptive intra-smoothing
US9942573B2 (en) * 2011-06-22 2018-04-10 Texas Instruments Incorporated Systems and methods for reducing blocking artifacts
US11245912B2 (en) * 2011-07-12 2022-02-08 Texas Instruments Incorporated Fast motion estimation for hierarchical coding structures
JP5159927B2 (ja) * 2011-07-28 2013-03-13 株式会社東芝 動画像復号装置及び動画像復号方法
HUE048779T2 (hu) 2011-11-04 2020-08-28 Lg Electronics Inc Eljárás és berendezés kép információ kódolására/dekódolására
US9443281B2 (en) * 2014-06-27 2016-09-13 Intel Corporation Pixel-based warping and scaling accelerator
RU2640298C1 (ru) 2015-10-12 2017-12-27 Общество С Ограниченной Ответственностью "Яндекс" Способ обработки и хранения изображений
WO2017188566A1 (ko) * 2016-04-25 2017-11-02 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US10368107B2 (en) * 2016-08-15 2019-07-30 Qualcomm Incorporated Intra video coding using a decoupled tree structure
CN109845255A (zh) * 2016-10-03 2019-06-04 夏普株式会社 用于将解块滤波器应用于重构视频数据的系统和方法
US11778195B2 (en) * 2017-07-07 2023-10-03 Kakadu R & D Pty Ltd. Fast, high quality optical flow estimation from coded video
US11917128B2 (en) * 2017-08-22 2024-02-27 Google Llc Motion field estimation based on motion trajectory derivation
US10659788B2 (en) 2017-11-20 2020-05-19 Google Llc Block-based optical flow estimation for motion compensated prediction in video coding
WO2019087905A1 (ja) * 2017-10-31 2019-05-09 シャープ株式会社 画像フィルタ装置、画像復号装置、および画像符号化装置
KR102581186B1 (ko) * 2018-10-12 2023-09-21 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR910007342A (ko) * 1989-09-07 1991-04-30 강진구 비데오 카메라에서의 인터폴레이션을 이용한 화질개선회로
KR20010019958A (ko) * 1999-08-31 2001-03-15 박종섭 디지털 라디오 시스템에서의 다양한 인터폴레이션 레이트를 지원하는 안티이미징 필터

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05244468A (ja) * 1992-02-28 1993-09-21 Mitsubishi Electric Corp 画像受信装置
EP0957367A1 (en) * 1998-04-14 1999-11-17 THOMSON multimedia Method for estimating the noise level in a video sequence
US6717245B1 (en) * 2000-06-02 2004-04-06 Micron Technology, Inc. Chip scale packages performed by wafer level processing
US7450641B2 (en) * 2001-09-14 2008-11-11 Sharp Laboratories Of America, Inc. Adaptive filtering based upon boundary strength
US6909750B2 (en) * 2001-05-01 2005-06-21 Koninklijke Philips Electronics N.V. Detection and proper interpolation of interlaced moving areas for MPEG decoding with embedded resizing
KR100441509B1 (ko) * 2002-02-25 2004-07-23 삼성전자주식회사 주사포맷변환장치 및 방법
EP1422928A3 (en) * 2002-11-22 2009-03-11 Panasonic Corporation Motion compensated interpolation of digital video signals
WO2004064396A1 (en) * 2003-01-10 2004-07-29 Thomson Licensing S.A. Decoder apparatus and method for smoothing artifacts created during error concealment
KR100750110B1 (ko) * 2003-04-22 2007-08-17 삼성전자주식회사 4×4인트라 휘도 예측 모드 결정방법 및 장치
JP2004343451A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 動画像復号化方法および動画像復号化装置
KR100936034B1 (ko) 2003-08-11 2010-01-11 삼성전자주식회사 블록 단위로 부호화된 디지털 영상의 블로킹 현상을제거하는 방법 및 그 영상재생장치
ATE441283T1 (de) * 2003-12-01 2009-09-15 Koninkl Philips Electronics Nv Bewegungskompensierte invers-filterung mit bandpassfiltern für die bewegungsverschmierungsreduktion
WO2005109899A1 (en) * 2004-05-04 2005-11-17 Qualcomm Incorporated Method and apparatus for motion compensated frame rate up conversion
US20060062311A1 (en) * 2004-09-20 2006-03-23 Sharp Laboratories Of America, Inc. Graceful degradation of loop filter for real-time video decoder
US7574060B2 (en) * 2004-11-22 2009-08-11 Broadcom Corporation Deblocker for postprocess deblocking

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR910007342A (ko) * 1989-09-07 1991-04-30 강진구 비데오 카메라에서의 인터폴레이션을 이용한 화질개선회로
KR20010019958A (ko) * 1999-08-31 2001-03-15 박종섭 디지털 라디오 시스템에서의 다양한 인터폴레이션 레이트를 지원하는 안티이미징 필터

Also Published As

Publication number Publication date
RU2007137519A (ru) 2009-04-20
KR20070110543A (ko) 2007-11-19
JP2008533863A (ja) 2008-08-21
EP1864503A1 (en) 2007-12-12
BRPI0608283A2 (pt) 2009-12-22
AU2006223192A1 (en) 2006-09-21
CN101167369A (zh) 2008-04-23
NO20075126L (no) 2007-10-09
CN101167369B (zh) 2012-11-21
KR20070118636A (ko) 2007-12-17
IL185822A0 (en) 2008-01-06
RU2380853C2 (ru) 2010-01-27
CA2600476A1 (en) 2006-09-21
WO2006099321A1 (en) 2006-09-21
JP4927812B2 (ja) 2012-05-09
US20060233253A1 (en) 2006-10-19
MX2007011099A (es) 2007-11-15

Similar Documents

Publication Publication Date Title
KR100938568B1 (ko) 프레임 레이트 업 컨버젼 애플리케이션에서의 보간된 프레임 디블록킹 오퍼레이션
KR100863166B1 (ko) 블록 기반 디지털 비디오의 역블럭화 및 에지 강화를 위한 방법, 장치, 전자 디바이스, 컴퓨터 판독가능 매체, 및 프로세서
KR101972407B1 (ko) 영상 부호화 및 복호화 장치 및 그 방법
JP5207942B2 (ja) 量子化効果減少のための映像データ後処理方法及び装置
JP6352173B2 (ja) プリプロセッサ方法および装置
JP2006513633A (ja) エラー隠蔽中に生成されるアーチファクトをスムージングするデコーダ装置及び方法
US20110170609A1 (en) Apparatus, a method and a computer program for video processing
JP2007166522A (ja) 復号化装置及び復号化方法及びプログラム
CN107454402B (zh) 用于减小含噪图像或图像序列的编码的噪声的方法
JP2009532741A6 (ja) プリプロセッサ方法および装置
JP4719108B2 (ja) 映像符号化方法、映像符号化装置、映像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
CN114391254A (zh) 视频解码器、视频编码器、用于编码和解码视频信号的方法以及调整一个或多个去噪操作的计算机程序
Xiu et al. Adaptive enhancement filtering for motion compensation
KR20060079868A (ko) 비디오 디코딩 에러 은닉 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121227

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131227

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141230

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee