KR102146436B1 - 비디오 모션 보상을 위한 장치 및 방법 - Google Patents

비디오 모션 보상을 위한 장치 및 방법 Download PDF

Info

Publication number
KR102146436B1
KR102146436B1 KR1020187011228A KR20187011228A KR102146436B1 KR 102146436 B1 KR102146436 B1 KR 102146436B1 KR 1020187011228 A KR1020187011228 A KR 1020187011228A KR 20187011228 A KR20187011228 A KR 20187011228A KR 102146436 B1 KR102146436 B1 KR 102146436B1
Authority
KR
South Korea
Prior art keywords
block
frame
filter
sharpening filter
video
Prior art date
Application number
KR1020187011228A
Other languages
English (en)
Other versions
KR20180056735A (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 KR20180056735A publication Critical patent/KR20180056735A/ko
Application granted granted Critical
Publication of KR102146436B1 publication Critical patent/KR102146436B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/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/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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20201Motion blur correction

Landscapes

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

Abstract

본 발명은 모션 보상에 따라 후속 프레임의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 비디오 코더에 관한 것으로, 상기 비디오 코더는 상기 비디오 스트림의 적어도 하나의 참조 프레임을 저장하도록 구성된 프레임 버퍼(207) - 상기 참조 프레임은 상기 비디오 스트림의 현재 프레임과 상이함-; 상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된 인터 예측 유닛(210); 및 상기 예측 블록을 필터링하도록 구성된 샤프닝 필터(211)를 포함한다.

Description

비디오 모션 보상을 위한 장치 및 방법
본 발명은 일반적으로 비디오 처리 분야 및 비디오 모션(motion) 보상을 위한 장치에 관한 것으로, 구체적으로, 비디오의 프레임을 예측하기 위해 모션 보상을 지원하는 비디오 코더(coder) 및 비디오 디코더(decoder)에 관한 것이다. 본 발명은 추가로 모션 보상을 사용하여 비디오 스트림을 코딩하는 방법 및 디코딩하는 방법에 관한 것이다. 마지막으로, 본 발명은 이러한 방법을 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램에 관한 것이다.
비디오 처리 분야에서, 특히 하이브리드 비디오 코딩 및 압축 분야에서, 변환 코딩뿐만 아니라 인터(inter) 및 인트라(intra) 예측을 사용하는 것이 알려져 있다. 이러한 하이브리드 비디오 코딩 기술은 H.261, H.263, MPEG-1, 2, 4, H.264/AVC 또는 H.265/HEVC와 같은 공지된 비디오 압축 표준에서 사용된다.
도 1은 종래 기술에 따른 비디오 코더를 나타낸다. 비디오 코더(100)는 비디오 스트림의 프레임 또는 픽쳐(pitcure)의 입력 블록을 수신하는 입력 및 인코딩된 비디오 비트 스트림을 생성하는 출력을 포함한다. 비디오 코더(100)는 예측, 변환, 양자화 및 엔트로피 코딩(entropy coding)을 비디오 스트림에 적용하도록 구성된다(adapted). 인코딩된 비디오 비트 스트림을 출력으로서 생성하기 위해, 변환, 양자화 및 엔트로피 코딩은 변환 유닛(101), 양자화 유닛(102) 및 엔트로피 코딩 유닛(103)에 의해 각각 수행된다.
비디오 스트림은 복수의 프레임에 대응하며, 각각의 프레임은 인트라 또는 인터 코딩된 특정 크기의 블록으로 분할된다. 예를 들어, 비디오 스트림의 제1 프레임의 블록은 인트라 예측 유닛(109)에 의해 인트라 코딩된다. 인트라 프레임은 동일 프레임내의 정보만을 이용하여 코딩됨으로써, 독립적으로 디코딩될 수 있으며, 랜덤 액세스를 위한 비트 스트림의 엔트리 포인트(entry point)를 제공할 수 있다. 비디오 스트림의 다른 프레임의 블록은 인터 예측 유닛(110)에 의해 인터 코딩되며; 참조 프레임으로 지칭되는 코딩된 프레임으로부터의 정보가 시간적 리던던시(temporal redundancy)를 감소시키는데 사용됨으로써, 인터 코딩된 프레임의 각각의 블록이 참조 프레임의 동일 크기의 블록으로부터 예측된다. 모드(mode) 선택 유닛(108)은 프레임의 블록이 인트라 예측 유닛(109) 또는 인터 예측 유닛(110)에 의해 처리될지의 여부를 선택하도록 구성된다.
인터 예측을 수행하기 위해, 코딩된 참조 프레임이 역양자화 유닛(104), 역변환 유닛(105), 루프 필터링(loof filtering) 유닛(106)에 의해 처리되어 프레임 버퍼(107)에 저장되는 참조 프레임을 획득한다. 특히, 참조 프레임의 참조 블록이 이러한 유닛들에 의해 처리되어 재구성된 참조 블록을 획득할 수 있다. 재구성된 참조 블록은 참조 프레임으로 재조합된다.
인터 예측 유닛(110)은 인터 코딩될 현재 프레임 또는 픽쳐 그리고 프레임 버퍼(107)로부터의 하나 또는 다수의 참조 프레임 또는 픽쳐를 입력으로서 포함한다. 모션 추정 및 모션 보상은 인터 예측 유닛(110)에 의해 적용된다. 모션 추정은 특정 비용(cost) 함수를 토대로 모션 벡터 및 참조 프레임을 획득하는데 사용된다. 모션 보상은 참조 프레임의 참조 블록을 현재 프레임으로 변환하는 관점에서 현재 프레임의 현재 블록을 기술한다. 인터 예측 유닛(110)은 현재 블록에 대한 예측 블록을 출력하고, 예측 블록은 코딩될 현재 블록과 그의 예측 블록 사이의 차이를 최소화, 즉 잔차 블록(residual block)을 최소화한다. 잔차 블록의 최소화는 예를 들어, 레이트-왜곡 최적화(rate-distortion optimization) 과정을 기반으로 한다.
현재 블록과 그의 예측 사이의 차이, 즉 잔차 블록은 다음에 변환 유닛(101)에 의해 변환된다. 변환 계수는 양자화 유닛(102) 및 엔트로피 인코딩 유닛(103)에 의해 양자화되고 엔트로피 코딩된다. 이렇게 생성된 인코딩된 비디오 비트 스트림은 인트라 코딩된 블록 및 인터 코딩된 블록을 포함한다.
이러한 하이브리드 비디오 코딩은 예측 에러의 변환 코딩과 조합된 모션 보상된 예측을 포함한다. 각각의 블록에 대해, 추정된 모션 벡터는 또한 인코딩된 비디오 비트 스트림에서 시그널링 데이터로서 전송된다. 오늘날 표준 H.264/AVC 및 H.265/HEVC는 모션 벡터에 대한
Figure 112018039548114-pct00001
펠(pel) 변위 분해능(displacement resolution)을 기반으로 한다. 프랙셔널-펠 변위(fractional-pel displacements)를 추정하고 보상하기 위해, 참조 프레임은 프랙셔널-펠 위치에서 보간되어야 한다. 이러한 프랙셔널-펠 위치상에서의 보간 프레임을 획득하기 위해, 보간 필터가 인터 예측 유닛(110)에 사용된다.
보간된 프레임의 품질은 사용된 보간 필터의 특성에 크게 좌우된다. 짧은 탭 필터(Short-tap filters), 예를 들어, 이중 선형 필터(bilinear filter)는 높은 주파수를 억제하고 보간된 프레임을 블러링하게(blurred) 렌더링(rendering)한다. 롱 탭 필터(Ling-tap filter)와 같은 다른 필터는 높은 주파수를 유지하지만 날카로운 에지(sharp edge) 근처에 약간의 링잉 아티팩트(ringing artifacts)를 생성할 수 있다. 다른 문제점은 모션 보상이 이전에 인코딩되고 재구성된 프레임을 참조 프레임으로 사용한다는 점이다. 참조 프레임은 깁스(Gibbs) 영향(effect)이라고 지칭되는 변환 계수의 양자화로 인한 아티팩트를 포함할 수 있다. 이러한 아티팩트 때문에 에지 주변의 영역뿐만 아니라 에지도 왜곡될 수 있다.
에지의 품질이 샤프닝(sharpening) 또는 디블러링(de-blurring) 포스트(post) 필터를 디코딩된 프레임에 적용하는 것에 의해 증가될 수 있다는 것이 종래 기술에 알려져 있다. 이러한 포스트 필터링 설계의 문제점은 샤프닝 필터가 인코딩 프로세스에 포함되지 않는다는 것이다. 따라서, 샤프닝 필터의 영향이 레이트-왜곡 최적화 과정 동안 고려될 수 없다. 이로 인해 피크 신호대 잡음비(peak signal-to-noise-ratio, PSNR)와 같은 객관적인 품질(objective quality) 메트릭(metric)이 감소될 수 있다.
객관적인 품질을 증가시키기 위해, 샤프닝 필터를 루프 필터링 유닛(106)에 포함시키는 것이 또한 알려져 있다. 따라서, 샤프닝 필터는 재구성된 참조 프레임에 적용되고, 압축 아티팩트를 참조 프레임에서 제거하는 것에 의해 모션 보상된 예측을 개선(improve)시킬 수 있다. 그러나 이러한 루프 필터링 기술은 모션 보간 필터로 인한 아티팩트를 제거할 수 없다.
전술한 단점 및 문제점을 인식하여, 본 발명은 최신 기술을 개선하는 것을 목적으로 한다. 특히, 본 발명의 목적은 후속 프레임의 비디오 스트림의 개선된 코딩 및 디코딩을 위한 비디오 코더, 코딩 방법, 비디오 디코더 및 디코딩 방법을 제공하는 것이다.
본 발명은 특히 인터 예측 코딩의 품질을 개선시키고자 한다. 특히, 본 발명은 모션 보상에 의해 야기되는 아티팩트를 제거하고자 한다. 구체적으로, 본 발명의 목적은 모션 보간 필터의 부정적 영향을 감소시키는 것, 즉, 참조 프레임의 양자화 아티팩트를 감소시킴으로써 예측의 품질을 개선시킬 뿐만 아니라, 프랙셔널-펠(fractional-pel) 위치에서 참조 프레임의 보간의 부정적 영향을 감소시키는 것이다.
본 발명의 전술한 목적은 첨부된 독립 청구항에 제공된 해결 방안에 의해 달성된다. 본 발명의 유익한 구현 예들은 각각의 종속항들에서 추가로 정의된다.
본 발명의 제1 측면은 모션 보상(motion compensation)에 따라 후속 프레임(subsequent frames)의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 비디오 코더를 제공한다. 상기 비디오 코더는 상기 비디오 스트림의 적어도 하나의 참조(reference) 프레임을 저장하도록 구성된(adapted) 프레임 버퍼를 포함하며, 상기 참조 프레임은 상기 비디오 스트림의 현재 프레임과 상이하다. 상기 비디오 코더는 상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된 인터(inter) 예측 유닛을 포함한다. 상기 비디오 코더는 상기 예측 블록을 필터링하도록 구성된 샤프닝 필터(sharpening filter)를 포함한다.
이에 따라(Thereby), 샤프닝 필터를 예측 블록에 적용하는 것은, 유리하게(advantageously) 품질 보간된 에지를 유지하면서, 프랙셔널-펠 위치상의 참조 프레임/블록의 보간에 의해 야기되는 즉, 모션 보간 필터에 의해 야기되는 링잉 아티팩트(ringing artifact)를 제거하거나 적어도 감소시킨다는 점에서 인터 예측 코딩의 품질을 개선시킨다. 또한, 참조 블록에서 변환 계수의 양자화로 인해 야기되는, 깁스 영향이라고도 지칭되는 링잉 아티팩트를 제거하거나 적어도 감소시킨다. 더 나아가서는 양자화 및 모션 보간으로 인한 에지의 블러링을 감소시키고, 모션 블러(blur)로 인한 에지의 블러링도 감소시킨다. 부가적으로, 본 발명은 재구성된 프레임/블록에서 에지의 주관적 품질(subjective quality)을 증가시킨다.
따라서, 모션 보간 필터 이후에 즉, 인터 예측 유닛 이후에 본 발명에 따른 샤프닝 필터의 배치는, 샤프닝 필터가 인-루프 참조 필터(in-loop reference filters) 즉, 루프 필터링 유닛의 태스크(task)를 수행하게 하는 한편, 동시에 모션 보간 필터링에 의해 야기되는 아티팩트가 제거되거나 적어도 감소될 수 있다.
제1 측면에 따른 비디오 코더의 제1 구현 형태(form)에서, 상기 샤프닝 필터는 비선형 필터이다.
이에 따라, 이러한 비선형 샤프닝 필터의 사용은 모션 예측 향상(enhancement)에 바람직하다. 언샤프 마스킹(unsharp masking) 기술과 같은 선형 샤프닝 또는 디블러링 필터를 토대로 하는 전통적인 에지 향상 기술은 주관적 품질을 향상시킬 수 있지만, 모션 보간 필터링으로 야기되는 링잉 아티팩트를 억제할 수 없다. 또한, 대부분의 경우, 이러한 선형 샤프닝은 심지어 링잉(ringing)을 증가시키고 객관적인 성능 특성을 감소시킬 수 있음이 발견되었다. 한편으로, 비선형 필터는 링잉 제거에 대해 더 나은 결과를 제공할 수 있으므로 유리하다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 샤프닝 필터는, 소스(source) 블록의 에지 맵(edge map)을 생성하도록 구성된 에지 맵 계산 유닛을 포함하고, 상기 소스 블록은 상기 참조 블록 또는 상기 예측 블록이다. 상기 샤프닝 필터는 상기 소스 블록의 에지 맵을 블러링하도록 구성된 블러링 필터를 포함한다. 상기 샤프닝 필터는 상기 블러링된 에지 맵을 하이패스(high-pass) 필터링하는 것에 의해, 상기 소스 블록의 각각의 위치에 대한 유도 벡터(derivative vector)를 생성하도록 구성된 하이패스 필터를 포함한다. 상기 샤프닝 필터는 샤프닝 강도 계수(sharpening strength coefficient)로 상기 유도 벡터를 스케일링(scaling)하는 것에 의해 변위 벡터(displacement vector)를 생성하도록 구성된 스케일링 유닛ㅇ으을 포함한다. 상기 샤프닝 필터는 상기 변위 벡터를 토대로 상기 예측 블록을 워핑(warping)시키도록 구성된 워핑 유닛을 포함한다.
이에 따라, 샤프닝 필터의 이러한 구조는 유리하게 링잉 아티팩트의 제거의 측면에서보다 나은 결과를 제공할 수 있는 비선형 샤프닝 필터를 정의한다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 에지 맵 계산 유닛은, 상기 소스 블록의 각각의 위치에 대한 기울기(gradient) 벡터를 생성하도록 구성된 기울기 벡터 유닛을 포함한다. 상기 에지 맵 계산 유닛은 상기 소스 블록의 에지 맵을 생성하기 위해 각각의 위치의 기울기 벡터의 길이를 계산하도록 구성된 기울기 벡터 길이 유닛을 포함한다.
이에 따라, 이 구조는 변위 벡터를 생성하기 위해 블러링 필터, 하이패스 필터 및 스케일링 유닛에 의해 추가 처리될 수 있는 에지 맵의 생성을 허용한다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 기울기 벡터 유닛은 프리위트(Prewitt) 필터이다.
이에 따라, 프리위트 필터의 사용은 변위 벡터를 생성하고 예측 블록을 워핑시키기 위해 소스 블록의 각각의 위치에 대한 기울기 벡터를 출력할 수 있다는 점에서 유리하다.
제1 측면에 다른 비디오 코더의 추가 구현 형태에서, 상기 샤프닝 필터는 상기 소스 블록의 에지 맵을 클리핑(clipping)하도록 구성된 클리핑 유닛을 포함한다. 상기 클리핑 유닛은 상기 에지 맵 계산 유닛과 상기 블러링 필터 사이에 위치되어 있다.
이에 따라, 임계값을 갖는 에지 맵의 클리핑은 변위 벡터의 극히 높은 값 및 낮은 값의 처리를 방지한다는 점에서 유리하다. 따라서, 연산 자원(computational resources)이 추가적인 워핑 처리로부터 0 값의 변위를 제외하는 것에 의해 절약될 수 있다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 블러링 필터는 가우시안(Gaussian) 필터이다.
이에 따라, 가우시안 필터 이후에 위치된 하이패스 필터에 의한 처리의 품질이 개선될 수 있으므로, 또한 변위 벡터를 토대로 한 워핑이 개선될 수 있다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 워핑 유닛은 프랙셔널 위치에서 샘플 값을 획득하기 위한 이중 선형 보간 필터를 포함한다.
이에 따라, 비디오 코더의 전체적인 품질이 개선되는 한편, 동시에 원하는 프랙셔널-펠 위치에 기준 프레임/블록의 보간을 제공한다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 변위 벡터가 상기 참조 블록으로부터 유도되도록 상기 소스 블록이 참조 블록이다.
이에 따라, 참조 블록은 샤프닝 변위 벡터 또는 워핑 변위 벡터라고도 지칭되는 변위 벡터를 획득하기 위한 소스 블록으로 사용된다. 그 다음에, 워핑이 획득된 워핑 변위 벡터를 사용하여 예측 블록에 적용된다. 이 실시 예는 인코더 측에서 연산 자원을 절약한다는 점에서 유리하다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 변위 벡터가 상기 예측 블록으로부터 유도되도록 상기 소스 블록이 예측 블록이다.
이에 따라, 소스 블록으로서 예측 블록을 선택하는 것은 예측 블록의 워핑을 수행하기 위한 적절한 변위 벡터의 계산을 가능하게 한다. 또한, 샤프닝 필터는 다음에 예측 블록에 대해 하나의 입력만을 요구하고, 참조 블록에 대한 두번째 입력은 필요하지 않다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 샤프닝 필터는 항상 인에이블(enable)되어 있다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 비디오 코더는 상기 샤프닝 필터의 선택적 바이패스(bypass) 및 상기 샤프닝 필터의 선택적 적용(application) 중 적어도 하나를 제어하도록 구성된 제어 유닛을 포함한다.
이에 따라, 샤프닝 필터를 인에이블 또는 디스에이블(disable)시키기 위해 제어 유닛에 의한 결정이 취해질 수 있다. 결정은 각각의 특정 경우, 예를 들어 인코딩될 특정 비디오 스트림에 적용될 수 있다. 또한, 샤프닝 필터는 바이패스되어 비디오 코더의 연산 자원을 절약할 수 있다. 다른 한편으로, 우선 순위가 보간 품질의 개선 및 아티팩트의 감소에 주어지면, 샤프닝 필터가 적용될 수 있다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 제어 유닛은 잔차 블록(residual block)을 최소화하기 위해 비용 함수에 따라 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 제어하도록 구성된다. 상기 잔차 블록은 상기 현재 블록과 상기 예측 블록 사이의 차이이다. 상기 비용 함수는 예를 들어 레이트 왜곡 최적화를 토대로 할 수 있다.
이에 따라, 샤프닝 필터를 적용하거나 바이패스할 가능성이 모션 보상을 개선시키는 데 추가로 사용될 수 있다. 인터 예측 유닛에 의해 출력된 예측 블록 및 샤프닝 필터에 의해 출력된 예측 블록으로부터 각각 유도된 2개의 잔차 블록은 비용 함수의 관점에서 비교될 수 있다. 잔차 블록을 최소화하는 예측 블록을 선택하고 이에 대응하여 샤프닝 필터를 적용하거나 바이패스하는 것에 의해, 데이터 수량 및 예를 들어 인코딩될 변환 계수의 수량이 감소될 수 있다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 비디오 코더는 상기 인코딩된 비디오 비트 스트림을 생성하도록 구성된 인코딩 유닛을 포함한다. 상기 제어 유닛은 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 반영하는 샤프닝 필터 정보를 상기 인코딩 유닛에 전송하도록 구성된다. 상기 인코딩 유닛은 상기 샤프닝 필터 정보를 상기 인코딩된 비디오 비트 스트림에 추가하도록 구성된다.
이에 따라, 인코딩된 비디오 비트 스트림을 디코딩하는 경우, 정확한 디코딩을 보장하기 위하여, 이 샤프닝 필터 정보를 획득하고, 이에 따라 디코더 측 상에서 샤프닝 필터를 적용 또는 바이패스하는 것이 가능하다.
제1 측면에 따른 비디오 코더의 추가 구현 형태에서, 상기 샤프닝 필터 정보가 각각의 예측 블록에 대한, 상기 프레임의 임의의(arbitrary) 또는 일정한(regular) 영역에 대한 블록 레벨, 프레임 레벨, GOP(group of pictures) 레벨, PPS(picture parameter set) 레벨, 또는 SPS(sequence parameter set) 레벨에서 추가된다.
이에 따라, 시그널링이 최적화될 수 있도록 샤프닝 필터 정보를 원하는 그래뉴래리티(granularity)로 설정하는 것이 가능하다.
본 발명의 제2 측면은 모션 보상에 따라 후속 프레임의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 방법을 제공한다. 상기 방법은, 상기 비디오 스트림의 적어도 하나의 참조 프레임을 저장하는 단계를 포함하고, 상기 참조 프레임은 상기 비디오 스트림의 현재 프레임과 상이하다. 상기 방법은, 상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계를 포함한다. 상기 방법은 상기 예측 블록에 샤프닝 필터를 적용하는 단계를 포함한다.
본 발명의 제2 측면에 따른 방법의 다른 특징 또는 구현은 본 발명의 제1 측면 및 그의 상이한 구현 형태에 따른 비디오 코더의 기능을 수행할 수 있다.
본 발명의 제3 측면은 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하는 것에 의해 획득된 인코딩된 비디오 비트 스트림을 디코딩하는 비디오 디코더를 제공한다. 상기 비디오 디코더는 상기 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하도록 구성된 프레임 버퍼를 포함하며, 상기 참조 프레임은 상기 인코딩된 비디오 비트 스트림의 현재 프레임과 상이하다. 상기 비디오 디코더는 상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된 인터 예측 유닛을 포함한다. 상기 비디오 디코더는 상기 예측 블록을 필터링하도록 구성된 샤프닝 필터를 포함한다.
이에 따라, 제1 양태에 따른 비디오 코더와 관련하여 획득된 이점들이 제3 측면에 따른 비디오 디코더에 관련해서도 관해서도 주어진다.
제3 측면에 따른 비디오 디코더의 구현 형태에서, 상기 샤프닝 필터는 항상 인 에이블되어 있다.
제3 측면에 따른 비디오 디코더의 구현 형태에서, 상기 비디오 디코더는 상기 샤프닝 필터의 선택적 바이패스 및 상기 샤프닝 필터의 선택적 적용 중 적어도 하나를 제어하도록 구성된 제어 유닛을 포함한다.
이에 따라, 샤프닝 필터 유닛을 적용하거나 바이패스하는 결정은 각각의 특정 경우에 적용될 수 있다. 또한, 샤프닝 필터는 비디오 코더 및 비디오 디코더의 연산 자원을 절약하기 위해 바이패스될 수 있다. 다른 한편으로, 우선 순위가 보간 품질의 개선 및 아티팩트의 감소에 주어지면, 샤프닝 필터가 적용될 수 있다.
제3 측면에 따른 비디오 디코더의 구현 형태에서, 상기 제어 유닛은 상기 인코딩된 비디오 비트 스트림으로부터 획득된 샤프닝 필터 정보에 따라 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 제어하도록 구성된다.
이에 따라, 비디오 코더 측 상에서 샤프닝 필터의 선택적 바이패스 및 선택적 적용 중 적어도 하나를 반영하는 이러한 샤프닝 필터 정보를 인코딩된 비디오 비트 스트림에 유리하게 추가할 수 있는 비디오 코더에 비디오 디코더를 적용할 수 있다.
본 발명의 제1 측면에 따른 비디오 코더, 특히 샤프닝 필터 및 그 구조에 관한 다른 특징 또는 구현도 본 발명의 제3 측면에 따른 비디오 디코더에 적용 가능하다.
본 발명의 제4 측면은 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하는 것에 의해 획득되는 인코딩된 비디오 비트 스트림을 디코딩하는 방법을 제공한다. 상기 방법은 상기 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하는 단계를 포함하고, 상기 참조 프레임은 상기 인코딩된 비디오 비트 스트림의 현재 프레임과 상이하다. 상기 방법은 상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계를 포함한다. 상기 방법은 상기 예측 블록에 샤프닝 필터를 적용하는 단계를 포함한다.
본 발명의 제4 측면에 따른 방법의 다른 특징 또는 구현은 본 발명의 제3 측면 및 그의 상이한 구현 형태에 따른 비디오 디코더의 기능을 수행할 수 있다.
본 발명의 제5 측면은, 컴퓨팅 디바이스 상에서 실행될 때, 이러한 코딩 및/또는 디코딩 방법을 수행하기 위한 프로그램 코드를 가지는 컴퓨터 프로그램을 제공한다.
본 발명은 모션 예측 신호, 즉 예측 블록에 샤프닝 필터를 적용하는 것에 의해 모션 보상 개션을 제안한다. 링잉 아티팩트를 감소시키고 모션 예측 블록에서 에지의 선명도(sharpness)를 증가시키는 것에 의해 모션 보상을 개선시키는 것이 제안된다. 모션 보정 향상을 위해 인코더와 디코더에 모두 배치되는 예측 필터로서 샤프닝 필터를 적용하는 것이 제안된다. 모션 보상 개선을 위해 비선형 샤프닝 예측 필터가 사용될 수 있다.
본 출원(the present application)에서 설명된 모든 디바이스, 엘리먼트, 유닛 및 수단은 소프트웨어 또는 하드웨어 엘리먼트 또는 이들의 임의의 조합으로 구현될 수 있다는 것을 주목해야 한다. 본 출원에서 기술된 다양한 엔티티들에 의해 수행되는 모든 단계들뿐만 아니라 다양한 엔티티들에 의해 수행되는 것으로 기술된 기능들은 각각의 엔티티가 각각의 단계들 및 기능들을 수행하도록 구성된다(adapted or configured). 특정 실시 예에 대한 다음의 설명에서, 특정 단계 또는 기능을 수행하는 엔티티의 특정 상세 엘리먼트의 설명에 반영되지 않은 영원한 엔티티에 의해 완전하게 형성되는 특정 기능 또는 단계라도, 당업자는 이러한 방법 및 기능이 각각의 소프트웨어 또는 하드웨어 엘리먼트 또는 이들의 임의의 조합으로 구현될 수 있음을 이해할 것이다.
본 발명의 상기 측면 및 구현 형태는 첨부된 도면과 관련하여 이하의 구체적인 실시 예의 기술에서 설명될 것이다.
도 1은 종래 기술에 따른 비디오 코더를 나타낸다.
도 2는 본 발명의 실시 예에 따른 비디오 코더를 나타낸다.
도 3은 본 발명의 실시 예에 따른 비디오 디코더를 나타낸다.
도 4는 본 발명에 따른 샤프닝 필터의 실시 예를 나타낸다.
도 5는 본 발명의 실시 예에 따른 비디오 코딩 방법을 나타낸다.
도 6은 본 발명의 실시 예에 따른 비디오 디코딩 방법을 나타낸다.
도 2는 본 발명의 실시 예에 따른 비디오 코더, 특히 모션 보상에 따라 후속 프레임의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 비디오 코더(200)를 나타낸다.
비디오 코더(200)는 특히 프레임 버퍼(207), 인터 예측 유닛(210), 및 샤프닝 필터(211)를 포함한다.
프레임 버퍼(207)는 비디오 스트림의 적어도 하나의 참조 프레임 또는 픽쳐를 저장하도록 구성된다. 참조 프레임은 비디오 스트림의 현재 프레임과 상이하다. 특히, 본 발명의 컨텍스트(context)에서, 현재 프레임은 현재 인코딩된 비디오 스트림의 프레임이며, 참조 프레임은 이미 인코딩된 비디오 스트림의 프레임이다. 다음에서 특징(feature) "프레임"에 대한 참조는 특징 "픽쳐"에 대한 참조로 대체될 수 있다.
인터 예측 유닛(210)은 참조 프레임의 참조 블록으로부터 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된다. 참조 프레임은 프레임 버퍼(207)에 저장된 참조 프레임인 것이 바람직하며, 현재 블록은 바람직하게는 도 2의 비디오 블록으로 지칭되는 비디오 코더(200)의 입력에 대응한다. 특히, 현재 프레임은 인터 코딩 기술을 사용하여 인코딩되며 즉, 현재 프레임이 현재 프레임과 구별되는 적어도 하나의 참조 프레임으로부터 예측된다. 참조 프레임은 이전 프레임, 즉 후속 프레임의 비디오 스트림 내의 현재 프레임 이전에 위치된 프레임일 수 있다. 다르게는, 순방향 예측(forward prediction)이 사용되면, 참조 프레임은 미래 프레임, 즉 현재 프레임 이후에 위치하는 프레임일 수 있다. 복수의 참조 프레임의 경우, 적어도 하나는 이전 프레임일 수 있고, 이들 중 적어도 하나는 미래 프레임일 수 있다. 참조 프레임은 인트라 코딩될 수 있으며, 즉 임의의 추가 프레임을 사용하지 않고 다른 프레임에 의존하지 않고 코딩될 수 있으므로, 독립적으로 디코딩될 수 있고 랜덤 비디오 액세스를 위한 엔트리 포인트로서의 역할(serve)을 할 수 있다.
특히, 인터 예측 유닛(210)은 모션 벡터를 생성하고 참조 프레임의 참조 블록과 현재 프레임의 현재 블록과 사이의 모션을 추정하는 것에 의해 모션 추정을 수행하도록 구성된다. 모션 추정은 특정 비용 함수, 예를 들어 레이트- 왜곡 최적화를 토대로 참조 프레임에서 최상(best)의 참조 블록을 가리키는 모션 벡터를 찾기 위해 인코딩 동안 수행된다. 모션 추정 이외에, 인터 예측 유닛(210)은 추가로, 모션 벡터 및 참조 블록를 토대로 현재 블록에 대한 예측 블록을 생성하는 것에 의해 모션 보상을 수행하도록 구성된다.
특히, 모션 예측은 모션 추정 유닛 및 모션 보상 유닛을 포함한다. 모션 벡터는 모션 추정 유닛을 사용하여 생성된다. 참조 블록 및 현재 블록은 바람직하게 참조 프레임 및 현재 프레임의 각각의 영역(area) 또는 서브(sub) 영역이다. 이러한 블록은 일정한(regular) 형상을 가질 수 있으며, 예를 들어, 직사각형 또는 일정하지 않은(irregular) 형상일 수 있다. 다르게는, 블록은 프레임과 동일한 크기를 가질 수 있다. 현재 블록과 참조 블록은 모두 동일한 크기를 가진다. 블록의 크기는 사이드(side) 정보 또는 시그널링 데이터로서 디코더에 전송되는 블록 모드 정보에 의해 정의될 수 있다. 블록은 프레임의 일부, 예를 들어, 64×64 화소를 포함하는, 미리 정의된 크기의 비디오 시퀀스의 기본 코딩 구조인 코딩 유닛에 대응할 수 있다.
예측 블록은 참조 블록을 고려하여 현재 블록에 대해 생성된다. 특히, 복수의 예측 블록은 복수의 참조 블록을 고려하여 현재 프레임의 복수의 현재 블록에 대해 생성될 수 있다. 이러한 참조 블록은 단일 참조 프레임의 일부이거나 상이한 참조 프레임으로부터 선택될 수 있다. 여러 개의 예측 블록이 현재 프레임에 대해 생성될 수 있고, 현재 프레임에 대해 생성된 예측 블록이 결합되어 현재 프레임의 예측 프레임을 획득할 수 있다.
샤프닝 필터(211)는 예측 블록을 필터링하도록 구성된다. 따라서, 샤프닝 필터(211)는 인터 예측 유닛(210)에 의해 생성된 예측 블록에 적용된다. 본 발명에 의해 제안된 샤프닝 필터(211)는 인터 예측에 의해 획득된 즉, 모션 추정 및 모션 보상을 포함하는 모션 예측에 의해 획득된 예측 블록을 향상시키기 위해, 인터 예측 유닛(210) 뒤에 추가된다. 따라서 샤프닝 필터(211)는 샤프닝된 예측 블록을 생성하도록 구성된다.
도 2의 비디오 코더(200)는 특히 하이브리드 비디오 코딩을 지원하기 위해 도 1의 비디오 코더(100)와 유사한 유닛들을 추가로 포함한다. 예를 들어, 비디오 코더(200)는 주파수 도메인으로의 변환을 통해 변환 계수를 생성하고 계수를 양자화하고 양자화된 계수를 예를 들어 시그널링 데이터와 함께 엔트로피 코딩하는, 당업계에 공지된 변환 유닛(201), 양자화 유닛(202) 및 엔트로피 인코더 또는 엔트로피 인코딩 유닛(203)을 포함한다. 변환 유닛(201)의 입력은, 도 2에서 비디오 블록으로 지칭되는 현재 프레임의 현재 블록과, 인터 예측 유닛(210), 샤프닝 필터(211) 또는 인트라 예측 유닛(209)에 의해 출력된 예측 블록 사이의 차이로 정의되는 잔차 블록이다. 엔트로피 인코딩 유닛(203)은 인코딩된 비디오 비트 스트림을 출력으로서 생성하도록 구성된다.
비디오 코더(200)는 역양자화 유닛(204), 역변환 유닛(205) 및 루프 필터링 유닛(206)인 유사한 유닛을 더 포함한다. 양자화 유닛(202)에서 생성된 양자화된 변환 계수는 역양자화 유닛(204) 및 역변환 유닛(205)에 의해 각각 역양자화되고 역변환되어, 변환 유닛(201)에 공급된 잔차 블록에 대응하는 재구성된 잔차 블록을 획득한다. 그런 다음, 현재 블록에 대응하는 재구성된 현재 블록을 획득하기 위해, 재구성된 잔차 블록이 잔차 블록을 생성하기 위해 이전에 사용된 예측 블록에 추가되며, 이 재구성된 현재 블록은 도 2에서 재구성된 비디오 블록으로 지칭된다. 재구성된 현재 블록은 루프 필터링 유닛(206)에 의해 처리되어 블록 와이즈(block-wise) 처리 및 양자화에 의해 도입된 아티팩트(artifact)를 평활화(smooth)한다. 적어도 하나의 현재 블록 또는 유리하게는 복수의 현재 블록들을 포함하는 현재 프레임은 재구성된 현재 블록(들)로부터 재구성될 수 있다. 이 재구성된 현재 프레임은 비디오 스트림의 다른 프레임의 인터 예측을 위한 참조 프레임으로서의 역할을 하기 위해 프레임 버퍼(207)에 저장될 수 있다.
모드 선택 유닛(208)이 도 1과 유사하게, 비디오 코더(200)의 입력 블록이 인트라 예측 유닛(209) 또는 인터 예측 유닛(210)에 의해 처리될지의 여부를 선택하는 비디오 코더(200)에 제공된다. 모드 선택 유닛 유닛(208)은 대응하여 프레임의 블록이 본 프레임으로부터의 정보만을 사용하여 인트라 코딩될지 또는 다른 프레임 즉, 프레임 버퍼(207)에 저장된 적어도 하나의 참조 프레임으로부터의 부가 정보를 사용하여 인터 코딩될지를 선택한다.
인트라 예측 유닛(209)은 인트라 예측을 담당하고, 인트라 예측를 토대로 예측 블록을 생성한다. 이와 같이, 인터 예측 유닛(210)은 인터 예측을 담당하고, 시간적 리던더시를 줄이기 위해 참조 프레임에서 동일한 크기의 블록으로부터 예측된 예측 블록을 생성한다.
특히, 샤프닝 필터(211)는 항상 인에이블(enable)될 수 있다. 이것은, 인터 예측 유닛(210)에 의해 생성된 예측 블록이 항상 샤프닝 필터(211)에 공급되고, 잔차 블록이 현재 블록과 샤프닝 필터(211)에 의해 출력된 샤프닝된 예측 블록 사이의 차이에 의해 항상 획득됨을 의미한다.
다르게는, 샤프닝 필터(211)는 적용되거나 바이패스(bypass)될 수 있다. 샤프닝 필터(211)가 적용되는 경우, 샤프닝 필터(211)는 샤프닝된 예측 블록을 생성하고, 잔차 블록이 현재 블록과 샤프닝 필터(211)에 의해 출력된 샤프닝된 예측 블록 사이의 차이에 의해 획득된다. 샤프닝 필터(211)가 바이패스된 경우, 잔차 블록이 현재 블록과 인터 예측 유닛(210)에 의해 출력된 예측 블록 사이의 차이에 의해 획득된다.
샤프닝 필터(211)의 선택적 적용(application) 및 바이패스 중 적어도 하나는 제어 유닛(212)에 의해 제어된다. 예를 들어, 제어 유닛은 예를 들어, 잔차 블록을 최소화하기 위해 비용 함수(cost function)에 따라 샤프닝 필터(211)의 적어도 하나의 적용 또는 바이패스를 제어하도록 구성될 수 있다. 비용 함수는, 예를 들어, 레이트 왜곡 최적화를 토대로 할 수 있다. 비용 함수는 특히, 샤프닝 필터(211)에 의해 출력된 예측 블록으로부터 획득된 잔차 블록 및 인터 예측 유닛(210)에 의해 출력된 예측 블록으로부터 획득된 잔차 블록에 적용된다. 비용 함수의 결과에 따라, 샤프닝 필터(211)는 적용되거나 바이패스될 수 있다.
샤프닝 필터(211)를 바이패스하거나 적용하는 제어 유닛(212)의 결정이 인코딩 유닛 또는 엔트로피 인코딩 유닛(203)에 의해 생성된 인코딩된 비디오 비트 스트림 내의 시그널링 데이터로서 전송될 수 있다. 제어 유닛(212)은 샤프닝 필터 정보를 인코딩 유닛(203)으로 전송하고, 샤프닝 필터 정보는 샤프닝 필터(211)의 선택적 바이패스 또는 선택적 적용 중 적어도 하나를 반영한다. 인코딩 유닛(203)은 샤프닝 필터 정보를 인코딩된 비디오 비트 스트림에 시그널링 데이터로서 추가한다.
샤프닝 필터 정보는 예를 들어 0과 1과 같은 두 값을 취할 수 있는 샤프닝 필터 플래그 형식일 수 있다. 이 두 값 중 하나, 예를 들어, 1이 샤프닝 필터가 적용되는 것을 정의하고, 다른 값은 샤프닝 필터가 바이패스됨을 정의한다. 다르게는, 샤프닝 필터 정보의 부재는 샤프닝 필터의 바이패스를 반영하는 것으로 해석될 수 있으며, 샤프닝 필터 정보의 존재는 샤프닝 필터의 적용을 반영할 수 있다.
샤프닝 필터 정보의 그래뉴래리티(granularity)가 달라질 수 있다. 예를 들어, 샤프닝 필터 정보는, 예를 들어, 각각의 예측 블록에 대한, 상기 프레임의 임의의(arbitrary) 또는 일정한(regular) 영역에 대한 블록 레벨, 프레임 레벨, GOP(group of pictures) 레벨, PPS(picture parameter set) 레벨 또는 SPS(sequence parameter set) 레벨에서 추라될 수 있다. 샤프닝 필터 정보가 각각의 예측 블록에 대한 블록 레벨에서 추가되면, 인코딩 유닛(203)은 인터 예측 유닛(210)에 의해 생성된 각각의 예측 블록에 대한 샤프닝 필터 정보를 추가할 수 있다. 인코딩 유닛(203)은 다음에 인코딩된 비디오 비트 스트림에, 각각의 예측 블록에 대해, 대응하는 양자화된 잔차 변환 계수 및 대응하는 샤프닝 필터 정보를 추가한다.
도 3은 본 발명의 실시 예에 따른 비디오 디코더를 나타내며, 특히 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하여 획득한 인코딩된 비디오 비트 스트림을 디코딩하는 비디오 디코더(300)를 나타낸다.
비디오 디코더(300)는 특히 프레임 버퍼(307), 인터 예측 유닛(310), 및 샤프닝 필터(311)를 포함한다. 프레임 버퍼(307)는 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하도록 구성되며, 참조 프레임은 인코딩된 비디오 비트 스트림의 현재 프레임과는 상이하다. 인터 예측 유닛(310)은 참조 프레임의 참조 블록으로부터 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된다. 샤프닝 필터(311)는 예측 블록을 필터링하도록 구성된다.
디코더(300)는 비디오 코더(200)에 의해 생성된 인코딩된 비트 스트림을 디코딩하도록 구성되며, 디코더(300) 및 코더(200)는 모두 동일한 예측을 생성한다. 프레임 버퍼(307), 인터 예측 유닛(310), 및 샤프닝 필터(311)의 특징은 도 2의 프레임 버퍼(207), 인터 예측 유닛(210) 및 샤프닝 필터(211)의 특징과 유사하다.
특히, 비디오 디코더(300)는 비디오 코더(200)에 또한 존재하는 유닛들, 예를 들어, 각각 비디오 디코더(200)의 역양자화 유닛(204), 역변환 유닛(205), 루프 필터링 유닛(206) 및 인트라 예측 유닛(209)에 대응하는, 역양자화 유닛(304), 역변환 유닛(305), 루프 필터링 유닛(306) 및 인트라 예측 유닛(309)을 더 포함한다. 엔트로피 디코딩 유닛(303)은 수신된 인코딩된 비디오 비트 스트림을 디코딩하고 이에 상응하여 양자화된 잔차 변환 계수 그리고 존재한다면 샤프닝 필터 정보를 획득하도록 구성된다. 양자화된 잔차 변환 계수는 잔차 블록을 생성하기 위해 역양자화 유닛(304)과 역변환 유닛(305)으로 공급된다. 잔차 블록은 예측 블록에 추가되고, 이러한 추가는 디코딩된 비디오를 획득하기 위해 루프 필터링 유닛(306)으로 공급된다. 디코딩된 비디오의 프레임은 프레임 버퍼(307)에 저장될 수 있고, 인터 예측을 위한 참조 프레임으로서의 역할을 할 수 있다.
특히, 샤프닝 필터(311)는 항상 인에이블 될 수 있다. 이는 샤프닝 필터에 의해 필터링된 예측 유닛이 디코딩된 비디오를 획득하는 데 사용됨을 의미한다.
다르게는, 샤프닝 필터는 예를 들어 제어 유닛(312)에 의해 선택적으로 적용되거나 바이패스될 수 있다. 디코딩 유닛(303)에 의해 인코딩된 비디오 비트 스트림으로부터 획득된 샤프닝 필터 정보는, 샤프닝 필터 정보에 따라 샤프닝 필터(311)의 선택적인 바이패스 및 선택적 적용 중 적어도 하나를 제어하는 제어 유닛(312)으로 공급될 수 있다.
샤프닝 필터 정보는 샤프닝 필터(311)의 선택적 바이패스 및 선택적 적용 중 적어도 하나를 반영하고, 바람직하게는 비디오 코더(200)에 의해 인코딩된 비디오 비트 스트림에 추가된 샤프닝 필터 정보에 대응한다. 예를 들어, 비디오 코더(200)와 관련하여 논의된 샤프닝 필터 정보의 형태 및 그래뉴래리티에 관한 상이한 측면(aspects)은 비디오 디코더(300)에 대해서도 적용된다.
도 4는 본 발명에 따른 샤프닝 필터(400)의 실시 예를 나타내며, 특히 비디오 코더(200)의 샤프닝 필터(211) 또는 비디오 디코더(300)의 샤프닝 필터(311)의 실시 예를 나타낸다. 비디오 디코더(300)는 바람직하게는 인터 예측 유닛(310) 이후에 위치하는, 비디오 코더(200)와 동일한 샤프닝 필터를 가진다.
샤프닝 필터(400)는 바람직하게 비선형 필터이다. 선형 필터 대신에 비선형 샤프닝 필터를 사용하는 것이, 모션 보간 필터 및 참조 블록 또는 프레임의 양자화로 인한 아티팩트를 제거하는 데 적합하다.
특히, 샤프닝 필터(400)는 에지 맵(edge map) 계산 유닛(401, 402), 블러링(blurring) 필터(404), 하이패스(high-pass) 필터(405), 스케일링(scaling) 유닛(406) 및 워핑(warping) 유닛(407)을 포함한다.
에지 맵 계산 유닛(401, 402)은 소스 블록의 에지 맵을 생성하도록 구성되며, 소스 블록은 참조 블록 또는 예측 블록이다. 블러링 필터(404)는 소스 블록의 에지 맵을 블러링하도록 구성된다. 하이패스 필터(405)는 블러링된 에지 맵을 하이패스 필터링하는 것에 의해, 소스 블록의 각각 위치에 대한 유도 벡터(derivative vector)(d2x, d2y)를 생성하도록 구성된다. 스케일링 유닛(406)은 샤프닝 강도(strength) 계수 k로 유도 벡터(d2x, d2y)를 스케일링하는 것에 의해, 변위 벡터(wx, wy)를 생성하도록 구성된다. 워핑 유닛(407)은 변위 벡터(wx, wy)를 토대로 예측 블록을 워핑시키도록 구성된다.
에지 맵 계산 유닛(401, 402)은 소스 블록의 각각의 위치에 대한 기울기 벡터(gradient vector)(dx, dy)를 생성하도록 구성된 기울기 벡터 유닛(401), 및 소스 블록의 에지 맵을 생성하기 위해 각각의 위치의 기울기 벡터(dx, dy)의 길이를 계산하도록 구성된 기울기 벡터 길이 유닛(402)을 포함할 수 있다.
다음의 식(equations):
Figure 112018039548114-pct00002
에 따라 대응하는 프리위트(Prewitt) 필터를 적용하는 것에 의해, 기울기 벡터는 dx 및 dy에 대해 개별적으로, 즉 도 4에서 소스 블록으로 지칭되는 소스 블록의 수평 및 수직 방향 모두에 대해 개별적으로 제1 유도(first derivative)를 취함으로써 획득될 수 있다.
에지 맵은 다음 식:
Figure 112018039548114-pct00003
에 따라 기울기 벡터 길이를 계산하는 것에 의해 기울기 벡터 길이 유닛(402)에 의해 획득될 수 있다.
바람직하게, 샤프닝 필터(400)는 소스 블록의 에지 맵을 클립핑(clipping)하도록 구성된 클리핑 유닛(403)을 포함하고, 클리핑 유닛(403)은 에지 맵 계산 유닛(401, 402)과 블러링 필터(404) 사이에 위치되어 있다. 임계값을 갖는 에지 맵을 클리핑하는 것은 매우 높은 값과 낮은 값의 워핑 벡터를 처리하는 것을 방지한다.
클리핑된 에지 맵을 블러링하는 단계는 다음과 같이 정의될 수 있는 가우시안 필터:
Figure 112018039548114-pct00004
의 형태인 블러링 필터(404)에 의해 획득될 수 있다.
하이패스 필터는 d2x 및 d2y에 대해 별도로 다음과 같은 예:
Figure 112018039548114-pct00005
인 제2 유도(second derivative)를 획득하는데 사용된다.
변위 벡터(wx, wy)는 계수 k로 제2 유도 벡터(d2x, d2y)를 스케일링하는 것에 의해 획득되며, 여기서 계수 k는 다음 식:
Figure 112018039548114-pct00006
에 따라 샤프닝 강도로 간주될 수 있다.
워핑 유닛(407)은 예를 들어 프랙셔널-펠 위치에서 샘플 값을 획득하기 위하여 이중 선형 보간 필터(bi-linear interpolation filter)와 같은 보간 필터를 포함한다. 워핑 유닛(407)은 스케일링 유닛(406)에 의해 생성된 변위 벡터를 사용한다.
샤프닝 필터(400)는 소스 블록으로부터 계산된 변위 벡터에 기초한 워핑을 포함하며, 소스 블록은 도 4에서 소스 이미지로 지칭된다. 일 실시 예에 따르면, 변위 벡터(wx, wy)가 참조 블록으로부터 유도되도록, 소스 블록은 프레임 버퍼(207, 307)에 저장된 참조 프레임의 참조 블록이다. 다른 실시 예에 따르면, 변위 벡터(wx, wy)가 예측 블록으로부터 유도되도록, 소스 블록은 인터 예측 유닛(210, 310)에 의해 생성된 예측 블록이다.
도 5는 본 발명의 실시 예에 따른 비디오 코딩 방법, 특히 모션 보상에 따라 후속 프레임의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 방법(500)을 나타낸다.
방법(500)은 비디오 스트림의 적어도 하나의 참조 프레임을 저장하는 단계(501)를 포함하며, 참조 프레임은 비디오 스트림의 현재 프레임과 상이하다.
방법(500)은 참조 프레임의 참조 블록으로부터 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계를 포함하는 인터 예측 단계(502)를 더 포함한다.
방법(500)은 샤프닝 필터를 예측 블록에 적용하여 예측 블록을 필터링하는 단계를 포함하는 샤프닝 필터 단계(503)를 포함한다.
도 6은 본 발명의 실시 예에 따른 비디오 디코딩 방법, 특히 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하는 것에 의해 획득된 인코딩된 비디오 비트 스트림을 디코딩하는 방법(600)을 나타낸다.
방법(600)은 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하는 단계(601)를 포함하며, 참조 프레임은 인코딩된 비디오 비트 스트림의 현재 프레임과 상이하다.
방법(600)은 참조 프레임의 참조 블록으로부터 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계를 포함하는 인터 예측 단계(602)를 포함한다.
방법(600)은 샤프닝 필터를 예측 블록에 적용하여 예측 블록을 필터링하는 단계를 포함하는 샤프닝 필터 단계(603)를 포함한다.
비디오 코더(200) 또는 비디오 디코더(300)와 관련하여 설명된 다른 측면들 및 특징들이 또한 코딩 방법(500) 및 디코딩 방법(600)에 적용 가능하다.
본 발명은 예시뿐만 아니라 구현 예로서 다양한 실시 예와 관련하여 설명되었다. 그러나 청구된 발명을 실시하는 당업자는 도면, 본 개시 및 독립 청구항의 연구로부터 다른 변형을 이해할 수 있다. 청구 범위 및 명세서에서 "포함하는"이라는 단어는 다른 엘리먼트 또는 단계를 배제하지 않으며, "하나(a, an)"는 복수를 배제하지 않는다. 단일 엘리먼트 또는 다른 유닛은 청구 범위에 기재된 여러 엔티티 또는 항목(item)의 기능을 수행할 수 있다. 특정 방안(certain measures)이 서로 상이한 종속항에 인용된다는 단순한 사실은, 이러한 방안의 조합이 유리한 구현에 사용될 수 없다는 것을 나타내지 않는다.

Claims (22)

  1. 모션 보상(motion compensation)에 따라 후속 프레임(subsequent frames)의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 비디오 코더로서,
    상기 비디오 스트림의 적어도 하나의 참조(reference) 프레임을 저장하도록 구성된(adapted) 프레임 버퍼 - 상기 참조 프레임은 상기 비디오 스트림의 현재 프레임과 상이함 -;
    상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된 인터(inter) 예측 유닛; 및
    상기 예측 블록을 필터링하도록 구성된 샤프닝 필터(sharpening filter)
    를 포함하고,
    상기 샤프닝 필터는,
    소스(source) 블록의 에지 맵(edge map)을 생성하도록 구성된 에지 맵 계산 유닛 - 상기 소스 블록은 상기 참조 블록 또는 상기 예측 블록임 -;
    상기 소스 블록의 에지 맵을 블러링(blurring)하도록 구성된 블러링 필터(blurring filter);
    상기 블러링된 에지 맵을 하이패스(high pass) 필터링하는 것에 의해, 상기 소스 블록의 각각의 위치에 대한 유도 벡터(derivative vector)를 생성하도록 구성된 하이패스 필터;
    샤프닝 강도 계수(sharpening strength coefficient)(k)로 상기 유도 벡터를 스케일링(scaling)하는 것에 의해 변위 벡터(displacement vector)를 생성하도록 구성된 스케일링 유닛; 및
    상기 변위 벡터를 토대로 상기 예측 블록을 워핑(warping)시키도록 구성된 워핑 유닛
    을 포함하는, 비디오 코더.
  2. 제1항에 있어서,
    상기 샤프닝 필터는 비선형 필터인, 비디오 코더.
  3. 삭제
  4. 제1항에 있어서,
    상기 에지 맵 계산 유닛은,
    상기 소스 블록의 각각의 위치에 대한 기울기(gradient) 벡터를 생성하도록 구성된 기울기 벡터 유닛; 및
    상기 소스 블록의 에지 맵을 생성하기 위해 각각의 위치의 기울기 벡터의 길이를 계산하도록 구성된 기울기 벡터 길이 유닛
    을 포함하는, 비디오 코더.
  5. 제4항에 있어서,
    상기 기울기 벡터 유닛은 프리위트(Prewitt) 필터인, 비디오 코더.
  6. 제4항 또는 제5항에 있어서,
    상기 샤프닝 필터는 상기 소스 블록의 에지 맵을 클리핑(clipping)하도록 구성된 클리핑 유닛을 포함하고,
    상기 클리핑 유닛은 상기 에지 맵 계산 유닛과 상기 블러링 필터 사이에 위치되어 있는, 비디오 코더.
  7. 제1항에 있어서,
    상기 블러링 필터는 가우시안(Gaussian) 필터인, 비디오 코더.
  8. 제1항에 있어서,
    상기 워핑 유닛은 프랙셔널(fractional) 위치에서 샘플 값을 획득하기 위한 이중 선형 보간(bi-linear interpolation) 필터를 포함하는, 비디오 코더.
  9. 제1항에 있어서,
    상기 변위 벡터가 상기 참조 블록으로부터 유도되도록 상기 소스 블록이 참조 블록인, 비디오 코더.
  10. 제1항에 있어서,
    상기 변위 벡터가 상기 예측 블록으로부터 유도되도록 상기 소스 블록이 예측 블록인, 비디오 코더.
  11. 제1항에 있어서,
    상기 샤프닝 필터는 항상 인에이블(enable)되어 있는, 비디오 코더.
  12. 제1항에 있어서,
    상기 샤프닝 필터의 선택적 바이패스(bypass) 및 상기 샤프닝 필터의 선택적 적용(application) 중 적어도 하나를 제어하도록 구성된 제어 유닛을 포함하는 비디오 코더.
  13. 제12항에 있어서,
    상기 제어 유닛은 잔차 블록(residual block)을 최소화하기 위해 비용 함수에 따라 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 제어하도록 구성되며, 상기 잔차 블록은 상기 현재 블록과 상기 예측 블록 사이의 차이이며, 상기 비용 함수는 예를 들어 레이트 왜곡 최적화(rate distortion optimization)를 토대로 하는, 비디오 코더.
  14. 제12항 또는 제13항에 있어서,
    상기 인코딩된 비디오 비트 스트림을 생성하도록 구성된 인코딩 유닛
    을 포함하고,
    상기 제어 유닛은 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 반영하는 샤프닝 필터 정보를 상기 인코딩 유닛에 전송하도록 구성되고,
    상기 인코딩 유닛은 상기 샤프닝 필터 정보를 상기 인코딩된 비디오 비트 스트림에 추가하도록 구성된, 비디오 코더.
  15. 제14항에 있어서,
    상기 샤프닝 필터 정보가 각각의 예측 블록에 대한, 상기 프레임의 임의의(arbitrary) 또는 일정한(regular) 영역에 대한 블록 레벨, 프레임 레벨, GOP(group of pictures) 레벨, PPS(picture parameter set) 레벨, 또는 SPS(sequence parameter set) 레벨에서 추가되는, 비디오 코더.
  16. 모션 보상에 따라 후속 프레임의 비디오 스트림을 인코딩된 비디오 비트 스트림으로 예측 코딩하는 방법으로서,
    상기 비디오 스트림의 적어도 하나의 참조 프레임을 저장하는 단계 - 상기 참조 프레임은 상기 비디오 스트림의 현재 프레임과 상이함-;
    상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계; 및
    상기 예측 블록에 샤프닝 필터를 적용하는 단계
    를 포함하고,
    상기 예측 블록에 샤프닝 필터를 적용하는 단계는,
    소스 블록의 에지 맵을 생성하는 단계 - 상기 소스 블록은 상기 참조 블록 또는 상기 예측 블록임 -;
    상기 소스 블록의 에지 맵을 블러링하는 단계;
    상기 블러링된 에지 맵을 하이패스 필터링하는 것에 의해, 상기 소스 블록의 각각의 위치에 대한 유도 벡터를 생성하는 단계;
    샤프닝 강도 계수(k)로 상기 유도 벡터를 스케일링하는 것에 의해 변위 벡터를 생성하는 단계; 및
    상기 변위 벡터를 토대로 상기 예측 블록을 워핑시키는 단계
    를 포함하는, 방법.
  17. 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하는 것에 의해 획득된 인코딩된 비디오 비트 스트림을 디코딩하는 비디오 디코더로서,
    상기 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하도록 구성된 프레임 버퍼 - 상기 참조 프레임은 상기 인코딩된 비디오 비트 스트림의 현재 프레임과 상이함 -;
    상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하도록 구성된 인터 예측 유닛; 및
    상기 예측 블록을 필터링하도록 구성된 샤프닝 필터
    를 포함하고,
    상기 샤프닝 필터는,
    소스 블록의 에지 맵을 생성하도록 구성된 에지 맵 계산 유닛 - 상기 소스 블록은 상기 참조 블록 또는 상기 예측 블록임 -;
    상기 소스 블록의 에지 맵을 블러링하도록 구성된 블러링 필터;
    상기 블러링된 에지 맵을 하이패스 필터링하는 것에 의해, 상기 소스 블록의 각각의 위치에 대한 유도 벡터를 생성하도록 구성된 하이패스 필터;
    샤프닝 강도 계수(k)로 상기 유도 벡터를 스케일링하는 것에 의해 변위 벡터를 생성하도록 구성된 스케일링 유닛; 및
    상기 변위 벡터를 토대로 상기 예측 블록을 워핑시키도록 구성된 워핑 유닛
    을 포함하는, 비디오 디코더.
  18. 제17항에 있어서,
    상기 샤프닝 필터는 항상 인에이블되어 있는, 비디오 디코더.
  19. 제17항에 있어서,
    상기 샤프닝 필터의 선택적 바이패스 및 상기 샤프닝 필터의 선택적 적용 중 적어도 하나를 제어하도록 구성된 제어 유닛을 포함하는 비디오 디코더.
  20. 제19항에 있어서,
    상기 제어 유닛은 상기 인코딩된 비디오 비트 스트림으로부터 획득된 샤프닝 필터 정보에 따라 상기 샤프닝 필터의 상기 선택적 바이패스 및 상기 선택적 적용 중 적어도 하나를 제어하도록 구성된, 비디오 디코더.
  21. 모션 보상에 따라 후속 프레임의 비디오 스트림을 예측 코딩하는 것에 의해 획득되는 인코딩된 비디오 비트 스트림을 디코딩하는 방법으로서,
    상기 인코딩된 비디오 비트 스트림으로부터 획득된 적어도 하나의 참조 프레임을 저장하는 단계 - 상기 참조 프레임은 상기 인코딩된 비디오 비트 스트림의 현재 프레임과 상이함 -;
    상기 참조 프레임의 참조 블록으로부터 상기 현재 프레임의 현재 블록의 예측 블록을 생성하는 단계; 및
    상기 예측 블록에 샤프닝 필터를 적용하는 단계
    를 포함하고,
    상기 예측 블록에 샤프닝 필터를 적용하는 단계는,
    소스 블록의 에지 맵을 생성하는 단계 - 상기 소스 블록은 상기 참조 블록 또는 상기 예측 블록임 -;
    상기 소스 블록의 에지 맵을 블러링하는 단계;
    상기 블러링된 에지 맵을 하이패스 필터링하는 것에 의해, 상기 소스 블록의 각각의 위치에 대한 유도 벡터를 생성하는 단계;
    샤프닝 강도 계수(k)로 상기 유도 벡터를 스케일링하는 것에 의해 변위 벡터를 생성하는 단계; 및
    상기 변위 벡터를 토대로 상기 예측 블록을 워핑시키는 단계
    를 포함하는, 방법.
  22. 컴퓨팅 디바이스 상에서 실행될 때, 제16항 또는 제21항에 따른 방법을 수행하기 위한 프로그램 코드를 포함하는 컴퓨터 프로그램을 저장하기 위한, 컴퓨터가 판독 가능한 저장 매체.
KR1020187011228A 2015-09-25 2015-09-25 비디오 모션 보상을 위한 장치 및 방법 KR102146436B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2015/000613 WO2017052408A1 (en) 2015-09-25 2015-09-25 Apparatus and method for video motion compensation

Publications (2)

Publication Number Publication Date
KR20180056735A KR20180056735A (ko) 2018-05-29
KR102146436B1 true KR102146436B1 (ko) 2020-08-20

Family

ID=55754394

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187011228A KR102146436B1 (ko) 2015-09-25 2015-09-25 비디오 모션 보상을 위한 장치 및 방법

Country Status (13)

Country Link
US (1) US10848784B2 (ko)
EP (1) EP3354027A1 (ko)
JP (1) JP6677804B2 (ko)
KR (1) KR102146436B1 (ko)
CN (1) CN108141602B (ko)
AU (1) AU2015410096B2 (ko)
BR (1) BR112018006031A2 (ko)
CA (1) CA2999824C (ko)
MX (1) MX2018003688A (ko)
MY (1) MY193174A (ko)
RU (1) RU2696309C1 (ko)
WO (1) WO2017052408A1 (ko)
ZA (1) ZA201802148B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019093916A1 (en) 2017-11-07 2019-05-16 Huawei Technologies Co., Ltd Interpolation filter for an inter prediction apparatus and method for video coding
EP3799692A4 (en) * 2018-06-13 2021-08-04 Huawei Technologies Co., Ltd. INTRA ENHANCEMENT AND / OR CONTOUR CORRECTION FILTER FOR VIDEO CODING ON THE BASIS OF A BIT TRAIN FLAG
WO2020058896A1 (en) 2018-09-19 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Intra mode coding based on history information
CN115914627A (zh) * 2019-04-15 2023-04-04 北京字节跳动网络技术有限公司 自适应环路滤波器中的裁剪参数推导
CN110266706A (zh) * 2019-06-26 2019-09-20 三星电子(中国)研发中心 一种多媒体流数据的播放方法和装置
CN110809163B (zh) * 2019-10-30 2023-05-12 腾讯科技(深圳)有限公司 一种数据传输方法、装置、计算机设备以及存储介质
EP4136577A4 (en) * 2020-04-14 2024-05-01 Op Solutions Llc METHODS AND SYSTEMS FOR VIDEO CODING USING REFERENCE REGIONS

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014158050A1 (en) * 2013-03-28 2014-10-02 Huawei Technologies Co., Ltd. Method for determining predictor blocks for a spatially scalable video codec
KR101452861B1 (ko) * 2010-09-30 2014-10-27 삼성전자주식회사 평활화 보간 필터를 이용하여 영상을 보간하는 방법 및 그 장치

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175656B1 (en) 1999-03-25 2001-01-16 Sony Corporation Non-linear video sharpening filter
US20020063807A1 (en) 1999-04-19 2002-05-30 Neal Margulis Method for Performing Image Transforms in a Digital Display System
US6864916B1 (en) 1999-06-04 2005-03-08 The Trustees Of Columbia University In The City Of New York Apparatus and method for high dynamic range imaging using spatially varying exposures
JP3995854B2 (ja) 1999-06-10 2007-10-24 富士フイルム株式会社 画像処理方法および装置並びに記録媒体
FI117533B (fi) 2000-01-20 2006-11-15 Nokia Corp Menetelmä digitaalisten videokuvien suodattamiseksi
US7266150B2 (en) 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
US7116831B2 (en) 2002-04-10 2006-10-03 Microsoft Corporation Chrominance motion vector rounding
JP4120301B2 (ja) 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
US7471845B2 (en) 2004-01-06 2008-12-30 Sharp Laboratories Of America, Inc. De-ringing filter
US7397853B2 (en) 2004-04-29 2008-07-08 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
JP4576930B2 (ja) 2004-08-26 2010-11-10 カシオ計算機株式会社 動きベクトル検出装置、および、プログラム
RU2008106939A (ru) 2005-04-19 2009-08-27 Самсунг Электроникс Ко., Лтд. (KR) Способ и устройство адаптивного выбора контекстной модели для кодирования по энтропии
WO2007044556A2 (en) 2005-10-07 2007-04-19 Innovation Management Sciences, L.L.C. Method and apparatus for scalable video decoder using an enhancement stream
EP1841230A1 (en) * 2006-03-27 2007-10-03 Matsushita Electric Industrial Co., Ltd. Adaptive wiener filter for video coding
JP2008054267A (ja) 2006-07-28 2008-03-06 Hitachi Ltd 画像処理装置、画像符号化装置及び画像復号化装置
US9014280B2 (en) 2006-10-13 2015-04-21 Qualcomm Incorporated Video coding with adaptive filtering for motion compensated prediction
US7751873B2 (en) 2006-11-08 2010-07-06 Biotronik Crm Patent Ag Wavelet based feature extraction and dimension reduction for the classification of human cardiac electrogram depolarization waveforms
US8199812B2 (en) 2007-01-09 2012-06-12 Qualcomm Incorporated Adaptive upsampling for scalable video coding
US20080205508A1 (en) 2007-02-22 2008-08-28 Streaming Networks (Pvt.) Ltd. Method and apparatus for low complexity video encoding and decoding
EP2232874B1 (en) 2008-01-08 2012-12-05 Telefonaktiebolaget L M Ericsson (publ) Adaptive filtering
EP2081386A1 (en) * 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
US20090257499A1 (en) 2008-04-10 2009-10-15 Qualcomm Incorporated Advanced interpolation techniques for motion compensation in video coding
US8705622B2 (en) 2008-04-10 2014-04-22 Qualcomm Incorporated Interpolation filter support for sub-pixel resolution in video coding
US8811484B2 (en) 2008-07-07 2014-08-19 Qualcomm Incorporated Video encoding by filter selection
US10123050B2 (en) 2008-07-11 2018-11-06 Qualcomm Incorporated Filtering video data using a plurality of filters
JP4763026B2 (ja) 2008-08-27 2011-08-31 シャープ株式会社 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム及びコンピュータ読み取り可能な記録媒体
US9078007B2 (en) * 2008-10-03 2015-07-07 Qualcomm Incorporated Digital video coding with interpolation filters and offsets
KR101807886B1 (ko) * 2009-10-14 2017-12-11 돌비 인터네셔널 에이비 깊이 맵 처리를 위한 방법 및 디바이스
US8548065B2 (en) 2009-10-22 2013-10-01 The Chinese University Of Hong Kong Parametric interpolation filter for motion-compensated prediction
CN105847814B (zh) * 2010-04-13 2019-01-08 太阳专利托管公司 图像编码方法及图像编码装置
US20110299604A1 (en) 2010-06-04 2011-12-08 Apple Inc. Method and apparatus for adaptive video sharpening
US9154807B2 (en) 2010-06-25 2015-10-06 Qualcomm Incorporated Inclusion of switched interpolation filter coefficients in a compressed bit-stream
US8761245B2 (en) 2010-12-21 2014-06-24 Intel Corporation Content adaptive motion compensation filtering for high efficiency video coding
US9172972B2 (en) 2011-01-05 2015-10-27 Qualcomm Incorporated Low complexity interpolation filtering with adaptive tap size
WO2012109528A1 (en) 2011-02-11 2012-08-16 Vid Scale, Inc. Edge-based video interpolation for video and image upsampling
US8780971B1 (en) 2011-04-07 2014-07-15 Google, Inc. System and method of encoding using selectable loop filters
JP5552092B2 (ja) 2011-06-13 2014-07-16 日本電信電話株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
US9232233B2 (en) * 2011-07-01 2016-01-05 Apple Inc. Adaptive configuration of reference frame buffer based on camera and background motion
US9432700B2 (en) 2011-09-27 2016-08-30 Broadcom Corporation Adaptive loop filtering in accordance with video coding
US9462298B2 (en) 2011-10-21 2016-10-04 Qualcomm Incorporated Loop filtering around slice boundaries or tile boundaries in video coding
US9596463B2 (en) 2012-02-22 2017-03-14 Qualcomm Incorporated Coding of loop filter parameters using a codebook in video coding
WO2013147495A1 (ko) 2012-03-26 2013-10-03 엘지전자 주식회사 스케일러블 비디오 인코딩/디코딩 방법 및 장치
EP2866440B1 (en) 2012-06-24 2018-08-08 Lg Electronics Inc. Image decoding method and apparatus using same
US9344718B2 (en) 2012-08-08 2016-05-17 Qualcomm Incorporated Adaptive up-sampling filter for scalable video coding
US20140072048A1 (en) 2012-09-13 2014-03-13 Samsung Electronics Co., Ltd Method and apparatus for a switchable de-ringing filter for image/video coding
US9596465B2 (en) 2013-01-04 2017-03-14 Intel Corporation Refining filter for inter layer prediction of scalable video coding
US20140192862A1 (en) 2013-01-07 2014-07-10 Research In Motion Limited Methods and systems for prediction filtering in video coding
US20140254659A1 (en) 2013-03-11 2014-09-11 Mediatek Inc. Video coding method using at least evaluated visual quality and related video coding apparatus
KR101789954B1 (ko) 2013-12-27 2017-10-25 인텔 코포레이션 차세대 비디오 코딩을 위한 콘텐츠 적응적 이득 보상된 예측
KR20150087701A (ko) * 2014-01-22 2015-07-30 삼성전자주식회사 샤프닝 필터링 기반의 이미지 처리 장치 및 이미지 처리 방법
US20160105685A1 (en) * 2014-10-08 2016-04-14 Qualcomm Incorporated Boundary filtering and cross-component prediction in video coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101452861B1 (ko) * 2010-09-30 2014-10-27 삼성전자주식회사 평활화 보간 필터를 이용하여 영상을 보간하는 방법 및 그 장치
WO2014158050A1 (en) * 2013-03-28 2014-10-02 Huawei Technologies Co., Ltd. Method for determining predictor blocks for a spatially scalable video codec

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Sychev MAXIM, et. al., "Sharpening filter for interlayer prediction", 2014 IVCAIP, 07, December, 2014.*
Y-J YOON, et. al., "Adaptive filtering for prediction signal in video compression", 2011 ICCE, 06 September, 2011.*

Also Published As

Publication number Publication date
US20180213261A1 (en) 2018-07-26
US10848784B2 (en) 2020-11-24
WO2017052408A1 (en) 2017-03-30
MY193174A (en) 2022-09-26
WO2017052408A8 (en) 2017-10-26
AU2015410096A1 (en) 2018-04-26
CN108141602B (zh) 2021-02-23
CA2999824C (en) 2021-08-03
BR112018006031A2 (pt) 2018-10-09
ZA201802148B (en) 2019-01-30
CN108141602A (zh) 2018-06-08
KR20180056735A (ko) 2018-05-29
EP3354027A1 (en) 2018-08-01
JP6677804B2 (ja) 2020-04-08
CA2999824A1 (en) 2017-03-30
AU2015410096B2 (en) 2019-09-26
MX2018003688A (es) 2018-08-01
RU2696309C1 (ru) 2019-08-01
JP2018533293A (ja) 2018-11-08

Similar Documents

Publication Publication Date Title
US10841605B2 (en) Apparatus and method for video motion compensation with selectable interpolation filter
US10820008B2 (en) Apparatus and method for video motion compensation
US10834416B2 (en) Apparatus and method for video motion compensation
KR102146436B1 (ko) 비디오 모션 보상을 위한 장치 및 방법
JP6797247B2 (ja) ビデオ動き補償用の装置および方法

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