JP7534395B2 - インター予測装置用の補間フィルタおよびビデオコーディングのための方法 - Google Patents

インター予測装置用の補間フィルタおよびビデオコーディングのための方法 Download PDF

Info

Publication number
JP7534395B2
JP7534395B2 JP2022519768A JP2022519768A JP7534395B2 JP 7534395 B2 JP7534395 B2 JP 7534395B2 JP 2022519768 A JP2022519768 A JP 2022519768A JP 2022519768 A JP2022519768 A JP 2022519768A JP 7534395 B2 JP7534395 B2 JP 7534395B2
Authority
JP
Japan
Prior art keywords
integer pixel
current
pixels
pixel
sample
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2022519768A
Other languages
English (en)
Other versions
JP2022550545A (ja
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 JP2022550545A publication Critical patent/JP2022550545A/ja
Application granted granted Critical
Publication of JP7534395B2 publication Critical patent/JP7534395B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/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/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/182Methods 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 a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/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

Landscapes

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

Description

一般に、本発明はビデオコーディングの分野に関する。より具体的には、本発明は、インター予測装置用の補間フィルタおよびビデオコーディングのための方法、ならびにそのようなインター予測装置を備える符号化装置および復号装置に関する。
デジタルビデオ通信および記憶アプリケーションは、幅広いデジタルデバイス、例えば、デジタルカメラ、セルラー無線電話、ラップトップ、ブロードキャスティングシステム、テレビ会議システムなどによって実装される。これらのアプリケーションの最も重要かつ困難なタスクのうちの1つはビデオ圧縮である。ビデオ圧縮のタスクは複雑であり、2つの相反するパラメータ、すなわち、圧縮効率および計算の複雑さによって制約される。ITU-T H.264/AVCまたはITU-T H.265/HEVCなどのビデオコーディング規格は、これらのパラメータ間の良好なトレードオフを与える。そのため、ビデオコーディング規格のサポートは、ほぼ任意のビデオ圧縮アプリケーションにとって必須の要件である。
最先端のビデオコーディング規格は、ソースフレームまたはソースピクチャをフレームブロックまたはピクチャブロックに分割することに基づく。これらのブロックの処理は、それらのサイズ、空間位置、およびエンコーダによって指定されたコーディングモードに依存する。コーディングモードは、予測のタイプに従って2つのグループ、すなわち、イントラ予測モードおよびインター予測モードに分類することができる。イントラ予測モードは、復元されているブロックのピクセルの予測値を計算するために、同じフレーム(ピクチャもしくは画像とも呼ばれる)のピクセルを使用して基準サンプルを生成する。イントラ予測は空間予測とも呼ばれる。インター予測モードは時間予測向けに設計され、前後のフレームの基準サンプルを使用して現在フレームのブロックのピクセルを予測する。予測段階の後、元の信号とその予測との間の差分である予測誤差に対して変換コーディングが実行される。次いで、エントロピーコーダ(例えば、AVC/H.264およびHEVC/H.265用のCABAC)を使用して、変換係数およびサイド情報が符号化される。最近採用されたITU-T H.265/HEVC規格(ISO/IEC23008-2:2013、「情報技術-異機種環境における高効率コーディングおよびメディア配信-第2部:高効率ビデオコーディング」、2013年11月)は、コーディング効率と計算の複雑さとの間の合理的なトレードオフを与える一組の最先端のビデオコーディングツールを明らかにする。ITU-T H.265/HEVC規格に関する概説は、Gary J.Sullivan「高効率ビデオコーディング(HEVC)規格の概説」、ビデオ技術向けの回路およびシステムに関するIEEE議事録、第22巻第12号、2012年12月によって与えられており、その内容全体が参照により本明細書に組み込まれる。
ITU-T H.264/AVCビデオコーディング規格と同様に、HEVC/H.265ビデオコーディング規格は、いわゆるコーディングユニット(CU)の形態のフレームブロックへのソースフレームの分割を実現する。CUの各々は、より小さいCUまたは予測ユニット(PU)のいずれかにさらに分割することができる。PUは、PUのピクセルに適用される処理のタイプに応じてイントラ予測またはインター予測することができる。インター予測の場合、PUは、PUに対して指定された動きベクトルを使用する動き補償によって処理されるピクセルの領域を表す。イントラ予測の場合、隣接ブロックの隣接ピクセルは、現在ブロックを予測するために基準サンプルとして使用される。PUは、このPUに含まれるすべての変換ユニット(TU)のためのイントラ予測モードのセットから選択された予測モードを指定する。TUは、様々なサイズ(例えば、4×4、8×8、16×16、および32×32のピクセル)を有することができ、様々な方法で処理することができる。TUの場合、変換コーディングが実行される、すなわち、予測誤差が離散コサイン変換または離散サイン変換(HEVC/H.265規格では、それがイントラコーディングされたブロックに適用される)で変換され、量子化される。したがって、復元されたピクセルは、デブロッキングフィルタ(DBF)、サンプル適応型オフセット(SAO)、および適応型ループフィルタ(ALF)などのインループフィルタが抑制しようと試みる量子化ノイズ(それは、例えば、ユニット間のブロッキネス、鋭いエッジを伴うリンギングアーチファクトなどとして明らかになり得る)を含む。
サブ整数ピクセル補間技法は、インター予測のために達成され得る圧縮レベルの予測精度を改善するために開発された。この場合、ビデオブロックをコード化するために使用される動き補償の間に生成された予測データは、サブ整数ピクセルに対応することができ、それらの値は、動きベクトルが参照する基準ビデオフレームまたは他のコード化ユニットのビデオブロックの完全ピクセルの値から補間されてもよい。ビデオエンコーダは、補間技法を使用して、例えば、一組のサポートピクセルに補間フィルタを適用することにより、サブ整数ピクセル位置の値、例えば、完全整数ピクセルの値および/または他のサブ整数ピクセル位置の以前にコード化された値を計算することができる。
今日の規格H.264/AVCおよびH.265/HEVCは、1/4ピクセル変位の解像度に基づいている。合同ビデオ探索チーム(JVET)グループは、アフィン変換などの非並進運動補償モデルを含む、HEVC後のビデオ圧縮技術を探索している。部分ピクセル(またはサブ整数)変位を推定し補償するために、基準画像の完全整数ピクセルは、部分ピクセル、すなわちサブ整数位置に補間されなければならない。部分ピクセル位置の補間画像を得るために、補間フィルタが使用される。非並進運動モデル用の補間の問題は、可変部分ピクセル変位である。
補間画像の品質は、補間フィルタの特性に強く依存する。ショートタップフィルタ(例えば、双線形)は、高周波数を抑制し、補間ピクチャをぼかす可能性がある。一方、ロングタップフィルタ(例えば、シンクベース)は、より多くのメモリ帯域幅を必要とし、高周波数を維持することができるが、鋭いエッジの近傍にいくつかのリンギングアーチファクトを発生させる可能性がある。別の考慮事項は、非並進モデルの動き補償の場合、補間および予測の精度を低下させることによって複雑さが低減されたことである。
提案されたJEMアフィン動きモデルでは、サポートされる2つのタイプの動き:ズームおよび回転が存在する。ほとんどの部分ピクセル位置は、予測ユニット内で一定ではない。ピクセルは、補間を高速化するためにサブブロックによって置き換えられる。1つのサブブロック内では、変位ベクトルは一定で並進的である。複雑さは徐々に減少したが、精度も減少した。予測の品質を改善するために、動き補償の精度は、補間フィルタの量の増加に伴ってサブブロックの動きベクトル変位の精度を高めることによって改善された。非並進運動モデル用の補間フィルタリングの現在の精度は、依然として改善される必要がある。
したがって、インター予測装置用の改善された補間フィルタおよび改善されたビデオコーディング効率を実現するビデオコーディングのための方法が必要とされている。
ISO/IEC 23008-2:2013、「情報技術-異機種環境における高効率コーディングおよびメディア配信-第2部:高効率ビデオコーディング」、2013年11月 Gary J.Sullivan「高効率ビデオコーディング(HEVC)規格の概説」、ビデオ技術向けの回路およびシステムに関するIEEE議事録、第22巻第12号、2012年12月
本発明の目的は、インター予測装置用の改善された補間フィルタおよび改善されたビデオコーディング効率を実現するビデオコーディングのための方法を提供することである。
前述および他の目的は、独立請求項の主題によって達成される。さらなる実装形態は、従属請求項、明細書、および図から明らかである。
一実施形態によれば、ビデオ信号の現在フレームの現在ブロックの複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測のための装置が提供される。装置は、ビデオ信号の現在フレームおよび基準フレーム、ならびに/または動き補償モデルに基づいて、現在の完全整数ピクセルの動きベクトルを決定し、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成し、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含み、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値、特に輝度値を決定し、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するように構成された処理ユニットを備える。
このように、ビデオコーディングの効率を改善することを可能にする改善されたインター予測装置が提供される。
態様のさらなる実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する半整数ピクセルを含む。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する完全整数ピクセルを含む。
空間高域フィルタが5タップフィルタまたは3タップフィルタであることも規定されてもよい。一実装形態では、5タップフィルタまたは3タップフィルタは、対称フィルタ、すなわち、第1および第5のフィルタ係数(または、3タップフィルタの場合、第1および第3のフィルタ係数)が同一であり、第2および第4のフィルタ係数が同一であるフィルタである。一実装形態では、第1および第5のフィルタ係数は負であり、5タップフィルタの他のフィルタ係数は正である。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは、係数1/32によって正規化することができる以下のフィルタ係数(-6,9,26,9,-6)を有する。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは、係数1/8によって正規化することができる以下のフィルタ係数(-1,0,10,0,-1)を有する。諒解されるように、中間の半整数サポートピクセルがないさらなる可能な実装形態では、このフィルタは、係数(-1,10,-1)を有する3タップフィルタになる。
態様のさらなる実施形態では、装置の処理ユニットは、基準フレーム内のそれぞれの隣接する完全整数ピクセルの双線形補間に基づいて、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するように構成される。
装置の処理ユニットが、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルに基づいて、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するようにさらに構成されることが規定されてもよい。
一実施形態では、装置の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルの平均ベクトルを決定することにより、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するように構成される。
さらなる可能な実施形態では、装置の処理ユニットは、ビデオ信号の現在フレームおよび基準フレームならびに/または動き補償モデルに基づいて、現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルを決定するようにさらに構成される。
装置の処理ユニットが、現在の完全整数ピクセルの動きベクトルが非並進運動補償モデルに基づいて決定される場合には、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定し、現在の完全整数ピクセルの動きベクトルが並進運動補償モデルに基づいて決定される場合には、H.264/AVCおよびH.265/HEVCで定義された従来の方式などの従来の方式に基づいて、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するように構成されることを規定することができる。
一実施形態では、非並進運動補償モデルは、アフィン、ワーピング、および/またはパノラマ運動補償モデルである。
一実施形態では、ビデオ信号の現在フレームの現在ブロックの複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測のための方法が提供される。方法は、ビデオ信号の現在フレームおよび基準フレームに基づいて、かつ/または動き補償モデルに基づいて、現在の完全整数ピクセルの動きベクトルを決定するステップと、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップと、現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成するステップであって、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップと、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値、特に輝度値を決定するステップと、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するステップとを含む。
このように、ビデオコーディングの効率を改善することを可能にする改善されたインター予測方法が提供される。
上記の実施形態による方法は、上述された実施形態によるインター予測装置によって実行することができる。上記の実施形態によるインター予測方法のさらなる特徴は、上記の実施形態ならびに上記および下記に記載されたその異なる実装形態によるインター予測装置の機能から直接もたらされる。
一実施形態によれば、ビデオ信号の現在フレームを符号化するための符号化装置が提供され、符号化装置は、上記の実施形態のうちの1つによるインター予測装置を備える。
さらなる実施形態によれば、圧縮されたビデオ信号の現在の復元フレームを復号するための復号装置が提供され、復号装置は、上記の実施形態のうちの1つによるインター予測装置を備える。
さらなる実施形態によれば、コンピュータまたはプロセッサによって実行されると、上記の実施形態による方法を実行するためのプログラムコードを含む、コンピュータプログラム製品が提供される。
本明細書に記載された実施形態は、詳細には、以下の利点を提供する。少なくともいくつかの実施形態は、複雑さを低いレベルに保ちながらピクセル単位の精度で補間を実行することを可能にする。少なくともいくつかの実施形態は、任意の種類の非並進移動をサポートすることができる。いくつかの実施形態は、サブブロックのエッジにわたってブロッキングアーチファクトを除去することを可能にすることができる。いくつかの実施形態は、メモリ帯域幅を低減することができる。さらに、いくつかの実施形態は、フィルタ係数のセットを記憶するためのメモリ要件を低減することができる。いくつかの実施形態は、十分に最適化されたHW双線形変換を再利用することを可能にすることができる。いくつかのさらなる実施形態は、変換に沿ってフィルタリングの向きを整列させることができる。少なくともいくつかの実施形態は、補間されたエッジの品質を改善しながら、長い動き補間フィルタによって引き起こされるリンギングアーチファクトを低減することを可能にする。さらなる実施形態は、復元されたピクチャにおけるエッジの主観的品質を高めることを可能にすることができる。その上、いくつかの実施形態は、いかなる追加のシグナリングも必要としなくてもよく、したがって、非並進移動のための既存の補間方法をシームレスに置き換えることができる。補間を2つのステップに分割することにより、部分オフセット補償を高域フィルタリングから分離することが可能になる。
一実施形態によれば、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の装置が提供され、装置は、
命令を含むメモリと、
メモリと通信し、命令の実行時に、
動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定し、
現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、
現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定し、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含み、
デコーダサイド動きベクトル改良DMVRにおける双線形補間に対応する双線形補間を適用することにより、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値(L)を取得し、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値を決定する
ように構成されたプロセッサと
を備える。
上記および他の実施形態の文脈では、(例えば、「完全整数ピクセル」および「サブ整数ピクセル」という用語で使用される)「ピクセル」という用語は、行列のように、配列内の特定の位置に任意の量の情報を指定するものとして広く考慮および解釈されてもよい。一般に、「ピクセル」という用語は、「サンプル」として理解されてもよい。これは、「完全整数ピクセル」という用語のように、「ピクセル」という用語との組合せである用語にも当てはまる。これは、同様に「完全整数サンプル」として理解されてもよい。したがって、「ピクセル」という用語は、必ずしもディスプレイのピクセルを指すと解釈されるべきではない。むしろ、以下の説明および本明細書に開示された実施形態では、この用語は、フレーム内の特定の位置における情報、例えば、数または値などの一部として解釈されるべきである。完全整数ピクセルとは対照的なサブ整数ピクセルは、通常、現在フレームバッファまたは基準フレームバッファから直接取得することはできない。本出願の文脈では、サブ整数ピクセルという用語は、完全整数ピクセルの間のいくつかの位置、およびこれらの位置における対応する値に対応する。サブ整数ピクセル固有の手順の値を取得するためには、通常、補間が必要である。補間は、いくつかの例では、双線形補間、または4タップもしくは8タップのDCTベースの補間フィルタ、すなわち離散コサイン変換補間フィルタによって実行される補間であり得る。
本明細書で言及された実施形態の文脈では、「現在ブロックに関連付けられた」という用語は、現在ブロックに関連するピクセルを指すものと理解されるべきである。これは、ブロック内にあるピクセルを包含すると考えられるが、現在ブロックの境界または境界の外側にあるピクセルも包含してもよい。具体的には、ブロックの外側であるがブロックの境界に直接隣接するピクセルは、現在ブロックに「関連付けられている」と見なされてもよい。
デコーダサイド動きベクトル改善DMVRにおける双線形補間は、必須ビデオコーディング規格EVCで使用されるDMVRにおいて適用される双線形補間の特定の実装形態であってもよい。
双線形補間がDMVRに「対応する」ことは、数学的関数および/またはソフトウェアモジュールおよび/またはコーディングに関して、DMVRとの類似性を有する双線形補間が使用されることを意味すると理解されるべきである。具体的には、DMVRと同じ式が双線形補間に使用されてもよい。しかしながら、双線形補間がDMVRに対応することは、DMVRと同じ入力が双線形補間に提供されることを必要とすると解釈されるべきではない。
上記の方法により、他のビデオコーディングソフトウェアからの双線形補間用のモジュールは、サンプル値のインター予測において再利用することができる。これは、メモリおよび/またはチップ領域の利用を低減し、潜在的に異なる方法も使用する符号化をより効率的にすることができる。
一実施形態では、DMVRと同じ双線形補間実装形態が使用される。この実施形態は、DMVRと同じ式を使用することに関する。これはまた、この双線形補間の実際のコーディングに関してもよい。これは、DMVRモジュールの潜在的に完全な再利用が実現されるので、メモリおよび/またはチップ領域の利用が低減されるという利点にさらに加えることができる。
一実施形態では、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値(L)は、以下の式に基づいて決定される。
A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
ここで、表TはサイズN×2の事前定義された表であり、Nは部分位置の数であり、値shift0、shift1、offset0、offset1は、サンプルビット深度および表Tに基づいて導出される。
表Tは、補間フィルタ係数の表であってもよい。上記の式はDMVRに対応し、現在の方法におけるDMVRモジュールの再利用を可能にし、それにより、メモリおよび/またはチップ領域の利用が低減される。
表Tが2つの列T[0]およびT[1]を有し、T[1]=64-T[0]であり、表の行数が部分サンプル位置の数に対応することを規定することができる。繰り返すが、表は補間フィルタ係数の表であってもよい。この表構造はDMVRにおいても使用され、DVMRからの利用可能な情報の再利用を可能にし、必要なメモリを削減する。
具体的には、表TがN=16個の部分サンプル位置を含み、表Tが以下によって与えられることを規定することができる。
Figure 0007534395000001
この表は、DMVRで使用される表と同一であり、必要なメモリ量をさらにもっと削減する。
代替の実施形態では、表TはN=32個の部分サンプル位置を含み、表は以下によって与えられる。
Figure 0007534395000002
32個の部分位置が提供されるので、この表はDMVRで使用されるものとは異なる。これは、コンピュータ実装方法において改善されたサンプル予測を提供し、それにより、予測の精度が向上する。
一実施形態では、shift0=bitDepth-8、offset0=0、shift1=12-shift0、offset1=1<<(shift1-1)である。上記の式で使用されるこれらの値は、改善された予測をもたらす。それらはまた、少なくとも10に等しいbitDepthを有する最も重要なアプリケーションシナリオについて、16ビットに適合する中間結果AおよびBに起因して、ソフトウェアおよびハードウェアの実装効率を高めることができる。
具体的には、サンプルビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9であることを規定することができる。これは、予測精度をさらに有利にサポートする。
一実施形態では、プロセッサは、現在の完全整数ピクセルのサンプル値のインター予測のための入力として、以下のエンティティを使用するようにさらに構成される。
-全サンプル単位内の現在ブロックの位置(xCb,yCb)
-現在ブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
-動きベクトルの水平変化dX
-動きベクトルの垂直変化dY
-動きベクトルmvBaseScaled
-1つまたは複数の選択された基準ピクチャサンプル配列refPicLX
-1つまたは複数のサンプルビット深度bitDepth
-サンプル内のフレームの幅pic_width
-サンプル内のフレームの高さpic_height
-予測サンプル値の(cbWidth)×(cbHeight)の配列predSamplesLXと呼ばれる、(cbWidth)×(cbHeight)から取得された配列
これらの入力は、現在の完全整数ピクセルのサンプル値の信頼できる予測を実現するために使用することができ、それによって予測がサポートされる。
一実施形態では、変数AおよびBは、
A=(refPicLX[xInt][yInt]*T[xFrac][0]+refPicLX[xInt+1][yInt]*T[xFrac][1]+offset0)>>shift0
B=(refPicLX[xInt][yInt+1]*T[xFrac][0]+refPicLX[xInt+1][yInt+1]*T[xFrac][1]+offset0)>>shift0
によって取得され、ここで、
mvX[0]=(mvBaseScaled[0]+dX[0]*x+dY[0]*y)
mvX[1]=(mvBaseScaled[1]+dX[1]*x+dY[1]*y)
xInt=xCb+(mvX[0]>>9)+x
yInt=yCb+(mvX[1]>>9)+y
xFrac=(mvX[0]>>4)&31
yFrac=(mvX[1]>>4)&31
であり、選択された基準ピクチャサンプル配列refPicLX[xInt][yInt]内の位置xIntおよびyIntは、
xInt=Clip3(0,pic_width-1,xInt)
yInt=Clip3(0,pic_height-1,yInt)
によって与えられる。
値AおよびBの計算をこのように実施すると、予測の計算効率が向上する。
現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する半整数ピクセルを含むことが規定されてもよい。使用される隣接ピクセルが多いほど、予測結果は良好である。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する完全整数ピクセルを含む。
空間高域フィルタが5タップフィルタまたは3タップフィルタであることをさらに規定することができる。これらのフィルタは、サンプル値の信頼できる予測をサポートする。
より具体的には、一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは以下のフィルタ係数(-6,9,26,9,-6)を有する。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/または半整数ピクセルを含み、5タップフィルタはフィルタ係数(-1,0,10,0,-1)を有するか、または3タップフィルタはフィルタ係数(-1,10,-1)を有する。
装置の処理ユニットが、基準フレーム内のそれぞれの隣接する完全整数ピクセルの双線形補間に基づいて、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するように構成されることがさらに規定されてもよい。サブ整数ピクセルのサンプル値のこの計算にも双線形補間を使用すると、予測の精度をさらにサポートすることができる。
装置の処理ユニットが、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルに基づいて、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するようにさらに構成されることを規定することができる。これにより、予測精度をさらに向上させることができる。
一実施形態では、装置の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルの平均ベクトルを決定することにより、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するように構成される。そのような平均ベクトルを使用すると、さらなる計算を計算上より効率的にすることができる。
さらなる実施形態では、装置の処理ユニットは、動き補償モデルに基づいて、現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルを決定するようにさらに構成される。これは、例えば、並進または非並進運動補償モデルを含むことができる。
さらなる実施形態では、装置の処理ユニットは、現在の完全整数ピクセルの動きベクトルが非並進運動補償モデルに基づいて決定される場合には、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値を決定し、現在の完全整数ピクセルの動きベクトルが並進運動補償モデルに基づいて決定される場合には、従来の方式に基づいて現在の完全整数ピクセルのインター予測サンプル値を決定するように構成される。非並進モデルは、予測時に必要なコンピューティングリソースに関してより良く実行することができ、それにより、予測の効率が向上する。
より具体的には、非並進運動補償モデルは、アフィン、ワーピング、および/またはパノラマ運動補償モデルであってもよい。
処理ユニットが、双線形フィルタおよび後続の高域フィルタの畳み込みとして構築された分離可能な4タップフィルタのセットを構築するように構成されることも規定することができる。
一実施形態では、処理ユニットは、フィルタリングプロセスにおいて中間丸め演算を適用するように構成される。これは、値の右シフトを含むことができ、それにより、計算に関与するビット数を減らすことができ、それにより、予測の計算効率を向上させることができる。
一実施形態では、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の方法が提供され、方法は、
動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定するステップ(601)と、
現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップ(603)と、
現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定するステップ(605)であって、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップ(605)と、
デコーダサイド動きベクトル改良DMVRにおける双線形補間に対応する双線形補間を適用することにより、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を取得するステップ(607)と、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値を決定するステップ(609)と
を含む。
この方法は、DMVRモジュールのような既存のモジュールを再利用することを可能にする。具体的には、DMVRがEVCにおいて使用されたものに対応する場合、それぞれのモジュールは現在の補間においても再利用することができ、メモリ要件が低減される。
一実施形態では、DMVRと同じ双線形補間実装形態が使用される。これにより、現在の補間においてDMVRで使用されるモジュールを直接適用することが可能になり、必要なメモリ量がさらにもっと削減される。
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値(L)が、以下の式に基づいて決定されることが規定されてもよい。
A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
ここで、表TはサイズN×2の事前定義された表であり、Nは部分位置の数であり、値shift0、shift1、offset0、offset1は、サンプルビット深度および表Tに基づいて導出され、サンプルビット深度は10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である。
これらの計算は計算上効率的に実行され、予測の効率を向上させる。
一実施形態では、表Tは2つの列T[0]およびT[1]を有し、T[1]=64-T[0]であり、表の行数は部分サンプル位置の数に対応する。表Tは、補間フィルタ係数の表であってもよい。対応する表がDMVRにおいて使用され、DMVRに対応する双線形補間の再利用がより効率的になる。
より具体的には、表TはN=16個の部分サンプル位置を含んでもよく、表Tは以下によって与えられる。
Figure 0007534395000003
この表は、DMVRにおいて使用される表と同一であり、それにより、DMVRの再利用は、関与する計算の複雑さに関してさらに効率的に提供される。
一実施形態では、表TはN=32個の部分サンプル位置を含み、表は以下によって与えられる。
Figure 0007534395000004
この実施形態は、DMVRとは異なり、2倍の部分位置を有する表を使用する。これにより、予測の精度が向上する。
一実施形態では、サンプルビット深度は10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である。
一実施形態では、処理ユニットは、現在の完全整数ピクセルのサンプル値のインター予測のための入力として、以下のエンティティを使用する。
-全サンプル単位内の現在ブロックの位置(xCb,yCb)
-現在ブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
-動きベクトルの水平変化dX
-動きベクトルの垂直変化dY
-動きベクトルmvBaseScaled
-1つまたは複数の選択された基準ピクチャサンプル配列refPicLX
-1つまたは複数のサンプルビット深度bitDepth
-サンプル内のフレームの幅pic_width
-サンプル内のフレームの高さpic_height
-予測サンプル値の(cbWidth)×(cbHeight)の配列predSamplesLXと呼ばれる、(cbWidth)×(cbHeight)から取得された配列
変数AおよびBが、
A=(refPicLX[xInt][yInt]*T[xFrac][0]+refPicLX[xInt+1][yInt]*T[xFrac][1]+offset0)>>shift0
B=(refPicLX[xInt][yInt+1]*T[xFrac][0]+refPicLX[xInt+1][yInt+1]*T[xFrac][1]+offset0)>>shift0
によって取得されることをさらに規定することができ、ここで、
mvX[0]=(mvBaseScaled[0]+dX[0]*x+dY[0]*y)
mvX[1]=(mvBaseScaled[1]+dX[1]*x+dY[1]*y)
xInt=xCb+(mvX[0]>>9)+x
yInt=yCb+(mvX[1]>>9)+y
xFrac=(mvX[0]>>4)&31
yFrac=(mvX[1]>>4)&31
であり、選択された基準ピクチャサンプル配列refPicLX[xInt][yInt]内の位置xIntおよびyIntは、
xInt=Clip3(0,pic_width-1,xInt)
yInt=Clip3(0,pic_height-1,yInt)
によって与えられる。
一実施形態では、ビデオ信号の現在フレームを符号化するための符号化装置が提供され、符号化装置は、上記の実施形態のうちのいずれか1つによるインター予測装置を備える。これは、例えばビデオシーケンスを符号化するための上記の利点を実現する。
一実施形態では、圧縮されたビデオ信号の現在の復元フレームを復号するための復号装置が提供され、復号装置は、上記の実施形態のうちのいずれか1つによるインター予測装置を備える。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
一実施形態では、コンピュータまたはプロセッサ上で実行されると、上記の実施形態のうちのいずれか1つの方法を実行するためのプログラムコードを含む、コンピュータプログラム製品が提供される。
一実施形態では、上記の実施形態のうちのいずれか1つによる方法を遂行するための処理回路を備えるエンコーダが提供される。それにより、上述された方法の利点は、例えばビデオシーケンスの符号化にも利用可能である。
さらなる実施形態では、上記の実施形態のうちのいずれか1つによる方法を遂行するための処理回路を備えるデコーダが提供される。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
一実施形態では、コンピュータまたはプロセッサ上で実行されると、上記の実施形態のうちのいずれか1つによる方法を実行するためのプログラムコードを含む、コンピュータプログラム製品が提供される。
一実施形態では、デコーダが提供され、デコーダは、
1つまたは複数のプロセッサと、
プロセッサに結合され、プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、プログラミングは、プロセッサによって実行されると、上記の実施形態のうちのいずれか1つによる方法を遂行するようにデコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
一実施形態では、エンコーダが提供され、エンコーダは、
1つまたは複数のプロセッサと、
プロセッサに結合され、プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、プログラミングは、プロセッサによって実行されると、上記の実施形態のうちのいずれか1つによる方法を遂行するようにエンコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。
一実施形態では、コンピュータデバイスによって実行されると、上記の実施形態のうちのいずれか1つによる方法をコンピュータデバイスに実行させるプログラムコードを搬送する、非一時的コンピュータ可読媒体が提供される。
一実施形態では、ビデオ信号の現在フレームの現在ブロックの複数のピクセルのうちの現在の完全整数ピクセルのサンプル値をインター予測するための装置が提供され、装置は、
ビデオ信号の現在フレームおよび基準フレーム、ならびに/または動き補償モデルに基づいて、現在の完全整数ピクセルの動きベクトルを決定し、
現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、
現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成し、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含み、
現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定し、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定する
行うように構成された処理ユニットを備える。
これにより、現在の完全整数ピクセルのサンプル値を効率的に予測することが可能になる。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する半整数ピクセルを含む。これにより、予測の精度が向上する。
現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する完全整数ピクセルを含むことを規定することができる。これによっても、予測精度がさらに向上する。
一実施形態では、空間高域フィルタは5タップフィルタまたは3タップフィルタである。これらは、予測の精度に効率的に寄与する。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは以下のフィルタ係数(-6,9,26,9,-6)を有する。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/または半整数ピクセルを含み、5タップフィルタはフィルタ係数(-1,0,10,0,-1)を有するか、または3タップフィルタはフィルタ係数(-1,10,-1)を有する。
装置の処理ユニットが、基準フレーム内のそれぞれの隣接する完全整数ピクセルの双線形補間に基づいて、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するように構成されることも規定することができる。これにより、予測精度をさらに向上させることができる。
一実施形態では、装置の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルに基づいて、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するようにさらに構成される。
装置の処理ユニットが、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルの平均ベクトルを決定することにより、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するように構成されることがさらに規定されてもよい。平均ベクトルを取得し、これをさらなる計算に使用すると、予測プロセスの計算効率を向上させることができる。
一実施形態では、装置の処理ユニットは、ビデオ信号の現在フレームおよび基準フレームならびに/または動き補償モデルに基づいて、現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルを決定するようにさらに構成される。
装置の処理ユニットが、現在の完全整数ピクセルの動きベクトルが非並進運動補償モデルに基づいて決定される場合には、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定し、現在の完全整数ピクセルの動きベクトルが並進運動補償モデルに基づいて決定される場合には、従来の方式に基づいて、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するように構成されることを規定することができる。これらのモデルは、予測の効率および/または精度において利点を提供することができる。
一実施形態では、非並進運動補償モデルは、アフィン、ワーピング、および/またはパノラマ運動補償モデルである。
さらなる実施形態では、処理ユニットは、双線形フィルタおよび後続の高域フィルタの畳み込みとして構築された分離可能な4タップフィルタのセットを構築するように構成される。
さらに、処理ユニットが、フィルタリングプロセスにおいて中間丸め演算を適用するように構成されることを規定することができる。そのような丸めは、右シフトを含んでもよい。これにより、計算の計算複雑度を低減することができる。
一実施形態では、ビデオ信号の現在フレームの現在ブロックの複数のピクセルのうちの現在の完全整数ピクセルのサンプル値をインター予測するための方法が提供され、方法は、
ビデオ信号の現在フレームおよび基準フレームに基づいて、かつ/または動き補償モデルに基づいて、現在の完全整数ピクセルの動きベクトルを決定するステップと、
現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップと、
現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成するステップであって、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップと、
現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するステップと、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するステップと
を含む。
さらに、一実施形態では、ビデオ信号の現在フレームの現在ブロックの複数のピクセルのうちの現在ピクセルのサンプル値をインター予測するための方法が提供され、方法は、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lおよび基準フレーム内の対応するフィルタサポートピクセルのサンプル値にフィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するステップ
を含み、
基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lは、1つまたは複数の式に基づいて決定される。
フィルタリング処理が、シフト値、オフセット値および表Tのうちの1つまたは複数に関して提示されることを規定することができる。
さらに、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lが、以下の式に基づいて決定されることが規定されてもよい。
A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
ここで、表TはサイズN×2の事前定義された表であり、Nは部分位置の数であり、値shift0、shift1、offset0、offset1は、サンプルビット深度および表Tに基づいて導出される。これは、予測効率に寄与することができる。
一実施形態では、表Tは16個の部分位置を含む。これにより、計算の計算複雑度が減少するが、予測精度も減少する。
一実施形態では、表Tは以下のように定義される。
Figure 0007534395000005
Lのビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9であることを規定することができる。
一実施形態では、表Tは32個の部分位置を含む。これにより、計算の複雑さが増大するが、予測精度も増大する。
具体的には、表Tは以下のように定義されてもよい。
Figure 0007534395000006
一実施形態では、Lのビット深度は10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である。
フィルタが双線形補間に関連付けられること、またはフィルタがEVCにおけるDMVR内の(DMVRが使用する双線形補間の実装形態などの)双線形補間の実装形態に対応することを規定することができる。これにより、DMVRにおいて使用されるモジュールまたは式の再利用が可能になり、必要なメモリが削減される。
一実施形態では、ビデオ信号の現在フレームを符号化するための符号化装置が提供され、符号化装置は、上記の実施形態のうちのいずれか1つによるインター予測装置を備える。これは、例えばビデオシーケンスを符号化するための上記の利点を実現する。
一実施形態では、圧縮されたビデオ信号の現在の復元フレームを復号するための復号装置が提供され、復号装置は、上記の実施形態のうちのいずれか1つによるインター予測装置を備える。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
さらなる実施形態では、コンピュータまたはプロセッサ上で実行されると、前述の実施形態のうちのいずれか1つの方法を実行するためのプログラムコードを含む、コンピュータプログラム製品が提供される。
さらに、上記の実施形態のうちのいずれか1つによる方法を遂行するための処理回路を備えるエンコーダを提供することができる。これは、例えばビデオシーケンスを符号化するための上記の利点を実現する。
一実施形態では、前述の実施形態のうちのいずれか1つによる方法を遂行するための処理回路を備えるデコーダが提供される。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
一実施形態では、コンピュータまたはプロセッサ上で実行されると、前述の実施形態のうちのいずれか1つによる方法を実行するためのプログラムコードを含む、コンピュータプログラム製品が提供される。
さらなる実施形態では、デコーダが提供され、デコーダは、
1つまたは複数のプロセッサと、
プロセッサに結合され、プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、プログラミングは、プロセッサによって実行されると、前述の実施形態のうちのいずれか1つによる方法を遂行するようにデコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。これは、例えば符号化されたビデオシーケンスを復号するための上記の利点を実現する。
一実施形態では、エンコーダが提供され、エンコーダは、
1つまたは複数のプロセッサと、
プロセッサに結合され、プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、プログラミングは、プロセッサによって実行されると、前述の実施形態のうちのいずれか1つによる方法を遂行するようにエンコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。これは、例えばビデオシーケンスを符号化するための上記の利点を実現する。
一実施形態では、コンピュータデバイスによって実行されると、上記の実施形態のうちのいずれか1つによる方法をコンピュータデバイスに実行させるプログラムコードを搬送する、非一時的コンピュータ可読媒体が提供される。
本発明のさらなる実施形態は、以下の図に関して記載される。
一実施形態によるインター予測装置を備える、一実施形態による符号化装置を示す概略図である。 一実施形態によるインター予測装置を備える、一実施形態による復号装置を示す概略図である。 一実施形態によるインター予測装置に実装された補間プロセスの一態様を示す概略図である。 一実施形態によるインター予測装置に実装された補間プロセスの異なる態様を示す概略図である。 一実施形態によるインター予測装置に実装された補間プロセスの異なる態様を示す概略図である。 一実施形態によるインター予測方法のステップを示すフロー図である。 双線形フィルタおよび後続の高域フィルタの畳み込みとして構築された分離可能な4タップフィルタのセットを示す表1を示す図である。 一実施形態による方法のフロー図である。 符号化装置または復号装置の一例を示すブロック図である。 符号化装置または復号装置の別の例を示すブロック図である。 一実施形態によるインター予測装置を示す図である。 コンテンツ配信サービスを実現するコンテンツ供給システム3100の例示的構造を示すブロック図である。 端末デバイスの一例の構造を示すブロック図である。
様々な図において、同一の参照符号は、同一または機能的に同等の特徴に使用される。
以下の説明では、本開示の一部を形成し、本発明が置かれる場合がある特定の態様が実例として示される添付図面が参照される。本発明の範囲から逸脱することなく、他の態様が利用されてもよく、構造的または論理的な変更が行われてもよいことが理解される。したがって、本発明の範囲が添付の特許請求の範囲によって定義されるので、以下の詳細な説明は限定的な意味で解釈されるべきではない。
例えば、記載された方法に関連する開示は、その方法を実行するように構成された対応するデバイスまたはシステムにも当てはまることができ、その逆も同様であることが理解される。例えば、特定の方法ステップが記載される場合、対応するデバイスは、そのようなユニットが明確に記載または図示されていない場合でも、記載された方法ステップを実行するためにユニットを含んでもよい。さらに、特に断りのない限り、本明細書に記載された様々な例示的な態様の特徴は互いに組み合わされてもよいことが理解される。
図1は、一実施形態によるインター予測装置144を備える、一実施形態による符号化装置100を示す。符号化装置100は、複数のフレーム(本明細書ではピクチャまたは画像とも呼ばれる)を含むビデオ信号のフレームのブロックを符号化するように構成され、各フレームは複数のブロックに分割可能であってもよく、各ブロックは複数のピクセルを含んでもよい。ピクセルは、任意の種類の情報であってもよく、または任意の種類の情報を表すことができる。具体的には、「ピクセル」という用語は、物理的なディスプレイ内の画像点に限定されると理解されなくてもよい。むしろ、「ピクセル」という用語は、必ずしも任意の物理的な実体を必要とせずに「サンプル」のような意味を有すると理解されるべきである。したがって、以下ではそれはピクセルと参照されるが、この用語はそのように解釈されるべきである。
一実施形態では、ブロックはマクロブロック、コーディングツリーユニット、コーディングユニット、予測ユニット、および/または予測ブロックであり得る。しかしながら、これらの実施形態は例にすぎず、ブロックは、例えば、ビデオ符号化において使用することができる任意のブロックであってもよい。さらに、ブロックは任意のサイズおよび形状を有してもよい。一実施形態では、各ブロックは、複数のピクセル(またはサンプル)を有し、M×Nのサイズを有する行列として提供されてもよく、M、N∈Nであり、MおよびNは同じ値であり得るが、必ずしも同じ値ではない。
図1に示された例示的な実施形態では、符号化装置100は、ハイブリッドビデオコーディングエンコーダの形態で実装されている。通常、ビデオ信号の最初のフレームはイントラフレームであり、それはイントラ予測のみを使用して符号化される。このために、図2に示された符号化装置100の実施形態は、イントラ予測用のイントラ予測ユニット154をさらに備える。イントラフレームは、他のフレームからの情報なしに復号することができる。イントラ予測ユニット154は、イントラ推定ユニット152によって提供された情報に基づいてブロックのイントラ予測を実行することができる。
最初のイントラフレームの後に続くフレームのブロックは、モード選択ユニット160によって選択されたインター予測またはイントラ予測を使用してコーディングすることができる。一般に、インター予測ユニット144は、以下でさらにより詳細に記載されるように、動き推定に基づいてブロックの動き補償を実行するように構成することができる。一実施形態では、動き推定は、符号化装置のインター推定ユニット142によって実行することができる。しかしながら、他の実施形態では、インター推定ユニット142の機能は、インター予測ユニット144の一部として実装することもできる。
さらに、図1に示されたハイブリッドエンコーダの実施形態では、残差計算ユニット104は、元のブロックとその予測との間の差、すなわち、イントラ/インターピクチャ予測の予測誤差を定義する残差ブロックを決定する。この残差ブロックは、変換ユニット106によって(例えば、DCTを使用して)変換され、変換係数は量子化ユニット108によって量子化される。量子化ユニット108の出力、ならびに、例えばインター予測ユニット144によって提供されるコーディング情報またはサイド情報は、エントロピー符号化ユニット170によってさらに符号化される。
図1に示された符号化装置100などのハイブリッドビデオエンコーダは、通常、両方が同じ予測を生成するようにデコーダ処理を複製する。したがって、図1に示された実施形態では、逆量子化ユニット110および逆変換ユニットは、変換ユニット106および量子化ユニット108の逆動作を実行し、残差ブロックの復号された近似値を複製する。次いで、復号された残差ブロックデータは、復元ユニット114によって、予測結果すなわち予測ブロックに追加される。次いで、復元ユニット114の出力は、イントラ予測に使用されるためにラインバッファ116に提供することができ、画像アーチファクトを除去するためにインループフィルタ120によってさらに処理される。最終的なピクチャが復号ピクチャバッファ130に記憶され、後続のフレームのインター予測に基準フレームとして使用することができる。
図2は、一実施形態によるインター予測装置244を備える、一実施形態による復号装置200を示す。復号装置200は、符号化されたビデオ信号のフレームのブロックを復号するように構成される。図2に示された実施形態では、復号装置200はハイブリッドデコーダとして実装されている。エントロピー復号ユニット204は、符号化されたピクチャデータのエントロピー復号を実行し、データは、一般に、予測誤差(すなわち、残差ブロック)、動きデータ、および他のサイド情報を含むことができ、それらは、特に、インター予測装置244およびイントラ予測ユニット254、ならびに復号装置200の他の構成要素に必要とされる。図2に示された実施形態では、図3に示された復号装置200のインター予測装置244またはイントラ予測ユニット254は、モード選択ユニット260によって選択され、図1に示された符号化装置100のインター予測装置144およびイントラ予測ユニット154と同じように機能するので、符号化装置100および復号装置200によって同一の予測を生成することができる。復号装置200の復元ユニット214は、フィルタリングされた予測ブロック、ならびに逆量子化ユニット210および逆変換ユニット212によって提供された残差ブロックに基づいて、ブロックを復元するように構成される。符号化装置100の場合のように、復元されたブロックは、イントラ予測に使用されるラインバッファ216に提供することができ、フィルタリングされたブロック/フレームは、将来のインター予測のためにインループフィルタ220によって復号ピクチャバッファ230に提供することができる。
すでに上述されたように、装置144、244は、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測を実行するように構成される。これに関連して、それぞれの現在の完全整数ピクセルは、必ずしも現在ブロック自体の一部ではない。それは、隣接ブロックに属していてもよい。具体的には、現在ブロックがx=0…CbW-1およびy=0…CbH-1(ここで、CbWは現在ブロックの幅であり、CbHは現在ブロックの高さであり、CbH、CbW∈Nである)の範囲の列および行を有する行列を表す場合、現在ブロック「に関連付けられた」現在の完全整数ピクセルは、位置x=-1および/またはy=-1にあってもよい。したがって、現在の完全整数ピクセルは現在ブロックの内部にはないが、現在ブロックとすぐ隣のブロックとの間の境界領域の一部であってもよい。この意味で、以下では現在ブロック「の」完全整数ピクセルが参照されるが、これは、上記で示されたように、完全整数ピクセルが現在ブロック「に関連付けられている」ことも包含することが理解されるべきである。しかしながら、説明を容易にするために、以下ではこれら2つのケースの間の言語上の区別は提供されない。
装置144、244は、ソフトウェアおよび/またはハードウェアに実装することができる処理ユニットを備える。
装置144、244の処理ユニットは、一実施形態では、現在の完全整数ピクセルの動きベクトルを決定するように構成される。一実施形態では、装置144、244の処理ユニットは、現在フレーム内の現在の完全整数ピクセルに対応する基準フレーム内のピクセルの位置を決定することにより、ビデオ信号の現在フレームおよび基準フレームに基づいて現在の完全整数ピクセルの動きベクトルを決定するように構成される。一実施形態では、装置144、244の処理ユニットは、(採用された)動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定するように構成される。例えば、動き補償モデルの特別な場合としての並進またはアフィン動き補償モデルの場合、現在の完全整数ピクセルの動きベクトルは、現在の完全整数ピクセルが属する同じブロックのピクセルの1つまたは複数の動きベクトルを使用して決定することができる。本明細書で使用される「動き補償モデル」は、動き変換モデル、動きモデル記述などとも呼ばれる。ワーピング動きモデルおよび/またはパノラマ動きモデルを含む他の動き補償モデルは、動き補償モデルという用語に基づいて理解されてもよく、本発明は、別段の指示がない限り、この点に関連して特定の動き補償モデルに限定されない。
装置144、244の処理ユニットは、いくつかの実施形態では、現在の完全整数ピクセルの動きベクトルに基づいて、現在の完全整数ピクセルに対して、基準フレーム内の対応するサブ整数ピクセルを決定するようにさらに構成される。
装置144、244の処理ユニットは、現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成するようにさらに構成される。現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、1つもしくは複数の隣接する完全整数ピクセルおよび/または現在の完全整数ピクセルのサブ整数ピクセルを含む。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する半整数ピクセルを含む。例えば、一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの上、左、下、および右に隣接する半整数ピクセルを含む。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの1つまたは複数の垂直および/または水平に隣接する完全整数ピクセルを含む。例えば、一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの上、左、下、および右に隣接する完全整数ピクセルを含む。一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在フレーム内の現在の完全整数ピクセルの上、左、下、および右に隣接する半整数ピクセルおよび完全整数ピクセルを含むことができる。
装置144、244の処理ユニットは、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値、特に輝度値を決定するようにさらに構成されてもよい。
一実施形態では、装置144、244の処理ユニットはまた、基準フレーム内のそれぞれの隣接する完全整数ピクセルの双線形補間に基づいて、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するように構成されてもよい。図3は、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値を決定するために双線形補間を使用する例を示す。図3では、基準フレーム内の基準ブロックは、現在フレームの例示的な現在ピクセルを含む現在ブロックに対して拡大および回転する。その上、図3は、フィルタサポートピクセルに使用されるさらに高い解像度を示している。
図3の拡大図から分かるように、一実施形態では、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lは、以下のように処理ユニットによって決定することができる。現在の完全整数ピクセルの対応するサブ整数ピクセルは、基準フレームのサンプルグリッドの対応するセル内の部分位置(fdX,fdY)を有してもよい。L0、L1、L2、L3は、基準フレーム(すなわち、現在の完全整数ピクセルの対応するサブ整数ピクセルが位置する、基準フレームのサンプルグリッドの対応するセルの角に位置する完全整数ピクセル)内の隣接する完全整数ピクセルの既知のサンプル値である。部分位置(fdX,fdY)に基づいて、s0、s1、s2、s3に対応する矩形の各面積は、以下のs0=fdX*fdY、s1=(1-fdX)*fdY、s2=fdX*(1-fdY)、s3=(1-fdX)*(1-fdY)のように算出することができる。双線形補間は、以下の水平方向係数(1-fdX,fdX)および以下の垂直方向係数(1-fdY,fdY)を有する2タップフィルタを使用して表すことができる。これらの重み係数に基づいて、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lは、以下の式に基づいて決定することができる。
L=L0*s3+L1*s2+L2*s1+L3*s0すでに上述されたように、基準フレーム内の対応するフィルタサポートピクセルのサンプル値を決定するために、同じ双線形補間を使用することができる。
別の例では、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値Lは、以下の式に基づいて決定することができる。
A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
いくつかの実施形態では、上記の式で使用される表Tは、サイズN×2を有する事前定義された表であり、Nは部分位置の数であり、上記の式の値shift0、shift1、offset0、offset1は、例えば、サンプルビット深度および表Tに基づいて導出される。一例では、表Tは、16個の(以下に示された行に対応する)部分位置を含む。
Figure 0007534395000007
上記の例では、以下の値が選択されてもよい。サンプルビット深度Lは10であってもよく、他の値は以下:shift0=2、offset0=0、shift1=10、offset1=1<<9のように設定されてもよい。
この実施形態は、特定の形態の双線形補間を実装する。双線形補間のそのような実装形態は、EVCにおけるDMVR内の双線形補間の実装形態に対応する。この意味で、サンプル値Lを決定するために本明細書で使用される双線形補間がDMVRに「対応する」ことは、少なくともDMVR内で使用される式と同様または実際に同一の式が使用されることを意味すると理解されるべきである。これにより、現在説明されているように、拡張補間フィルタ(EIF)の方法においても、DMVR内ですでに開発されたモジュールを再利用することが可能になる。したがって、EIFにおいてそのような実装形態を使用すると、DMVRのモジュールが再利用され、双線形補間のための別個のモジュールを提供する必要がないので、さらなる利点がもたらされる。しかしながら、EIFにおいて使用される式がDMVRにおいて使用される式と非常に類似するか、または同一である場合であっても、これらの式への入力がEIFとDMVRで同一である必要はない。それにもかかわらず、たとえ入力が異なっていても、方程式が類似するか、または同一でさえある限り、双線形補間はDMVRに「対応する」と見なされる。
基本的に、一実施形態では、EIFは、DMVRにおいて使用されるのと同じ双線形補間を使用することができ、さらに、同じ入力(具体的には、上術された16個の部分位置を含む表)を使用することもできる。
別の実施形態では、同様または同一の式が使用されるが、双線形補間への入力は、表Tに関して具体的にDMVRと同一でなくてもよい。表Tは、そのような実施形態では、32個の部分位置を含んでもよい。
Figure 0007534395000008
ここで、サンプル値Lのビット深度は10であるように選択されてもよく、shift0=2、offset0=0、shift1=10、offset1=1<<9である。
双線形補間のこの実装形態も、EVCのDMVR双線形補間に近い。違いは主に使用される表Tにある。16の代わりに32の位相(すなわち、部分位置)を使用すると、より正確な補間が提供される。これは、上述されたように、表Tが16以下の部分位置からなるかまたはそれらを含む例と比較して、EIFの性能上の利点を提供することができる。
MPEG5/EVCにおける拡張補間フィルタの一部としてのそのような双線形補間実装形態の使用のさらなる例が以下に記載される。
1/16の部分サンプル位置pごとの補間フィルタ係数T[p]の仕様
Figure 0007534395000009
拡張補間フィルタ向けの補間プロセス
現在の完全整数サンプルのサンプル値を予測するために、上記の式および以下に述べる式へのさらなる入力が必要であり、これは以下のパラメータまたは値を含んでもよい。
-全サンプル単位内の現在ブロックの位置(xCb,yCb)
-現在のコーディングブロックの幅および高さを指定する2つの変数(上記でCbHおよびCbWと呼ばれた)cbWidthおよびcbHeight
-動きベクトルの水平変化dX
-動きベクトルの垂直変化dY
-動きベクトルmvBaseScaled
-選択された基準ピクチャサンプル配列refPicLX
-サンプルビット深度bitDepth
-サンプル内のピクチャの幅pic_width
-サンプル内のピクチャの高さpic_height
-方法における対象の出力、すなわち、予測サンプル値は、完全整数ピクセルの各々の予測サンプル値の「predSamplesLX」と呼ばれる値を含むサイズ(cbWidth)×(cbHeight)の配列である。
変数shift1、shift2、shift3、offset1、offset2、およびoffset3は、以下のように導出されてもよい。
shift0はbitDepth-8に等しく設定され、offset0は0に等しく、
shift1は12-shift0に等しく設定され、offset1は2shift1-1に等しい。
x=-1..cbWidthおよびy=-1..cbHeightに対して、以下が適用される。
-動きベクトルmvXが以下のように導出される。
mvX[0]=(mvBaseScaled[0]+dX[0]*x+dY[0]*y)(8-728)
mvX[1]=(mvBaseScaled[1]+dX[1]*x+dY[1]*y)(8-729)
-変数xInt、yInt、xFrac、およびyFracを以下のように導出することができる。
xInt=xCb+(mvX[0]>>9)+x(8-730)
yInt=yCb+(mvX[1]>>9)+y(8-731)
xFrac=(mvX[0]>>4)&31(8-732)
yFrac=(mvX[1]>>4)&31(8-733)
-上記の式8-728~8-733により、基準フレーム内の対応するサブ整数ピクセルの動きベクトルおよび位置を取得することができる。後者はxFracおよびyFracによって提供される。
-所与の配列refPicLX内部の(基準フレーム内の完全整数ピクセルに対応する)位置(xInt,yInt)は、以下のように導出されてもよい。
xInt=Clip3(0,pic_width-1,xInt)(8-734)
yInt=Clip3(0,pic_height-1,yInt)(8-735)
-変数AおよびBは、いくつかの実施形態では、以下のように、上記で参照された双一次補間を適用する(具体的には、DMVRに対応する双線形補間が適用されてもよい)ことによって導出されてもよい。
A=(refPicLX[xInt][yInt]*T[xFrac][0]+refPicLX[xInt+1][yInt]*T[xFrac][1]+offset0)>>shift0
B=(refPicLX[xInt][yInt+1]*T[xFrac][0]+refPicLX[xInt+1][yInt+1]*T[xFrac][1]+offset0)>>shift0
-これらの値AおよびBならびにそれぞれの位置yFracにより、位置(x,y)に対応するサンプル値bx,yが以下のように導出される。
bx,y=(A*T[yFrac][0]+B*T[yFrac][1]+offset1)>>shift1(8-740)
値bx,yは、基準フレーム内の対応するサブ整数ピクセルのサンプル値を構成する。
拡張補間フィルタ係数eF[]は、{-1,10,-1}と指定される。
{-1,10,-1}に等しい値eF[]は、空間高域フィルタ係数を構成する。他の値もここで使用されてもよく、本発明はこれらの特定の拡張フィルタ係数の使用に限定されない。
変数shift2、shift3、offset2、およびoffset3は、以下のように導出される。
shift2はmax(bit_depth-11,0)に等しく設定され、offset2は2shift2-1に等しく、
shift3は(6-max(bit_depth-11,0))に等しく設定され、offset3は2shift3-1に等しく、
x=0..cbWidth-1およびy=-1..cbHeightの場合、以下が適用される。
-hx,y=(eF[0]*bx-1,y+eF[1]*bx,y+eF[2]*bx+1,y+offset2)>>shift2(8-741)
x=0..cbWidth-1およびy=0..cbHeight-1の場合、以下が適用される。
-predSamplesLXL[x][y]=Clip3(0,(1<<bitDepth)-1,(eF[0]*hx,y-1+eF[1]*hx,y+eF[2]*bx,y+1+offset3)>>shift3)(8-742)
次いで、式8-741および8-742の結果は、現在ブロックに関連付けられたそれぞれの現在の完全整数ピクセルの予測サンプル値を構成する。
装置144、244の処理ユニットは、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するようにさらに構成されてもよい。
一実施形態では、空間高域フィルタは5タップフィルタである。一実施形態では、5タップフィルタは対称フィルタ、すなわち、第1および第5のフィルタ係数が同一であり、第2および第4のフィルタ係数が同一であるフィルタである。一実施形態では、第1および第5のフィルタ係数は負であり、5タップフィルタの他のフィルタ係数は正である。一実施形態では、空間高域フィルタは、垂直方向および水平方向に別々に適用することができる。しかしながら、本発明は、どのフィルタが使用されるかに関して限定されない。むしろ、拡張補間フィルタとして任意の高域フィルタが使用されてもよい。
一実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの5つの隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは、係数1/32によって正規化することができる、所与の数値精度内の以下のフィルタ係数(-6,9,26,9,-6)を有する。
さらなる実施形態では、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの5つの隣接する完全整数ピクセルおよび半整数ピクセルを含み、5タップフィルタは、係数1/8によって正規化することができる、所与の数値精度内の以下のフィルタ係数(-1,0,10,0,-1)を有する。諒解されるように、中間の半整数サポートピクセルがない一実施形態では、このフィルタは、3つの完全整数サポートピクセルおよび係数(-1,10,-1)を有する3タップフィルタになる。
一実施形態では、装置144、244の処理ユニットは、フィルタサポートピクセルに基づく2次元分離可能畳み込みプロセスに基づいて、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するように構成される。例えば、5タップフィルタの場合、装置144、244の処理ユニットは、現在ピクセルの水平方向および垂直方向に隣接する5つの半整数ピクセルおよび完全整数ピクセルによって定義される各々の水平方向および垂直方向のラインに5タップフィルタを適用するように構成される。
図4は、図3に示された例の垂直方向および水平方向に5タップフィルタを使用して、装置144、244の処理ユニットによって実行される処理ユニットの異なる段階を示す。図3に示された例のように、基準ブロックは、現在ブロックに対して(アフィン変換に対応する)拡大および回転が行われ、現在フレーム内で垂直および水平である5タップフィルタは、基準フレーム内で回転する。
インター予測装置144、244の以下のさらなる実施形態では、符号化装置100および復号装置200が記載される。これに関連して、インター予測装置144、244の実施形態は、符号化装置100に実装されたインター予測装置133の実施形態、ならびに復号装置200に実装されたインター予測装置244の実施形態に関することが理解されよう。
一実施形態では、装置144、244の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルに基づいて、現在フレーム内のフィルタサポートピクセルのサブ整数ピクセルの各々のそれぞれの動きベクトルを決定するようにさらに構成される。このために、一実施形態では、装置144、244の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルの平均ベクトルを決定するように構成される。例えば、現在フレーム内の現在の完全整数ピクセルの上の半整数ピクセルの動きベクトルを決定するために、装置144、244の処理ユニットは、現在の完全整数ピクセルの動きベクトルおよび現在の完全整数ピクセルの上の隣接する完全整数ピクセルの動きベクトルの平均、すなわち算術平均を計算することができる。
現在ピクセルの動きベクトルの決定と同様に、装置144、244の処理ユニットは、ビデオ信号の現在フレームおよび基準フレームならびに/または動き補償モデルに基づいて、現在の完全整数ピクセルの隣接する完全整数ピクセルの1つまたは複数の動きベクトルを決定するように構成することができる。
一実施形態では、装置144、244の処理ユニットは、現在の完全整数ピクセルの動きベクトルが非並進運動補償モデルに基づいて決定される場合には、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定し、現在の完全整数ピクセルの動きベクトルが並進運動補償モデルに基づいて決定される場合には、H.264/AVCおよびH.265/HEVCで定義された従来の方式などの従来の方式に基づいて、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するように構成される。一実施形態では、非並進運動補償モデルは、アフィン、ワーピング、および/またはパノラマ運動補償モデルである。
並進運動補償モデルの別の実施形態では、装置144、244の処理ユニットは、提案されたフィルタ(すなわち、双線形フィルタおよび後続の高域フィルタ)を、例えば、以下:[f,1-f]*[c0,c1,c2]=[(1-f)*(c0),f*(c0)+(1-f)*c1,f*(c1)+(1-f)*c2,f*(c2)]のように畳み込むことによって分離可能な4タップフィルタのセットを構築するように構成され、ここで、fは水平方向または垂直方向の動きベクトルの部分オフセットであり、[c0,c1,c2]は高域フィルタの係数である。この場合の部分位置は、有限のテーブルサイズを得るために特定の精度で離散的であってもよい。係数の最終値は、オフセットごとの係数の合計がノルム係数に等しくなるように、ノルム係数によって乗算され丸められてもよい。いくつかの特定のシナリオでは、ゼロの部分オフセットを有するフィルタは、(ゼロのオフセットに対するフィルタリングがない)1(701)に等しくてもよい。例えば、64に等しいノルム係数および部分オフセット精度1/32を有すると、フィルタ係数のセット(700)は、表1に示されたものであってもよい。この技法は、例えば、彩度成分をフィルタリングするために使用されてもよい。技法はまた、最悪の場合の複雑さおよび/またはメモリ帯域幅を低く保つために、小さいブロックのフィルタリングに使用されてもよい。
任意の実施形態では、計算演算のための入力範囲として固定数のビットを保持するために、実装形態の任意のステップにおいて中間の丸めまたはクリッピングを適用することができる。例えば、(水平フィルタリングのような)フィルタリングの任意の分離可能なステップの後に、(垂直フィルタリングのような)次のステップのフィルタ係数による以下の乗算で使用するために、16ビットの精度で中間値を正規化し丸めることができる。
図5は、上述された実施形態のいくつかの態様を要約している。
図6は、一実施形態による、対応するインター予測方法600のステップを示すフロー図を示す。方法600は、ビデオ信号の現在フレームおよび基準フレームに基づいて、かつ/または動き補償モデルに基づいて、現在の完全整数ピクセルの動きベクトルを決定するステップ601と、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップ603と、現在フレーム内の事前定義されたフィルタサポートピクセルのセットに基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットを生成するステップ605であって、現在フレーム内の事前定義されたフィルタサポートピクセルのセットが、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップ605と、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値を決定するステップ607と、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在フレーム内の現在ピクセルのインター予測サンプル値を決定するステップ609とを含む。
図8は、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測のための方法の別の実施形態を示す。
図8に示された方法は、複数のステップを含む。しかしながら、作成された実施形態および発明は、実行されるステップの数に関して限定されない。また、現在示されていないさらなるステップが実行されてもよい。
図8の実施形態では、方法は、
最初に、動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定するステップ(801)
を含む。
それに続いて、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルが決定される(803)。
現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットの位置が決定されてもよく(805)、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む。
これから、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値が、双線形補間を適用することによって取得される(807)。この補間は、以前に示されたように、デコーダサイド動きベクトル改良DMVRにおける双線形補間に対応してもよい。例えば、EVCにおいて使用されるDMVRがここで使用されてもよい。
その後、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値が決定される(809)。
図9は、本開示の一実施形態による、ビデオコーディングデバイス900の概略図である。ビデオコーディングデバイス900は、本明細書に記載の開示された実施形態を実装することに適している。一実施形態では、ビデオコーディングデバイス900は、図2のビデオデコーダ200などのデコーダ、または図1のビデオエンコーダ100などのエンコーダであってもよい。
ビデオコーディングデバイス900は、データを受信するための入口ポート910(または入力ポート910)および受信機ユニット(Rx)920、データを処理するためのプロセッサ、論理ユニット、または中央処理装置(CPU)930、データを送信するための送信機ユニット(Tx)940および出口ポート950(または出力ポート950)、ならびにデータを記憶するためのメモリ960を備える。ビデオコーディングデバイス900はまた、光信号または電気信号の出口または入口のために、入口ポート910、受信機ユニット920、送信機ユニット940、および出口ポート950に結合された光-電気(OE)構成要素および電気-光(EO)構成要素を備えてもよい。
プロセッサ930は、ハードウェアおよびソフトウェアによって実装される。プロセッサ930は、1つまたは複数のCPUチップ、(例えば、マルチコアプロセッサとしての)コア、FPGA、ASIC、およびDSPとして実装されてもよい。プロセッサ930は、入口ポート910、受信機ユニット920、送信機ユニット940、出口ポート950、およびメモリ960と通信する。プロセッサ930は、コーディングモジュール970を備える。コーディングモジュール970は、上記に記載の開示された実施形態を実装する。例えば、コーディングモジュール970は、様々なコーディング演算を実装、処理、準備、または提供する。したがって、コーディングモジュール970を含めることにより、ビデオコーディングデバイス900の機能に実質的な改善がもたらされ、ビデオコーディングデバイス900の異なる状態への変換がもたらされる。あるいは、コーディングモジュール970は、メモリ960に記憶され、プロセッサ930によって実行される命令として実装される。
メモリ960は、1つまたは複数のディスク、テープドライブ、およびソリッドステートドライブを含んでもよく、プログラムが実行のために選択されたときにそのようなプログラムを記憶し、かつプログラムの実行中に読み取られた命令およびデータを記憶するために、オーバーフローデータストレージデバイスとして使用されてもよい。メモリ960は、例えば、揮発性および/または不揮発性であってもよく、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、三値連想メモリ(TCAM)、および/またはスタティックランダムアクセスメモリ(SRAM)であってもよい。
図9に示されたように、装置900は、図8の実施形態と一致する方法を実行するように適合されてもよい。
装置900は、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測を実行するように構成され、装置900は、
命令を含むメモリ960と、
メモリと通信するプロセッサ930と
を備え、プロセッサは、命令の実行時に、
動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定するステップ
を実行するように構成される。
その後、プロセッサは、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定することができる。
これを用いて、プロセッサは、現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定することができ、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む。
それに基づいて、プロセッサは、双線形補間を適用することにより、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値(L)を取得することができる。この双線形補間は、すでに上述されたように、いくつかの実施形態では、デコーダサイド動きベクトル改良DMVRにおける双線形補間に対応してもよい。具体的には、双線形補間は、EVCにおいて使用されるDMVRであってもよい。さらに、プロセッサは、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値を決定するように適合される。
図10は、本開示の一実施形態による、ビデオコーディングデバイス1000の概略図である。ビデオコーディングデバイス1000は、本明細書に記載の開示された実施形態を実装することに適している。一実施形態では、ビデオコーディングデバイス1000は、図2のビデオデコーダ200などのデコーダ、または図1のビデオエンコーダ100などのエンコーダであってもよい。
装置1000内のプロセッサ1002は、中央処理装置であり得る。あるいは、プロセッサ1002は、現存するかまたは今後開発される、情報を操作または処理することが可能な任意の他のタイプのデバイス、または複数のデバイスであり得る。開示された実装形態は、示された単一のプロセッサ、例えば、プロセッサ1002を用いて実践することができるが、2つ以上のプロセッサを使用して速度および効率における利点を実現することができる。
一実装形態では、装置1000内のメモリ1004は、読取り専用メモリ(ROM)デバイスまたはランダムアクセスメモリ(RAM)デバイスであり得る。任意の他の適切なタイプのストレージデバイスをメモリ1004として使用することができる。メモリ1004は、バス1012を使用してプロセッサ1002によってアクセスされるコードおよびデータ1006を含むことができる。メモリ1004は、オペレーティングシステム1008およびアプリケーションプログラム1010をさらに含むことができ、アプリケーションプログラム1010は、プロセッサ1002が本明細書に記載された方法を実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム1010は、アプリケーション1からNを含むことができ、それらは、本明細書に記載された方法を実行するビデオコーディングアプリケーションをさらに含む。
装置1000はまた、ディスプレイ1018などの1つまたは複数の出力デバイスを含むことができる。ディスプレイ1018は、一例では、ディスプレイとタッチ入力を検知するように動作可能なタッチセンサ式要素とを組み合わせるタッチセンサ式ディスプレイであってもよい。ディスプレイ1018は、バス1012を介してプロセッサ1002に結合することができる。
ここでは単一のバスとして描写されているが、装置1000のバス1012は複数のバスから構成することができる。さらに、二次ストレージ1014は、装置1000の他の構成要素に直接結合することができるか、またはネットワークを介してアクセスすることができ、メモリカードなどの単一の統合ユニットまたは複数のメモリカードなどの複数のユニットを備えることができる。したがって、装置1000は、多種多様な構成で実装することができる。
図11は、本開示の実施形態による、インター予測装置1100の一例を示すブロック図を示す。詳細には、図11はインター予測装置(モジュール)1100を示す。一例では、インター予測装置1100は、例えば、図1の142および/もしくは144、または図2の244として実装されてもよい。装置1100は、ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の装置であり、装置は、決定ユニット1110およびインター予測処理ユニット1120を含む。
決定ユニット1110は、動き補償モデルに基づいて現在の完全整数ピクセルの動きベクトルを決定し、現在の完全整数ピクセルに対して、現在の完全整数ピクセルの動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定するように構成され、現在フレーム内の事前定義されたフィルタサポートピクセルのセットは、現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む。
インター予測処理ユニット1120は、デコーダサイド動きベクトル改良DMVRにおける双線形補間に対応する双線形補間を適用することにより、現在の完全整数ピクセルの対応するサブ整数ピクセルおよび基準フレーム内の対応するフィルタサポートピクセルのそれぞれのサンプル値(L)を取得し、基準フレーム内の現在の完全整数ピクセルの対応するサブ整数ピクセルのサンプル値および基準フレーム内の対応するフィルタサポートピクセルのサンプル値に空間高域フィルタを適用することにより、現在の完全整数ピクセルのインター予測サンプル値を決定するように構成される。
図8の実施形態による方法は、本発明の実施形態による装置によって実行することができる。本発明の実施形態による方法のさらなる特徴および実装形態は、本発明の実施形態による装置の特徴および実装形態に対応する。
実施形態による方法の利点は、実施形態による装置の対応する実装形態の利点と同じである。
本開示の特定の特徴または態様は、いくつかの実装形態または実施形態のうちの1つのみに関して開示されている場合があるが、そのような特徴または態様は、任意の所与または特定の用途に望ましく有利である可能性があるような他の実装形態または実施形態の1つまたは複数の他の特徴または態様と組み合わされてもよい。さらに、「含む」、「有する」、「伴う」という用語、またはそれらの他の変形形態が詳細な説明または特許請求の範囲のいずれかで使用される限り、そのような用語は、「備える」という用語と同様に包括的であるものである。また、「例示的な」、「例として」、および「例えば」という用語は、最良または最適というよりはむしろ、単なる一例にすぎない。「結合された」および「接続された」という用語が派生語とともに使用されている場合がある。これらの用語は、2つの要素が直接物理的もしくは電気的に接触しているか、または互いに直接接触していないかに関わらず、2つの要素が互いに協働しているかまたは対話していることを示すために使用されてもよいことが理解されるべきである。
本明細書では特定の態様が図示および記載されたが、本開示の範囲から逸脱することなく、図示および記載された特定の態様に対して、様々な代替および/または同等の実装形態が代用されてもよいことが当業者によって諒解されよう。本出願は、本明細書に説明された特定の態様の任意の適応または変形を網羅するものである。
以下の特許請求の範囲における要素は、対応するラベル付けと共に特定の順序で列挙されているが、特許請求の範囲の列挙が、別段それらの要素の一部またはすべてを実施する特定の順序を示唆していない限り、それらの要素は、必ずしもその特定の順序で実施されることに限定されるものではない。
上述の教示を考慮すると、多くの代替、修正、および変形が当業者にとって明らかである。当然、当業者は、本明細書に記載されたもの以外に、本発明の多数の用途が存在することを容易に認識する。本発明は、1つまたは複数の特定の実施形態を参照して記載されているが、当業者は、本発明の範囲から逸脱することなく、それらに対して多くの変更が行われてもよいことを認識する。したがって、添付の特許請求の範囲およびそれらの均等物の範囲内で、本発明は本明細書に具体的に記載されたもの以外の方法で実践されてもよいことが理解されるべきである。
以下は、上述された実施形態に示された符号化方法ならびに復号方法のアプリケーション、およびそれらを使用するシステムの説明である。
図12は、コンテンツ配信サービスを実現するためのコンテンツ供給システム3100を示すブロック図である。このコンテンツ供給システム3100は、キャプチャデバイス3102、端末デバイス3106を含み、任意選択でディスプレイ3126を含む。キャプチャデバイス3102は、通信リンク3104を介して端末デバイス3106と通信する。通信リンクは、上述された通信チャネル13を含んでもよい。通信リンク3104は、WIFI、イーサネット、ケーブル、ワイヤレス(3G/4G/5G)、USB、またはそれらの任意の種類の組合せなどを含むが、それらに限定されない。
キャプチャデバイス3102は、データを生成し、上記の実施形態に示された符号化方法によってデータを符号化することができる。あるいは、キャプチャデバイス3102は、データを(図には示されていない)ストリーミングサーバに配信することができ、サーバは、データを符号化し、符号化データを端末デバイス3106に送信する。キャプチャデバイス3102は、カメラ、スマートフォンもしくはPad、コンピュータもしくはラップトップ、テレビ会議システム、PDA、車載デバイス、またはそれらのいずれかの組合せなどを含むが、それらに限定されない。例えば、キャプチャデバイス3102は、上述されたソースデバイス12を含んでもよい。データがビデオを含むとき、キャプチャデバイス3102に含まれるビデオエンコーダ20は、実際にビデオ符号化処理を実行することができる。データがオーディオ(すなわち、音声)を含むとき、キャプチャデバイス3102に含まれるオーディオエンコーダは、実際にオーディオ符号化処理を実行することができる。いくつかの実際的なシナリオでは、キャプチャデバイス3102は、符号化されたビデオおよびオーディオデータを一緒に多重化することによって配信する。他の実際的なシナリオでは、例えばテレビ会議システムでは、符号化されたオーディオデータおよび符号化されたビデオデータは多重化されない。キャプチャデバイス3102は、符号化されたオーディオデータおよび符号化されたビデオデータを別々に端末デバイス3106に配信する。
コンテンツ供給システム3100では、端末デバイス310は、符号化データを受信し再生する。端末デバイス3106は、上述された符号化データを復号することが可能な、スマートフォンもしくはPad3108、コンピュータもしくはラップトップ3110、ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)3112、TV3114、セットトップボックス(STB)3116、テレビ会議システム3118、ビデオ監視システム3120、携帯情報端末(PDA)3122、車載デバイス3124、またはそれらのいずれかの組合せなどの、データ受信および復元機能を有するデバイスであり得る。例えば、端末デバイス3106は、上述された宛先デバイス14を含んでもよい。符号化データがビデオを含むとき、端末デバイスに含まれるビデオデコーダ30は、ビデオ復号を実行するように優先順位付けされる。符号化データがオーディオを含むとき、端末デバイスに含まれるオーディオデコーダは、オーディオ復号処理を実行するように優先順位付けされる。
そのディスプレイを有する端末デバイス、例えば、スマートフォンもしくはPad3108、コンピュータもしくはラップトップ3110、ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)3112、TV3114、携帯情報端末(PDA)3122、または車載デバイス3124の場合、端末デバイスは、復号データをそのディスプレイに供給することができる。ディスプレイを装備していない端末デバイス、例えば、STB3116、テレビ会議システム3118、またはビデオ監視システム3120の場合、復号データを受信し表示するためにその中で外部ディスプレイ3126と接触する。
このシステム内の各デバイスが符号化または復号を実行するとき、上述された実施形態に示されたピクチャ符号化デバイスまたはピクチャ復号デバイスを使用することができる。
図13は、端末デバイス3106の一例の構造を示す図である。端末デバイス3106がキャプチャデバイス3102からストリームを受信した後に、プロトコル進行ユニット3202は、ストリームの伝送プロトコルを分析する。プロトコルには、リアルタイムストリーミングプロトコル(RTSP)、ハイパーテキスト転送プロトコル(HTTP)、HTTPライブストリーミングプロトコル(HLS)、MPEG-DASH、リアルタイムトランスポートプロトコル(RTP)、リアルタイムメッセージングプロトコル(RTMP)、またはそれらの任意の種類の組合せなどが含まれるが、それらに限定されない。
プロトコル進行ユニット3202がストリームを処理した後に、ストリームファイルが生成される。ファイルは、逆多重化ユニット3204に出力される。逆多重化ユニット3204は、多重化データを符号化オーディオデータおよび符号化ビデオデータとに分離することができる。上述されたように、いくつかの実際的なシナリオの場合、例えばテレビ会議システムでは、符号化オーディオデータおよび符号化ビデオデータは多重化されない。この状況では、符号化データは、逆多重化ユニット3204を介さずに、ビデオデコーダ3206およびオーディオデコーダ3208に送信される。
逆多重化処理を介して、ビデオエレメンタリストリーム(ES)、オーディオES、および任意選択でサブタイトルが生成される。上述された実施形態で説明されたビデオデコーダ30を含むビデオデコーダ3206は、上述された実施形態に示された復号方法によってビデオESを復号してビデオフレームを生成し、このデータを同期ユニット3212に供給する。オーディオデコーダ3208は、オーディオESを復号してオーディオフレームを生成し、このデータを同期ユニット3212に供給する。あるいは、ビデオフレームは、同期ユニット3212にそれを供給する前に(図Yには示されていない)バッファに記憶してもよい。同様に、オーディオフレームは、同期ユニット3212にそれを供給する前に(図Yには示されていない)バッファに記憶してもよい。
同期ユニット3212は、ビデオフレームとオーディオフレームを同期させ、ビデオ/オーディオをビデオ/オーディオディスプレイ3214に供給する。例えば、同期ユニット3212は、ビデオおよびオーディオの情報の提示を同期させる。情報は、コーディングされたオーディオデータおよびビジュアルデータの提示に関するタイムスタンプ、ならびにデータストリーム自体の配信に関するタイムスタンプを使用して、シンタックス内でコーディングされてもよい。
ストリームにサブタイトルが含まれている場合、サブタイトルデコーダ3210はサブタイトルを復号し、それをビデオフレームおよびオーディオフレームと同期させ、ビデオ/オーディオ/サブタイトルをビデオ/オーディオ/サブタイトルディスプレイ3216に供給する。
本発明は上述されたシステムに限定されず、上述された実施形態におけるピクチャ符号化デバイスまたはピクチャ復号デバイスのいずれかを、他のシステム、例えば、カーシステムに組み込むことができる。
上記の説明は、プログラミング言語Cを利用するか、またはC言語のプログラミングコードを提供するが、これは、少なくともいくつかの実施形態では、本発明に拘束されない。実際、いくつかの実施形態では、本発明は、上記および下記に記載されたもの以外の他のプログラミング言語および/または他のプログラミングツールおよび/または他のソフトウェアモジュールを使用して実装されてもよい。
この意味で、C言語またはCプログラムコードの使用は、いくつかの実施形態では、むしろ擬似コードと見なされ、本発明の実施形態によれば、起こることを反映するが、本発明を特定のプログラミングコードのアプリケーションに限定するものではない。むしろ、実施形態は、プログラムコードにおける任意の特定の実装形態および/または特定のプログラミング言語の使用とは無関係に、上述された実際の機能を利用することができる。
数学演算子
本開示で使用される数学演算子は、Cプログラミング言語で使用されるものと同様である。しかしながら、整数除算および算術シフト演算の結果はより正確に定義され、累乗および実数値除算などの追加の演算が定義される。ナンバリングおよびカウントの規則は一般に0から始まり、例えば、「第1」は0番目に相当し、「第2」は1番目に相当するなどである。
算術演算子
以下の算術演算子は以下のように定義される。
Figure 0007534395000010
論理演算子
以下の論理演算子は以下のように定義される。
x&&y xおよびyのブール論理「and」
x||y xおよびyのブール論理「or」
! ブール論理「not」
×?y:z xが真であるかまたは0に等しくない場合、yの値に評価し、そうでない場合、zの値に評価する。
関係演算子
以下の関係演算子は以下のように定義される。
> より大きい
>=より大きいかまたは等しい
< より小さい
<=より小さいかまたは等しい
==等しい
!=等しくない
値「na」(該当なし)が割り当てられたシンタックス要素または変数に関係演算子が適用されるとき、値「na」はシンタックス要素または変数の個別の値として扱われる。値「na」は、いかなる他の値とも等しくないと見なされる。
ビット単位演算子
以下のビット単位演算子は以下のように定義される。
&ビット単位の「and」。整数引数に対して演算するとき、整数値の2の補数表現に対して演算する。別の引数より少ないビットを含むバイナリ引数に対して演算するとき、より短い引数は、0に等しい上位ビットを追加することによって拡張される。
| ビット単位の「or」。整数引数に対して演算するとき、整数値の2の補数表現に対して演算する。別の引数より少ないビットを含むバイナリ引数に対して演算するとき、より短い引数は、0に等しい上位ビットを追加することによって拡張される。
^ ビット単位の「排他的or」。整数引数に対して演算するとき、整数値の2の補数表現に対して演算する。別の引数より少ないビットを含むバイナリ引数に対して演算するとき、より短い引数は、0に等しい上位ビットを追加することによって拡張される。
x>>y yビットだけのxの2の補数整数表現の算術右シフト。この関数は、yの非負整数値に対してのみ定義される。右シフトの結果として最上位ビット(MSB)にシフトされたビットは、シフト演算前のxのMSBに等しい値を有する。
x<<y yビットだけのxの2の補数整数表現の算術左シフト。この関数は、yの非負整数値に対してのみ定義される。左シフトの結果として最下位ビット(LSB)にシフトされたビットは、0に等しい値を有する。
割当て演算子
以下の算術演算子は以下のように定義される。
=割当て演算子
++インクリメント、すなわち、x++はx=x+1と等価であり、配列インデックスで使用されるとき、インクリメント演算より前の変数の値に評価する。
--デクリメント、すなわち、x--はx=x-1と等価であり、配列インデックスで使用されるとき、デクリメント演算より前の変数の値に評価する。
+=指定された量だけインクリメントする、すなわち、x+=3はx=x+3と等価であり、x+=(-3)はx=x+(-3)と等価である。
-=指定された量だけデクリメントする、すなわち、x-=3はx=x-3と等価であり、x-=(-3)はx=x-(-3)と等価である。
範囲表記
以下の表記は、値の範囲を指定するために使用される。
x=y..z xは、y以上z以下の整数値をとり、x、y、およびzは整数であり、zはyより大きい。
数学関数
以下の数学関数が定義される。
Figure 0007534395000011
Asin(x)ラジアン単位の-1.0から1.0までの範囲の引数xに対して演算し、-π÷2からπ÷2までの範囲の出力値を有する三角逆正弦関数
Atan(x)引数xに対して演算し、ラジアン単位の-π÷2からπ÷2までの範囲の出力値を有する三角逆正接関数
Figure 0007534395000012
Ceil(x)x以上の最小の整数。
Clip1Y(x)=Clip3(0,(1<<BitDepthY)-1,x)
Clip1C(x)=Clip3(0,(1<<BitDepthC)-1,x)
Figure 0007534395000013
Cos(x)ラジアン単位の引数xに対して演算する三角余弦関数。
Floor(x)x以下の最大の整数。
Figure 0007534395000014
Ln(x)xの自然対数(底eの対数、ここで、eは自然対数の底定数2.718281828…である)。
Log2(x)xの底2の対数。
Log10(x)xの底10の対数。
Figure 0007534395000015
Figure 0007534395000016
Round(x)=Sign(x)*Floor(Abs(x)+0.5)
Figure 0007534395000017
Sin(x)ラジアン単位の引数xに対して演算する三角正弦関数
Figure 0007534395000018
Swap(x,y)=(y,x)
Tan(x)ラジアン単位の引数xに対して演算する三角正接関数
演算優先順位
式における優先順位が括弧の使用によって明示的に示されない場合、以下の規則が適用される。
-より高い優先度の演算は、より低い優先度の任意の演算の前に評価される。
-同じ優先度の演算は、左から右に順番に評価される。
以下の表は、演算の優先度を最高から最低まで指定し、表の中のより高い位置はより高い優先度を示す。
Cプログラミング言語でも使用される演算子の場合、本明細書で使用される優先順位は、Cプログラミング言語で使用されるものと同じである。
表:最高(表の最上部)から最低(表の最下部)までの演算優先度
Figure 0007534395000019
論理演算のテキスト記述
テキストでは、以下の形式で数学的に記述される論理演算のステートメントは、
if(条件0)
ステートメント0
else if(条件1)
ステートメント1

else/*残りの条件に関する情報を与える注釈*/
ステートメントn
以下のように記述されてもよい。
…as follows/…the following applies:
-If 条件0、ステートメント0
-Otherwise,if 条件1、ステートメント1
-…
-Otherwise(残りの条件に関する情報を与える注釈)、ステートメントn
テキスト内の各「If…Otherwise,if…Otherwise,…」ステートメントは、「…as follows」または「…the following applies」の直後に「If…」が続くように導入されている。「If…Otherwise,if…Otherwise,…」の最後の条件は、常に「Otherwise,…」である。インターリーブされた「If…Otherwise,if…Otherwise,…」ステートメントは「…as follows」または「…the following applies」を最後の「Otherwise,…」と一致させることによって識別することができる。
テキストでは、論理演算のステートメントは、以下の形式で数学的に記述される。
if(条件0a&&条件0b)
ステートメント0
else if(条件1a||条件1b)
ステートメント1

else
ステートメントn
以下のように記述されてもよい。
…as follows/…the following applies:
-以下の条件のすべてが真である場合、ステートメント0
-条件0a
-条件0b
-そうではなく、以下の条件のうちの1つまたは複数が真である場合、ステートメント1
-条件1a
-条件1b
-…
-そうでない場合、ステートメントn
テキストでは、以下の形式で数学的に記述される論理演算のステートメントは、
if(条件0)
ステートメント0
if(条件1)
ステートメント1
以下のように記述されてもよい。
条件0のとき、ステートメント0
条件1のとき、ステートメント1
本発明の実施形態は主にビデオコーディングに基づいて記載されているが、コーディングシステム10、エンコーダ20、およびデコーダ30(およびにそれに対応してシステム10)の実施形態、ならびに本明細書に記載された他の実施形態はまた、静止画の処理またはコーディング、すなわち、ビデオコーディングのように任意の先行または連続するピクチャとは無関係の個々のピクチャの処理またはコーディングのために構成されてもよいことに留意されたい。一般に、ピクチャ処理コーディングが単一のピクチャ17に限定される場合、インター予測ユニット244(エンコーダ)および344(デコーダ)のみが利用可能でない場合がある。ビデオエンコーダ20およびビデオデコーダ30のすべての他の(ツールまたは技術とも呼ばれる)機能は、静止画処理、例えば、残差計算204/304、変換206、量子化208、逆量子化210/310、(逆)変換212/312、分割262/362、イントラ予測254/354、および/またはループフィルタリング220,320、ならびにエントロピーコーディング270およびエントロピー復号304に等しく使用されてもよい。
例えば、エンコーダ20およびデコーダ30の実施形態、ならびに例えば、エンコーダ20およびデコーダ30を参照して本明細書に記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装されてもよい。ソフトウェアに実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体に記憶されるか、または通信媒体を介して送信され、ハードウェアベースの処理ユニットによって実行されてもよい。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、例えば通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含んでもよい。このようにして、コンピュータ可読媒体は、一般に、(1)非一時的である有形のコンピュータ可読記憶媒体、または(2)信号もしくは搬送波などの通信媒体に対応してもよい。データ記憶媒体は、本開示に記載された技法を実装するための命令、コード、および/あるいはデータ構造を取り込むために1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る任意の使用可能な媒体であってもよい。コンピュータプログラム製品はコンピュータ可読媒体を含んでもよい。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または命令もしくはデータ構造の形態で所望のプログラムコードを記憶するために使用することができ、コンピュータによってアクセスすることができる任意の他の媒体を含むことができる。また、任意の接続はコンピュータ可読媒体と適切に呼ばれる。例えば、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから命令が送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まず、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)(disc)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(DVD)(disc)、フロッピーディスク(disk)、およびブルーレイディスク(disc)を含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザを用いて光学的にデータを再生する。上記の組合せもまた、コンピュータ可読媒体の範囲内に含まれるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の同等の集積もしくは個別の論理回路などの1つまたは複数のプロセッサによって実行されてもよい。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造のいずれか、または本明細書に記載された技法の実装に適した任意の他の構造を指すことができる。加えて、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内で提供されるか、または結合されたコーデックに組み込まれてもよい。また、技法は、1つまたは複数の回路または論理素子に完全に実装することができる。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、または一組のIC(例えば、チップセット)を含む、多種多様なデバイスまたは装置に実装されてもよい開示された技法を実行するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットが本開示に記載されているが、必ずしも異なるハードウェアユニットによる実現を必要としない。むしろ、上述されたように、様々なユニットは、適切なソフトウェアおよび/またはファームウェアとともに、コーデックハードウェアユニットに組み合わされるか、または上述された1つもしくは複数のプロセッサを含む相互動作可能なハードウェアユニットの集合によって提供されてもよい。
10 コーディングシステム
12 ソースデバイス
13 通信チャネル
14 宛先デバイス
17 ピクチャ
20 ビデオエンコーダ
30 ビデオデコーダ
100 符号化装置
104 残差計算ユニット
106 変換ユニット
108 量子化ユニット
110 逆量子化ユニット
112 逆変換ユニット
114 復元ユニット
116 ラインバッファ
120 インループフィルタ
130 復号ピクチャバッファ
142 インター推定ユニット
144 インター予測装置
152 イントラ推定ユニット
154 イントラ予測ユニット
160 モード選択ユニット
170 エントロピー符号化ユニット
200 復号装置
204 エントロピー復号ユニット
210 逆量子化ユニット
212 逆変換ユニット
214 復元ユニット
216 ラインバッファ
220 インループフィルタ
230 復号ピクチャバッファ
244 インター予測装置
254 イントラ予測ユニット
260 モード選択ユニット
600 インター予測方法
700 フィルタ係数のセット
800 インター予測方法
900 ビデオコーディングデバイス
910 入口ポート
920 受信機ユニット(Rx)
930 中央処理装置(CPU)
940 送信機ユニット(Tx)
950 出口ポート
960 メモリ
970 コーディングモジュール
1000 ビデオコーディングデバイス
1002 プロセッサ
1004 メモリ
1006 コードおよびデータ
1008 オペレーティングシステム
1010 アプリケーションプログラム
1012 バス
1014 二次ストレージ
1018 ディスプレイ
1100 インター予測装置
1110 決定ユニット
1120 インター予測処理ユニット
3100 コンテンツ供給システム
3102 キャプチャデバイス
3104 通信リンク
3106 端末デバイス
3108 スマートフォンまたはPad
3110 コンピュータまたはラップトップ
3112 ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)
3114 TV
3116 セットトップボックス(STB)
3118 テレビ会議システム
3120 ビデオ監視システム
3122 携帯情報端末(PDA)
3124 車載デバイス
3126 ディスプレイ
3202 プロトコル進行ユニット
3204 逆多重化ユニット
3206 ビデオデコーダ
3208 オーディオデコーダ
3210 サブタイトルデコーダ
3212 同期ユニット
3214 ビデオ/オーディオディスプレイ
3216 ビデオ/オーディオ/サブタイトルディスプレイ

Claims (16)

  1. ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の装置(144、244)であって、前記装置(144、244)が、
    命令を含むメモリと、
    前記メモリと通信し、前記命令の実行時に、
    動き補償モデルに基づいて前記現在の完全整数ピクセルの動きベクトルを決定し、
    前記現在の完全整数ピクセルに対して、前記現在の完全整数ピクセルの前記動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、
    前記現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、前記基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定し、前記現在フレーム内の前記事前定義されたフィルタサポートピクセルのセットが、前記現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含み、
    デコーダサイド動きベクトル改良DMVRにおける双線形補間において使用される式と類似するかまたは同一である式が使用される双線形補間を適用することにより、前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルおよび前記基準フレーム内の前記対応するフィルタサポートピクセルのそれぞれのサンプル値(L)を取得し、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値および前記基準フレーム内の前記対応するフィルタサポートピクセルの前記サンプル値に空間高域フィルタを適用することにより、前記現在の完全整数ピクセルのインター予測サンプル値を決定する
    ように構成されたプロセッサと
    を備え
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値(L)が、以下の式:
    A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
    B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
    L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
    に基づいて決定され、
    表TがサイズN×2の事前定義された表であり、Nが部分位置の数であり、値shift0、shift1、offset0、offset1が、サンプルビット深度および前記表Tに基づいて導出される、装置。
  2. 前記表Tが2つの列T[0]およびT[1]を有し、T[1]=64-T[0]であり、前記表の行数が部分サンプル位置の数に対応する、請求項1に記載の装置。
  3. 前記表TがN=16個の部分サンプル位置を含み、前記表Tが以下によって与えられる、請求項2に記載の装置。
  4. 前記表TがN=32個の部分サンプル位置を含み、前記表が以下によって与えられる、請求項2に記載の装置。
  5. shift0=bitDepth-8、offset0=0、shift1=12-shift0、offset1=1<<(shift1-1)である、請求項3または4に記載の装置。
  6. 前記サンプルビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である、請求項5に記載の装置。
  7. ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の装置(144、244)であって、前記装置(144、244)が、
    命令を含むメモリと、
    前記メモリと通信し、前記命令の実行時に、
    動き補償モデルに基づいて前記現在の完全整数ピクセルの動きベクトルを決定し、
    前記現在の完全整数ピクセルに対して、前記現在の完全整数ピクセルの前記動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定し、
    前記現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、前記基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定し、前記現在フレーム内の前記事前定義されたフィルタサポートピクセルのセットが、前記現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含み、
    デコーダサイド動きベクトル改良(DMVR)における双線形補間において使用される式と類似するかまたは同一である式が使用される双線形補間を適用することにより、前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルおよび前記基準フレーム内の前記対応するフィルタサポートピクセルのそれぞれのサンプル値(L)を取得し、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値および前記基準フレーム内の前記対応するフィルタサポートピクセルの前記サンプル値に空間高域フィルタを適用することにより、前記現在の完全整数ピクセルのインター予測サンプル値を決定する
    ように構成されたプロセッサと
    を備え、
    前記プロセッサが、前記現在の完全整数ピクセルの前記サンプル値の前記インター予測のための入力として、以下のエンティティ:
    -全サンプル単位内の前記現在ブロックの位置(xCb,yCb)
    -前記現在ブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
    -前記動きベクトルの水平変化dX
    -前記動きベクトルの垂直変化dY
    -動きベクトルmvBaseScaled
    -1つまたは複数の選択された基準ピクチャサンプル配列refPicLX
    -1つまたは複数のサンプルビット深度bitDepth
    -サンプル内のフレームの幅pic_width
    -サンプル内の前記フレームの高さpic_height
    -予測サンプル値の(cbWidth)×(cbHeight)の配列predSamplesLXと呼ばれる、(cbWidth)×(cbHeight)から取得された配列
    を使用するようにさらに構成され、
    変数AおよびBが、
    A=(refPicLX[xInt][yInt]*T[xFrac][0]+refPicLX[xInt+1][yInt]*T[xFrac][1]+offset0)>>shift0
    B=(refPicLX[xInt][yInt+1]*T[xFrac][0]+refPicLX[xInt+1][yInt+1]*T[xFrac][1]+offset0)>>shift0
    によって取得され、
    mvX[0]=(mvBaseScaled[0]+dX[0]*x+dY[0]*y)
    mvX[1]=(mvBaseScaled[1]+dX[1]*x+dY[1]*y)
    xInt=xCb+(mvX[0]>>9)+x
    yInt=yCb+(mvX[1]>>9)+y
    xFrac=(mvX[0]>>4)&31
    yFrac=(mvX[1]>>4)&31
    であり、前記選択された基準ピクチャサンプル配列refPicLX[xInt][yInt]内の前記位置xIntおよびyIntが、
    xInt=Clip3(0,pic_width-1,xInt)
    yInt=Clip3(0,pic_height-1,yInt)
    によって与えられ、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの位置(x,y)に対応する前記サンプル値(bx,y)が、以下の式:
    bx,y=(A*T[yFrac][0]+B*T[yFrac][1]+offset1)>>shift1
    に基づいて決定され、
    表TがサイズN×2の事前定義された表であり、Nが部分位置の数であり、値shift0、shift1、offset0、offset1が、サンプルビット深度および前記表Tに基づいて導出される、装置。
  8. ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の方法(600)であって、前記方法(600)が、
    動き補償モデルに基づいて前記現在の完全整数ピクセルの動きベクトルを決定するステップ(601)と、
    前記現在の完全整数ピクセルに対して、前記現在の完全整数ピクセルの前記動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップ(603)と、
    前記現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、前記基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定するステップ(605)であって、前記現在フレーム内の前記事前定義されたフィルタサポートピクセルのセットが、前記現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップ(605)と、
    デコーダサイド動きベクトル改良DMVRにおける双線形補間において使用される式と類似するかまたは同一である式が使用される双線形補間を適用することにより、前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルおよび前記基準フレーム内の前記対応するフィルタサポートピクセルのそれぞれのサンプル値を取得するステップ(607)と、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値および前記基準フレーム内の前記対応するフィルタサポートピクセルの前記サンプル値に空間高域フィルタを適用することにより、前記現在の完全整数ピクセルのインター予測サンプル値を決定するステップ(609)と
    を含み、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値(L)が、以下の式:
    A=(L0*T[fdX][0]+L1*T[fdX][1]+offset0)>>shift0
    B=(L2*T[fdX][0]+L3*T[fdX][1]+offset0)>>shift0
    L=(A*T[fdY][0]+B*T[fdY][1]+offset1)>>shift1
    に基づいて決定され、
    表TがサイズN×2の事前定義された表であり、Nが部分位置の数であり、値shift0、shift1、offset0、offset1が、サンプルビット深度および前記表Tに基づいて導出され、前記サンプルビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である、方法。
  9. 前記表Tが2つの列T[0]およびT[1]を有し、T[1]=64-T[0]であり、前記表の行数が部分サンプル位置の数に対応する、請求項8に記載の方法。
  10. 前記表TがN=16個の部分サンプル位置を含み、前記表Tが以下によって与えられる、請求項9に記載の方法。
  11. 前記表TがN=32個の部分サンプル位置を含み、前記表が以下によって与えられる、請求項9に記載の方法。
  12. 前記サンプルビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である、請求項10または11に記載の方法。
  13. ビデオ信号の現在フレームの現在ブロックに関連付けられた複数のピクセルのうちの現在の完全整数ピクセルのサンプル値のインター予測用の方法(600)であって、前記方法(600)が、
    動き補償モデルに基づいて前記現在の完全整数ピクセルの動きベクトルを決定するステップ(601)と、
    前記現在の完全整数ピクセルに対して、前記現在の完全整数ピクセルの前記動きベクトルに基づいて基準フレーム内の対応するサブ整数ピクセルを決定するステップ(603)と、
    前記現在フレーム内の事前定義されたフィルタサポートピクセルのセットの位置に基づいて、前記基準フレーム内の対応するフィルタサポートピクセルのセットの位置を決定するステップ(605)であって、前記現在フレーム内の前記事前定義されたフィルタサポートピクセルのセットが、前記現在の完全整数ピクセルの1つまたは複数の隣接する完全整数ピクセルおよび/またはサブ整数ピクセルを含む、ステップ(605)と、
    デコーダサイド動きベクトル改良(DMVR)における双線形補間において使用される式と類似するかまたは同一である式が使用される双線形補間を適用することにより、前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルおよび前記基準フレーム内の前記対応するフィルタサポートピクセルのそれぞれのサンプル値を取得するステップ(607)と、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの前記サンプル値および前記基準フレーム内の前記対応するフィルタサポートピクセルの前記サンプル値に空間高域フィルタを適用することにより、前記現在の完全整数ピクセルのインター予測サンプル値を決定するステップ(609)と
    を含み、
    前記現在の完全整数ピクセルの前記サンプル値の前記インター予測のための入力として、以下のエンティティ:
    -全サンプル単位内の前記現在ブロックの位置(xCb,yCb)
    -前記現在ブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
    -前記動きベクトルの水平変化dX
    -前記動きベクトルの垂直変化dY
    -動きベクトルmvBaseScaled
    -1つまたは複数の選択された基準ピクチャサンプル配列refPicLX
    -1つまたは複数のサンプルビット深度bitDepth
    -サンプル内のフレームの幅pic_width
    -サンプル内の前記フレームの高さpic_height
    -予測サンプル値の(cbWidth)×(cbHeight)の配列predSamplesLXと呼ばれる、(cbWidth)×(cbHeight)から取得された配列
    が使用され、
    変数AおよびBが、
    A=(refPicLX[xInt][yInt]*T[xFrac][0]+refPicLX[xInt+1][yInt]*T[xFrac][1]+offset0)>>shift0
    B=(refPicLX[xInt][yInt+1]*T[xFrac][0]+refPicLX[xInt+1][yInt+1]*T[xFrac][1]+offset0)>>shift0
    によって取得され、
    mvX[0]=(mvBaseScaled[0]+dX[0]*x+dY[0]*y)
    mvX[1]=(mvBaseScaled[1]+dX[1]*x+dY[1]*y)
    xInt=xCb+(mvX[0]>>9)+x
    yInt=yCb+(mvX[1]>>9)+y
    xFrac=(mvX[0]>>4)&31
    yFrac=(mvX[1]>>4)&31
    であり、前記選択された基準ピクチャサンプル配列refPicLX[xInt][yInt]内の前記位置xIntおよびyIntが、
    xInt=Clip3(0,pic_width-1,xInt)
    yInt=Clip3(0,pic_height-1,yInt)
    によって与えられ、
    前記基準フレーム内の前記現在の完全整数ピクセルの前記対応するサブ整数ピクセルの位置(x,y)に対応する前記サンプル値(bx,y)が、以下の式:
    bx,y=(A*T[yFrac][0]+B*T[yFrac][1]+offset1)>>shift1
    に基づいて決定され、
    表TがサイズN×2の事前定義された表であり、Nが部分位置の数であり、値shift0、shift1、offset0、offset1が、サンプルビット深度および前記表Tに基づいて導出され、前記サンプルビット深度が10であり、shift0=2、offset0=0、shift1=10、offset1=1<<9である、方法。
  14. デコーダであって、
    1つまたは複数のプロセッサと、
    前記プロセッサに結合され、前記プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、前記プログラミングが、前記プロセッサによって実行されると、請求項8から13のいずれか一項に記載の方法を遂行するように前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
    を備える、デコーダ。
  15. エンコーダであって、
    1つまたは複数のプロセッサと、
    前記プロセッサに結合され、前記プロセッサによって実行するためのプログラミングを記憶する非一時的コンピュータ可読記憶媒体であって、前記プログラミングが、前記プロセッサによって実行されると、請求項8から13のいずれか一項に記載の方法を遂行するように前記エンコーダを構成する、非一時的コンピュータ可読記憶媒体と、
    を備える、エンコーダ。
  16. コンピュータデバイスによって実行されると、請求項8から13のいずれか一項に記載の方法を前記コンピュータデバイスに実行させるプログラムコードを搬送する、非一時的コンピュータ可読記憶媒体。
JP2022519768A 2019-09-30 2020-09-30 インター予測装置用の補間フィルタおよびビデオコーディングのための方法 Active JP7534395B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962908591P 2019-09-30 2019-09-30
US62/908,591 2019-09-30
PCT/RU2020/050256 WO2020251415A2 (en) 2019-09-30 2020-09-30 Interpolation filter for an inter prediction apparatus and method for video coding

Publications (2)

Publication Number Publication Date
JP2022550545A JP2022550545A (ja) 2022-12-02
JP7534395B2 true JP7534395B2 (ja) 2024-08-14

Family

ID=73786093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022519768A Active JP7534395B2 (ja) 2019-09-30 2020-09-30 インター予測装置用の補間フィルタおよびビデオコーディングのための方法

Country Status (6)

Country Link
US (1) US12047609B2 (ja)
EP (1) EP4029250A4 (ja)
JP (1) JP7534395B2 (ja)
KR (1) KR20220066974A (ja)
CN (1) CN114503559B (ja)
WO (1) WO2020251415A2 (ja)

Citations (1)

* 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

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620109B2 (en) * 2002-04-10 2009-11-17 Microsoft Corporation Sub-pixel interpolation in motion estimation and compensation
FI3826307T3 (fi) * 2011-06-24 2023-10-18 Ntt Docomo Inc Menetelmä liikekompensoitua ennustusta varten
CN107925772B (zh) * 2015-09-25 2020-04-14 华为技术有限公司 利用可选插值滤波器进行视频运动补偿的装置和方法
US11638027B2 (en) * 2016-08-08 2023-04-25 Hfi Innovation, Inc. Pattern-based motion vector derivation for video coding
BR112019018922A8 (pt) * 2017-03-16 2023-02-07 Mediatek Inc Método e aparelho de refinamento de movimento com base em fluxo óptico bi-direcional para codificação de vídeo
CN111201792B (zh) * 2017-10-09 2022-06-14 华为技术有限公司 指向分数像素点位置的运动矢量的修正运动矢量
WO2019110120A1 (en) * 2017-12-08 2019-06-13 Huawei Technologies Co., Ltd. Template matching function for bi-predictive mv refinement
US11317111B2 (en) * 2019-09-29 2022-04-26 Qualcomm Incorporated Affine coding with vector clipping

Patent Citations (1)

* 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

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Huanbang Chen Haitao Yang Maxim Sychev Timofey Solovyev Jianle Chen,CE4: Affine inter prediction (Test 1.5) [online],JVET-K0185-v3,ITU-T インターネット<URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/11_Ljubljana/wg11/JVET-K0185-v3.zip>,2018年07月13日,pp.1-3
Text of ISO/IEC CD 23094-1, Essential Video Coding [online],ISO/IEC JTC 1/SC 29/WG 11 N18568, ISO/IEC JTC 1/SC 29/WG 11 Coding of moving pictures and audio, [2024年1月26日検索],2019年07月,pp.1-6,157-172,インターネット <URL: https://mpeg.chiariglione.org/sites/default/files/files/standards/parts/docs/w18568.zip>

Also Published As

Publication number Publication date
US20220248062A1 (en) 2022-08-04
JP2022550545A (ja) 2022-12-02
EP4029250A4 (en) 2023-01-04
WO2020251415A9 (en) 2021-02-25
WO2020251415A3 (en) 2021-03-25
WO2020251415A2 (en) 2020-12-17
CN114503559B (zh) 2023-10-20
US12047609B2 (en) 2024-07-23
EP4029250A2 (en) 2022-07-20
CN114503559A (zh) 2022-05-13
KR20220066974A (ko) 2022-05-24

Similar Documents

Publication Publication Date Title
KR102596735B1 (ko) 루마 및 크로마 성분에 대한 ibc 전용 버퍼 및 디폴트 값 리프레싱을 사용하는 인코더, 디코더 및 대응하는 방법들
KR102712842B1 (ko) 인코더, 디코더 및 해당 방법
JP2023103291A (ja) エンコーダ、デコーダ、および対応するイントラ予測方法
CN113632464B (zh) 分量间预测的方法和设备
TW201832562A (zh) 具有減低複雜性之視訊寫碼中之雙邊濾波器
JP7314300B2 (ja) イントラ予測のための方法および装置
CN113545063B (zh) 使用线性模型进行帧内预测的方法及装置
CN117499669A (zh) 用于色度子块的仿射帧间预测的方法及装置
CN113508592A (zh) 编码器、解码器及相应的帧间预测方法
CN114449265B (zh) 用于帧内平滑的方法和装置
CN117041555A (zh) 使用插值滤波器进行帧内预测的方法和装置
KR102611845B1 (ko) 옵티컬 플로 기반 비디오 인터 예측
CN114503558B (zh) 插值滤波器在仿射运动补偿中的适应性使用
CN115349257B (zh) 基于dct的内插滤波器的使用
AU2024201152A1 (en) An encoder, a decoder and corresponding methods using intra mode coding for intra prediction
CN114830665B (zh) 仿射运动模型限制
CN114556923B (zh) 编码器、解码器和使用插值滤波的对应方法
JP7534395B2 (ja) インター予測装置用の補間フィルタおよびビデオコーディングのための方法
CN114424554B (zh) 色度qp偏移表指示和推导的方法和装置
CN113228632B (zh) 用于局部亮度补偿的编码器、解码器、以及对应方法
US11997296B2 (en) Motion field storage optimization for a line buffer
EP4236313A2 (en) An encoder, a decoder and corresponding methods of reduction on intra prediction for the planar mode

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220510

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240801

R150 Certificate of patent or registration of utility model

Ref document number: 7534395

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150