JP2022514160A - 補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ - Google Patents

補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ Download PDF

Info

Publication number
JP2022514160A
JP2022514160A JP2021518927A JP2021518927A JP2022514160A JP 2022514160 A JP2022514160 A JP 2022514160A JP 2021518927 A JP2021518927 A JP 2021518927A JP 2021518927 A JP2021518927 A JP 2021518927A JP 2022514160 A JP2022514160 A JP 2022514160A
Authority
JP
Japan
Prior art keywords
picture
filter
interpolation filter
block
target
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.)
Granted
Application number
JP2021518927A
Other languages
English (en)
Other versions
JP7331095B2 (ja
Inventor
▲楓▼ ▲呉▼
▲寧▼ ▲閻▼
▲東▼ ▲劉▼
厚▲強▼ 李
▲海▼涛 ▲楊▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology of China USTC
Huawei Technologies Co Ltd
Original Assignee
University of Science and Technology of China USTC
Huawei Technologies Co Ltd
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 University of Science and Technology of China USTC, Huawei Technologies Co Ltd filed Critical University of Science and Technology of China USTC
Publication of JP2022514160A publication Critical patent/JP2022514160A/ja
Application granted granted Critical
Publication of JP7331095B2 publication Critical patent/JP7331095B2/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

この出願の実施形態は、補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、エンコーダ、並びに、デコーダを開示する。トレーニング方法によれば、第2の補間フィルタをトレーニングするために、従来の補間フィルタを使用することによって補間により得られる第1のサブピクセルピクチャがラベルデータとして使用され、それにより、トレーニングにより得られる第2の補間フィルタが、第1の分数ピクセル位置の補間により得られるピクセル値に関して直接に使用され得る。したがって、ラベルデータがより正確であり、また、ビデオピクチャのコーディング性能が向上される。エンコーディング方法によれば、インター予測中、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタが候補補間フィルタのセットから決定され、また、エンコーダは、現在のエンコーディングピクチャブロックのコンテンツに従って、補間演算を行うのに適した補間フィルタを選択する。これにより、より高い予測精度を伴う予測ブロックを得ることができ、ビットストリームの量を削減できるとともに、ビデオピクチャの圧縮率を高めることができる。

Description

この出願は、参照によりその全体が本願に組み入れられる、「補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ」と題された2018年10月6日付けで中国国家知識産権局に出願された中国特許出願第201811166872.X号の優先権を主張する。
この出願は、ビデオコーディング技術の分野に関し、特に、補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、エンコーダ、並びに、デコーダに関する。
デジタルビデオ機能は、デジタルテレビ、デジタルライブ放送システム、無線放送システム、携帯情報端末(PDA)、ラップトップ又はデスクトップコンピュータ、タブレットコンピュータ、電子書籍リーダ、デジタルカメラ、デジタル記録装置、デジタルメディアプレーヤ、ビデオゲーム装置、ビデオゲーム機、携帯電話又は衛星無線電話(「スマートフォン」とも称される)、ビデオ会議装置、ビデオストリーミング装置などを含む、多種多様な装置に組み込まれ得る。デジタルビデオ装置は、ビデオ圧縮技術、例えば、MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4 パート10 先進ビデオコーディング(AVC)によって規定される標準規格、ビデオコーディング標準規格H.265/高効率ビデオコーディング(HEVC)標準規格、及び、そのような標準規格の拡張に記載されるビデオ圧縮技術を実装する。ビデオ装置は、ビデオ圧縮技術を実装することによってデジタルビデオ情報をより効率的に送信、受信、コーディング、デコーディング、及び/又は、記憶することができる。
ビデオ圧縮技術は、ビデオシーケンスにおける固有の冗長性を低減又は除去するために空間(イントラピクチャ)予測及び/又は時間(インターピクチャ)予測を実行するために使用される。ブロックベースのビデオコーディングでは、ビデオスライス(すなわち、ビデオフレーム又はビデオフレームの一部)がピクチャブロックに分割されてもよく、また、ピクチャブロックは、ツリーブロック、コーディングユニット(CU)、及び/又は、コーディングノードと称されてもよい。ピクチャのイントラコーディング(I)されるべきスライス内のピクチャブロックは、同じピクチャ内の隣り合うブロックにおける基準サンプルに基づく空間予測によってコーディングされる。ピクチャのインターコーディング(P又はB)されるべきスライス内のピクチャブロックの場合には、同じピクチャ内の隣り合うブロックにおける基準サンプルに基づく空間予測、又は、他の基準ピクチャ内の基準サンプルに基づく時間予測が使用されてもよい。ピクチャがフレームと称されてもよく、また、基準ピクチャが基準フレームと称されてもよい。
高効率ビデオコーディング(HEVC)標準規格を含む様々なビデオコーディング標準規格は、ピクチャブロックのために使用される予測コーディングモードを提案する。具体的には、現在のコーディングされるべきブロックは、コーディングされたビデオ・データ・ブロックに基づいて予測される。イントラ予測モードにおいて、現在のブロックは、現在のブロックと同じピクチャ内の1つ以上の既にデコードされた隣り合うブロックに基づいて予測される。インター予測モードでは、異なるピクチャ内のデコードされたブロックに基づいて現在のブロックが予測される。
しかしながら、インター予測モードでは、動きベクトルがサブピクセルを指し示すときに、最適一致基準ブロックに関してサブピクセル補間が実行される必要がある。従来の技術では、サブピクセル補間を実行するために所定の係数を伴う補間フィルタが一般に使用されるが、現在の様々な非静止ビデオ信号に関して予測精度が低い。その結果、ビデオピクチャのコーディング性能が悪い。
この出願の実施形態は、ピクチャブロックの動き情報の予測精度を高めて、コーディング性能を更に向上させるために、補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、エンコーダ、並びに、デコーダを提供する。
第1の態様によれば、この出願の一実施形態は、補間フィルタトレーニング方法を提供する。方法は以下を含む。コンピュータデバイスは、整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行い、
第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力し、
コンピュータデバイスは、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって第2の補間フィルタのフィルタパラメータを決定する。
この出願のこの実施形態では、第2の補間フィルタをトレーニングするために、従来の補間フィルタを使用することによって補間により得られる第1のサブピクセルピクチャがラベルデータとして使用され、それにより、トレーニングにより得られる第2の補間フィルタが、第1の分数ピクセル位置の補間により得られるピクセル値に関して直接に使用され得るのが分かる。したがって、ラベルデータがより正確であり、また、ビデオピクチャのコーディング性能が向上される。また、予測を行うべくニューラルネットワークに基づく第2の補間フィルタが非線形フィルタとして使用される場合には、複雑なビデオ信号に関して予測精度が低く、したがって、ビデオピクチャのコーディング性能が更に向上される。
第2の態様によれば、この出願の一実施形態は、補間フィルタトレーニング方法を更に提供する。方法は以下を含む。コンピュータデバイスは、整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行い、第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力し、第1のピクチャを取得するために、フリップ演算が行われる第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するためにフリップ演算の逆演算を第1のピクチャに対して行い、第2の補間フィルタ及び第3の補間フィルタがフィルタパラメータを共有し、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてフィルタパラメータを決定する。
本発明のこの実施形態では、第1のサブピクセルピクチャを取得するために従来の補間フィルタを使用することによってサンプルピクチャに対してサブピクセル補間が実行され、また、第1のサブピクセルピクチャがラベルデータとして使用されることが分かる。サブピクセル補間の反転性原理を使用することによって、フィルタパラメータは、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数、及び、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数の両方を最小化することによって決定され、それにより、第2の補間フィルタは、サンプルピクチャを監視することによって制約される。これにより、第2の補間フィルタを使用することによるサブピクセル補間の精度が向上し、ビデオピクチャのコーディング性能が更に向上する。
随意的に、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてコンピュータデバイスがフィルタパラメータを決定する実施は、以下の2つの実施を含んでよいが、これらに限定されない。
第1の実施:コンピュータデバイスは、第3の関数を最小化することによってフィルタパラメータを決定し、第3の関数は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数との間の加重和である。
第2の実施:コンピュータデバイスは、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを交互に最小化することによってフィルタパラメータを決定する。
第1の態様及び第2の態様のコンピュータデバイスがエンコーディングデバイス又は圧縮デバイスであってもよく、また、前述のデバイスが、コンピュータ、サーバ、又は、端末(例えば、携帯電話又はタブレットコンピュータ)などのデータ処理機能を有するデバイスであってもよいことが理解されるべきである。
第3の態様によれば、この出願の一実施形態は、ビデオピクチャエンコーディング方法を更に提供する。方法は以下を含む。
エンコーダは、現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を実行し、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示し、インター予測プロセスは、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定することを含む。
エンコーダは、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードし、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される。
第4の態様によれば、この出願の一実施形態は、ビデオピクチャエンコーディング方法を更に提供する。方法は以下を含む。
エンコーダは、現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を実行し、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示し、インター予測プロセスは、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定することを含む。
エンコーダは、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードし、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、エンコーディング情報は標的補間フィルタの指示情報を含まず、或いは、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合、エンコーディング情報は標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックが標的補間フィルタを使用してサブピクセル補間を実行することを示すために使用される。
この出願のこの実施形態では、インター予測を実行するとき、エンコーダが、現在のエンコーディングピクチャブロックのコンテンツに基づいて、補間演算を実行するための補間フィルタを選択して、より高い予測精度を有する予測ブロックを取得し、ビットストリームの量を低減し、ビデオピクチャの圧縮率を高めることができることが分かる。
第3の態様又は第4の態様のエンコーダは、エンコーダを含むエンコーディングデバイスであってもよく、また、エンコーディングデバイスは、コンピュータ、サーバ、又は、端末(例えば、携帯電話又はタブレットコンピュータ)などのデータ処理機能を有するデバイスであってもよいことが理解されるべきである。
第3の態様又は第4の態様に関連して、この出願のこの実施形態の想定し得る実施において、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタをエンコーダが決定する実施は、以下の通りであってもよい。エンコーダは、レート歪みコスト基準に従った候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定する。
インター予測を行うとき、エンコーダが、予測精度を向上させ、ビットストリームの量を削減し、ビデオピクチャの圧縮率を高めるために、現在のエンコーディングピクチャブロックのコンテンツに基づいて、補間演算を行うべく最小のレート歪みコストを伴う補間フィルタを選択できることが分かる。
第3の態様又は第4の態様に関連して、この出願のこの実施形態の想定し得る実施において、エンコーダが現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を実行する実施は、以下の通りであってもよい。
エンコーダは、現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定する。
エンコーダは、N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタのセット内の各補間フィルタを使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を実行し、Nは正の整数である。
エンコーダは、整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックから、現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定する。
エンコーダは、予測ブロックに基づいて動き情報を決定し、補間によって予測ブロックを取得するために使用される補間フィルタは、標的補間フィルタである。
インター予測中に、エンコーダが、ビットストリームの量を低減し、ビデオピクチャの圧縮率を高めるために、最小の歪みコストを伴う基準ブロックに対応する補間フィルタを選択して補間を実行できることが分かる。
第3の態様又は第4の態様に関連して、この出願のこの実施形態の想定し得る実施において、候補補間フィルタのセットは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタを含む。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
更に、エンコーディング情報は、トレーニングによって取得された標的補間フィルタのフィルタパラメータを更に含み、或いは、エンコーディング情報はフィルタパラメータ差分を更に含み、また、フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である。
エンコーダが、候補補間フィルタのセット内の第2の補間フィルタに対してオンライントレーニングを実行してもよく、それにより、現在のエンコーディングピクチャユニットのコンテンツに基づいて補間フィルタをリアルタイムで調整することができ、その結果、予測精度を向上できることが分かる。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
第5の態様によれば、この出願の一実施形態は、ビデオピクチャデコーディング方法を更に提供する。方法は以下を含む。
デコーダは、標的補間フィルタの指示情報を取得するために、ビットストリームを構文解析する。
デコーダは、現在のデコーディングピクチャブロックの動き情報を取得し、動き情報は分数ピクセル位置を指し示す。
デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を行うことを含む。
デコーダは、現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成する。
第6の態様によれば、この出願の一実施形態は、ビデオピクチャデコーディング方法を更に提供する。方法は以下を含む。
デコーダは、現在のデコーディングピクチャブロックの情報を取得するために、ビットストリームを構文解析し、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される。
デコーダは、現在のデコーディングピクチャブロックの動き情報を取得し、動き情報は分数ピクセル位置を指し示す。
現在のピクチャブロックのインター予測モードが標的インター予測モードではない場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報はビットストリームを構文解析することによって取得される。
デコーダは、現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックを再構成する。
随意的に、現在のピクチャブロックのインター予測モードが標的インター予測モードである場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のピクチャブロックのインター予測モードが標的インター予測モードである場合には、デコーダが現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが、具体的に以下を含むことが理解されるべきである。デコーダは、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定し、或いは、デコーダは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが、標的補間フィルタの、ビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定する。
この出願のこの実施形態では、インター予測中に、デコーダが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、サブピクセル補間を実行するべく標的インター予測モードの指示情報によって示される補間フィルタを選択し、それにより、デコーダが、補間演算を実行するべく現在のエンコーディングピクチャブロックのコンテンツに基づいて補間フィルタを選択することが分かる。これにより、より高い予測精度を伴う予測ブロックを得ることができ、ビットストリームの量を削減できるとともに、ビデオピクチャの圧縮率を高めることができる。
第5の態様又は第6の態様に関連して、この出願のこの実施形態の想定し得る実施において、デコーダが現在のデコーディングピクチャブロックの動き情報を取得する実施は、以下の3つの実施を含んでもよいが、これらに限定されない。
第1の実施:標的インター予測モードではない場合(例えば、非マージモード)、デコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスを取得するために、ビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動き情報を決定してもよい。
第2の実施:標的インター予測モードではない場合(例えば、非マージモード)、デコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するために、ビットストリームを構文解析し、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定し、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得してもよい。
第3の実施:標的インター予測モード(例えば、マージモード)において、現在のデコーディングピクチャブロックのインター予測モードがマージモード(merge mode)である場合に、デコーダは、既にデコードされたピクチャブロックの、マージモードでマージングによって取得される動き情報、すなわち、現在のデコーディングピクチャブロックの動き情報を取得する。
第5の態様又は第6の態様に関連して、この出願のこの実施形態の想定し得る実施において、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、
標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、方法は、
現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するためにビットストリームを構文解析するステップを更に含んでもよく、
現在のデコーディングピクチャブロックの予測ブロックを取得するために標的補間フィルタに基づいてサブピクセル補間が行われる前に、方法は、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップを更に含んでもよい。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、方法は、
フィルタパラメータ差分を取得するためにビットストリームを構文解析するステップであって、フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
既にデコードされたピクチャユニットの標的補間フィルタのフィルタパラメータとフィルタパラメータ差分とに基づいて現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを取得するステップと、
現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップと、を更に含んでもよい。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
第7の態様によれば、この出願の一実施形態は、第1の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含む補間フィルタトレーニング装置を更に提供する。例えば、補間フィルタトレーニング装置は、
整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うように構成されるラベルデータ取得モジュールと、
第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力するように構成される補間モジュールと、
第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって第2の補間フィルタのフィルタパラメータを決定するように構成されるパラメータ決定モジュールと、を含んでもよい。
第8の態様によれば、この出願の一実施形態は、第2の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含む補間フィルタトレーニング装置を更に提供する。例えば、補間フィルタトレーニング装置は、
整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うように構成されるラベルデータ取得モジュールと、
第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力するように構成される補間モジュールと、
第1のピクチャを取得するために、フリップ演算が行われる第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するためにフリップ演算の逆演算を第1のピクチャに対して行うように構成される逆補間モジュールであって、第2の補間フィルタ及び第3の補間フィルタがフィルタパラメータを共有する、逆補間モジュールと、
第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてフィルタパラメータを決定するように構成されるパラメータ決定モジュールと、を含んでもよい。
第9の態様によれば、この出願の一実施形態は、第3の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含むエンコーダを更に提供する。例えば、エンコーダは、
現在のエンコーディングピクチャブロックに対して、現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うように構成されるインター予測ユニットであって、現在のエンコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示し、インター予測ユニットがフィルタ選択ユニットを含み、フィルタ選択ユニットが、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように構成される、インター予測ユニットと、
エンコーディング情報を取得するために、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするとともに、エンコーディング情報をビットストリームにエンコードするように構成されるエントロピーエンコーディングユニットであって、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される、エントロピーエンコーディングユニットと、を含んでもよい。
第10の態様によれば、この出願の一実施形態は、第4の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含むエンコーダを更に提供する。例えば、エンコーダは、
現在のエンコーディングピクチャブロックに対して、現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うように構成されるインター予測ユニットであって、現在のエンコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示し、インター予測ユニットがフィルタ選択ユニットを含み、フィルタ選択ユニットが、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように構成される、インター予測ユニットと、
エンコーディング情報を取得するために、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするとともに、エンコーディング情報をビットストリームにエンコードするように構成されるエントロピーエンコーディングユニットであって、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、エンコーディング情報が標的補間フィルタの指示情報を含まず、又は、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードでない場合、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックがサブピクセル補間を実行するべく標的補間フィルタを使用することを示すために使用される、エントロピーエンコーディングユニットと、を含んでもよい。
第11の態様によれば、この出願の一実施形態は、第5の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含むデコーダを更に提供する。例えば、エンコーダは、
標的補間フィルタの指示情報を取得するためにビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報を取得するように構成されるエントロピーデコーディングユニットであって、動き情報が分数ピクセル位置を指し示す、エントロピーデコーディングユニットと、
現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するように構成されるインター予測ユニットであって、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含む、インター予測ユニットと、
現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成するように構成される再構成ユニットと、を含んでもよい。
第12の態様によれば、この出願の一実施形態は、第6の態様に係る任意の方法を実施するように構成される幾つかの機能ユニットを含むデコーダを更に提供する。例えば、エンコーダは、
現在のデコーディングピクチャブロックの情報を取得するためにビットストリームを構文解析するように構成されるエントロピーデコーディングユニットであって、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される、エントロピーデコーディングユニットと、
現在のデコーディングピクチャブロックの動き情報を取得するように構成されるインター予測ユニットであって、動き情報が分数ピクセル位置を指し示し、現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合に、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報がビットストリームを構文解析することによって取得される、インター予測ユニットと、
現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックを再構成するように構成される再構成ユニットと、を含んでもよい。
第13の態様によれば、この出願の一実施形態は、メモリ及びプロセッサを含む補間フィルタトレーニング装置を更に提供する。メモリは、プログラムコードを記憶するように構成され、プロセッサは、第1の態様又は第2の態様に係る任意の補間フィルタトレーニング方法のステップの一部又は全部を実行するためにプログラムコードを呼び出すように構成される。
例えば、プロセッサは、以下のステップ、すなわち、整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うステップと、第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力するステップと、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって第2の補間フィルタのフィルタパラメータを決定するステップを実行するためにプログラムコードを呼び出すように構成される。
例えば、プロセッサは、以下のステップ、すなわち、整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するべく、第1の補間フィルタを使用することによって補間を行うステップと、第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力するステップと、第1のピクチャを取得するために、フリップ演算が行われる第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するためにフリップ演算の逆演算を第1のピクチャに対して行うステップであって、第2の補間フィルタ及び第3の補間フィルタがフィルタパラメータを共有する、ステップと、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてフィルタパラメータを決定するステップと、を実行するためにプログラムコードを呼び出すように構成される。
随意的に、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてプロセッサがフィルタパラメータを決定する実施は、以下の2つの実施を含んでよいが、これらに限定されない。
第1の実施:第3の関数を最小化することによってフィルタパラメータが決定され、第3の関数は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数との間の加重和である。
第2の実施:第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを交互に最小化することによってフィルタパラメータが決定される。
第1の態様及び第2の態様の補間フィルタトレーニング装置がエンコーディングデバイス又は圧縮デバイスであってもよく、また、前述のデバイスが、コンピュータ、サーバ、又は、端末(例えば、携帯電話又はタブレットコンピュータ)などのデータ処理機能を有するデバイスであってもよいことが理解されるべきである。
第14の態様によれば、この出願の一実施形態は、メモリ及びプロセッサを含むエンコーディング装置を更に提供する。メモリは、プログラムコードを記憶するように構成され、プロセッサは、第3の態様又は第4の態様に係る任意のビデオピクチャエンコーディング方法のステップの一部又は全部を実行するためにプログラムコードを呼び出すように構成される。
例えば、プロセッサは、以下のステップ、すなわち、現在のエンコーディングピクチャブロックに対して、現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うステップであって、現在のエンコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示し、インター予測プロセスが、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するステップを含む、ステップと、
エンコーディング情報を取得するために、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするとともに、エンコーディング情報をビットストリームにエンコードするステップであって、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される、ステップと、を実行するためにプログラムコードを呼び出すように構成される。
他の例の場合、プロセッサは、以下のステップ、すなわち、現在のエンコーディングピクチャブロックに対して、現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うステップであって、現在のエンコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示し、インター予測プロセスが、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するステップを含む、ステップと、
エンコーディング情報を取得するために、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするとともに、エンコーディング情報をビットストリームにエンコードするステップであって、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、エンコーディング情報が標的補間フィルタの指示情報を含まず、又は、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードでない場合、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックがサブピクセル補間を実行するべく標的補間フィルタを使用することを示すために使用される、ステップと、を実行するように構成される。
第14の態様のエンコーダが、エンコーダを含むエンコーディングデバイスであってもよく、また、エンコーディングデバイスが、コンピュータ、サーバ、又は、端末(例えば、携帯電話又はタブレットコンピュータ)などのデータ処理機能を有するデバイスであってもよいことが理解されるべきである。
第14の態様に関連して、この出願のこの実施形態の想定し得る実施において、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタをプロセッサが決定する実施は、以下の通りであってもよい。エンコーダは、レート歪みコスト基準に従った候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定する。
第14の態様に関連して、この出願のこの実施形態の想定し得る実施において、プロセッサが、現在のエンコーディングピクチャブロックに対して、現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行う実施は、以下の通りであってもよい。
現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定し、
N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタのセット内の各補間フィルタを使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行い、Nが正の整数であり、
整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックから、現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、
予測ブロックに基づいて動き情報を決定し、補間によって予測ブロックを取得するために使用される補間フィルタが標的補間フィルタである。
第14の態様に関連して、この出願のこの実施形態の想定し得る実施において、候補補間フィルタのセットは、第1の態様又は第2の態様に係る任意の補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタを含む。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
更に、エンコーディング情報は、トレーニングによって取得された標的補間フィルタのフィルタパラメータを更に含み、或いは、エンコーディング情報はフィルタパラメータ差分を更に含み、また、フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である。
プロセッサが、候補補間フィルタのセット内の第2の補間フィルタに対してオンライントレーニングを実行してもよく、それにより、現在のエンコーディングピクチャユニットのコンテンツに基づいて補間フィルタをリアルタイムで調整することができ、その結果、予測精度を向上できることが分かる。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
第15の態様によれば、この出願の一実施形態は、メモリ及びプロセッサを含むデコーディング装置を更に提供する。メモリは、プログラムコードを記憶するように構成され、プロセッサは、第5の態様又は第6の態様に係る任意のビデオピクチャデコーディング方法のステップの一部又は全部を実行するためにプログラムコードを呼び出すように構成される。
例えば、プロセッサは、以下のステップ、すなわち、
標的補間フィルタの指示情報を取得するためにビットストリームを構文解析するステップと、
現在のデコーディングピクチャブロックの動き情報を取得するステップであって、動き情報が分数ピクセル位置を指し示す、ステップと、
現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するステップであって、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行するステップを含む、ステップと、
現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成するステップと、を実行するためにプログラムコードを呼び出すように構成される。
他の例の場合、プロセッサは、以下のステップ、すなわち、
現在のデコーディングピクチャブロックの情報を取得するためにビットストリームを構文解析するステップであって、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される、ステップと、
現在のデコーディングピクチャブロックの動き情報を取得するステップであって、動き情報が分数ピクセル位置を指し示す、ステップと、
現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合に、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するステップであって、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行するステップを含み、標的補間フィルタの指示情報が前記ビットストリームを構文解析することによって取得される、ステップと、
現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックを再構成するステップと、を実行するためにプログラムコードを呼び出すように構成される。
随意的に、現在のピクチャブロックのインター予測モードが標的インター予測モードである場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のピクチャブロックのインター予測モードが標的インター予測モードである場合には、プロセッサが現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが具体的に以下を含むことが理解されるべきである。プロセッサは、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定し、或いは、プロセッサは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが、標的補間フィルタの、ビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定する。
第15の態様に関連して、この出願のこの実施形態の想定し得る実施において、プロセッサが現在のデコーディングピクチャブロックの動き情報を取得する実施は、以下の3つの実施を含んでもよいが、これらに限定されない。
第1の実施:標的インター予測モードではない場合(例えば、非マージモード)、デコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスを取得するために、ビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動き情報を決定してもよい。
第2の実施:標的インター予測モードではない場合(例えば、非マージモード)、プロセッサは、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するために、ビットストリームを構文解析し、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定し、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得してもよい。
第3の実施:標的インター予測モード(例えば、マージモード)において、現在のデコーディングピクチャブロックのインター予測モードがマージモード(merge mode)である場合に、プロセッサは、既にデコードされたピクチャブロックの、マージモードでマージングによって取得される動き情報、すなわち、現在のデコーディングピクチャブロックの動き情報を取得する。
第15の態様に関連して、この出願のこの実施形態の想定し得る実施において、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、
標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、プロセッサは、以下のステップ、すなわち、
現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するためにビットストリームを構文解析するステップを更に実行してもよく、
現在のデコーディングピクチャブロックの予測ブロックを取得するために標的補間フィルタに基づいてサブピクセル補間が行われる前に、方法は、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップを更に含んでもよい。
随意的に、標的フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、プロセッサは、以下のステップ、すなわち、
フィルタパラメータ差分を取得するためにビットストリームを構文解析するステップであって、フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
既にデコードされたピクチャユニットの標的補間フィルタのフィルタパラメータとフィルタパラメータ差分とに基づいて現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを取得するステップと、
現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップと、を更に実行してもよい。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
第16の態様によれば、この出願の実施形態は、プログラムコードを含むコンピュータ可読記憶媒体を更に提供する。プログラムコードがコンピュータ上で実行されると、コンピュータは、第1の態様又は第2の態様による任意の補間フィルタトレーニング方法のステップの一部又は全部を実行できるようにされる。
第17の態様によれば、この出願の一実施形態はコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトがコンピュータ上で実行されると、コンピュータは、第1の態様又は第2の態様に係る任意の補間フィルタトレーニング方法のステップの一部又は全部を実行できるようにされる。
第18の態様によれば、この出願の一実施形態は、プログラムコードを含むコンピュータ可読記憶媒体を更に提供する。プログラムコードがコンピュータ上で実行されると、コンピュータは、第3の態様又は第4の態様に係る任意のビデオピクチャエンコーディング方法のステップの一部又は全部を実行できるようにされる。
第19の態様によれば、この出願の一実施形態はコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトがコンピュータ上で実行されると、コンピュータは、第3の態様又は第4の態様に係る任意のビデオピクチャエンコーディング方法のステップの一部又は全部を実行できるようにされる。
第20の態様によれば、この出願の一実施形態は、プログラムコードを含むコンピュータ可読記憶媒体を更に提供する。プログラムコードがコンピュータ上で実行されると、コンピュータは、第5の態様又は第6の態様に係る任意のビデオピクチャデコーディング方法のステップの一部又は全部を実行できるようにされる。
第21の態様によれば、この出願の一実施形態はコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトがコンピュータ上で実行されると、コンピュータは、第5の態様又は第6の態様に係る任意のビデオピクチャデコーディング方法のステップの一部又は全部を実行できるようにされる。
この出願の実施形態における又は背景における技術的解決策をより明確に説明するために、以下では、この出願の実施形態又は背景を説明するための添付図面について簡単に記載する。
この出願の一実施形態に係るビデオコーディングシステムの概略的なブロック図である。 この出願の一実施形態に係るエンコーダの概略的なブロック図である。 この出願の一実施形態に係るデコーダの概略的なブロック図である。 この出願の一実施形態に係る整数ピクセル及びサブピクセルの位置の例示的な概略図である。 この出願の一実施形態に係るサブピクセル補間の反転性原理の例示的な概略図である。 この出願の一実施形態に係るサブピクセル補間の反転性原理の例示的な概略図である。 この出願の一実施形態に係る補間フィルタトレーニング方法の概略的なフローチャートである。 この出願の一実施形態に係る補間フィルタトレーニング手順の例示的な概略図である。 この出願の一実施形態に係る他の補間フィルタトレーニング方法の概略的なフローチャートである。 この出願の一実施形態に係る他の補間フィルタトレーニング手順の例示的な概略図である。 この出願の一実施形態に係るビデオピクチャエンコーディング方法の概略的なフローチャートである。 この出願の一実施形態に係る他のビデオピクチャエンコーディング方法の概略的なフローチャートである。 この出願の一実施形態に係るビデオピクチャデコーディング方法の概略的なフローチャートである。 この出願の一実施形態に係る他のビデオピクチャデコーディング方法の概略的なフローチャートである。 この出願の一実施形態に係る更なる他のビデオピクチャデコーディング方法の概略的なフローチャートである。 この出願の一実施形態に係る更なる他のビデオピクチャデコーディング方法の概略的なフローチャートである。 本発明の一実施形態に係る補間フィルタトレーニング装置の概略的なブロック図である。 本発明の一実施形態に係る補間フィルタトレーニング装置の概略的なブロック図である。 本発明の一実施形態に係る他の補間フィルタトレーニング装置の概略的なブロック図である。 この出願の一実施形態に係る他のエンコーダの概略的なブロック図である。 この出願の一実施形態に係る他のデコーダの概略的なブロック図である。 この出願の一実施形態に係るエンコーディングデバイス又はデコーディングデバイスの概略的なブロック図である。
以下の説明では、添付の図面を参照し、これらの図面は、この開示の一部を形成するとともに、例示として、本発明の実施形態の特定の態様又は本発明の実施形態が使用され得る特定の態様を示す。本発明の実施形態が他の態様で使用されてもよいとともに添付図面に描かれない構造的又は論理的な変更を含んでもよいことが理解されるべきである。したがって、以下の詳細な説明は、限定的な意味で理解されないものとし、また、本発明の範囲は、添付の特許請求の範囲によって規定される。
例えば、記載された方法に関連して開示される内容が、その方法を実行するように構成される対応するデバイス又はシステムに当てはまることができ、その逆もまた同様であることが理解されるべきである。例えば、1つ以上の特定の方法ステップが記載される場合、対応するデバイスは、記載された1つ以上の方法ステップを実行するための機能ユニットなどの1つ以上のユニット(例えば、1つのユニットが1つ以上のステップを実行する、或いは、それぞれが複数のステップのうちの1つ以上を実行する複数のユニット)を、そのような1つ以上のユニットが添付の図面に明示的に記載又は例示されていなくても含んでもよい。更に、例えば、特定の装置が機能ユニットなどの1つ以上のユニットに基づいて説明される場合、対応する方法は、1つ以上のユニットの1つ以上の機能を果たすべく使用されるステップ(例えば、1つ以上のユニットの1つ以上の機能を果たすべく使用される1つのステップ、或いは、それぞれが複数のユニット内の1つ以上のユニットの1つ以上の機能を果たすべく使用される複数のステップ)を、そのような1つ以上のステップが添付の図面に明示的に記載又は例示されていなくても含んでもよい。更に、別段に明記されなければ、この明細書中に記載される様々な実施形態の例及び/又は態様の特徴が互いに組み合わされてもよいことが理解されるべきである。
ビデオコーディングは、一般に、ピクチャのシーケンスの処理を指し、ピクチャのシーケンスはビデオ又はビデオシーケンスを形成する。ビデオコーディングの分野では、「ピクチャ(picture)」、「フレーム(frame)」、及び、「画像(image)」という用語が同義語として使用され得る。この出願(又はこの開示)で使用されるビデオコーディングは、ビデオエンコーディング又はビデオデコーディングのいずれかを示す。ビデオエンコーディングは、送信元側で実行されるとともに、通常、(より効率的な記憶及び/又は送信のために)ビデオピクチャを表すためのデータの量を削減するために未加工のビデオピクチャを処理(例えば、圧縮することによって)することを含む。ビデオデコーディングは、送信先側で実行されるとともに、一般に、ビデオピクチャを再構成するためにエンコーダと比較して逆処理することを含む。実施形態におけるビデオピクチャ(又は、以下で説明されるピクチャと称される)の「コーディング」は、ビデオシーケンスの「エンコーディング」又は「デコーディング」として理解されるべきである。エンコーディング構成要素とデコーディング構成要素との組み合わせは、コーデック(CODEC)とも称される。
可逆ビデオコーディングの場合、未加工のビデオピクチャを再構成することができ、また、このことは、再構成されたビデオピクチャが未加工のビデオピクチャと同じ品質を有することを意味する(記憶中又は送信中に送信損失又は他のデータ損失が発生しないと仮定する)。非可逆ビデオコーディングの場合には、ビデオピクチャを表すために必要とされるデータの量を削減するために、例えば量子化によって更なる圧縮が行われ、また、ビデオピクチャをデコーダ側で完全に再構成することができない。このことは、再構成されたビデオピクチャの品質が未加工のビデオピクチャの品質よりも低い又は悪いことを意味する。
幾つかのH.261ビデオコーディング標準規格が「非可逆ハイブリッドビデオコーデック」のために使用される(すなわち、サンプル領域における空間及び時間予測は、変換領域において量子化を適用するための2D変換コーディングと組み合わされる)。ビデオシーケンスの各ピクチャは、通常、重なり合わないブロックのセットに分割され、また、コーディングは、通常、ブロックレベルで実行される。言い換えると、エンコーダ側では、ビデオが、通常は、ブロック(ビデオブロック)レベルで処理され、すなわち、エンコードされる。例えば、予測ブロックが、空間(イントラピクチャ)予測及び時間(インターピクチャ)予測によって生成され、予測ブロックは、残差ブロックを取得するために現在のブロック(現在処理されている又は処理されるべきブロック)から減算され、及び、残差ブロックは、送信(圧縮)されるようになっているデータの量を削減するために変換領域で変換されて量子化される。デコーダ側では、表示のために現在のブロックを再構成するべく、エンコーダに対する逆処理部分が、エンコードされた又は圧縮されたブロックに適用される。更に、エンコーダはデコーダの処理ループを複製し、それにより、エンコーダ及びデコーダは、後続のブロックを処理する、すなわち、コーディングするために同一の予測(例えば、イントラ予測及びインター予測)及び/又は再構成を生成する。
この明細書中で使用される「ブロック」、「ピクチャブロック」、及び、「画像ブロック」という用語は、同義語として使用されてもよく、ピクチャ又はフレームの一部であってもよい。説明を容易にするために、本発明の実施形態は、本明細書中では、ITU-Tビデオコーディングエキスパートグループ(Video Coding Experts Group,VCEG)及びISO/IECモーションピクチャエキスパートグループ(Motion Picture Experts Group,MPEG)のビデオコーディングに関する共同コラボレーションチーム((Joint Collaboration Team on Video Coding,JCT-VC)によって開発されたITU-T H.266/汎用ビデオコーディング(Versatile video coding,VVC)又は高効率ビデオコーディング(High-Efficiency Video Coding,HEVC)の基準ソフトウェアに関連して説明される。当業者であれば分かるように、本発明の実施形態はHEVC又はVVCに限定されない。ブロックは、CU、PU、又は、TUであってもよい。HEVCにおいて、CTUは、コーディングツリーとして表される四分木構造を使用することによって複数のCUに分割される。インターピクチャ間(時間)予測又はイントラピクチャ(空間)予測を使用することによってピクチャ領域をコーディングするかどうかの決定は、CUレベルで行われる。各CUは、PU分割パターンに基づいて、1つ、2つ、又は、4つのPUに更に分割されてもよい。1つのPUでは、同一の予測プロセスが適用され、また、関連情報がPU単位でデコーダに送信される。PU分割パターンに基づいて予測プロセスを適用することによって残差ブロックを取得した後、CUは、CUのために使用されるコーディングツリーに類似した他の四分木構造に基づいて変換ユニット(transform unit,TU)に分割されてもよい。ビデオ圧縮技術の最近の開発では、コーディングブロックを分割するために四分木+二分木(Quad-tree and binary tree,QTBT)分割フレームが使用される。QTBTブロック構造では、CUが正方形又は長方形であってもよい。例えば、コーディングツリーユニット(coding tree unit,CTU)は、最初に四分木構造を使用することによって分割される。四分木のリーフノードが二分木構造を使用することによって更に分割される。二分木のリーフノードがコーディングユニット(coding unit,CU)と称され、また、更なる分割を何ら伴うことなく予測及び変換処理のためにセグメント化が使用される。このことは、CU、PU、及び、TUがQTBTコーディングブロック構造において同じブロックサイズを有することを意味する。更に、三分木分割などの多重分割がQTBTブロック構造と組み合わせて使用されることが提案される。
この明細書中で使用される「エンコーディングピクチャブロック」という用語は、エンコーダ側で使用されるピクチャブロックであり、また、同様に、「デコーディングピクチャブロック」という用語は、デコーダ側で使用されるピクチャブロックである。「現在のエンコーディングピクチャブロック」は、「現在のエンコードされるべきピクチャブロック」、「現在のエンコーディングブロック」などとして表されてもよい。「現在のデコーディングピクチャブロック」は、「現在のデコードされるべきピクチャブロック」、「現在のデコーディングブロック」などとして表されてもよい。「基準ブロック」は、「基準ピクチャブロック」として表されてもよい。「予測ブロック」は、「予測ピクチャブロック」として表されてもよく、或いは、幾つかのシナリオでは、「最適一致ブロック」、「一致ブロック」などとして表されてもよい。
この明細書中で使用される「第1の補間フィルタ」は、従来技術で提供される補間フィルタであり、所定の係数を伴う補間フィルタ、例えば、バイリニア補間フィルタ又はバイキュービック補間フィルタであってもよい。或いは、「第1の補間フィルタ」は、コンテンツ適応補間フィルタ又は他のタイプの補間フィルタであってもよい。H.264/AVCでは、1/2ピクセルサンプル値を生成するために6タップ有限応答フィルタが使用され、また、4/1ピクセルサンプル値を生成するために単純なバイリニア補間が使用される。H.264/AVCにおける補間フィルタと比較して、HEVCにおける補間フィルタに対して大幅な改善が行われてきた。1/2ピクセルサンプル値を生成するために8タップフィルタが使用され、また、1/4ピクセルサンプル値を生成するために7タップ補間フィルタが使用される。自然なビデオの非定常性に対処するために、コンテンツ適応補間フィルタが研究において提案される。一般的な適応補間フィルタは、動き補償予測の誤差に基づいてエンコーダ側でフィルタ係数を推定するために使用され、その後、フィルタ係数がコーディングされてビットストリームに書き込まれる。補間フィルタの複雑さを低減するために、分離可能な適応補間フィルタが提案され、この適応補間フィルタは、基本的にコーディング性能を確保しつつ複雑さを大幅に低減できる。
この明細書中で使用される「第2の補間フィルタ」及び「第3の補間フィルタ」は、この出願の実施形態で提供される補間フィルタトレーニング方法に基づいて得られる補間フィルタである。詳細については、補間フィルタトレーニング方法の実施形態における関連する説明を参照されたい。第2の補間フィルタ及び/又は第3の補間フィルタが、サポートベクターマシン(support vector machine,SVM)、ニューラルネットワーク(neural network,NN)、畳み込みニューラルネットワーク(convolutional neural network,CNN)、又は、他の形態であってもよいことが理解され得る。これは、この出願の実施形態では限定されない。
この明細書中で使用される「標的補間フィルタ」は、候補補間フィルタのセットから選択される補間フィルタである。この明細書において、「候補補間フィルタのセット」は、1つ以上の補間フィルタを含んでもよい。複数の補間フィルタは、異なる種類のフィルタを有し、この明細書中では第2の補間フィルタを含むが、これに限定されない。この出願の他の実施において、候補フィルタのセット内の複数の補間フィルタは、第2の補間フィルタを含まなくてもよい。
動き情報が動きベクトルを含んでもよい。動きベクトルは、インター予測プロセスにおける重要なパラメータであり、現在のエンコーディングピクチャブロックに対する既にエンコードされたピクチャブロックの空間変位を表す。動きベクトルを取得するために、動き探索などの動き推定方法が使用されてもよい。初期のインター予測技術では、デコーダが予測ブロックを再生できるようにし、それにより、再構成ブロックを得ることができるように、動きベクトルを表すビットがエンコードされたビットストリームに含められる。コーディング効率を更に向上させるべく、動きベクトル全体をコーディングする代わりに、基準動きベクトルを使用することによって動きベクトルを差別的にコーディングすること、すなわち、動きベクトルと基準動きベクトルとの間の差分のみをコーディングすることが更に提案される。場合によっては、基準動きベクトルが、ビデオストリームで既に使用された動きベクトルから選択されてもよい。現在の動きベクトルをコーディングするべく既に使用された動きベクトルを選択することにより、コーディングされたビデオビットストリームに含まれるビットの量を更に削減できる。
以下は、図1~図3に基づき、エンコーダ100、デコーダ200、及び、コーディングシステム300の実施形態について説明する。
図1は、コーディングシステム300、例えば、この出願(本開示)の技術を使用できるビデオコーディングシステム300の一例の概念的な又は概略的なブロック図である。ビデオコーディングシステム300のエンコーダ100(例えば、ビデオエンコーダ100)及びデコーダ200(例えば、ビデオデコーダ200)は、この出願に記載される様々な例に従ってビデオピクチャエンコーディング又はデコーディング技術を実行するために使用され得るデバイスの例である。図1に示されるように、コーディングシステム300は、エンコードされたデータ330、例えばエンコードされたピクチャ330を、エンコードされたデータ330をデコードするための送信先デバイス320に与えるように構成される送信元デバイス310を含む。
送信元デバイス310は、エンコーダ100を含むとともに、追加的に又は随意的に、ピクチャソース312、前処理ユニット314、例えばピクチャ前処理ユニット314、及び、通信インタフェース又は通信ユニット318を含んでもよい。
ピクチャソース312は、例えば、現実世界のピクチャを捕捉するように構成される任意のタイプのピクチャ捕捉デバイス、及び/又は、ピクチャ又はコメント(スクリーンコンテンツエンコーディングの場合には、スクリーン上の幾つかのテキストが、エンコードされるべきピクチャ又は画像の一部とも見なされる)を生成するための任意のタイプのデバイス、例えば、コンピュータアニメーションピクチャを生成するように構成されるコンピュータグラフィックスプロセッサ、及び/又は、現実世界のピクチャ又はコンピュータアニメーションピクチャ(例えば、スクリーンコンテンツ又は仮想現実(virtual reality,VR)ピクチャ)を取得する及び/又は与えるための任意のタイプのデバイス、及び/又は、それらの任意の組み合わせ(例えば、拡張現実(augmented reality,AR)ピクチャ)を含んでもよい。
(デジタル)ピクチャは、強度値を伴うサンプルの2次元アレイ又はマトリクスと見なされる又は見なされてもよい。アレイ内のサンプルは、ピクセル(pixel)(短い形式の画素(picture element))又はペル(pel)と称される場合がある。アレイ又はピクチャの水平方向及び垂直方向(又は軸)におけるサンプルの量は、ピクチャのサイズ及び/又は解像度を規定する。色の表示のため、一般に、3つの色成分が使用される。例えば、ピクチャは、3つのサンプルアレイとして表されてもよく又は3つのサンプルアレイを含んでもよい。RGBフォーマット又は色空間では、ピクチャが、対応する赤、緑、及び、青のサンプルアレイを含む。しかしながら、ビデオコーディングにおいて、各ピクセルは、通常、ルミナンス/クロミナンスフォーマット又は色空間、例えば、YCbCrで表され、YCbCrは、Yによって示される(場合によっては、代わりにLによって示される)ルミナンス成分と、Cb及びCrによって示される2つのクロミナンス成分とを含む。ルミナンス(略してルマ(luma))成分Yは、輝度又はグレーレベル強度(例えば、グレースケールピクチャでは両方とも同じである)を表し、また、2つのクロミナンス(略してクロマ(chroma))成分Cb、Crは、クロミナンス成分又は色情報成分を表す。これに対応して、YCbCrフォーマットにおけるピクチャは、ルミナンスサンプル値(Y)のルミナンスサンプルアレイと、クロミナンス値(Cb及びCr)の2つのクロミナンスサンプルアレイとを含む。RGBフォーマットにおけるピクチャは、YCbCrフォーマットにおけるピクチャに変換され又は置き換えられてもよく、逆もまた同様である。このプロセスは、色置換又は変換とも称される。ピクチャがモノクロである場合、ピクチャはルマサンプルアレイのみを含んでもよい。
ピクチャソース312(例えば、ビデオソース312)は、例えば、ピクチャを捕捉するためのカメラ、メモリ、例えば、既に捕捉された又は生成されたピクチャを含む又は記憶するピクチャメモリ、及び/又は、ピクチャを取得する又は受信するための任意の種類のインタフェース(内部もしくは外部)であってもよい。カメラは、例えば、ローカルカメラ、又は、送信元デバイスに組み込まれるカメラであってもよく、また、メモリは、ローカルメモリ、又は、例えば、送信元デバイスに組み込まれるメモリであってもよい。インタフェースは、例えば、外部ビデオソースからピクチャを受信するための外部インタフェースであってもよい。外部ビデオソースは、例えば、カメラ、外部メモリ、又は、外部ピクチャ生成デバイスなどの外部ピクチャ捕捉デバイスである。外部ピクチャ生成デバイスは、例えば、外部のコンピュータグラフィックスプロセッサ、コンピュータ、又は、サーバである。インタフェースは、専用の又は標準化されたインタフェースプロトコルに準拠した、任意のタイプのインタフェース、例えば、有線又は無線のインタフェース又は光インタフェースであってもよい。ピクチャデータ313を取得するためのインタフェースは、通信インタフェース318又は通信インタフェース318の一部であってよい。
前処理ユニット314及び前処理ユニット314によって実行される処理から区別するために、ピクチャ又はピクチャデータ313(例えば、ビデオデータ312)は、未加工ピクチャ又は未加工ピクチャデータ313と称される場合がある。
前処理ユニット314は、(未加工)ピクチャデータ313を受信してピクチャデータ313に対して前処理を実行し、前処理されたピクチャ315又は前処理されたピクチャデータ315を取得するように構成される。例えば、前処理ユニット314によって実行される前処理は、トリミング、色フォーマット変換(例えば、RGBからYCbCrへの変換)、色補正、又は、ノイズ除去を含んでもよい。前処理ユニット314が随意的な構成要素であってもよいことが理解され得る。
エンコーダ100(例えば、ビデオエンコーダ100は、)は、前処理されたピクチャデータ315を受信してエンコードされたピクチャデータ171を与えるように構成される(詳細は、例えば図2又は図8に基づいて、以下で更に説明される)。一例において、エンコーダ100は、ビデオピクチャエンコーディング方法を実行するように構成されてもよい。他の実施形態において、エンコーダ100は、補間フィルタをトレーニングするように更に構成されてもよい。
送信元デバイス310の通信インタフェース318は、エンコードされたピクチャデータ171を受信して、記憶又は直接的な再構成のために、エンコードされたピクチャデータ171を他のデバイス、例えば送信先デバイス320又は任意の他のデバイスに送信するように構成されてもよい。或いは、通信インタフェース318は、エンコードされたデータ330を対応して記憶する及び/又はエンコードされたデータ330を他のデバイスに送信する前に、エンコードされたピクチャデータ171を処理するように構成される。他のデバイスは、例えば、送信先デバイス320或いはデコーディング又は記憶のために使用される任意の他のデバイスである。
送信先デバイス320は、デコーダ200(例えば、ビデオデコーダ200)を含むとともに、付加的に又は随意的に、通信インタフェース又は通信ユニット322、後処理ユニット326、及び、表示デバイス328を含んでもよい。
送信先デバイス320の通信インタフェース322は、例えば、送信元デバイス310から直接に或いは任意の他のソース、例えば記憶デバイス、例えばエンコードピクチャデータ記憶デバイスから、エンコードされたピクチャデータ171又はエンコードされたデータ330を受信するように構成される。
通信インタフェース318及び通信インタフェース322は、送信元デバイス310と送信先デバイス320との間の直接的な通信リンクにわたって又は任意のタイプのネットワークを介してエンコードされたピクチャデータ171又はエンコードされたデータ330を送信又は受信するように構成されてもよい。直接的な通信リンクは、例えば、直接的な有線接続又は無線接続である。任意のタイプのネットワークは、例えば、有線又は無線ネットワーク、或いは、それらの任意の組み合わせ、或いは、任意のタイプのプライベート又はパブリックネットワーク、或いは、それらの任意の組み合わせである。
通信インタフェース318は、例えば、通信リンク又は通信ネットワークを介した送信のために、エンコードされたピクチャデータ171を適切なフォーマットに、例えば、パケットにパッケージングするように構成されてもよい。
通信インタフェース322の相手方を形成する通信インタフェース318は、例えば、エンコードされたピクチャデータ171を取得するためにエンコードされたデータ330をデパッケージングするように構成されてもよい。
通信インタフェース318及び通信インタフェース322はいずれも、送信元デバイス310から送信先デバイス320へと指し示すとともに図1ではエンコードされたピクチャデータ330のために使用される矢印によって示されるように、一方向通信インタフェースとして構成されてもよく、或いは、双方向通信インタフェースとして構成されてもよく、また、例えば、接続を確立するためにメッセージを送受信するとともに、通信リンク及び/又はエンコードピクチャデータ送信などのデータ送信に関連する任意の他の情報を確認して交換するように構成されてもよい。
デコーダ200は、エンコードされたピクチャデータ171を受信して、デコードされたピクチャデータ231又はデコードされたピクチャ231を与えるように構成される(詳細は、例えば、図3、図9、図10、又は、図11A及び図11Bに基づいて、以下で更に説明される)。一例において、デコーダ200は、後述するビデオピクチャデコーディング方法を実行するように構成されてもよい。
送信先デバイス320のポストプロセッサ326は、デコードされたピクチャデータ231(再構成されたピクチャデータとも称される)、例えばデコードされたピクチャ131を後処理して、後処理されたピクチャデータ327、例えば後処理されたピクチャ327を取得するように構成される。後処理ユニット326により実行される後処理としては、例えば、色フォーマット変換(例えば、YCbCrからRGBへの変換)、色補正、トリミング、リサンプリング、又は、任意の他の処理、例えば、例えば表示データ328による表示のためにデコードされたピクチャデータ231を準備するための処理が挙げられる。
送信先デバイス320の表示デバイス328は、例えばユーザ又はビューアにピクチャを表示するための後処理されたピクチャデータ327を受信するように構成される。表示デバイス328は、再構成されたピクチャを提示するように構成される任意のタイプのディスプレイ、例えば一体型の又は外部のディスプレイ又はモニタを含んでもよい。例えば、ディスプレイとしては、液晶ディスプレイ(liquid crystal display,LCD)、有機発光ダイオード(organic light emitting diode,OLED)ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、液晶オンシリコン(liquid crystal on silicon,LCoS)、デジタルライトプロセッサ(digital light processor,DLP)、又は、任意のタイプの他のディスプレイが挙げられる。
図1は、送信元デバイス310及び送信先デバイス320を別個のデバイスとして描くが、デバイスの実施形態は、送信元デバイス310及び送信先デバイス320或いは送信元デバイス310及び送信先デバイス320の両方の機能、すなわち、送信元デバイス310又は対応する機能及び送信先デバイス320又は対応する機能を含んでもよい。そのような実施形態において、送信元デバイス310又は対応する機能及び送信先デバイス320又は対応する機能は、同じハードウェア及び/又はソフトウェアを使用して或いは別個のハードウェア及び/又はソフトウェアによって或いはそれらの任意の組み合わせによって実装されてもよい。
説明に基づいて当業者に明らかなように、異なるユニットの機能又は図1に示される送信元デバイス310及び/又は送信先デバイス320の機能の存在及び(正確な)分割は、実際のデバイスと用途とに応じて変化してもよい。
エンコーダ100(例えば、ビデオエンコーダ100は、)及びデコーダ200(例えば、ビデオデコーダ200)はそれぞれ、様々な適切な回路、例えば、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processor,DSP)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array,FPGA)、ディスクリートロジック、ハードウェア、又は、それらの任意の組み合わせのうちのいずれか1つとして実装されてもよい。技術が部分的にソフトウェアを使用することによって実施される場合、デバイスは、適切な非一時的コンピュータ可読記憶媒体にソフトウェア命令を記憶してもよく、また、この開示の技術を実行するために、1つ以上のプロセッサなどのハードウェアを使用することによって命令を実行してもよい。前述の内容(ハードウェア、ソフトウェア、ハードウェアとソフトウェアとの組み合わせなどを含む)のいずれも、1つ以上のプロセッサと見なされてもよい。ビデオエンコーダ100及びビデオデコーダ200はそれぞれ、1以上のエンコーダ又はデコーダに含まれてもよく、また、エンコーダ又はデコーダは、複合型エンコーダ/デコーダ(コーデック)の一部として対応するデバイスに組み込まれてもよい。
送信元デバイス310は、ビデオエンコーディングデバイス又はビデオエンコーディング装置と称されてもよい。送信先デバイス320は、ビデオデコーディングデバイス又はビデオデコーディング装置と称されてもよい。送信元デバイス310及び送信先デバイス320は、ビデオエンコーディングデバイス又はビデオエンコーディング装置の一例であってよい。
送信元デバイス310及び送信先デバイス320は、任意のタイプのハンドヘルドデバイス又は固定デバイス、例えば、ノートブック又はラップトップコンピュータ、携帯電話、スマートフォン、タブレット又はタブレットコンピュータ、ビデオカメラ、デスクトップコンピュータ、セットトップボックス、テレビ、表示デバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイス(コンテンツサービスサーバ又はコンテンツ配信サーバなど)、放送受信デバイス、又は、放送送信デバイスを含む広範囲のデバイスのうちのいずれか1つを含んでもよく、また、任意のタイプのオペレーティングシステムを使用しても使用しなくてもよい。
ある場合には、送信元デバイス310及び送信先デバイス320が無線通信のために装備されてもよい。したがって、送信元デバイス310及び送信先デバイス320が無線通信デバイスであってもよい。
場合によっては、図1に示されるビデオコーディングシステム300は単なる一例であり、また、この出願の技術は、エンコーディングデバイスとデコーディングデバイスとの間のいかなるデータ通信も必ず含んでいるとは限らないビデオコーディング設定(例えば、ビデオエンコーディング又はビデオデコーディング)に適用可能である。他の例において、データは、ローカルメモリから取り込まれ、ネットワークを介してストリーミングされるなどしてもよい。ビデオエンコーディングデバイスは、データをエンコードしてメモリに記憶してもよく、及び/又は、ビデオデコーディングデバイスは、データをメモリから取り込んでデコードしてもよい。幾つかの例において、エンコーディング及びデコーディングは、互いに通信せずに単にデータをメモリにエンコードする及び/又はデータをメモリから取り込んでデコードするデバイスによって実行される。
ビデオエンコーダ100に関連して記載された例のそれぞれごとに、ビデオデコーダ200が逆のプロセスを実行するように構成されてもよいことが理解されるべきである。信号伝送シンタックス要素に関して、ビデオデコーダ200は、シンタックス要素を受信して構文解析し、それに対応して関連するビデオデータをデコードするように構成されてもよい。幾つかの例において、ビデオエンコーダ100は、標的フィルタの指示情報及び補間フィルタのパラメータ情報を規定するために使用される1つ以上のシンタックス要素を、エンコードされたビデオビットストリーム(ビットストリームとも称される)にエントロピーエンコードしてもよい。そのような例において、ビデオデコーダ200は、シンタックス要素を構文解析し、それに応じて関連するビデオデータをデコードすることができる。
エンコーダ及びエンコーディング方法
図2は、この出願の技術(本開示)を実施するように構成されるビデオエンコーダ100の一例の概略的/概念的なブロック図である。図2の例において、ビデオエンコーダ100は、残差計算ユニット104、変換処理ユニット106、量子化ユニット108、逆量子化ユニット110、逆変換処理ユニット112、再構成ユニット114、バッファ116、ループフィルタユニット120、デコードピクチャバッファ(decoded picture buffer,DPB)130、予測処理ユニット160、及び、エントロピーエンコーディングユニット170を含む。予測処理ユニット160は、インター予測ユニット144、イントラ予測ユニット154、及び、モード選択ユニット162を含んでもよい。インター予測ユニット144は、動き推定ユニット及び動き補償ユニット(図示せず)を含んでもよい。図2に示されるビデオエンコーダ100は、ハイブリッドビデオエンコーダ又はハイブリッドビデオコーデックに基づくビデオエンコーダと称される場合もある。
例えば、残差計算ユニット104、変換処理ユニット106、量子化ユニット108、予測処理ユニット160、及び、エントロピーエンコーディングユニット170は、エンコーダ100の順方向信号経路を形成し、一方、例えば、逆量子化ユニット110、逆変換処理ユニット112、再構成ユニット114、バッファ116、ループフィルタ120、デコードピクチャバッファ(decoded picture buffer,DPB)130、及び、予測処理ユニット160は、エンコーダの逆信号経路を形成する。エンコーダの逆信号経路は、デコーダの信号経路に対応する(図3のデコーダ200を参照)。
エンコーダ100は、例えば、入力102、ピクチャ101又はピクチャ101のブロック103から、例えば、ビデオ又はビデオシーケンスを形成するピクチャシーケンスのピクチャを受信するように構成される。ピクチャブロック103は、現在のピクチャブロック又はエンコードされるべきピクチャブロックと称される場合もあり、また、ピクチャ101は、現在のピクチャ又はエンコードされるべきピクチャ(特にビデオコーディングでは、現在のピクチャを他のピクチャ、例えば、現在のピクチャも含むビデオシーケンスなどの同じビデオシーケンスの既にエンコードされた及び/又はデコードされたピクチャから区別するために)と称される場合がある。
一実施形態において、エンコーダ100は、ピクチャ101をピクチャブロック103などの複数のブロックに分割するように構成される分割ユニット(図2には描かれない)を含んでもよい。ピクチャ101は、通常、複数の重なり合わないブロックに分割される。分割ユニットは、ビデオシーケンス内の全てのピクチャに関する同じブロックサイズと、ブロックサイズを規定する対応するグリッドとを使用する、或いは、ピクチャ或いはピクチャのサブセット又はグループの間でブロックサイズを変更して、各ピクチャを対応するブロックに分割するように構成されてもよい。
一例において、ビデオエンコーダ100の予測処理ユニット160は、前述の分割技術の任意の組み合わせを実行するように構成されてもよい。
ピクチャ101と同様に、ブロック103は、ピクチャ101よりも小さいサイズではあるが、ルマ値(サンプル値)を伴うサンプルの二次元アレイ又はマトリクスであってもよく或いはそのような二次元アレイ又はマトリクスと見なされてもよい。言い換えると、ブロック103は、例えば、1つのサンプルアレイ(例えば、モノクロピクチャ101の場合には、ルマアレイ)、3つのサンプルアレイ(例えば、色ピクチャの場合には、1つのルマアレイ及び2つのクロマアレイ)、或いは、適用された色フォーマットに応じた任意の他の量及び/又はタイプのアレイを含んでもよい。ブロック103の水平方向及び垂直方向(又は軸)でのサンプルの量は、ブロック103のサイズを規定する。
図2に示されるエンコーダ100は、ピクチャ101をブロックによってエンコードするように構成され、例えば、エンコーダ100は、各ブロック103をエンコードして予測する。
残差計算ユニット104は、例えば、サンプル領域における残差ブロック105を取得するべく、サンプルごと(ピクセルごと)に、ピクチャブロック103のサンプル値から予測ブロック165のサンプル値を減算することにより、ピクチャブロック103及び予測ブロック165(予測ブロック165に関する更なる詳細は後で提供される)に基づいて残差ブロック105を計算するように構成される。
変換処理ユニット106は、変換領域における変換係数107を取得するべく、残差ブロック105のサンプル値に関して、例えば、離散コサイン変換(discrete cosine transform,DCT)又は離散サイン変換(discrete sine transform,DST)を適用するように構成される。変換された係数107は、変換残差係数と称されてもよく、変換領域における残差ブロック105を表す。
変換処理ユニット106は、HEVC/H.265において定められる変換など、DCT/DSTの整数近似を適用するように構成されてもよい。直交DCT変換と比較して、そのような整数近似は一般に係数によってスケーリングされる。順変換及び逆変換を使用して処理される残差ブロックのノルムを維持するために、更なるスケールファクタを適用することは、変換プロセスの一部である。スケールファクタは、通常、幾つかの制約に基づいて選択される。例えば、スケールファクタは、シフト演算の2の累乗、変換係数のビット深度、又は、精度と実施コストとの間のトレードオフである。具体的なスケーリングファクタは、例えばデコーダ側200の逆変換処理ユニット212による逆変換(及び、例えばエンコーダ側100の逆変換処理ユニット112による対応する逆変換)に関して定められ、また、それに応じて、例えばエンコーダ側100の変換処理ユニット106による順変換のための対応するスケーリングファクタが定められてもよい。
量子化ユニット108は、例えばスカラー量子化又はベクトル量子化を適用することによって、変換係数107を量子化して、量子化された変換係数109を取得するように構成される。量子化された変換係数109は、量子化された残差係数109と称される場合もある。量子化プロセスは、変換係数107の一部又は全部に関連するビット深度を減らすことができる。例えば、nビット変換係数は、量子化中にmビット変換係数に至るまで丸められてもよく、nはmよりも大きい。量子化パラメータ(quantization parameter,QP)を調整することにより、量子化度が変更されてもよい。例えば、スカラー量子化の場合、より細かい又はより粗い量子化を達成するために、異なるスケールが適用されてもよい。より小さい量子化ステップはより細かい量子化に対応し、また、より大きい量子化ステップはより粗い量子化に対応する。適用可能な量子化ステップは、量子化パラメータ(quantization parameter,QP)によって示されてもよい。量子化パラメータは、例えば、適用可能な量子化ステップサイズの所定のセットへのインデックスであってもよい。例えば、より小さい量子化パラメータは、より細かい量子化(より小さい量子化ステップ)に対応してもよく、また、より大きい量子化パラメータは、より粗い量子化(より大きい量子化ステップ)に対応してもよく、或いは、逆でもまた同様である。量子化は、量子化ステップ及び対応する量子化又は例えば逆量子化ユニット110により実行される逆量子化による除算を含んでもよく、或いは、量子化ステップによる乗算を含んでもよい。HEVCなどの幾つかの標準規格に従った実施形態では、量子化ステップを決定するために量子化パラメータが使用されてもよい。一般に、量子化ステップは、除算を含む方程式の不動点近似を使用して量子化パラメータに基づいて計算されてもよい。残差ブロックのノルムを復元するために量子化及び逆量子化に関して更なるスケーリングファクタが導入されてもよく、残差ブロックのノルムは、量子化ステップのための方程式及び量子化パラメータの不動点近似で使用されるスケールに起因して変更されてもよい。実施の一例では、逆変換及び逆量子化のスケールが組み合わされてもよい。或いは、カスタマイズされた量子化テーブルが使用されて例えばビット
ストリームでエンコーダからデコーダに信号伝送されてもよい。量子化は非可逆的演算であり、量子化ステップの増大に伴って損失が増大する。
逆量子化ユニット110は、例えば量子化ユニット108と同じ量子化ステップに基づいて又はそれを使用して量子化ユニット108により適用された量子化スキームの逆を適用することによって、量子化ユニット108の逆量子化を量子化係数に関して適用して逆量子化係数111を得るように構成される。量子化解除係数111は、量子化解除された残差係数111と称される場合もあり、一般に量子化による損失に起因して変換係数と同一ではないが、変換係数107に対応する。
逆変換処理ユニット112は、変換処理ユニット106によって適用される変換の逆変換、例えば逆離散コサイン変換(discrete cosine transform,DCT)又は逆離散サイン変換(discrete sine transform,DST)を適用して、サンプル領域における逆変換ブロック113を取得するように構成される。逆変換ブロック113は、逆変換量子化解除ブロック113又は逆変換残差ブロック113と称される場合もある。
再構成ユニット114(例えば、加算器114)は、例えば、再構成された残差ブロック113のサンプル値と予測ブロック165のサンプル値とを加算することによって、逆変換ブロック113(すなわち、再構成された残差ブロック113)を予測ブロック165に加えてサンプル領域における再構成ブロック115を取得するように構成される。
随意的に、例えばラインバッファ116のバッファユニット116(略して「バッファ」116)は、例えばイントラ予測のために、再構成ブロック115及び対応するサンプル値をバッファリングする又は記憶するように構成される。更なる実施形態において、エンコーダは、任意の種類の推定及び/又は予測、例えばイントラ予測のためにフィルタリングされない再構成されたブロック及び/又はバッファユニット116に記憶されたそれぞれのサンプル値を使用するように構成されてもよい。
例えば、一実施形態において、エンコーダ100は、バッファユニット116がイントラ予測ユニット154のための再構成ブロック115を記憶するために使用されるだけでなく、ループフィルタユニット120(図2に描かれない)のためにも使用されるように、及び/又は、例えば、バッファユニット116及びデコードピクチャバッファユニット130が1つのバッファを形成するように構成されてもよい。更なる実施形態は、フィルタリングされたブロック121及び/又はデコードピクチャバッファ130からのブロック又はサンプル(両方とも図2には描かれない)をイントラ予測ユニット154のための入力又は基礎として使用するように構成されてもよい。
ループフィルタユニット120(簡単に「ループフィルタ」120と称される)は、再構成ブロック115をフィルタリングして、フィルタリングされたブロック121を取得し、ピクセル移行を滑らかにする又はビデオ品質を向上させるように構成される。ループフィルタユニット120は、例えば、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset,SAO)フィルタ、及び、バイラテラルフィルタ、適応ループフィルタ(adaptive loop filter,ALF)、鮮鋭化又は平滑化フィルタ、或いは、協調フィルタなどの他のフィルタを含む1つ以上のループフィルタに相当するようになっている。ループフィルタユニット120は図2ではインループフィルタとして示されるが、他の形態では、ループフィルタユニット120がポストループフィルタとして実装されてもよい。フィルタリングされたブロック121は、フィルタリングされて再構成されたブロック121と称される場合もある。デコードピクチャバッファ130は、ループフィルタユニット120が再構成されたコーディングブロックに対してフィルタリング演算を実行した後に、再構成されたコーディングブロックを記憶してもよい。
一実施形態において、エンコーダ100(これに対応して、ループフィルタユニット120)は、例えば、直接的に、又は、エントロピーエンコーディングユニット170又は任意の他のエントロピーエンコーディングユニットによって実行されたエントロピーエンコーディングの後に、ループフィルタパラメータ(サンプル適応オフセット情報など)を出力するように構成されてもよく、それにより、例えば、デコーダ200は、同じループフィルタパラメータを受信して、同じループフィルタパラメータをデコーディングに適用することができる。
デコードピクチャバッファ(decoded picture buffer,DPB)130は、ビデオエンコーダ100でビデオデータをエンコードする際に用いる基準ピクチャデータを記憶する基準ピクチャメモリであってもよい。DPB 130は、ダイナミックランダムアクセスメモリ(dynamic random access memory,DRAM)(同期DRAM(synchronous DRAM,SDRAM)、磁気抵抗RAM(magnetoresistive RAM,MRAM)、及び、抵抗RAM(resistive RAM,RRAM)を含む)、又は、他のタイプのメモリデバイスなどの様々なメモリデバイスのいずれか1つによって形成されてもよい。DPB 130及びバッファ116は、同じメモリデバイスによって又は別個のメモリデバイスによって提供されてもよい。一例において、デコードピクチャバッファ(decoded picture buffer,DPB)130は、フィルタリングされたブロック121を記憶するように構成される。デコードピクチャバッファ130は、他の既にフィルタリングされたブロック、例えば、同じ現在のピクチャ又は異なるピクチャ、例えば既に再構成されたピクチャの既に再構成されてフィルタリングされたブロック121を記憶するように更に構成されてもよく、また、例えばインター予測のため、完全な既に再構成された、すなわち、デコードされたピクチャ(及び、対応する基準ブロック及びサンプル)及び/又は部分的に再構成された現在のピクチャ(及び、対応する基準ブロック及びサンプル)を提供してもよい。一例では、再構成ブロック115が再構成されるがインループフィルタリングを伴わない場合、デコードピクチャバッファ(decoded picture buffer,DPB)130が再構成ブロック115を記憶するように構成される。
ブロック予測処理ユニット160とも称される予測処理ユニット160は、ブロック103(現在のピクチャ101の現在のエンコーディングピクチャブロック103)及び再構成されたピクチャデータ、例えば、バッファ116からの同じ(現在の)ピクチャの基準サンプル及び/又はデコードピクチャバッファ130からの1つ以上の既にデコードされたピクチャの基準ピクチャデータ231を受信する又は取得するとともに、そのようなデータを予測のために処理する、すなわち、インター予測ブロック145又はイントラ予測ブロック155であってもよい予測ブロック165を与えるように構成される。
この出願の実施形態において、インター予測ユニット145は、候補補間フィルタ151のセット及びフィルタ選択ユニット152を含んでもよい。候補補間フィルタ151のセットは、複数のタイプの補間フィルタを含んでもよい。例えば、候補補間フィルタ151のセットは、離散コサイン変換ベースの補間フィルタ(DCT-based interpolation filter,DCTIF)及び反転性駆動補間フィルタ(この明細書中ではInvIFとも称される反転性ベースの補間フィルタ)を含んでもよい。InvIFは、この出願の図6A又は図6Cに記載された補間フィルタトレーニング方法を使用することによって得られる補間フィルタである。フィルタ選択ユニット152は、候補補間フィルタ151のセットから補間フィルタ(例えば、DCTIF又はInvIF)を選択するように構成される、或いは、フィルタ選択ユニット152を他のユニット(変換処理ユニット106、量子化ユニット108、逆変換処理ユニット112、再構成ユニット114、ループフィルタユニット120、変換処理ユニット106など)と組み合わせることによって、候補補間フィルタ151のセットから補間フィルタ(例えば、DCTIF又はInvIF)を選択するように構成される。エントロピーエンコーディングユニットは、選択された補間フィルタ(この明細書中では標的補間フィルタとも称される)の指示情報をエントロピーエンコードするように構成される。この出願の他の実施形態において、候補補間フィルタ151のセット内に含まれる複数のタイプの補間フィルタは、全てが従来技術で提供される補間フィルタであってもよく、或いは、図6A又は図6Cに示される補間フィルタトレーニング方法を使用することによって得られる補間フィルタを含んでもよい。この出願の更になる他の実施形態において、インター予測ブロック145は、この出願の実施形態において図6A又は図6Cに示される補間フィルタトレーニング方法を使用することによって得られる単一の補間フィルタを含んでもよい。候補補間フィルタ151のセットが動き推定プロセスに適用されてもよいことが理解されるべきである。この出願の他の実施形態において、候補補間フィルタ151のセットは、補間演算が必要とされる他のシナリオに適用されてもよい。
エンコーダ100は、補間フィルタのトレーニングを実施するように構成されるトレーニングユニット(図2には描かれない)を更に含んでもよい。トレーニングユニットは、インター予測モジュール145の内部又は外部に配置されてもよい。トレーニングユニットがインター予測ユニット145内に配置されてもよく或いはエンコーダ100の他の位置に配置されていてもよいことが理解され得る。トレーニングユニットは、補間フィルタのトレーニング、補間フィルタのフィルタパラメータの更新などを実施するために、インター予測ユニット内の1つ以上の補間フィルタに結合される。或いは、トレーニングユニットが、エンコーダの外部に配置されてもよく、又は、他のデバイス(エンコーダ100を含まないデバイス)に配置されてもよく、また、エンコーダが、フィルタパラメータを受信することによって補間フィルタを構成してもよいことが理解され得る。
モード選択ユニット162は、残差ブロック105の計算のため及び再構成されたブロック115の再構成のために予測モード(例えば、イントラ予測モード又はインター予測モード)及び/又は予測ブロック165として使用されるべき対応する予測ブロック145又は155を選択するように構成されてもよい。
一実施形態において、モード選択ユニット162は、予測モードを(例えば、予測処理ユニット160によりサポートされる予測モードから)選択するように構成されてもよい。予測モードは、最適一致又は最小残差を与える(最小残差は、送信又は記憶のためのより良好な圧縮を意味する)或いは最小シグナリングオーバーヘッドを与える(最小シグナリングオーバーヘッドは、送信又は記憶のためのより良好な圧縮を意味する)或いは両方を考慮に入れる又は釣り合わせる。モード選択ユニット162は、レート歪み最適化(rate distortion optimization,RDO)に基づいて予測モードを決定する、すなわち、最小レート歪み最適化をもたらす予測モードを選択する又は関連するレート歪みが少なくとも予測モード選択基準を満たす予測モードを選択するように構成されてもよい。
以下、エンコーダ100の例によって実行される予測処理(例えば、予測処理ユニット160によって実行される)及びモード選択(例えば、モード選択ユニット162によって実行される)について詳細に説明する。
前述したように、エンコーダ100は、(所定の)予測モードのセットから最良の予測モード又は最適な予測モードを決定又は選択するように構成される。予測モードのセットは、例えば、イントラ予測モード及び/又はインター予測モードを含んでもよい。
イントラ予測モードのセットは、35個の異なるイントラ予測モード、例えば、DC(又は平均)モード及び平面モードなどの無指向性モード、又は、H.265で規定されたモードなどの指向性モードを含んでもよく、或いは、67個の異なるイントラ予測モード、例えば、DC(又は平均)モード及び平面モードなどの無指向性モード、又は、開発中のH.266で規定されたモードなどの指向性モードを含んでもよい。
(想定し得る)インター予測モードのセットは、利用可能な基準ピクチャ(すなわち、例えば、前述したように、DBP 130に記憶された少なくとも幾つかのデコードされたピクチャ)及び他のインター予測パラメータに依存し、例えば、基準ピクチャ全体又は基準ピクチャの一部のみ、例えば、現在のピクチャブロックの周りの探索ウィンドウが、最適一致基準ブロックを探索するために使用されるかどうかに依存し、及び/又は、例えば、1/2ピクセル補間及び/又は1/4ピクセル補間などのピクセル補間が適用されるかどうかに依存する。
前述の予測モードに加えて、スキップモード及び/又はダイレクトモードが適用されてもよい。
予測処理ユニット160は、例えば、四分木(quad-tree,QT)分割、二分木((binary-tree,BT)分割、三分木(triple-tree,TT)分割、又は、それらの任意の組み合わせを反復的に使用することによって、ブロック103をより小さいブロック区分又はサブブロックに分割するとともに、例えば、ブロック区分又はサブブロックのそれぞれに対して予測を実行するように更に構成されてもよく、モード選択は、分割ブロック103のツリー構造の選択と、ブロック区分又はサブブロックのそれぞれに適用される予測モードの選択とを含む。
インター予測ユニット144は、動き推定(motion estimation,ME)ユニット(図2に描かれない)及び動き補償(motion compensation,MC)ユニット(図2に描かれない)を含んでもよい。動き推定ユニットは、動き推定のために、ピクチャブロック103(現在のピクチャ101の現在のピクチャブロック103)及びデコードされたピクチャ131、又は、少なくとも1つ以上の既に再構成されたブロック、例えば、1つ以上の他の/異なる既にデコードされたピクチャ231の再構成されたブロックを受信又は取得するように構成される。例えば、ビデオシーケンスが、現在のピクチャと、既にデコードされたピクチャ231とを含んでもよい。言い換えると、現在のピクチャ及び既にデコードされたピクチャ231は、ビデオシーケンスを形成するピクチャのシーケンスの一部であってもよく或いはそのようなシーケンスを形成してもよい。
例えば、エンコーダ100は、複数の他のピクチャの同じピクチャ又は異なるピクチャの複数の基準ブロックから1つの基準ブロックを選択するとともに、基準ピクチャ(又は基準ピクチャインデックス)及び/又は基準ブロックの位置(x、y座標)と現在のブロックの位置との間のオフセット(空間オフセット)をインター予測パラメータとして動き推定ユニット(図2には描かれない)に与えるように構成されてもよい。このオフセットは、動きベクトル(motion vector,MV)とも称される。
この出願の実施形態では、動き推定ユニットが候補補間フィルタのセットを含んでもよい。動き推定ユニットは、レート歪みコスト基準に従った候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを選択するように更に構成される。或いは、動き推定ユニットは、N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタのセット内の各補間フィルタを使用することにより、現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックに関してサブピクセル補間を実行するように更に構成される。更に、整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックにおいて現在のエンコーディングピクチャブロックと最適に一致する予測ブロックが決定され、また、補間によって得られる予測ブロックのものであるとともに候補補間フィルタのセットから選択される補間フィルタが標的補間フィルタである。
動き補償ユニットは、例えば、インター予測パラメータを取得するとともに、インター予測パラメータに基づいて又はインター予測パラメータを使用してインター予測を実行してインター予測ブロック145を取得するように構成される。動き補償ユニット(図2には描かれない)によって実行される動き補償は、動き推定によって決定される動き/ブロックベクトルに基づいて予測ブロックを抽出又は生成することを含んでもよい(補間はサブサンプル精度レベルで実行されてもよい)。補間フィルタリングは、既知のピクセルサンプルから更なるピクセルサンプルを生成し、それにより、ピクチャブロックをコーディングするために使用されてもよい候補予測ブロックの量を潜在的に増大させてもよい。現在のピクチャブロックのPUに関する動きベクトルを受信する際、動き補償ユニット146は、基準ピクチャリストのうちの1つにある動きベクトルが指し示す予測ブロックを特定してもよい。動き補償ユニット146は、ビデオスライスのピクチャブロックをデコードする際にビデオデコーダ200によって使用するために、ブロック及びビデオスライスと関連付けられるシンタックス要素を更に生成してもよい。
イントラ予測ユニット154は、例えば、ピクチャブロック103(現在のピクチャブロック)と、イントラ推定のための同じピクチャの1つ以上の既に再構成されたブロック、例えば再構成された隣り合うブロックとを取得する、例えば受信するように構成される。エンコーダ100は、例えば、複数の(所定の)イントラ予測モードの中から1つのイントラ予測モードを選択するように構成されてもよい。
一実施形態において、エンコーダ100は、例えば最小残差(例えば、現在のピクチャブロック103に最も類似している予測ブロック155を与えるイントラ予測モード)又は最小レート歪みに基づき、最適化基準に従ってイントラ予測モードを選択するように構成されてもよい。
イントラ予測ユニット154は、例えば選択されたイントラ予測モードのイントラ予測パラメータに基づいてイントラ予測ブロック155を決定するように更に構成される。いずれの場合も、イントラ予測ユニット154は、ブロックのイントラ予測モードを選択した後、イントラ予測パラメータ、すなわち、ブロックのための選択されたイントラ予測モードを示す情報を、エントロピーエンコーディングユニット170に与えるようにも構成される。一例において、イントラ予測ユニット154は、以下のイントラ予測技術の任意の組み合わせを実行するように構成されてもよい。
エントロピーエンコーディングユニット170は、エントロピーエンコーディングアルゴリズム又はスキーム(例えば、可変長コーディング(variable length coding,VLC)スキーム、コンテキスト適応VLCスキーム(context adaptive VLC,CALVC)、算術コーディングスキーム、コンテキスト適応バイナリ算術コーディング(context adaptive binary arithmetic coding,CABAC))、シンタックスベースのコンテキスト適応型バイナリ算術コーディング(syntax-based context-adaptive binary arithmetic coding,SBAC)、確率区間分割エントロピー(probability interval partitioning entropy,PIPE)コーディング、又は、他のエントロピーエンコーディング方法又は技術)を、量子化された残差係数109、インター予測パラメータ、イントラ予測パラメータ、及び/又は、ループフィルタパラメータに対して個別に又は共同で適用して(又は全く適用しないで)、出力172によって出力され得るエンコードされたピクチャデータ171を例えばエンコードされたビットストリーム171の形態で取得するように構成される。エンコードされたビットストリームは、ビデオデコーダ200に送信されてもよく、或いは、ビデオデコーダ200による後の送信又は取り込みのためにアーカイブされてもよい。エントロピーエンコーディングユニット170は、エンコードされている現在のビデオスライスのための他のシンタックス要素をエントロピーエンコードするように更に構成されてもよい。例えば、本発明の幾つかの実施形態において、エントロピーエンコーディングユニット170は、標的補間フィルタの指示情報及び/又は補間フィルタのフィルタパラメータをエントロピーエンコードするように更に構成される。
トレーニングユニットは、サンプルピクチャに基づき、機械学習に基づくとともにインター予測ユニット144に含まれる補間フィルタをトレーニングして、補間フィルタのフィルタパラメータを決定又は最適化するように構成される。
ビデオエンコーダ100の他の構造的変形は、ビデオストリームをエンコードするように構成され得る。例えば、非変換ベースのエンコーダ100は、幾つかのブロック又はフレームに関して変換処理ユニット106を伴うことなく残差信号を直接に量子化することができる。他の実施において、エンコーダ100は、単一のユニットに組み合わせられ得る量子化ユニット108及び逆量子化ユニット110を含む。
図3は、この出願の技術、すなわち、ビデオピクチャデコーディング方法を実施するように構成されるビデオデコーダ200の一例を示す。ビデオデコーダ200は、例えば、エンコーダ100によってエンコードされるエンコードされたピクチャデータ(例えば、エンコードされたビットストリーム)171を受信して、デコードされたピクチャ131を取得するように構成される。デコーディングプロセスにおいて、ビデオデコーダ200は、ビデオデータ、例えば、エンコードされたビデオビットストリーム(ビットストリームとも称される)のピクチャブロックを表すエンコードされたビデオビットストリーム及び関連するシンタックス要素をビデオエンコーダ100から受信する。
図3の例において、デコーダ200は、エントロピーデコーディングユニット204、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214(例えば、加算器214)、バッファ216、ループフィルタ220、デコードピクチャバッファ230、及び、予測処理ユニット260を含む。予測処理ユニット260は、インター予測ユニット244、イントラ予測ユニット254、及び、モード選択ユニット262を含んでもよい。ビデオデコーダ200は、幾つかの例では、図2のビデオエンコーダ100に関して説明されたエンコーディングパスとほぼ逆となるデコーディングパスを実行してもよい。
エントロピーデコーディングユニット204は、エンコードされたピクチャデータ(例えば、ビットストリーム又は現在のデコーディングピクチャブロック)171をエントロピーデコードして、例えば、量子化係数209、及び/又は、デコードされたエンコーディングパラメータ(エンコーディング情報とも称される、図3に描かれない)、例えば、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ、標的フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示す情報などの(デコードされた)シンタックス要素のうちのいずれか1つ又は全てを取得するように構成される。エントロピーデコーディングユニット204は、インター予測パラメータ、イントラ予測パラメータ、標的フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示す情報などのシンタックス要素を予測処理ユニット260に転送するように更に構成される。ビデオデコーダ200は、ビデオスライスレベル及び/又はビデオブロックレベルでシンタックス要素を受信してもよい。
逆量子化ユニット210は、逆量子化ユニット110と同じ機能を有してもよい。逆変換処理ユニット212は、逆変換処理ユニット112と同じの機能を有してもよい。再構成ユニット214は、再構成ユニット114と同じ機能を有してもよい。バッファ216は、バッファ116と同じ機能を有してもよい。ループフィルタ220は、ループフィルタ120と同じ機能を有してもよい。デコードピクチャバッファ230は、デコードピクチャバッファ130と同じ機能を有してもよい。
予測処理ユニット260は、インター予測ユニット244及びイントラ予測ユニット254を含んでもよい。インター予測ユニット244は、機能的にインター予測ユニット144に類似してもよく、また、イントラ予測ユニット254は、機能的にイントラ予測ユニット154に類似してもよい。予測処理ユニット260は、一般に、ブロック予測を実行する及び/又はエンコードされたデータ171から予測ブロック265を取得するとともに、例えばエントロピーデコーディングユニット204から、予測関連パラメータ及び/又は選択された予測モードに関する情報を(明示的又は暗黙的に)受信又は取得するように構成される。
ビデオスライスがイントラコーディングされた(I)スライスとしてコーディングされるとき、予測処理ユニット260のイントラ予測ユニット254は、信号伝送されたイントラ予測モードと現在のフレーム又はピクチャの既にデコードされたブロックからのデータとに基づいて、現在のビデオスライスのピクチャブロックのための予測ブロック265を生成するように構成される。ビデオフレームがインターエンコードされた(すなわち、B又はP)スライスにエンコードされるとき、予測処理ユニット260のインター予測ユニット244(例えば、動き補償ユニット)は、エントロピーデコーディングユニット204から受信される動きベクトル及び他のシンタックス要素に基づき、現在のビデオスライスにおけるビデオブロックの予測ブロック265を生成するように構成される。インター予測の場合、予測ブロックは、1つの基準ピクチャリスト内の基準ピクチャのうちの1つから生成されてもよい。ビデオデコーダ200は、DPB 230に記憶される基準ピクチャに基づくデフォルト構築技術を使用することにより、基準フレームリスト、すなわち、リスト0及びリスト1を構築してもよい。
予測処理ユニット260は、動きベクトルを構文解析し、予測ブロックの標的補間フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示すために使用される情報などのシンタックス要素を取得するためにサブピクセル補間を実行し、サブピクセル補間を実行するために使用される標的補間フィルタを決定し、現在のビデオスライスのビデオブロック(すなわち、現在のデコーディングピクチャブロック)の予測情報を決定し、予測情報に基づいて現在のデコーディングピクチャブロックの予測ブロックを生成する、ように構成される。例えば、予測処理ユニット260は、受信されたシンタックス要素の幾つかを使用して、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(例えば、イントラ予測又はインター予測)、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又は、GPBスライス)、スライスのための基準ピクチャリストのうちの1つ以上に関する構成情報、スライスのそれぞれのインターコーディングされたビデオブロックごとの動きベクトル、スライスのそれぞれのインターコーディングされたビデオブロックごとのインター予測状態、サブピクセル補間によって取得された予測ブロックの標的フィルタの指示情報、及び、他の情報を決定し、現在のビデオスライスのビデオブロックをデコードする。
予測処理ユニット260は、候補補間フィルタ251のセットと、フィルタ選択ユニット252とを含んでもよい。候補補間フィルタ251のセットは、1つ以上のタイプの補間フィルタ、例えば、DCTIF及びInvIFを含む。フィルタ選択ユニット252は、動き情報が分数ピクセル位置を指し示す場合、候補補間フィルタ251のセットから、標的補間フィルタの指示情報により示される標的補間フィルタを決定するように構成され、指示情報は、構文解析によって取得され、また、フィルタ選択ユニット252は、予測ブロックを取得するために指示情報によって示される標的補間フィルタを使用することによってサブピクセル補間を実行するように構成される。
逆量子化ユニット210は、ビットストリームで与えられるとともにエントロピーデコーディングユニット204によってデコードされる量子化変換係数を逆量子化する(すなわち、量子化解除する)ように構成されてもよい。逆量子化プロセスは、量子化の程度と同様に適用すべき逆量子化の程度とを決定するべくビデオスライス内のそれぞれのビデオブロックごとにビデオエンコーダ100によって計算される量子化パラメータの使用を含んでもよい。
逆変換処理ユニット212は、ピクセル領域内の残差ブロックを生成するために、変換係数に逆変換(例えば、逆DCT、逆整数変換、又は概念的に類似した逆変換プロセス)を適用するように構成される。
再構成ユニット214(例えば、加算器214)は、例えば、再構成された残差ブロック213のサンプル値と予測ブロック265のサンプル値とを加算することによって、逆変換ブロック213(例えば、再構成された残差ブロック213)を予測ブロック265に加えてサンプル領域における再構成ブロック215を取得するように構成される。
ループフィルタユニット220(コーディングループ中又はコーディングループ後)は、再構成ブロック215をフィルタリングしてフィルタリングされたブロック221を取得し、ピクセル移行を滑らかにする又はビデオ品質を向上させるように構成される。一例において、ループフィルタユニット220は、以下に記載されるフィルタリング技術の任意の組み合わせを実行するように構成されてもよい。ループフィルタユニット220は、例えば、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset,SAO)フィルタ、及び、バイラテラルフィルタ、適応ループフィルタ(adaptive loop filter,ALF)、鮮鋭化又は平滑化フィルタ、或いは、協調フィルタなどの他のフィルタを含む1つ以上のループフィルタに相当するようになっている。ループフィルタユニット220は図3ではインループフィルタとして示されるが、他の形態では、ループフィルタユニット220がポストループフィルタとして実装されてもよい。
その後、所定のフレーム又はピクチャにおけるデコードされたビデオブロック221は、後続の動き補償のために使用される基準ピクチャを記憶するデコードされたピクチャバッファ230に記憶される。
デコーダ200は、ユーザに対する提示又は閲覧のために、例えば出力232を介してデコードされたピクチャ231を出力するように構成される。
ビデオデコーダ200の他の変形は、圧縮されたビットストリームをデコードするように構成されてもよい。例えば、デコーダ200は、ループフィルタユニット220を伴うことなく出力ビデオストリームを生成してもよい。例えば、非変換ベースのデコーダ200は、幾つかのブロック又はフレームに関して逆変換処理ユニット212を伴うことなく残差信号を直接に逆量子化することができる。他の実施において、ビデオデコーダ200は、単一のユニットへと組み合わされ得る逆量子化ユニット210及び逆変換処理ユニット212を有する。
図2及び図3はそれぞれ特定のエンコーダ100及び特定のデコーダ200を示すが、エンコーダ100及びデコーダ200がそれぞれ、説明されていない様々な他の機能ユニット、モジュール、又は、構成要素を更に含んでもよいことが理解されるべきである。更に、図2及び図3に示される特定の構成要素及び/又は図2及び図3に示される特定の構成要素の配置態様は限定されない。この明細書中で説明されるシステムの様々なユニットは、ソフトウェア、ファームウェア、及び/又は、ハードウェア、及び/又は、それらの任意の組み合わせで実装されてもよい。
以下では、この出願に関連するサブピクセル補間の反転性について説明する。
各デジタルピクチャが、m行n列の2次元アレイと見なされてもよく、また、m×n個のサンプル(sample)を含むことが理解されるべきである。各サンプルの位置がサンプリング位置と称され、また、各サンプルの値がサンプル値と称される。一般に、m×nはピクチャの解像度、すなわち、ピクチャに含められるサンプルの量と称される。例えば、2Kピクチャの解像度は1920×1080であり、4Kビデオの解像度は3840×2160である。一般に、サンプルがピクセルとも称され、また、サンプル値がピクセル値とも称される。したがって、各ピクセルは、情報の2つの断片、すなわち、ピクセル位置及びピクセル値も含む。
時系列を成す複数のデジタルピクチャがデジタルビデオを構成する。デジタルビデオのコーディングは、記憶及びネットワーク送信を容易にするために、デジタルビデオ内の冗長情報を除去するために使用される。一般に、デジタルビデオの冗長性は、空間的冗長性、時間的冗長性、統計的冗長性、及び、視覚的冗長性を含む。ビデオシーケンス内の隣り合うフレーム間には強い相関があり、また、大量の時間的冗長性がある。時間的冗長性を除去するべく、コーディングフレームを使用することにより現在のコーディングされるべきフレームを予測するために、現在のブロックベースのハイブリッドコーディングフレームワークにインター予測技術が導入され、それにより、コーディングビットレートが大幅に低減される。
ブロックベースのインター予測では、現在のコーディングされるべきピクチャが最初に幾つかの重なり合わないコーディングユニット(CU)に分割される。各CUがそれ自体のコーディングモードを有する。各CUが幾つかの予測ユニット(PU)に更に分割されてもよく、また、各PUは、予測モード、例えば、予測方向又は動きベクトル(MV)を有する。エンコーダ側では、それぞれのPUごとに基準フレーム内の一致したブロックを見出すことができ、また、一致したブロックの位置はMVを使用することによって特定される。デジタルサンプリングプロセスでは、ピクチャの幾つかの位置(分数ピクセル位置を指す)のサンプル値がサンプリングされない。したがって、現在のブロックと完全に一致するブロックが基準フレーム内で見出されない場合がある。この場合、補間を実行して分数ピクセル位置のピクセル値を生成するためにサブピクセル補間技術が使用される。図4は、整数ピクセル及びサブピクセルの位置の概略図である。大文字が整数ピクセル位置を示し、小文字が異なる分数ピクセル位置を示す。整数ピクセルに基づく異なる補間フィルタを使用することによる補間によって、異なる分数ピクセル位置のピクセル値が生成され、また、補間されたブロックが基準ブロックとして使用される。
例えば、図1に示される補間プロセスの場合、動きベクトルの精度は1/4である。動き推定が行われるとき、現在のエンコードされるべきピクチャブロックと最適に一致する整数ピクセルピクチャブロックが最初に見出される。その後、4つの1/2ピクセルサブピクセルピクチャブロックが、1/2精度補間フィルタを使用することによって補間により生成される。1/2の精度を伴う最適一致の動きベクトルを取得するために、現在のエンコードされるべきピクチャブロックと、以下のブロック、すなわち、4つの1/2ピクセルピクチャブロック及び整数ピクセルピクチャブロックとの間でマッチングが行われる。1/2精度を伴う最適一致の動きベクトルが指し示す最適一致のピクセルブロックに関して補間を実行して、1/4精度を伴う8個のサブピクセルブロックを取得するために、1/4精度を伴う補間フィルタが使用される。1/2精度を伴う最適一致のブロック及び1/4精度を伴う8個のサブピクセルブロックは、最適一致のピクチャブロックに関して探索され、また、最適一致のピクチャブロックは、現在のエンコードされるべきピクチャブロックの予測ブロックとして使用される。一致したピクチャブロックの位置によって示される動きベクトルが、現在のエンコードされるべきピクチャブロックの動きベクトルである。
デジタルビデオコーディングでは、整数ピクセル及びサブピクセルの概念がデジタルサンプリングの離散性からもたらされている。図5(a)はデジタルサンプリングの概略図であり、点がサンプリングされたサンプルを表し、破線が未加工のアナログ信号s(t)を表し、また、実線が補間によって得られた信号(補間信号と称される)を表す。デジタルサンプリングプロセスでは、特定の位置(整数ピクセル位置)のサンプル値のみがサンプリングされ、他の位置のサンプル値が破棄される。補間は、デジタルサンプリングの逆プロセスである。補間の目的は、離散的なサンプル値から連続的な未加工信号を最大限に復元して、特定の位置(分数ピクセル位置)のサンプル値を取得することである。図5(a)に示されるように、標的位置(分数ピクセル位置)αが、標的位置に隣接する位置のサンプル値に基づく補間によって取得されてもよい。補間プロセスは以下のように説明される。
pα=fα(s-M,s-M+1,...,s0,s1,...,sN) (1)
siは整数ピクセル位置iのサンプル値を表し、iは整数ピクセル位置のインデックスを表し、iは整数である。fαは、分数ピクセル位置αに対応する補間フィルタを表す。M及びNは正の整数であり、-M<α<Nである。
図5(b)に示されるように、未加工信号が垂直座標軸に沿って反転される場合、s’(t)=s(-t)が取得され得る。その後、サンプリングによってサンプルs’iを取得するためにサンプラがαだけ左方向に並進され、サンプルs’iは図5(a)のサブピクセルpαに対応する。図5(b)における整数ピクセルとサブピクセルとの間の距離は、図5(a)における整数ピクセルとサブピクセルとの間の距離と同じであるため、図5(b)における分数ピクセル位置のサンプル値も、fαを使用することによって、以下によって補間により取得されてもよい。すなわち、
u0=fα(s’-α-M,s’-α-M+1,...,s’-α,s’-α+1,...,s’-α+N) (2)
s’(t)=s(-t-α)であるため、式(2)は、もう一つの方法として以下のように表されてもよい。
u0=fα(sα+M,sα+M-1,...,sα,sα-1,...,sα-N) (3)
式(2)及び式(3)から分かるように、補間によって分数ピクセル位置のサンプルを取得するために使用され得る理想的な補間フィルタがある場合には、以下となる。
pα+k=sα+k (4)
この場合、分数ピクセル位置から整数ピクセル位置を復元するために図5(b)における補間フィルタを使用することもできる。すなわち、
uk=s-k (5)
式(4)及び式(5)から分かるように、整数ピクセルサンプル値からサブピクセルサンプル値を完全に復元するために使用され得るフィルタがある場合には、そのフィルタを使用して分数ピクセル位置から整数ピクセル位置を復元することもできる。そのような特徴は、サブピクセル補間の反転性と称される。サブピクセル補間の反転性に基づき、この出願は、補間フィルタを生成するためのエンドツーエンドトレーニング方法を提供する。
サブピクセル補間の反転性に基づき、本発明の実施形態は、2つの補間フィルタトレーニング方法を提供する。補間フィルタトレーニング方法は、エンコーダ又はコンピュータデバイスで実行されてもよい。コンピュータデバイスは、コンピュータ、クラウドコンピュータデバイス、サーバ、端末デバイスなどを含んでもよいが、これらに限定されない。
従来の技術では、所定の係数を伴う補間フィルタ、例えば、バイリニア補間フィルタ又はバイキュービック補間フィルタが通常使用される。現在、所定の係数を伴う補間フィルタは、ビデオコーディング標準規格で幅広く使用される。H.264/AVCでは、1/2ピクセルサンプル値を生成するために6タップ有限応答フィルタが使用され、また、4/1ピクセルサンプル値を生成するために単純なバイリニア補間が使用される。H.264/AVCにおける補間フィルタと比較して、HEVCにおける補間フィルタに対して大幅な改善が行われてきた。1/2ピクセルサンプル値を生成するために8タップフィルタが使用され、また、1/4ピクセルサンプル値を生成するために7タップ補間フィルタが使用される。所定の係数を伴う補間フィルタは、実装が容易であり、複雑度が低いため、幅広く使用される。しかしながら、ビデオ信号の多様性及び非定常性に起因して、所定の係数を伴うフィルタの性能は非常に限られる。
自然なビデオの非定常性に対処するために、コンテンツ適応補間フィルタが研究において提案される。動き補償予測の誤差に基づいてエンコーダ側でフィルタ係数を推定するために典型的な適応補間フィルタが使用され、その後、フィルタ係数がエンコードされてビットストリームに書き込まれる。補間フィルタの複雑さを低減するために、分離可能な適応補間フィルタが提案され、この適応補間フィルタは、基本的にコーディング性能を確保しつつ複雑さを大幅に低減できる。フィルタ係数をコーディングするのに必要なビットの量を削減するために、ピクチャが等方性であるという仮定の下で幾つかの適応補間フィルタが一般に設計される。適応補間フィルタはコンテンツ適応型であるが、適応補間フィルタは依然として線形補間フィルタに基づく。加えて、フィルタ係数をコーディングするために幾つかのビットが依然として必要とされる。
前述の技術的問題を考慮して、この出願の実施形態は、補間フィルタトレーニング方法を提供する。図6Aは、この出願の一実施形態に係る補間フィルタトレーニング方法の概略的なフローチャートであり、また、図6Bは、トレーニング手順の提示的な概略図である。方法は、以下のステップの一部又は全部を含むが、これらに限定されない。
S612:第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって整数ピクセル位置にあるサンプルピクチャのピクセルに対して補間を行う。
S614:第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力する。
S616:第1のサブピクセルピクチャブロックと第2のサブピクセルピクチャブロックとの間の差を表すために使用される第1の関数を最小化することによって、第2の補間フィルタのフィルタパラメータを決定する。
この出願のこの実施形態における方法はステップを使用することによって表されるが、ステップS64及びステップS6がトレーニングプロセスにおける反復プロセスであることに留意すべきである。
この出願のこの実施形態の実施において、サンプルピクチャは、未加工のピクチャX、又は、未加工のピクチャXをエンコーダによってエンコードして圧縮することによって取得されるピクチャX’であってもよい。しかしながら、この出願のこの実施形態の他の実施では、第1の補間フィルタに入力されるサンプルピクチャが未加工ピクチャであり、また、第2の補間フィルタに入力されるサンプルピクチャは、エンコーダによってサンプルピクチャをエンコードして圧縮することによって取得されるピクチャであってもよい。
第1の補間フィルタが、第1の分数ピクセル位置のピクセル値を生成するために補間を実行できる任意の従来技術の補間フィルタであることが理解されるべきである。第1の補間フィルタは、所定の係数を伴う補間フィルタ、適応補間フィルタ、又は、他のタイプの補間フィルタなどであってもよい。これは、この出願のこの実施形態において限定されない。第1の分数ピクセル位置は、任意の分数ピクセル位置であってもよい。この出願のこの実施形態では、第1のサブピクセルピクチャが、第2の補間フィルタをトレーニングするためのラベルデータとして使用され、それにより、トレーニングによって取得される第2の補間フィルタを、第1の分数ピクセル位置の補間によって取得されるピクセル値のために直接に使用できることが分かる。
第2の補間フィルタが、サポートベクターマシン(support vector machine,SVM)、ニューラルネットワーク(neural network,NN)、畳み込みニューラルネットワーク(convolutional neural network,CNN)、又は、他の形態であってもよいことが更に理解されるべきである。これは、この出願のこの実施形態において限定されない。
第1の関数は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される関数であってもよい。第1の関数は、損失関数、目標関数、コスト関数などであってもよい。これは、この出願のこの実施形態において限定されない。
例えば、第1の関数が正則化損失関数(regularization loss function)であり、また、第1の関数が以下のように表されてもよい。
Figure 2022514160000002
γは、分数ピクセル位置のインデックスを表し、Lreg,γは、分数ピクセル位置γに対応する第1の関数を表し、Xは、サンプルピクチャを表し、X’は、サンプルピクチャをエンコーダによって圧縮することによって取得されるピクチャを表し、TIFγは、分数ピクセル位置γに対応する第1の補間フィルタを表し、Fは、第2の補間フィルタを表し、TIFγ(X)は、分数ピクセル位置γに対応する第1のサブピクセルピクチャを表し、Xf,γ及びFy(X’)は、分数ピクセル位置γに対応する第2のサブピクセルピクチャを表す。ノルム記号
Figure 2022514160000003
ここで、iはxにおけるピクセルのインデックスを表す。
或いは、第1の関数が他の態様で具体的に表されてもよいことが理解されるべきである。例えば、第1の関数は、対数損失関数、二乗損失関数、指数損失関数、又は、他の形態の損失関数であってもよい。これは、この出願のこの実施形態において限定されない。
1つ以上のサンプルピクセルが存在してもよいことが理解され得る。1つのサンプルピクチャは、ピクチャのフレーム、コーディングユニット(CU)、又は、予測ユニット(PU)であってもよい。これは、本発明において限定されない。
第2の補間フィルタのフィルタパラメータは、損失関数を最小化することによって取得されてもよく、また、トレーニングプロセスが以下のように表されてもよい。
Figure 2022514160000004
nはサンプルピクチャの総量を表し、また、nは正の整数である。kはサンプルピクチャのインデックスを表し、kは正の整数であり、また、k≦nである。θは、最適なフィルタパラメータを表す。θはフィルタパラメータを表す。
Figure 2022514160000005
は、サンプルピクチャkに対応する第1の関数を表す。随意的に、nは1又は他の正の整数に等しくてもよい。
随意的に、第2の補間フィルタのフィルタパラメータは、最小二乗法(Least Square Method)、線形回帰((Linear Regression)、勾配降下(gradient descent)、又は、その他の方法を使用することによって計算されてもよい。
サンプリングによって取得される整数ピクセルピクチャに対応するサブピクセルピクチャを取得することができないため、機械学習によって取得される補間フィルタに関するラベルデータは存在しない。従来の技術では、使用されるラベルデータが方法「ぼかしサンプリング」を使用して取得される。具体的には、隣り合うピクセル間の相関を高めるためにローパスフィルタを使用することによってサンプルピクチャがぼかされる。その後、異なる位相に従ってピクチャをサンプリングすることによって幾つかのサブピクチャが取得される。位相0に対応するサブピクチャが整数ピクセルと見なされ、また、他の位相に対応するサブピクチャが異なる位置にあるサブピクセルと見なされる。しかしながら、この方法を使用することによって取得されるラベルデータは、手動で設計されるため、最適ではない。
この出願のこの実施形態で提供される補間フィルタトレーニング方法では、第1のサブピクセルピクチャを取得するために従来の補間フィルタを使用することによってサンプルピクチャに対してサブピクセル補間が実行され、また、第1のサブピクセルピクチャはラベルデータとして使用されることが分かる。補間フィルタ(第2の補間フィルタ)が、補間フィルタを取得するために、第1のサブピクセルピクチャを監視することによってトレーニングされる。これにより、コーディング性能を向上させることができる。
本発明の一実施形態では、複数の分数ピクセル位置に1対1で対応する補間フィルタが一緒にトレーニングされてもよい。具体的な実装方法は、以下のステップを含むが、これらに限定されない。
S1:分数ピクセル位置γに対応する第1の補間フィルタを使用することによって整数ピクセル位置にあるサンプルピクチャのピクセルに対して補間を行って、分数ピクセル位置γにあるサンプルピクチャの第1のサブピクセルピクチャを取得し、分数ピクセル位置γはQ個の分数ピクセル位置のうちのいずれか1つであり、Qは正の整数である。
S2:サンプルピクチャを分数ピクセル位置γに対応する第2の補間フィルタに入力して、分数ピクセル位置γに対応する第2のサブピクセルピクチャを取得する。
S3:Q個の分数ピクセル位置に1対1で対応する第1の関数を最小化することによって、Q個の分数ピクセル位置に1対1で対応する第2の補間フィルタのフィルタパラメータを決定し、分数ピクセル位置γに対応する第1の関数は、分数ピクセル位置γにあるサンプルピクチャの第1のサブピクセルピクチャと分数ピクセル位置γに対応する第2のサブピクセルピクチャとの間の差を表すために使用される。
随意的に、Qは、分数ピクセル位置の総量であってもよく、或いは、他の値であってもよい。
図6Cは、本出願の一実施形態に係る他の補間フィルタトレーニング方法の概略的なフローチャートであり、また、図6Dは、トレーニング手順の例示的な概略図である。方法は、以下のステップの一部又は全部を含むが、これらに限定されない。
S622:第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによってサンプルピクチャに対してサブピクセル補間を実行する。
S624:第2のサブピクセルピクチャを取得するために、サンプルピクチャを第2の補間フィルタに入力する。
S626:第1のピクチャを取得するために、フリップ演算が行われる第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するために、第1のピクチャに対してフリップ演算の逆演算を実行し、第2の補間フィルタ及び第3の補間フィルタはフィルタパラメータを共有する。
S628:第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてフィルタパラメータを決定する。
この出願のこの実施形態における方法はステップを使用することによって表されるが、ステップS76及びステップS78がトレーニングプロセスにおける反復プロセスであることに留意すべきである。
サンプルピクチャ、第1の関数、及び、第1の補間フィルタの説明については、図6A及び図6Bで説明した補間フィルタトレーニング方法の実施形態の関連する説明を参照されたい。この出願では詳細が再度説明されない。
サブピクセル補間によって生成されるサブピクセルピクチャXfに対してフリップ演算Tが実行され、その後、第1のピクチャを取得するために第3の補間フィルタを使用することによってサブピクセル補間が実行され、その後、サンプルピクチャの再構成ピクチャ、すなわち、第2のピクチャを取得するためにフリップ演算Tの逆演算T-1が第1のピクチャに対して実行される。第1のピクチャ及び第2のピクチャはいずれも整数ピクセルピクチャであり、また、フリップ演算は、水平フリップ、垂直フリップ、及び、対角フリップを含む。フリップ演算のタイプは、以下の式に従って選択されてもよい。
Figure 2022514160000006
yfは、水平方向における第2のサブピクセルピクチャに対するフリップされたピクチャのサブピクセル変位を表し、また、xfは、垂直方向における第2のサブピクセルピクチャに対するフリップされたピクチャのサブピクセル変位を表す。
第2の関数は、サンプルピクチャと第2のピクチャとの間の差を表すために使用される関数であってもよい。第2の関数は、損失関数、目標関数、コスト関数などであってもよい。これは、この出願のこの実施形態において限定されない。
例えば、第2の関数が以下のように表されてもよい。
Figure 2022514160000007
Lrec,γは第2の関数を表し、Xはサンプルピクチャを表し、γは第1の分数ピクセル位置を表し、TIFγは第1の補間フィルタを表し、Fは第2の補間フィルタを表し、TIFγ(X)は第1のサブピクセルピクチャを表し、Xf,γは第2のサブピクセルピクチャを表す。TT-1=Eであり、ここで、Eは単位行列を表す。
或いは、第1の関数が他の態様で表されてもよいことが理解されるべきである。例えば、第1の関数は、対数損失関数、二乗損失関数、指数損失関数、又は、他の形態の損失関数であってもよい。これは、この出願のこの実施形態において限定されない。
エンドツーエンドトレーニングフレームワークの全体最適化プロセスが、第1の関数及び第2の関数の両方を最小化することであるのが分かる。この出願の一実施形態において、ステップS628の実施は、以下の通り、すなわち、
第3の関数を最小化することによってフィルタパラメータを決定することであってもよく、第3の関数は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数との間の加重和である。
例えば、ジョイント損失関数(第3の関数とも称される)が以下のように定義される。
Ljoint=(1-δ)×Lrec+δ×Lreg (9)
第2の補間フィルタのフィルタパラメータは、ジョイント損失関数を最小化することによって取得されてもよく、また、トレーニングプロセスが以下のように表されてもよい。
θ=arg min Ljoint(θ) (10)
この出願の一実施形態において、ステップS48の他の実施は、以下の通り、すなわち、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを交互に最小化することによってフィルタパラメータを決定することであってもよい。
同様に、図6C及び図6Dに記載されたトレーニング方法では、1つ以上のサンプルピクセルが存在し得る。1つのサンプルピクチャは、ピクチャのフレーム、コーディングユニット(CU)、又は、予測ユニット(PU)であってもよい。これは、本発明において限定されない。
第2の補間フィルタのフィルタパラメータは、損失関数を最小化することによって取得されてもよく、また、トレーニングプロセスが以下のように表されてもよい。
Figure 2022514160000008
Figure 2022514160000009
nはサンプルピクチャの総量を表し、nは正の整数である。kはサンプルピクチャのインデックスを表し、kは正の整数であり、また、k≦nである。θは、最適なフィルタパラメータを表す。θはフィルタパラメータを表す。
Figure 2022514160000010
は、サンプルピクチャkに対応する第1の関数を表す。
Figure 2022514160000011
は、サンプルピクチャkに対応する第2の関数を表す。随意的に、nは1又は他の正の整数に等しくてもよい。
図6A及び図6Bに示される実施形態と比較して、本発明のこの実施形態で提供される補間フィルタトレーニング方法では、第1のサブピクセルピクチャを取得するために従来の補間フィルタを使用することによってサンプルピクチャに対してサブピクセル補間が実行され、また、第1のサブピクセルピクチャがラベルデータとして使用される。サブピクセル補間の反転性原理を使用することによって、フィルタパラメータは、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを最小化することによって決定され、それにより、第2の補間フィルタは、サンプルピクチャを監視することによって制約される。これは、第2の補間フィルタを使用することによってサブピクセル補間の精度を向上させる。
以下、図7及び図8に基づいて、本発明の実施形態で提供されるビデオピクチャエンコーディング方法の2つの具体的な実施プロセスについて説明する。方法は、ビデオエンコーダ100によって実行されてもよい。方法は、一連のステップ又は演算によって説明される。方法のステップが、様々な順序で及び/又は同時に実行されてもよく、図6に示される実行順序に限定されないことが理解されるべきである。ビデオエンコーダは、複数のビデオフレームを含むビデオデータストリームのために使用され、現在のビデオフレームの現在のエンコーディングピクチャブロックの動き情報を予測するために以下のステップを含むプロセスを実行するとともに、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするものと仮定する。
図7に示されるように、第1のエンコーディング実施プロセスは以下の通りである。
S72:現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を実行し、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示し、インター予測プロセスは、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定することを含む。
S74:現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードし、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される。
前述の実施態様では、インター予測モードがマージモードであるかどうかにかかわらず、動き情報が分数ピクセル位置を指し示す際に、ビデオエンコーダは、デコーダ側がエンコーディングによって取得された予測ブロックの標的フィルタのタイプを知るように、標的フィルタの指示情報をビットストリームにエンコードする必要がある。
図8に示されるように、第2のエンコーディング実施プロセスは以下の通りである。
S82:現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を実行し、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示し、インター予測プロセスは、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定することを含む。
S84:現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードし、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、エンコーディング情報は標的補間フィルタの指示情報を含まず、或いは、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合、エンコーディング情報は標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックが標的補間フィルタを使用してサブピクセル補間を実行することを示すために使用される。
この出願のこの実施形態では、ビデオエンコーダが候補補間フィルタのセットを含み、候補補間フィルタのセットは複数のタイプの補間フィルタを含んでもよく、各タイプの補間フィルタは1つ以上の補間フィルタを含んでもよい。現在のエンコーディングピクチャブロックに対してインター予測を実行する際、ビデオコーダは、現在のエンコーディングピクチャブロックの予測ブロックを取得するために、サブピクセル補間を実行するべく補間フィルタのうちの1つを選択してもよい。
随意的に、標的補間フィルタは、サブピクセル補間によって取得される予測ブロックの補間フィルタ又は取得された予測ブロックの一種の補間フィルタである。言い換えると、標的補間フィルタの指示情報は、取得された予測ブロックの補間フィルタを示す或いは取得された予測ブロックの補間フィルタのタイプを示してもよい。
例えば、候補補間フィルタのセットは、2つのタイプの補間フィルタ、例えば、第1のタイプの補間フィルタ及び第2のタイプの補間フィルタを含む。標的補間フィルタが第1のタイプの補間フィルタである場合には、指示情報が「0」であってもよい。標的補間フィルタが第2タイプの補間フィルタである場合には、指示情報が「1」であってもよい。
第1のタイプの補間フィルタ又は第2のタイプの補間フィルタが、1つ以上の分数ピクセル位置に1対1で対応する、前述の補間フィルタトレーニング方法を使用することによってトレーニングされる、1つ以上の第2の補間フィルタを含んでもよいことが理解され得る。
ステップS72/S82において、標的補間フィルタは、以下の2つの実施態様を含んでもよいがこれらに限定されない実施において決定される。
第1の実施:
現在のエンコーディングピクチャブロックのために使用される標的補間フィルタは、レート歪みコスト基準に従って候補補間フィルタのセットから決定される。具体的な実施は、以下の通り、すなわち、それぞれのタイプの補間フィルタごとに、サブピクセルピクチャブロックのレート歪みコストを計算すること、及び、現在のエンコーディングピクチャブロックに対応するとともにサブピクセル補間によって取得される予測ブロックの標的補間フィルタとして最小のレート歪みコストを伴う補間フィルタを決定することである。例えば、現在のエンコーディングピクチャブロックに対してインター予測を行うプロセスにおいて、ビデオエンコーダは、現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ブロックを見出してよく、P個のサブピクセル基準ピクチャブロックを取得するために第1のタイプの補間フィルタ(候補補間フィルタのセット内の任意のタイプの補間フィルタ)を使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行い、予測ブロックを決定し、予測ブロックの動き情報を取得し、残差を計算し、残差及び動き情報などのエンコーディング情報をビットストリームにエンコードし、ビットストリームに基づいてピクチャブロックを再構成し、再構成されたピクチャブロックと現在のエンコーディングピクチャブロックとの間の平均二乗誤差を歪みとして使用し、取得されたビットストリームのサイズをビットレートとして使用し、歪み及びビットレートに基づいて第1のタイプの補間フィルタのレート歪みコストを更に取得する。レート歪みコストの計算は従来技術に属し、ここでは詳細について説明しない。この出願では、インター予測プロセスにおいて現在のエンコーディングピクチャブロックに対して完全なエンコーディング演算及び再構成が実行されるが、プロセスはテストプロセスであり、プロセスで得られたエンコーディング情報が必ずしもビットストリームに書き込まれるとは限らないことが理解されるべきである。随意的に、最小のレート歪みコストを伴う補間フィルタのタイプが関与するエンコーディングプロセスで得られたエンコーディング情報のみがビットストリームに書き込まれる。
Pが正の整数であり、第1のタイプの補間フィルタを使用することによって実行されるサブピクセル補間の精度に基づいてPが決定されることが理解され得る。
第2の実施:
現在のエンコーディングピクチャブロックに対してインター予測を行うプロセスにおいて、ビデオエンコーダは、現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ブロックを見出し、N個のサブピクセル基準ピクチャブロックを取得するために候補補間フィルタのセット内のそれぞれの補間フィルタを使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行ってもよく、ここで、Nは正の整数であり、また、ビデオエンコーダは、整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックから、現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、予測ブロックに基づいて動き情報を決定してもよい。動き情報が分数ピクセル位置を指し示す場合、標的フィルタは、補間によって取得された予測ブロックの補間フィルタ又は補間によって取得された予測ブロックの一種の補間フィルタである。そうでなければ、動き情報が整数ピクセル位置を指し示す場合、ビデオエンコーダは、標的フィルタを決定する必要がなく、標的フィルタの指示情報をビットストリームにエンコードする必要がない。
現在のエンコーディングピクチャブロックに対してインター予測を行うプロセスにおいて、現在のエンコーディングピクチャブロックの予測ブロックが整数ピクセルピクチャである場合、ビデオエンコーダは、標的フィルタを決定するプロセスを行う必要がなく、標的補間フィルタの指示情報をビットストリームにエンコードする必要もないことが理解され得る。
この出願の一実施形態において、候補補間フィルタのセットは、前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得された第2の補間フィルタを含んでもよい。
随意的に、標的フィルタが前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得された第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、前述の補間フィルタトレーニング方法のいずれか1つを使用することによってオンライントレーニングにより取得されたフィルタパラメータである。
更に、エンコーディング情報は、トレーニングによって取得された標的補間フィルタのフィルタパラメータを更に含み、或いは、エンコーディング情報はフィルタパラメータ差分を更に含み、また、フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である。
ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)などを含む。言い換えると、ビデオエンコーダは、1つのピクチャブロック、ピクチャブロックの1つのスライス、1つのビデオシーケンスサブグループ、1つのコーディングツリーユニット(CTU)、1つのコーディングユニット(CU)、又は、1つの予測ユニット(PU)がエンコードされる毎に1回、トレーニングを実行してもよい。
ピクチャユニットが予測ユニットである場合、ビデオエンコーダは、候補補間フィルタのセット内の第2の補間フィルタをトレーニングするために毎回取得されるサンプルピクチャとして現在のエンコーディングピクチャブロックを使用してもよい。
以下、図9及び図10に基づいて、本発明の実施形態に係るビデオピクチャデコーディング方法の2つの具体的な実施プロセスについて説明する。方法は、ビデオデコーダ200によって実行されてもよい。方法は、一連のステップ又は演算によって説明される。方法のステップが、様々な順序で及び/又は同時に実行されてもよく、図9又は図10に示される実行順序に限定されないことが理解されるべきである。
図9は、図7に示されるビデオピクチャエンコーディング方法に対応するビデオピクチャデコーディング方法の実施プロセスを示す。実施プロセスは、以下のステップの一部又は全部を含んでもよい。
S92:標的補間フィルタの指示情報を取得するために、ビットストリームを構文解析する。
S94:現在のデコーディングピクチャブロックの動き情報を取得し、動き情報は分数ピクセル位置を指し示す。
S96:現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を行うことを含む。
S98:現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成する。
なお、ステップS92がステップS94の前後に行われてもよく、或いは、ステップS92及びステップS94が同時に行われてもよい。これは、本発明のこの実施形態において限定されない。
この出願のこの実施形態では、どのインター予測モードがビットストリームを取得するために使用されるかにかかわらず、動き情報が分数ピクセル位置を指し示す場合、ビットストリームを構文解析することによって取得されるエンコーディング情報は、標的補間フィルタの指示情報を含む。しかしながら、構文解析によって得られるエンコーディング情報が動き情報を含むかどうかは、インター予測モードに関連付けられる。インター予測モードがマージモードである場合、ビデオデコーダは、マージモードにおいてマージングによって取得される既にデコードされたピクチャブロックの動き情報を継承してもよい。インター予測モードが非マージモードである場合、ビデオデコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスを取得するためにビットストリームを構文解析してもよく、或いは、動き情報を取得するために、ビットストリームを構文解析することにより、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得してもよい。
現在のデコーディングピクチャブロックの予測モードが非マージモードであると特定される場合には、ステップS94の実施が以下を含んでもよい。ビデオデコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスを取得するためにビットストリームを構文解析してもよい。更に、現在のデコーディングピクチャブロックの動き情報は、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて決定される。
随意的に、ステップS94の他の実施が以下を含んでもよい。ビデオデコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するために、ビットストリームを構文解析し、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定し、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得してもよい。
現在のデコーディングピクチャブロックの予測モードがマージモードであると特定される場合、ステップS94の実施が以下を含んでもよい。ビデオデコーダは、マージモードにおいてマージングにより取得される既にデコードされたピクチャブロックの動き情報を継承してもよい。既にデコードされたピクチャブロックの動き情報が、現在のデコーディングピクチャブロックの動き情報と一致することが理解され得る。
随意的に、ビデオデコーダは、最初に、分数ピクセル位置を指し示す現在のデコーディングピクチャブロックの動き情報をビデオデコーダが取得するS94を実行し、その後、標的補間フィルタの指示情報を取得するために、ビデオデコーダがビットストリームを構文解析するステップS92を実行してもよい。動き情報が整数ピクセル位置を指し示す場合には、現在のピクチャブロックに対応する、ビットストリームを構文解析することによって取得されるエンコーディング情報が、標的補間フィルタの指示情報を含まず、或いは、現在のデコーディングピクチャブロックの取得された動き情報が整数ピクセル位置を指し示す場合には、ビデオデコーダがS92を行う必要がないことが理解され得る。この場合、取得された動き情報に基づいて予測が行われてもよい。
図10は、図8に示されるビデオピクチャエンコーディング方法に対応するビデオピクチャデコーディング方法の実施プロセスを示す。実施プロセスは、以下のステップの一部又は全部を含んでもよい。
S102:現在のデコーディングピクチャブロックの情報を取得するためにビットストリームを構文解析し、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される。
S104:現在のデコーディングピクチャブロックの動き情報を取得し、動き情報は分数ピクセル位置を指し示す。
S106:現在のピクチャブロックのインター予測モードが標的インター予測モードではない場合、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対してインター予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報はビットストリームを構文解析することによって取得される。
S108:現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックを再構成する。
この出願のこの実施形態では、インター予測モードが以下の処理に関連する。エンコーディング中、インター予測モードが標的予測モードではなく(例えば、非マージモード)且つ動き情報が分数ピクセル位置を指し示す場合にのみ、標的補間フィルタの指示情報がビットストリームにエンコードされる必要がある。インター予測モードが標的インター予測モード(例えば、マージモード)である場合、動き情報、動き情報のインデックス、動きベクトル差分、及び、標的補間フィルタの指示情報は、ビットストリームにエンコードされる必要がない。これに対応して、デコーダ側では、インター予測モードが標的予測モードではなく(例えば、非マージモード)且つ現在のデコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示す場合にのみ、標的補間フィルタの指示情報が構文解析によって取得される必要がある。しかしながら、インター予測モードが標的予測モード(例えば、マージモード)であり且つ現在のデコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示す場合、既にデコードされたピクチャブロックの動き情報であってマージモードでマージングによって取得される動き情報と標的補間フィルタの指示情報とが継承されてもよい。
現在のデコーディングピクチャブロックのステップS102での構文解析により取得されるインター予測モードが標的インター予測モードでない(非マージモード)場合には、ステップS104の実施が以下を含んでもよい。ビデオデコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスを取得するためにビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動き情報を決定してもよい。
随意的に、ステップS104の他の実施が以下を含んでもよい。ビデオデコーダは、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するために、ビットストリームを構文解析し、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定し、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得してもよい。
更に、現在のデコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示す場合、ビデオデコーダは、標的補間フィルタの指示情報を取得するためにビットストリームを構文解析する必要がある。インター予測を実行するプロセスにおいて、ビデオデコーダは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行する必要がある。現在のデコーディングピクチャブロックの動き情報が整数ピクセル位置を指し示す場合、ビデオデコーダは、動き情報に基づいて、動き情報が指し示す予測ブロックを直接に取得する。
現在のデコーディングピクチャブロックのステップS102での構文解析により取得されるインター予測モードが標的インター予測モード(マージモード)である場合には、ステップS104の実施が以下を含んでもよい。ビデオデコーダは、既にデコードされたピクチャブロックの、マージモードでマージングにより取得される動き情報を継承してもよい。
更に、現在のデコーディングピクチャブロックの動き情報が分数ピクセル位置を指し示す場合、ビデオデコーダは、デコーディング中に既にデコードされたピクチャブロックにより使用される補間フィルタの指示情報を更に継承する必要があり、補間フィルタの指示情報は、マージモードにおけるマージによって取得され、また、ビデオデコーダは、指示情報によって示される標的補間フィルタを更に決定する。ビデオデコーダは、インター予測中に、現在のデコーディングピクチャブロックの予測ブロックを取得するべく、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行する必要がある。現在のデコーディングピクチャブロックの動き情報が整数ピクセル位置を指し示す場合、ビデオデコーダは、動き情報に基づいて、動き情報が指し示す予測ブロックを直接に取得する。
この出願の他の実施形態では、インター予測モードが標的インター予測モード(例えば、マージモード)であり且つ動き情報が分数ピクセル位置を指し示す場合、エンコーダ側が標的補間フィルタの指示情報をエンコードしてもよいことが理解されるべきである。それに対応して、インター予測モードが標的インター予測モード(例えば、マージモード)であり且つ動き情報が分数ピクセル位置を指し示す場合、デコーダ側は、インター予測中に、標的フィルタを使用することによって補間により現在のデコーディングピクチャブロックの予測ブロックを取得するために、ビットストリームを構文解析することにより取得されるとともに標的補間フィルタの情報である指示情報に基づき、指示情報によって示される標的フィルタを決定してもよい。
ステップS106では、指示情報が、サブピクセル補間によって現在のデコーディングピクチャブロックの予測ブロックを取得するように示してもよく、或いは、標的補間フィルタのタイプを示してもよいことも理解されるべきである。指示情報が標的補間フィルタのタイプを示す場合、ビデオデコーダが指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行するための実施方法は以下の通りである。ビデオデコーダは、動き情報に基づいて及び指示情報から決定される標的補間フィルタのタイプに基づいて、動き情報によって示されるとともにサブピクセル補間によって取得される予測ブロックの標的補間フィルタを取得することを決定する。
この出願の一実施形態では、標的フィルタが前述の補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、ビデオエンコーダ側の標的補間フィルタのフィルタパラメータは、事前に設定されたフィルタパラメータであってもよく、また、ビデオエンコーダ側の標的補間フィルタのフィルタパラメータと一致する。或いは、ビデオエンコーダ側の標的補間フィルタのフィルタパラメータは、前述の補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータであってもよい。
随意的に、エンコーダ側に対応して、標的補間フィルタがトレーニングによって取得される第2の補間フィルタである場合、エンコーディング情報は、現在のエンコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを更に含む。デコーダ側のビデオデコーダは、フィルタパラメータを取得するためにビットストリームを更に構文解析してもよい。フィルタパラメータは、現在のデコーディングピクチャユニットのために使用されるとともに前述のフィルタトレーニング方法を使用することにより取得される標的補間フィルタのフィルタパラメータであってもよい。現在のデコーディングピクチャブロックの予測ブロックを取得するべく指示情報によって示される標的補間フィルタに基づいてビデオエンコーダがサブピクセル補間を実行する前に、ビデオエンコーダは、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータに基づいて標的補間フィルタを更に構成してもよい。
随意的に、エンコーダ側に対応して、標的補間フィルタがトレーニングによって得られる第2の補間フィルタである場合には、エンコーディング情報がフィルタパラメータ差分を更に含む。デコーダ側のビデオデコーダは、ビットストリームを構文解析することによってフィルタパラメータ差分を更に取得してもよい。フィルタパラメータ差分は、トレーニングによって取得されるとともに現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと、トレーニングによって取得されるとともに既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である。現在のデコーディングピクチャブロックの予測ブロックを取得するべくビデオエンコーダが指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行する前に、ビデオエンコーダは、フィルタパラメータ差分と既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとに基づき、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを更に取得してもよく、また、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータに基づいて標的補間フィルタを更に構成してもよい。
この出願の他の実施形態では、エンコーダ側の標的補間フィルタのフィルタパラメータ及びデコーダ側の標的補間フィルタのフィルタパラメータがそれぞれ、固定的に予測フィルタパラメータであってもよい。この場合、エンコーディング情報は、標的補間フィルタのフィルタパラメータ又はフィルタパラメータ差分を含まなくてもよく、また、デコーダ側は、標的補間フィルタのフィルタパラメータ又はフィルタパラメータ差分を構文解析する必要がない。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)などである。言い換えると、ビデオデコーダは、デコーディングピクチャユニットで測定される必要な間隔でフィルタパラメータを更新する。
図11A及び図11Bは、この出願に係る更に他のビデオピクチャエンコーディング方法の概略的なフローチャートである。方法は、以下のステップの一部又は全部を含んでもよいが、これらに限定されない。
S1101:現在のデコーディングピクチャブロックの情報を取得するために、ビットストリームを構文解析し、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される。
S1102:現在のデコーディングピクチャブロックのインター予測モードを示すために使用される情報によって定められるインター予測モードがマージモードであるかどうか決定する。
決定結果が、はいである場合、すなわち、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される情報によって定められるインター予測モードがマージモードである場合、ステップS1103が実行される。そうではなく、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される情報によって定められるインター予測モードが非マージモードである場合には、ステップS1105が実行される。
S1103:既にデコードされたピクチャブロックの動き情報であってマージモードで取得される動き情報と、標的補間フィルタの指示情報とを取得する。
既にデコードされたピクチャブロックのマージモードでのマージングにより取得される動き情報が、現在のデコーディングピクチャブロックの動き情報であることが理解されるべきである。
S1104:現在のデコーディングピクチャブロックの動き情報が整数ピクセル位置を指し示すかどうか決定する。
ステップS1104は、ステップS1103の後に実行されてもよい。S1104における決定結果が、はいである場合、動き情報が指し示す整数ピクセル位置に対応するピクチャブロックは、現在のデコーディングピクチャブロックの予測ブロックであり、ビデオデコーダがステップS 1109を実行してもよく、そうでない場合、ビデオデコーダがステップS1108を実行する。
S1105:現在のデコーディングピクチャブロックの動き情報を取得するために、ビットストリームを構文解析する。
S1106:現在のデコーディングピクチャブロックの動き情報が整数ピクセル位置を指し示すかどうか決定する。
ステップS1106は、ステップS1105の後に実行されてもよい。S1106の決定結果が、はいである場合、それは、動き情報が指し示す整数ピクセル位置に対応するピクチャブロックが現在のデコーディングピクチャブロックの予測ブロックであることを示し、ビデオデコーダがステップS1109を実行してもよく、そうでない場合、それは、現在のデコーディングピクチャブロックの予測ブロックがサブピクセルピクチャであることを示し、ビデオデコーダがステップS1107を実行する。
S1107:構文解析により、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタの指示情報を取得する。
S1108:現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行する。
S1109:現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成する。
更に、ビデオデコーダは、前述のプロセスにおけるデコードされたピクチャブロックが最後のピクチャブロックであるかどうか決定する。はいである場合、デコーディングプロセスが終了し、そうでない場合、デコーディングプロセスは、次のデコードされるべきピクチャブロックに対して実行されてもよい。
以下、本発明の実施形態で使用される装置について説明する。
図12は、本発明の一実施形態に係る補間フィルタトレーニング装置の概略的なブロック図である。補間フィルタトレーニング装置1200が、エンコーダ100におけるインター予測ユニット又はエンコーダ100における他のユニットに配置されてもよいことが理解されるべきである。補間フィルタのトレーニングがコンピュータデバイスを使用することにより実施されてもよいことが理解されるべきである。コンピュータデバイスは、コンピュータ、サーバ、又は、データ処理を実施できる他の構成要素又はデバイスであってもよい。補間フィルタ1200は、ラベルデータ取得モジュール1201、補間モジュール1202、及び、パラメータ決定モジュール1203を含んでもよいが、これらに限定されない。詳細は以下の通りである。
ラベルデータ取得モジュール1201は、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって整数ピクセル位置にあるサンプルピクチャのピクセルに対して補間を行うように構成される。
補間モジュール1202は、第2のサブピクセルピクチャを得るために、サンプルピクチャを第2の補間フィルタに入力するように構成される。
パラメータ決定モジュール1203は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって第2の補間フィルタのフィルタパラメータを決定するように構成される。
図13は、本発明の一実施形態に係る他の補間フィルタトレーニング装置の概略的なブロック図である。補間フィルタ1300は、ラベルデータ取得モジュール1301、補間モジュール1302、逆補間モジュール1303、及び、パラメータ決定モジュール1304を含んでもよいが、これらに限定されない。
ラベルデータ取得モジュール1301は、第1の分数ピクセル位置にあるサンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって整数ピクセル位置にあるサンプルピクチャのピクセルに対して補間を行うように構成される。
補間モジュール1302は、第2のサブピクセルピクチャを得るために、サンプルピクチャを第2の補間フィルタに入力するように構成される。
逆補間モジュール1303は、第1のピクチャを取得するために、フリップ演算が行われる第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するために、第1のピクチャに対してフリップ演算の逆演算を実行するように構成され、第2の補間フィルタ及び第3の補間フィルタはフィルタパラメータを共有する。
パラメータ決定モジュール1304は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてフィルタパラメータを決定するように構成される。
想定し得る実施において、パラメータ決定モジュール1304は、第3の関数を最小化することによってフィルタパラメータを決定するように特に構成され、第3の関数は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数との間の加重和である。
想定し得る実施において、パラメータ決定モジュール1304は、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを交互に最小化することによってフィルタパラメータを決定するように特に構成される。
図14は、この出願の一実施形態に係る更なる他の補間フィルタトレーニング装置の概略的なブロック図である。装置1400は、プロセッサ1410及びメモリ1420を含んでもよい。メモリ1420は、バス1430を介してプロセッサ1410に接続され、また、メモリ1420は、前述の補間フィルタトレーニング方法のいずれか1つを実施するために使用されるプログラムコードを記憶するように構成される。プロセッサ1410は、メモリに記憶されたプログラムコードを呼び出して、この出願に記載される補間フィルタトレーニング方法を実行するように構成される。詳細については、図6A~図6Dの補間フィルタ方法の実施形態の関連説明を参照されたい。詳細については、この出願のこの実施形態において再度説明しない。
装置1400は、複数のコンピュータデバイス又は単一のコンピュータデバイス、例えば、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、デスクトップコンピュータなどを含むコンピュータシステムであってもよい。
装置1400内のプロセッサ1410は、中央処理ユニットであってもよい。或いは、プロセッサ1410は、情報を制御又は処理できる任意の他のタイプの1つ以上の既存の/将来開発されるデバイスであってもよい。図14に示されるように、開示された実施は、プロセッサ1410などの単一のプロセッサを用いて実施され得るが、複数のプロセッサを使用することによって速度及び効率における利点を達成することができる。
一実施において、装置140内のメモリ1420は、リードオンリーメモリ(Read Only Memory,ROM)デバイス又はランダムアクセスメモリ(random access memory,RAM)デバイスであってもよい。任意の他の適切なタイプの記憶デバイスをメモリ1420として使用できる。メモリ1420は、バス1430を介してプロセッサ1410によってアクセスされるコード及びデータ1401(例えば、サンプルピクチャ)を含んでもよい。メモリ1420は、オペレーティングシステム1402及びアプリケーションプログラム1403を更に含んでもよい。アプリケーションプログラム1403は、プロセッサ1410がこの明細書中に記載される方法を実行できるようにする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム1403がアプリケーション1~Nを含んでもよく、また、アプリケーション1~Nは、この明細書中に記載される方法を実行するビデオコーディングアプリケーションを更に含む。装置1400は、二次メモリ1402の形態を成す更なるメモリを更に含んでもよい。二次メモリ1402は、例えば、モバイルコンピュータデバイスと共に使用されるメモリカードであってもよい。ビデオ通信セッションが大量の情報を含み得るため、情報の全部又は一部が二次メモリ1420に記憶されて必要に応じて処理のためにメモリ1420に取り込まれてもよい。
随意的に、装置1400は、通信インタフェース又はモジュールと、入力/出力装置とを更に含んでもよいが、これらに限定されない。通信インタフェース又はモジュールは、装置1400と他のデバイス(例えば、エンコーディングデバイス又はデコーディングデバイス)との間のデータ交換を実施するように構成される。入力装置は、情報(テキスト、ピクチャ、及び、音声など)又は命令の入力を実施するように構成されるとともに、タッチスクリーン、キーボード、カメラ、及び、レコーダを含んでもよいが、これらに限定されない。出力装置は、情報(テキスト、ピクチャ、及び、音声など)又は命令の出力を実施するように構成されるとともに、ディスプレイ及びスピーカを含んでもよいが、これらに限定されない。これは、この出願において限定されない。
図15は、この出願の一実施形態に係る図7又は図8のビデオピクチャエンコーディング方法を実施するためのエンコーダの概略的なブロック図である。
図7に示されるビデオピクチャエンコーディング方法に対応して、この出願の一実施形態では、エンコーダ1500におけるユニットの特定の機能が以下の通りである。
インター予測ユニット1501は、現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を行うように構成され、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示す。インター予測ユニットはフィルタ選択ユニット1502を含み、また、フィルタ選択ユニット1502は、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように特に構成される。
エントロピーエンコーディングユニット1503は、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードし、エンコーディング情報が標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される。
図7に示されるビデオピクチャエンコーディング方法に対応して、この出願の他の実施形態では、エンコーダ1500におけるユニットの特定の機能が以下の通りである。
インター予測ユニット1501は、現在のエンコーディングピクチャブロックの動き情報を取得するために現在のエンコーディングピクチャブロックに対してインター予測を行うように構成され、現在のエンコーディングピクチャブロックの動き情報は分数ピクセル位置を指し示す。インター予測ユニットはフィルタ選択ユニット1502を含み、また、フィルタ選択ユニット1502は、候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように構成される。
エントロピーエンコーディングユニット1503は、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードしてエンコーディング情報を取得するとともに、エンコーディング情報をビットストリームにエンコードするように構成され、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、エンコーディング情報は標的補間フィルタの指示情報を含まず、或いは、現在のエンコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合、エンコーディング情報は標的補間フィルタの指示情報を含み、標的補間フィルタの指示情報は、現在のエンコーディングピクチャブロックが標的補間フィルタを使用してサブピクセル補間を実行することを示すために使用される。
この出願のこの実施形態の想定し得る実施において、フィルタ選択ユニット1502は、レート歪みコスト基準に従った候補補間フィルタのセットから、現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように特に構成される。
この出願のこの実施形態の更に他の想定し得る実施において、インター予測ユニット1501は、
現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定し、
N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタのセット内の各補間フィルタを使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行い、Nは正の整数であり、
整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックから、現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、
予測ブロックに基づいて動き情報を決定し、補間によって予測ブロックを取得するために使用される補間フィルタが標的補間フィルタである、
ように特に構成される。
この出願のこの実施形態の更なる他の想定し得る実施において、候補補間フィルタのセットは、図6A~図6Dに記載される補間フィルタトレーニング方法のいずれか1つを使用することによって取得される第2の補間フィルタを含む。
随意的に、標的フィルタが図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得されたフィルタパラメータである。
更に、エンコーディング情報は、トレーニングによって取得された標的補間フィルタのフィルタパラメータを更に含み、或いは、エンコーディング情報はフィルタパラメータ差分を更に含み、また、フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
図16は、この出願の一実施形態に係る図8~図10のビデオピクチャデコーディング方法を実施するためのデコーダの概略的なブロック図である。
図9に示されるビデオピクチャデコーディング方法に対応して、この出願の一実施形態では、デコーダ1600におけるユニットの特定の機能が以下の通りである。
エントロピーデコーディングユニット1601が、標的補間フィルタの指示情報を取得するためにビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報を取得するように構成され、動き情報は分数ピクセル位置を指し示す。
インター予測ユニット1602が、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するように構成され、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を行うことを含む。
再構成ユニット1603が、現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックの再構成ブロックを再構成するように構成される。
図3は、エンコーダの概略的なブロック図である。図10又は図11A及び図11Bに示されるビデオピクチャデコーディング方法に対応して、この出願の他の実施形態では、デコーダ200におけるユニットの特定の機能が以下の通りである。
エントロピーデコーディングユニット1601が、現在のデコーディングピクチャブロックの情報を取得するために、ビットストリームを構文解析するように構成され、情報は、現在のデコーディングピクチャブロックのインター予測モードを示すために使用される。
インター予測ユニット1602は、現在のデコーディングピクチャブロックの動き情報を取得し、動き情報が分数ピクセル位置を指し示し、現在のピクチャブロックのインター予測モードが標的インター予測モードではない場合には、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報がビットストリームを構文解析することによって取得される、ように構成される。
再構成ユニット1603は、現在のデコーディングピクチャブロックの予測ブロックに基づいて現在のデコーディングピクチャブロックを再構成するように構成される。
随意的に、インター予測ユニット1602は、現在のピクチャブロックのインター予測モードが標的インター予測モードである場合、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するように更に構成され、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のピクチャブロックのインター予測モードが標的インター予測モードである場合、インター予測ユニット1602が現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが、具体的には、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定すること、或いは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが標的補間フィルタの情報であってビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定すること含むことが理解されるべきである。
この出願のこの実施形態の想定し得る実施において、デコーダ1600は、以下の3つの実施を含んでもよいがこれらに限定されない実施において、現在のデコーディングピクチャブロックの動き情報を取得する。
第1の実施:
標的インター予測モードではない場合(例えば、非マージモード)、エントロピーデコーディングユニット1601は、現在のデコーディングピクチャブロックの動き情報のインデックスを取得ために、ビットストリームを構文解析するように特に構成され、また、インター予測ユニット1602は、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動き情報を決定するように更に構成される。
第2の実施:
標的インター予測モードではない場合(例えば、非マージモード)、エントロピーデコーディングユニット1601は、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するためにビットストリームを構文解析するように特に構成され、
インター予測ユニット1602は、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定するとともに、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得するように更に構成される。
第3の実施:
標的インター予測モードではない場合(例えば、非マージモード)、エントロピーデコーディングユニット1601は、現在のデコーディングピクチャブロックの動き情報のインデックスと動きベクトル差分とを取得するためにビットストリームを構文解析するように特に構成され、
インター予測ユニット1602は、現在のデコーディングピクチャブロックの動き情報のインデックスと現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて現在のデコーディングピクチャブロックの動きベクトル予測子を決定するとともに、動きベクトル予測子と動きベクトル差分とに基づいて現在のデコーディングピクチャブロックの動きベクトルを取得するように更に構成される。
この出願のこの実施形態の想定し得る実施において、標的フィルタが図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得されたフィルタパラメータである。
この出願のこの実施形態の想定し得る実施において、エントロピーデコーディングユニット1601は、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するためにビットストリームを構文解析するように更に構成され、
デコーダ1600は、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するように構成された構成ユニット1604を更に含む。
この出願のこの実施形態の想定し得る実施において、エントロピーデコーディングユニット1601は、フィルタパラメータ差分を取得するためにビットストリームを構文解析するように更に構成され、フィルタパラメータ差分は、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差であり、
デコーダは、既にデコードされたピクチャユニットの標的補間フィルタのフィルタパラメータとフィルタパラメータ差分とに基づいて現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを取得するとともに、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するように構成された構成ユニット1604を更に含む。
随意的に、ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を含む。
図17は、この出願の一実施形態に係る、図7又は図8のビデオピクチャエンコーディング方法を実施するためのエンコーディングデバイス、或いは、図9~図11Bのビデオピクチャデコーディング方法を実施するためのデコーディングデバイスの概略的なブロック図である。デバイス1700はプロセッサ1702及びメモリ1720を含んでもよく、メモリ1704はバス1712を介してプロセッサ1710に接続される。メモリ1720は、前述のビデオピクチャエンコーディング方法のいずれか1つを実施するために使用されるプログラムコードを記憶するように構成される。プロセッサ1710は、メモリに記憶されたプログラムコードを呼び出して、この出願に記載される様々なビデオピクチャエンコーディング/デコーディング方法を実行するように構成される。詳細については、図7~図11Bのビデオピクチャエンコーディング方法の方法実施形態の関連説明を参照されたい。詳細については、この出願のこの実施形態において再度説明しない。
デバイス1700は、複数のコンピュータデバイス又は単一のコンピュータデバイス、例えば、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、デスクトップコンピュータなどを含むコンピュータシステムであってもよい。
デバイス1700内のプロセッサ1702は、中央処理ユニットであってもよい。或いは、プロセッサ1702は、情報を制御又は処理できる任意の他のタイプの1つ以上の既存の/将来開発されるデバイスであってもよい。図示のように、開示された実施は、プロセッサ1702などの単一のプロセッサを用いて実施され得るが、複数のプロセッサを使用することによって速度及び効率における利点を達成することができる。
一実施において、デバイス1700内のメモリ1704は、リードオンリーメモリ(Read Only Memory,ROM)デバイス又はランダムアクセスメモリ(random access memory,RAM)デバイスであってもよい。任意の他の適切なタイプの記憶デバイスをメモリ1704として使用できる。メモリ1704は、バス1712を介してプロセッサ1702によってアクセスされるコード及びデータ1706を含んでもよい。メモリ1704は、オペレーティングシステム1708及びアプリケーションプログラム1710を更に含んでもよい。アプリケーションプログラム1710は、プロセッサ1702がこの明細書中に記載される方法を実行できるようにする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム1710がアプリケーション1~Nを含んでもよく、また、アプリケーション1~Nは、この明細書中に記載される方法を実行するビデオコーディングアプリケーションを更に含む。デバイス1700は、二次メモリ1714の形態を成す更なるメモリを更に含んでもよい。二次メモリ1714は、例えば、モバイルコンピュータデバイスと共に使用されるメモリカードであってもよい。ビデオ通信セッションが大量の情報を含み得るため、情報の全部又は一部が二次メモリ1714に記憶されて必要に応じて処理のためにメモリ1704に取り込まれてもよい。
デバイス1700は、1つ以上の出力デバイス、例えばディスプレイ1718を更に含んでもよい。一例において、ディスプレイ1718は、ディスプレイと、接触入力を動作可能に感知する接触感知素子とを組み合わせる接触感知ディスプレイであってもよい。ディスプレイ1718は、バス1712を介してプロセッサ1702に結合されてもよい。ディスプレイ1718に加えて、ユーザが装置1700をプログラムできる又はさもなければ装置1700を使用できるようにする他の出力デバイスが更に設けられてもよく、或いは、ディスプレイ1718に代わる手段として他の出力デバイスが設けられてもよい。出力デバイスがディスプレイである又はディスプレイを含む場合、ディスプレイは、液晶ディスプレイ(liquid crystal display,LCD)、陰極線管(cathode-ray tube,CRT)ディスプレイ、プラズマディスプレイ、又は、有機LED(organic LED,OLED)ディスプレイなどの発光ダイオード(light emitting diode,LED)ディスプレイを使用することを含む、様々な方法で実装されてもよい。
デバイス1700は、画像検知デバイス1720を更に含んでもよく、或いは、画像検知デバイス1720と通信状態であってもよい。画像検知デバイス1720は、例えば、画像を検知することができるカメラ又は任意の他の既存の/将来開発される画像検知デバイス1720である。画像は、例えば、デバイス1700を起動させるユーザの画像である。画像検知デバイス1720は、デバイス1700を起動させるユーザと直接に対向するように配置されてもよい。一例では、画像検知デバイス1720の視野がディスプレイ1718の隣接領域を含むとともにディスプレイ1718がその領域から見えるように、画像検知デバイス1720の位置及び光軸が設定されてもよい。
デバイス1700は、音検知デバイス1722を更に含んでもよく、或いは、音検知デバイス1722と通信状態であってもよい。音検知デバイス1722は、例えば、デバイス1700付近の音を送信できるマイクロフォン又は任意の他の既存の/将来開発される音検知デバイスである。音検知デバイス1722は、装置1700を起動させるユーザに直接に対向するように配置されてもよく、ユーザが装置1700を起動させるときにもたらされる音、例えば音声又は他の音を受信するように構成されてもよい。
図17は、デバイス1700のプロセッサ1702及びメモリ1704を単一のユニットに組み込まれるように描くが、他の形態が利用されてもよい。プロセッサ1702の起動は、互いに直接に結合され得る複数のマシン(各マシンは1つ以上のプロセッサを有する)で分配されてもよく、或いは、局所領域又は他のネットワークで分配されてもよい。メモリ1704は、複数のマシンにわたって分配されてもよく、例えば、メモリは、ネットワークベースのメモリ或いはデバイス1700が起動する複数のマシン内のメモリである。デバイス1700のバス1712は、ここでは単一のバスとして描かれるが、複数のバスを含んでもよい。更に、二次メモリ1714は、デバイス1700の他の構成要素に直接に結合されてもよく、或いは、ネットワークを介してアクセスされ得る。二次メモリ1714は、メモリカードなどの単一の一体型ユニット又は複数のメモリカードなどの複数のユニットを含んでもよい。したがって、デバイス1700は、多種多様な形態で実装され得る。
この出願では、プロセッサが中央処理ユニット(Central Processing Unit、CPU)であってもよく、或いは、プロセッサは、他の汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は、他のプログラマブル論理デバイス、ディスクリートゲート又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネントなどであってもよい。汎用プロセッサは、マイクロプロセッサであってもよく或いは任意の従来のプロセッサであってもよい。
メモリは、リードオンリーメモリ(ROM)デバイス又はランダムアクセスメモリ(RAM)デバイスを含んでもよい。任意の他の適切なタイプの記憶デバイスをメモリとして使用することもできる。メモリは、バスを介してプロセッサによりアクセスされるコード及びデータを含んでもよい。メモリは、オペレーティングシステム及びアプリケーションプログラムを更に含んでもよい。アプリケーションプログラムは、この出願に記載されるビデオコーディング又はデコーディング方法(特に、この出願に記載されるインター予測方法又は動き情報予測方法)をプロセッサが実行できるようにする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラムは、アプリケーション1~Nを含んでもよく、また、この出願に記載されるビデオエンコーディング又はデコーディング方法を実行するビデオエンコーディング又はデコーディングアプリケーション(略してビデオコーディングアプリケーション)を更に含む。
データバスに加えて、バスシステムは、電力バス、制御バス、状態信号バスなどを更に含んでもよい。しかしながら、説明を明瞭にするため、図では様々なタイプのバスがバスシステムとして表示される。
随意的に、コーディングデバイスは、1つ以上の出力デバイス、例えばディスプレイを更に含んでもよい。一例において、ディスプレイは、ディスプレイと接触入力を動作可能に感知するタッチユニットとを組み合わせる接触感知ディスプレイであってもよい。ディスプレイは、バスを介してプロセッサに接続されてもよい。
当業者であれば分かるように、この明細書中に開示されて記載される様々な例示的な論理ブロック、モジュール、及び、アルゴリズムステップに関連して記載される機能は、ハードウェア、ソフトウェア、ファームウェア、又は、それらの任意の組み合わせによって実装され得る。例示的な論理ブロック、モジュール、及び、ステップに関連して記載される機能は、ソフトウェアによって実装される場合、1つ以上の命令又はコードとしてコンピュータ可読媒体に記憶又はコンピュータ可読媒体を介して送信されるとともに、ハードウェアベースの処理ユニットによって実行されてもよい。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、或いは、ある場所から別の場所への(例えば、通信プロトコルに従った)コンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含んでもよい。このように、コンピュータ可読媒体は、一般に、(1)非一時的有形コンピュータ可読記憶媒体、或いは、(2)信号又は搬送波などの通信媒体に対応してもよい。データ記憶媒体は、この出願に記載される技術を実装するための命令、コード、及び/又は、データ構造を取り込むために1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセスされ得る任意の使用可能な媒体であってもよい。コンピュータプログラムプロダクトがコンピュータ可読媒体を含んでもよい。
限定ではなく一例として、そのようなコンピュータ可読記憶媒体としては、RAM、ROM、EEPROM、CD-ROM又は他のコンパクトディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、フラッシュメモリ、或いは、命令又はデータ構造の形態で所望のプログラムコードを記憶するために使用され得るとともにコンピュータによってアクセスされ得る任意の他の媒体を挙げることができる。更に、任意の接続が、厳密には、コンピュータ可読媒体と称される。例えば、ウェブサイト、サーバ、又は、他の遠隔ソースから、同軸ケーブル、光ファイバ、ツイストペア、デジタル加入者回線(DSL)、又は、赤外線、電波及びマイクロ波などの無線技術によって、命令が送信される場合、同軸ケーブル、光ファイバ、ツイストペア、DSL、又は、赤外線、電波及びマイクロ波などの無線技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体及びデータ記憶媒体が、接続、搬送波、信号、又は、他の一時的媒体を含まず、実際には非一時的有形記憶媒体であることが理解されるべきである。この明細書中で使用されるディスクは、コンパクトディスク(CD)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD)、及び、ブルーレイディスクを含む。ディスクは、通常、磁気的にデータを再生するが、ディスクはレーザを用いて光学的にデータを再生する。前述の組み合わせもコンピュータ可読媒体の範囲に含まれるべきである。
命令は、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、又は、同等の集積回路又はディスクリート論理回路などの1つ以上のプロセッサによって実行されてもよい。したがって、この明細書中で使用される「プロセッサ」という用語は、前述の構造のいずれかであってもよく、或いは、この明細書中に記載される技術を実施するのに適した任意の他の構造であってもよい。更に、幾つかの態様において、この明細書中に記載される例示的な論理ブロック、モジュール、及び、ステップに関連して記載される機能は、エンコーディング及びデコーディングのために構成された専用のハードウェア及び/又はソフトウェアモジュール内に設けられてもよく、或いは、複合コーデックに組み込まれてもよい。更に、これらの技術は、1つ以上の回路又は論理要素で完全に実装されてもよい。
この出願における技術は、無線ハンドセット、集積回路(IC)、又は、ICのセット(例えば、チップセット)を含む様々な装置又はデバイスで実装されてもよい。この出願では、開示された技術を実行するように構成される装置の機能態様を強調するように様々な構成要素、モジュール、又は、ユニットが記載されるが、これらは必ずしも異なるハードウェアユニットによって実装されるとは限らない。実際には、前述したように、様々なユニットは、適切なソフトウェア及び/又はファームウェアと組み合わせてコーデックハードウェアユニットへと組み合わされてもよく、或いは、相互運用可能なハードウェアユニット(前述した1つ以上のプロセッサを含む)によってもたらされてもよい。
以上の説明は、この出願の単なる特定の実施にすぎず、この出願の保護範囲を限定しようとするものではない。この出願に開示される技術的範囲内で当業者により容易く考え出される任意の変形又は置換は、この出願の保護範囲内に入るものとする。したがって、この出願の保護範囲は特許請求項の保護範囲に従うものとする。
100 エンコーダ
101 ピクチャ
102 入力
103 ピクチャブロック
104 残差計算ユニット
105 残差ブロック
106 変換処理ユニット
107 変換係数
108 量子化ユニット
109 量子化係数
110 逆量子化ユニット
111 逆量子化係数
112 逆変換処理ユニット
113 逆変換ブロック
114 再構成ユニット/加算器
115 再構成ブロック
116 バッファユニット
117 基準サンプル
120 ループフィルタユニット
121 フィルタブロック
130 デコードピクチャバッファ
131 デコードされたピクチャ
144 インター予測ユニット
145 予測ブロック
146 動き補償ユニット
151 候補補間フィルタ
152 フィルタ選択ユニット
154 イントラ予測ユニット
155 予測ブロック
160 予測処理ユニット
162 モード選択ユニット
165 予測ブロック
170 エントロピーエンコーディングユニット
171 エンコードされたピクチャデータ/ビットストリーム
172 出力
200 デコーダ
204 エントロピーデコーディングユニット
209 量子化係数
210 逆量子化ユニット
211 逆量子化係数
212 逆変換処理ユニット
213 逆変換ブロック
214 再構成ユニット/加算器
215 再構成ブロック
216 バッファ
217 基準サンプル
220 ループフィルタユニット
221 フィルタブロック
230 デコードピクチャバッファ
231 デコードされたピクチャ
232 出力
244 インター予測ユニット
251 候補補間フィルタ
252 フィルタ選択ユニット
254 イントラ予測ユニット
260 予測処理ユニット
262 モード選択ユニット
265 予測ブロック
300 ビデオコーディングシステム
310 送信元デバイス
312 ピクチャソース
313 未加工ピクチャデータ
314 前処理ユニット
315 前処理されたピクチャデータ
318 通信インタフェース
320 送信先デバイス
322 通信インタフェース
326 後処理ユニット
327 後処理されたピクチャデータ
328 表示デバイス
1200 補間フィルタトレーニング装置
1201 ラベルデータ取得モジュール
1202 補間モジュール
1203 パラメータ決定モジュール
1300 補間フィルタトレーニング装置
1301 ラベルデータ取得モジュール
1302 補間モジュール
1303 逆補間モジュール
1304 パラメータ決定モジュール
1400 装置
1401 データ
1402 オペレーティングシステム
1403 アプリケーションプログラム
1410 プロセッサ
1420 メモリ
1430 バス
1500 エンコーダ
1501 インター予測ユニット
1502 フィルタ選択ユニット
1503 エントロピーエンコーディングユニット
1600 デコーダ
1601 エントロピーデコーディングユニット
1602 インター予測ユニット
1603 再構成ユニット
1604 構成ユニット
1700 装置
1702 プロセッサ
1704 メモリ
1706 データ
1708 オペレーティングシステム
1710 アプリケーションプログラム
1712 バス
1714 二次メモリ
1718 ディスプレイ
1720 画像検知デバイス
1722 音検知デバイス
この出願のこの実施形態では、第2の補間フィルタをトレーニングするために、従来の補間フィルタを使用することによって補間により得られる第1のサブピクセルピクチャがラベルデータとして使用され、それにより、トレーニングにより得られる第2の補間フィルタが、第1の分数ピクセル位置の補間により得られるピクセル値に関して直接に使用され得るのが分かる。したがって、ラベルデータがより正確であり、また、ビデオピクチャのコーディング性能が向上される。また、予測を行うべくニューラルネットワークに基づく第2の補間フィルタが非線形フィルタとして使用される場合には、複雑なビデオ信号に関して予測精度がく、したがって、ビデオピクチャのコーディング性能が更に向上される。
随意的に、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とに基づいてコンピュータデバイスがフィルタパラメータを決定する実施は、以下の2つの実施を含んでよいが、これらに限定されない。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報はビットストリームを構文解析することによって取得される。
随意的に、現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合には、デコーダが現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが、具体的に以下を含むことが理解されるべきである。デコーダは、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定し、或いは、デコーダは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが、標的補間フィルタの、ビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定する。
第5の態様又は第6の態様に関連して、この出願のこの実施形態の想定し得る実施において、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、
標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、方法は、
現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するためにビットストリームを構文解析するステップを更に含んでもよく、
現在のデコーディングピクチャブロックの予測ブロックを取得するために標的補間フィルタに基づいてサブピクセル補間が行われる前に、方法は、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップを更に含んでもよい。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、方法は、
フィルタパラメータ差分を取得するためにビットストリームを構文解析するステップであって、フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
既にデコードされたピクチャユニットの標的補間フィルタのフィルタパラメータとフィルタパラメータ差分とに基づいて現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを取得するステップと、
現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップと、を更に含んでもよい。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
随意的に、現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、デコーダは、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合には、プロセッサが現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが具体的に以下を含むことが理解されるべきである。プロセッサは、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定し、或いは、プロセッサは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが、標的補間フィルタの、ビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定する。
第15の態様に関連して、この出願のこの実施形態の想定し得る実施において、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、
標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、又は、標的補間フィルタのフィルタパラメータは、第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータである。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、プロセッサは、以下のステップ、すなわち、
現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するためにビットストリームを構文解析するステップを更に実行してもよく、
現在のデコーディングピクチャブロックの予測ブロックを取得するために標的補間フィルタに基づいてサブピクセル補間が行われる前に、現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップを更に実行してもよい。
随意的に、標的補間フィルタが第1の態様又は第2の態様に係る補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、プロセッサは、以下のステップ、すなわち、
フィルタパラメータ差分を取得するためにビットストリームを構文解析するステップであって、フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
既にデコードされたピクチャユニットの標的補間フィルタのフィルタパラメータとフィルタパラメータ差分とに基づいて現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを取得するステップと、
現在のデコーディングピクチャユニットの標的補間フィルタのフィルタパラメータを使用することによって標的補間フィルタを構成するステップと、を更に実行してもよい。
この明細書中で使用される「ブロック」、「ピクチャブロック」、及び、「画像ブロック」という用語は、同義語として使用されてもよく、ピクチャ又はフレームの一部であってもよい。説明を容易にするために、本発明の実施形態は、本明細書中では、ITU-Tビデオコーディングエキスパートグループ(Video Coding Experts Group,VCEG)及びISO/IECモーションピクチャエキスパートグループ(Motion Picture Experts Group,MPEG)のビデオコーディングに関する共同コラボレーションチーム((Joint Collaboration Team on Video Coding,JCT-VC)によって開発されたITU-T H.266/汎用ビデオコーディング(Versatile video coding,VVC)又は高効率ビデオコーディング(High-Efficiency Video Coding,HEVC)の基準ソフトウェアに関連して説明される。当業者であれば分かるように、本発明の実施形態はHEVC又はVVCに限定されない。HEVCにおいて、CTUは、コーディングツリーとして表される四分木構造を使用することによって複数のCUに分割される。インターピクチャ間(時間)予測又はイントラピクチャ(空間)予測を使用することによってピクチャ領域をコーディングするかどうかの決定は、CUレベルで行われる。各CUは、PU分割パターンに基づいて、1つ、2つ、又は、4つのPUに更に分割されてもよい。1つのPUでは、同一の予測プロセスが適用され、また、関連情報がPU単位でデコーダに送信される。PU分割パターンに基づいて予測プロセスを適用することによって残差ブロックを取得した後、CUは、CUのために使用されるコーディングツリーに類似した他の四分木構造に基づいて変換ユニット(transform unit,TU)に分割されてもよい。ビデオ圧縮技術の最近の開発では、コーディングブロックを分割するために四分木+二分木(Quad-tree plus binary tree,QTBT)分割フレームが使用される。QTBTブロック構造では、CUが正方形又は長方形であってもよい。例えば、コーディングツリーユニット(coding tree unit,CTU)は、最初に四分木構造を使用することによって分割される。四分木のリーフノードが二分木構造を使用することによって更に分割される。二分木のリーフノードがコーディングユニット(coding unit,CU)と称され、また、更なる分割を何ら伴うことなく予測及び変換処理のためにセグメント化が使用される。このことは、CU、PU、及び、TUがQTBTコーディングブロック構造において同じブロックサイズを有することを意味する。更に、三分木分割などの多重分割がQTBTブロック構造と組み合わせて使用されることが提案される。
送信先デバイス320のポストプロセッサ326は、デコードされたピクチャデータ231(再構成されたピクチャデータとも称される)、例えばデコードされたピクチャ231を後処理して、後処理されたピクチャデータ327、例えば後処理されたピクチャ327を取得するように構成される。後処理ユニット326により実行される後処理としては、例えば、色フォーマット変換(例えば、YCbCrからRGBへの変換)、色補正、トリミング、リサンプリング、又は、任意の他の処理、例えば、例えば表示データ328による表示のためにデコードされたピクチャデータ231を準備するための処理が挙げられる。
送信元デバイス310は、ビデオエンコーディングデバイス又はビデオエンコーディング装置と称されてもよい。送信先デバイス320は、ビデオデコーディングデバイス又はビデオデコーディング装置と称されてもよい。送信元デバイス310及び送信先デバイス320は、ビデオエンコーディングデバイス及びビデオデコーディングデバイス又はビデオエンコーディング装置及びビデオデコーディング装置の一例であってよい。
ビデオエンコーダ100に関連して記載された例のそれぞれごとに、ビデオデコーダ200が逆のプロセスを実行するように構成されてもよいことが理解されるべきである。信号伝送シンタックス要素に関して、ビデオデコーダ200は、シンタックス要素を受信して構文解析し、それに対応して関連するビデオデータをデコードするように構成されてもよい。幾つかの例において、ビデオエンコーダ100は、標的補間フィルタの指示情報及び補間フィルタのパラメータ情報を規定するために使用される1つ以上のシンタックス要素を、エンコードされたビデオビットストリーム(ビットストリームとも称される)にエントロピーエンコードしてもよい。そのような例において、ビデオデコーダ200は、シンタックス要素を構文解析し、それに応じて関連するビデオデータをデコードすることができる。
変換処理ユニット106は、HEVC/H.265において定められる変換など、DCT/DSTの整数近似を適用するように構成されてもよい。直交DCT変換と比較して、そのような整数近似は一般に係数によってスケーリングされる。順変換及び逆変換を使用して処理される残差ブロックのノルムを維持するために、更なるスケールファクタを適用することは、変換プロセスの一部である。スケールファクタは、通常、幾つかの制約に基づいて選択される。例えば、スケールファクタは、シフト演算の2の累乗、変換係数のビット深度、又は、精度と実施コストとの間のトレードオフである。具体的なスケーリングファクタは、例えばエンコーダ側100の逆変換処理ユニット112による逆変換(及び、例えばコーダ側200の逆変換処理ユニット212による対応する逆変換)に関して定められ、また、それに応じて、例えばエンコーダ側100の変換処理ユニット106による順変換のための対応するスケーリングファクタが定められてもよい。
例えば、一実施形態において、エンコーダ100は、バッファユニット116がイントラ予測ユニット154のための再構成ブロック115を記憶するために使用されるだけでなく、ループフィルタユニット120のためにも使用されるように、及び/又は、例えば、バッファユニット116及びデコードピクチャバッファユニット130が1つのバッファを形成するように構成されてもよい。更なる実施形態は、フィルタリングされたブロック121及び/又はデコードピクチャバッファ130からのブロック又はサンプル(両方とも図2には描かれない)をイントラ予測ユニット154のための入力又は基礎として使用するように構成されてもよい。
この出願の実施形態において、インター予測ユニット145は、候補補間フィルタ151のセット及びフィルタ選択ユニット152を含んでもよい。候補補間フィルタ151のセットは、複数のタイプの補間フィルタを含んでもよい。例えば、候補補間フィルタ151のセットは、離散コサイン変換ベースの補間フィルタ(DCT-based interpolation filter,DCTIF)及び反転性駆動補間フィルタ(invertibility-driven interpolation filter, この明細書中ではInvIFとも称される)を含んでもよい。InvIFは、この出願の図6A又は図6Cに記載された補間フィルタトレーニング方法を使用することによって得られる補間フィルタである。フィルタ選択ユニット152は、候補補間フィルタ151のセットから補間フィルタ(例えば、DCTIF又はInvIF)を選択するように構成される、或いは、フィルタ選択ユニット152を他のユニット(変換処理ユニット106、量子化ユニット108、逆変換処理ユニット112、再構成ユニット114、ループフィルタユニット120、変換処理ユニット106など)と組み合わせることによって、候補補間フィルタ151のセットから補間フィルタ(例えば、DCTIF又はInvIF)を選択するように構成される。エントロピーエンコーディングユニットは、選択された補間フィルタ(この明細書中では標的補間フィルタとも称される)の指示情報をエントロピーエンコードするように構成される。この出願の他の実施形態において、候補補間フィルタ151のセット内に含まれる複数のタイプの補間フィルタは、全てが従来技術で提供される補間フィルタであってもよく、或いは、図6A又は図6Cに示される補間フィルタトレーニング方法を使用することによって得られる補間フィルタを含んでもよい。この出願の更になる他の実施形態において、インター予測ユニット145は、この出願の実施形態において図6A又は図6Cに示される補間フィルタトレーニング方法を使用することによって得られる単一の補間フィルタを含んでもよい。候補補間フィルタ151のセットが動き推定プロセスに適用されてもよいことが理解されるべきである。この出願の他の実施形態において、候補補間フィルタ151のセットは、補間演算が必要とされる他のシナリオに適用されてもよい。
エンコーダ100は、補間フィルタのトレーニングを実施するように構成されるトレーニングユニット(図2には描かれない)を更に含んでもよい。トレーニングユニットは、インター予測ユニット145の内部又は外部に配置されてもよい。トレーニングユニットがインター予測ユニット145内に配置されてもよく或いはエンコーダ100の他の位置に配置されていてもよいことが理解され得る。トレーニングユニットは、補間フィルタのトレーニング、補間フィルタのフィルタパラメータの更新などを実施するために、インター予測ユニット内の1つ以上の補間フィルタに結合される。或いは、トレーニングユニットが、エンコーダの外部に配置されてもよく、又は、他のデバイス(エンコーダ100を含まないデバイス)に配置されてもよく、また、エンコーダが、フィルタパラメータを受信することによって補間フィルタを構成してもよいことが理解され得る。
インター予測ユニット144は、動き推定(motion estimation,ME)ユニット(図2に描かれない)及び動き補償(motion compensation,MC)ユニット(図2に描かれない)を含んでもよい。動き推定ユニットは、動き推定のために、ピクチャブロック103(現在のピクチャ101の現在のピクチャブロック103)及びデコードされたピクチャ231、又は、少なくとも1つ以上の既に再構成されたブロック、例えば、1つ以上の他の/異なる既にデコードされたピクチャ231の再構成されたブロックを受信又は取得するように構成される。例えば、ビデオシーケンスが、現在のピクチャと、既にデコードされたピクチャ231とを含んでもよい。言い換えると、現在のピクチャ及び既にデコードされたピクチャ231は、ビデオシーケンスを形成するピクチャのシーケンスの一部であってもよく或いはそのようなシーケンスを形成してもよい。
図3は、この出願の技術、すなわち、ビデオピクチャデコーディング方法を実施するように構成されるビデオデコーダ200の一例を示す。ビデオデコーダ200は、例えば、エンコーダ100によってエンコードされるエンコードされたピクチャデータ(例えば、エンコードされたビットストリーム)171を受信して、デコードされたピクチャ231を取得するように構成される。デコーディングプロセスにおいて、ビデオデコーダ200は、ビデオデータ、例えば、エンコードされたビデオビットストリーム(ビットストリームとも称される)のピクチャブロックを表すエンコードされたビデオビットストリーム及び関連するシンタックス要素をビデオエンコーダ100から受信する。
エントロピーデコーディングユニット204は、エンコードされたピクチャデータ(例えば、ビットストリーム又は現在のデコーディングピクチャブロック)171をエントロピーデコードして、例えば、量子化係数209、及び/又は、デコードされたエンコーディングパラメータ(エンコーディング情報とも称される、図3に描かれない)、例えば、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ、標的補間フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示す情報などの(デコードされた)シンタックス要素のうちのいずれか1つ又は全てを取得するように構成される。エントロピーデコーディングユニット204は、インター予測パラメータ、イントラ予測パラメータ、標的補間フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示す情報などのシンタックス要素を予測処理ユニット260に転送するように更に構成される。ビデオデコーダ200は、ビデオスライスレベル及び/又はビデオブロックレベルでシンタックス要素を受信してもよい。
予測処理ユニット260は、動きベクトルを構文解析し、予測ブロックの標的補間フィルタの指示情報、フィルタパラメータ、及び/又は、インター予測モードを示すために使用される情報などのシンタックス要素を取得するためにサブピクセル補間を実行し、サブピクセル補間を実行するために使用される標的補間フィルタを決定し、現在のビデオスライスのビデオブロック(すなわち、現在のデコーディングピクチャブロック)の予測情報を決定し、予測情報に基づいて現在のデコーディングピクチャブロックの予測ブロックを生成する、ように構成される。例えば、予測処理ユニット260は、受信されたシンタックス要素の幾つかを使用して、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(例えば、イントラ予測又はインター予測)、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又は、GPBスライス)、スライスのための基準ピクチャリストのうちの1つ以上に関する構成情報、スライスのそれぞれのインターコーディングされたビデオブロックごとの動きベクトル、スライスのそれぞれのインターコーディングされたビデオブロックごとのインター予測状態、サブピクセル補間によって取得された予測ブロックの標的補間フィルタの指示情報、及び、他の情報を決定し、現在のビデオスライスのビデオブロックをデコードする。
例えば、図4に示される補間プロセスの場合、動きベクトルの精度は1/4である。動き推定が行われるとき、現在のエンコードされるべきピクチャブロックと最適に一致する整数ピクセルピクチャブロックが最初に見出される。その後、8個の1/2ピクセルサブピクセルピクチャブロックが、1/2精度補間フィルタを使用することによって補間により生成される。1/2の精度を伴う最適一致の動きベクトルを取得するために、現在のエンコードされるべきピクチャブロックと、以下のブロック、すなわち、8個の1/2ピクセルピクチャブロック及び整数ピクセルピクチャブロックとの間でマッチングが行われる。1/2精度を伴う最適一致の動きベクトルが指し示す最適一致のピクセルブロックに関して補間を実行して、1/4精度を伴う8個のサブピクセルブロックを取得するために、1/4精度を伴う補間フィルタが使用される。1/2精度を伴う最適一致のブロック及び1/4精度を伴う8個のサブピクセルブロックは、最適一致のピクチャブロックに関して探索され、また、最適一致のピクチャブロックは、現在のエンコードされるべきピクチャブロックの予測ブロックとして使用される。一致したピクチャブロックの位置によって示される動きベクトルが、現在のエンコードされるべきピクチャブロックの動きベクトルである。
S616:第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって、第2の補間フィルタのフィルタパラメータを決定する。
この出願のこの実施形態における方法はステップを使用することによって表されるが、ステップS612及びステップS616がトレーニングプロセスにおける反復プロセスであることに留意すべきである。
この出願のこの実施形態における方法はステップを使用することによって表されるが、ステップS622及びステップS628がトレーニングプロセスにおける反復プロセスであることに留意すべきである。
この出願の一実施形態において、ステップS628の他の実施は、以下の通り、すなわち、第1のサブピクセルピクチャと第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、サンプルピクチャと第2のピクチャとの間の差を表すために使用される第2の関数とを交互に最小化することによってフィルタパラメータを決定することであってもよい。
以下、図7及び図8に基づいて、本発明の実施形態で提供されるビデオピクチャエンコーディング方法の2つの具体的な実施プロセスについて説明する。方法は、ビデオエンコーダ100によって実行されてもよい。方法は、一連のステップ又は演算によって説明される。方法のステップが、様々な順序で及び/又は同時に実行されてもよく、図7及び図8に示される実行順序に限定されないことが理解されるべきである。ビデオエンコーダは、複数のビデオフレームを含むビデオデータストリームのために使用され、現在のビデオフレームの現在のエンコーディングピクチャブロックの動き情報を予測するために以下のステップを含むプロセスを実行するとともに、現在のエンコーディングピクチャブロックのインター予測モードと現在のエンコーディングピクチャブロックの動き情報とに基づいて現在のエンコーディングピクチャブロックをエンコードするものと仮定する。
前述の実施態様では、インター予測モードがマージモードであるかどうかにかかわらず、動き情報が分数ピクセル位置を指し示す際に、ビデオエンコーダは、デコーダ側がエンコーディングによって取得された予測ブロックの標的補間フィルタのタイプを知るように、標的補間フィルタの指示情報をビットストリームにエンコードする必要がある。
第2の実施:
現在のエンコーディングピクチャブロックに対してインター予測を行うプロセスにおいて、ビデオエンコーダは、現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ブロックを見出し、N個のサブピクセル基準ピクチャブロックを取得するために候補補間フィルタのセット内のそれぞれの補間フィルタを使用することによって整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行ってもよく、ここで、Nは正の整数であり、また、ビデオエンコーダは、整数ピクセル基準ピクチャブロック及びN個のサブピクセル基準ピクチャブロックから、現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、予測ブロックに基づいて動き情報を決定してもよい。動き情報が分数ピクセル位置を指し示す場合、標的補間フィルタは、補間によって取得された予測ブロックの補間フィルタ又は補間によって取得された予測ブロックの一種の補間フィルタである。そうでなければ、動き情報が整数ピクセル位置を指し示す場合、ビデオエンコーダは、標的補間フィルタを決定する必要がなく、標的補間フィルタの指示情報をビットストリームにエンコードする必要がない。
現在のエンコーディングピクチャブロックに対してインター予測を行うプロセスにおいて、現在のエンコーディングピクチャブロックの予測ブロックが整数ピクセルピクチャである場合、ビデオエンコーダは、標的補間フィルタを決定するプロセスを行う必要がなく、標的補間フィルタの指示情報をビットストリームにエンコードする必要もないことが理解され得る。
随意的に、標的補間フィルタが前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得された第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、前述の補間フィルタトレーニング方法のいずれか1つを使用することによってオンライントレーニングにより取得されたフィルタパラメータである。
随意的に、ビデオデコーダは、最初に、分数ピクセル位置を指し示す現在のデコーディングピクチャブロックの動き情報をビデオデコーダが取得するS94を実行し、その後、標的補間フィルタの指示情報を取得するために、ビデオデコーダがビットストリームを構文解析するステップS92を実行してもよい。動き情報が整数ピクセル位置を指し示す場合には、現在のデコーディングピクチャブロックに対応する、ビットストリームを構文解析することによって取得されるエンコーディング情報が、標的補間フィルタの指示情報を含まず、或いは、現在のデコーディングピクチャブロックの取得された動き情報が整数ピクセル位置を指し示す場合には、ビデオデコーダがS92を行う必要がないことが理解され得る。この場合、取得された動き情報に基づいて予測が行われてもよい。
S106:現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対してインター予測プロセスを実行し、予測プロセスは、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報はビットストリームを構文解析することによって取得される。
この出願の他の実施形態では、インター予測モードが標的インター予測モード(例えば、マージモード)であり且つ動き情報が分数ピクセル位置を指し示す場合、エンコーダ側が標的補間フィルタの指示情報をエンコードしてもよいことが理解されるべきである。それに対応して、インター予測モードが標的インター予測モード(例えば、マージモード)であり且つ動き情報が分数ピクセル位置を指し示す場合、デコーダ側は、インター予測中に、標的補間フィルタを使用することによって補間により現在のデコーディングピクチャブロックの予測ブロックを取得するために、ビットストリームを構文解析することにより取得されるとともに標的補間フィルタの情報である指示情報に基づき、指示情報によって示される標的補間フィルタを決定してもよい。
この出願の一実施形態では、標的補間フィルタが前述の補間フィルタトレーニング方法を使用することによって取得される第2の補間フィルタである場合、ビデオエンコーダ側の標的補間フィルタのフィルタパラメータは、事前に設定されたフィルタパラメータであってもよく、また、ビデオコーダ側の標的補間フィルタのフィルタパラメータと一致する。或いは、ビデオエンコーダ側の標的補間フィルタのフィルタパラメータは、前述の補間フィルタトレーニング方法を使用することによって取得されるフィルタパラメータであってもよい。
S1107:構文解析により、現在のコーディングピクチャブロックのために使用される標的補間フィルタの指示情報を取得する。
図14は、この出願の一実施形態に係る更なる他の補間フィルタトレーニング装置の概略的なブロック図である。装置1400は、プロセッサ1410及びメモリ1420を含んでもよい。メモリ1420は、バス1430を介してプロセッサ1410に接続され、また、メモリ1420は、前述の補間フィルタトレーニング方法のいずれか1つを実施するために使用されるプログラムコードを記憶するように構成される。プロセッサ1410は、メモリに記憶されたプログラムコードを呼び出して、この出願に記載される補間フィルタトレーニング方法を実行するように構成される。詳細については、図6A~図6Dの補間フィルタトレーニング方法の実施形態の関連説明を参照されたい。詳細については、この出願のこの実施形態において再度説明しない。
一実施において、装置1400内のメモリ1420は、リードオンリーメモリ(Read Only Memory,ROM)デバイス又はランダムアクセスメモリ(random access memory,RAM)デバイスであってもよい。任意の他の適切なタイプの記憶デバイスをメモリ1420として使用できる。メモリ1420は、バス1430を介してプロセッサ1410によってアクセスされるコード及びデータ1401(例えば、サンプルピクチャ)を含んでもよい。メモリ1420は、オペレーティングシステム1402及びアプリケーションプログラム1403を更に含んでもよい。アプリケーションプログラム1403は、プロセッサ1410がこの明細書中に記載される方法を実行できるようにする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム1403がアプリケーション1~Nを含んでもよく、また、アプリケーション1~Nは、この明細書中に記載される方法を実行するビデオコーディングアプリケーションを更に含む。装置1400は、二次メモリ1402の形態を成す更なるメモリを更に含んでもよい。二次メモリ1402は、例えば、モバイルコンピュータデバイスと共に使用されるメモリカードであってもよい。ビデオ通信セッションが大量の情報を含み得るため、情報の全部又は一部が二次メモリ1420に記憶されて必要に応じて処理のためにメモリ1420に取り込まれてもよい。
随意的に、標的補間フィルタが図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得されたフィルタパラメータである。
10又は図11A及び図11Bに示されるビデオピクチャデコーディング方法に対応して、この出願の他の実施形態では、デコーダ1600におけるユニットの特定の機能が以下の通りである。
インター予測ユニット1602は、現在のデコーディングピクチャブロックの動き情報を取得し、動き情報が分数ピクセル位置を指し示し、現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードではない場合には、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行し、予測プロセスが、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、標的補間フィルタの指示情報がビットストリームを構文解析することによって取得される、ように構成される。
随意的に、インター予測ユニット1602は、現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、現在のデコーディングピクチャブロックの動き情報に基づいて現在のデコーディングピクチャブロックに対して予測プロセスを実行するように更に構成され、予測プロセスは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、現在のデコーディングピクチャブロックの予測ブロックを取得するために、標的補間フィルタを使用することによってサブピクセル補間を実行することを含む。
現在のデコーディングピクチャブロックのインター予測モードが標的インター予測モードである場合、インター予測ユニット1602が現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定することが、具体的には、デコーディングプロセスにおいて既にデコードされたピクチャブロックのために使用される補間フィルタが現在のデコーディングピクチャブロックのために使用される標的補間フィルタであると決定すること、或いは、現在のデコーディングピクチャブロックのために使用される標的補間フィルタが標的補間フィルタの情報であってビットストリームを構文解析することにより取得される指示情報によって示される標的補間フィルタであると決定すること含むことが理解されるべきである。
この出願のこの実施形態の想定し得る実施において、標的補間フィルタが図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得される第2の補間フィルタである場合、標的補間フィルタのフィルタパラメータは事前に設定されたフィルタパラメータであり、或いは、標的補間フィルタのフィルタパラメータは、図6A~図6Dに記載される前述の補間フィルタトレーニング方法のいずれか1つを使用することによって取得されたフィルタパラメータである。
図17は、この出願の一実施形態に係る、図7又は図8のビデオピクチャエンコーディング方法を実施するためのエンコーディングデバイス、或いは、図9~図11Bのビデオピクチャデコーディング方法を実施するためのデコーディングデバイスの概略的なブロック図である。デバイス1700はプロセッサ1702及びメモリ1704を含んでもよく、メモリ1704はバス1712を介してプロセッサ1702に接続される。メモリ1704は、前述のビデオピクチャエンコーディング方法のいずれか1つを実施するために使用されるプログラムコードを記憶するように構成される。プロセッサ1702は、メモリに記憶されたプログラムコードを呼び出して、この出願に記載される様々なビデオピクチャエンコーディング/デコーディング方法を実行するように構成される。詳細については、図7~図11Bのビデオピクチャエンコーディング/デコーディング方法の方法実施形態の関連説明を参照されたい。詳細については、この出願のこの実施形態において再度説明しない。
デバイス1700は、1つ以上の出力デバイス、例えばディスプレイ1718を更に含んでもよい。一例において、ディスプレイ1718は、ディスプレイと、接触入力を動作可能に感知する接触感知素子とを組み合わせる接触感知ディスプレイであってもよい。ディスプレイ1718は、バス1712を介してプロセッサ1702に結合されてもよい。ディスプレイ1718に加えて、ユーザがデバイス1700をプログラムできる又はさもなければデバイス1700を使用できるようにする他の出力デバイスが更に設けられてもよく、或いは、ディスプレイ1718に代わる手段として他の出力デバイスが設けられてもよい。出力デバイスがディスプレイである又はディスプレイを含む場合、ディスプレイは、液晶ディスプレイ(liquid crystal display,LCD)、陰極線管(cathode-ray tube,CRT)ディスプレイ、プラズマディスプレイ、又は、有機LED(organic LED,OLED)ディスプレイなどの発光ダイオード(light emitting diode,LED)ディスプレイを使用することを含む、様々な方法で実装されてもよい。
デバイス1700は、音検知デバイス1722を更に含んでもよく、或いは、音検知デバイス1722と通信状態であってもよい。音検知デバイス1722は、例えば、デバイス1700付近の音を送信できるマイクロフォン又は任意の他の既存の/将来開発される音検知デバイスである。音検知デバイス1722は、デバイス1700を起動させるユーザに直接に対向するように配置されてもよく、ユーザがデバイス1700を起動させるときにもたらされる音、例えば音声又は他の音を受信するように構成されてもよい。

Claims (76)

  1. 整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にある前記サンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うステップと、
    第2のサブピクセルピクチャを取得するために、前記サンプルピクチャを第2の補間フィルタに入力するステップと、
    前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって前記第2の補間フィルタのフィルタパラメータを決定するステップと、
    を含む、補間フィルタトレーニング方法。
  2. 整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にある前記サンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うステップと、
    第2のサブピクセルピクチャを取得するために、前記サンプルピクチャを第2の補間フィルタに入力するステップと、
    第1のピクチャを取得するために、フリップ演算が行われる前記第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するために前記フリップ演算の逆演算を前記第1のピクチャに対して行うステップであって、前記第2の補間フィルタ及び前記第3の補間フィルタがフィルタパラメータを共有する、ステップと、
    前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、前記サンプルピクチャと前記第2のピクチャとの間の差を表すために使用される第2の関数とに基づいて前記フィルタパラメータを決定するステップと、
    を含む、補間フィルタトレーニング方法。
  3. 前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の損失関数と、前記サンプルピクチャと前記第2のピクチャとの間の差を表すために使用される第2の関数とに基づいて前記フィルタパラメータを決定する前記ステップは、
    第3の関数を最小化することによって前記フィルタパラメータを決定するステップであって、前記第3の関数が、前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の前記差を表すために使用される前記第1の関数と、前記サンプルピクチャと前記第2のピクチャとの間の前記差を表すために使用される前記第2の関数との間の加重和である、ステップ、を特に含む、請求項2に記載の方法。
  4. 前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、前記サンプルピクチャと前記第2のピクチャとの間の差を表すために使用される第2の関数とに基づいて前記フィルタパラメータを決定する前記ステップは、
    前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の前記差を表すために使用される第1の損失関数と、前記サンプルピクチャと前記第2のピクチャとの間の前記差を表すために使用される前記第2の関数とを交互に最小化することによって前記フィルタパラメータを決定するステップ、を特に含む、請求項2に記載の方法。
  5. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うステップであって、前記現在のエンコーディングピクチャブロックの前記動き情報が分数ピクセル位置を指し示し、前記インター予測プロセスが、候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するステップを含む、ステップと、
    エンコーディング情報を取得するために、前記現在のエンコーディングピクチャブロックのインター予測モードと前記現在のエンコーディングピクチャブロックの前記動き情報とに基づいて前記現在のエンコーディングピクチャブロックをエンコードするとともに、前記エンコーディング情報をビットストリームにエンコードするステップであって、前記エンコーディング情報が前記標的補間フィルタの指示情報を含み、前記標的補間フィルタの前記指示情報は、前記現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために前記標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される、ステップと、
    を含む、ビデオピクチャエンコーディング方法。
  6. 候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定する前記ステップは、
    レート歪みコスト基準に従った候補補間フィルタの前記セットから、前記現在のエンコーディングピクチャブロックのために使用される前記標的補間フィルタを決定するステップ、を含む、請求項5に記載の方法。
  7. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行う前記ステップは、
    前記現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定するステップと、
    N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタの前記セット内の各補間フィルタを使用することによって前記整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行うステップであって、Nが正の整数である、ステップと、
    前記整数ピクセル基準ピクチャブロック及び前記N個のサブピクセル基準ピクチャブロックから、前記現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定するステップと、
    前記予測ブロックに基づいて前記動き情報を決定するステップであって、補間によって前記予測ブロックを取得するために使用される補間フィルタが前記標的補間フィルタである、ステップと、を含む、請求項5に記載の方法。
  8. 候補補間フィルタの前記セットは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタを含む、請求項5から7のいずれか一項に記載の方法。
  9. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項8に記載の方法。
  10. 前記エンコーディング情報は、トレーニングによって取得される前記標的補間フィルタの前記フィルタパラメータを更に含み、又は、前記エンコーディング情報がフィルタパラメータ差分を更に含み、前記フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である、請求項9に記載の方法。
  11. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項10に記載の方法。
  12. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うステップであって、前記現在のエンコーディングピクチャブロックの前記動き情報が分数ピクセル位置を指し示し、前記インター予測プロセスが、候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するステップを含む、ステップと、
    エンコーディング情報を取得するために、前記現在のエンコーディングピクチャブロックのインター予測モードと前記現在のエンコーディングピクチャブロックの前記動き情報とに基づいて前記現在のエンコーディングピクチャブロックをエンコードするとともに、前記エンコーディング情報をビットストリームにエンコードするステップであって、前記現在のエンコーディングピクチャブロックの前記インター予測モードが標的インター予測モードである場合、前記エンコーディング情報が前記標的補間フィルタの指示情報を含まず、又は、前記現在のエンコーディングピクチャブロックの前記インター予測モードが標的インター予測モードでない場合、前記エンコーディング情報が前記標的補間フィルタの指示情報を含み、前記標的補間フィルタの前記指示情報は、前記現在のエンコーディングピクチャブロックがサブピクセル補間を実行するべく前記標的補間フィルタを使用することを示すために使用される、ステップと、
    を含む、ビデオピクチャエンコーディング方法。
  13. 候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定する前記ステップは、
    レート歪みコスト基準に従った候補補間フィルタの前記セットから、前記現在のエンコーディングピクチャブロックのために使用される前記標的補間フィルタを決定するステップ、を含む、請求項12に記載の方法。
  14. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行う前記ステップは、
    前記現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定するステップと、
    N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタの前記セット内の各補間フィルタを使用することによって前記整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行うステップであって、Nが正の整数である、ステップと、
    前記整数ピクセル基準ピクチャブロック及び前記N個のサブピクセル基準ピクチャブロックから、前記現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定するステップと、
    前記予測ブロックに基づいて前記動き情報を決定するステップであって、補間によって前記予測ブロックを取得するために使用される補間フィルタが前記標的補間フィルタである、ステップと、を含む、請求項12に記載の方法。
  15. 候補補間フィルタの前記セットは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタを含む、請求項12から14のいずれか一項に記載の方法。
  16. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項15に記載の方法。
  17. 前記エンコーディング情報は、トレーニングによって取得される前記標的補間フィルタの前記フィルタパラメータを更に含み、又は、前記エンコーディング情報がフィルタパラメータ差分を更に含み、前記フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である、請求項16に記載の方法。
  18. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項17に記載の方法。
  19. 標的補間フィルタの指示情報を取得するためにビットストリームを構文解析するステップと、
    現在のデコーディングピクチャブロックの動き情報を取得するステップであって、前記動き情報が分数ピクセル位置を指し示す、ステップと、
    前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行するステップであって、前記予測プロセスが、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記指示情報によって示される前記標的補間フィルタに基づいてサブピクセル補間を実行するステップを含む、ステップと、
    前記現在のデコーディングピクチャブロックの前記予測ブロックに基づいて前記現在のデコーディングピクチャブロックの再構成ブロックを再構成するステップと、
    を含む、ビデオピクチャデコーディング方法。
  20. 現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、
    前記現在のデコーディングピクチャブロックの前記動き情報のインデックスを取得するために前記ビットストリームを構文解析するステップと、
    前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの前記動き情報を決定するステップと、を含む、請求項19に記載の方法。
  21. 現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、
    前記現在のデコーディングピクチャブロックの前記動き情報のインデックスと動きベクトル差分とを取得するために前記ビットストリームを構文解析するステップと、
    前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの動きベクトル予測子を決定するステップと、
    前記動きベクトル予測子と前記動きベクトル差分とに基づいて前記現在のデコーディングピクチャブロックの動きベクトルを取得するステップと、を含む、請求項19に記載の方法。
  22. 現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、
    前記現在のデコーディングピクチャブロックのインター予測モードがマージモード(merge mode)である場合に、既にデコードされたピクチャブロックの、前記マージモードでマージングによって取得される動き情報、すなわち、前記現在のデコーディングピクチャブロックの前記動き情報を取得するステップ、を含む、請求項19に記載の方法。
  23. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項20から22のいずれか一項に記載の方法。
  24. 前記方法は、
    現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するために前記ビットストリームを構文解析するステップと、
    前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するステップと、を更に含む、請求項23に記載の方法。
  25. 前記方法は、
    フィルタパラメータ差分を取得するために前記ビットストリームを構文解析するステップであって、前記フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
    既にデコードされたピクチャユニットの前記標的補間フィルタの前記フィルタパラメータと前記フィルタパラメータ差分とに基づいて前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを取得するステップと、
    前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するステップと、を更に含む、請求項23に記載の方法。
  26. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項24又は25に記載の方法。
  27. 現在のデコーディングピクチャブロックの情報を取得するためにビットストリームを構文解析するステップであって、前記情報は、前記現在のデコーディングピクチャブロックのインター予測モードを示すために使用される、ステップと、
    前記現在のデコーディングピクチャブロックの動き情報を取得するステップであって、前記動き情報が分数ピクセル位置を指し示す、ステップと、
    前記現在のピクチャブロックの前記インター予測モードが標的インター予測モードではない場合に、前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行するステップであって、前記予測プロセスが、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行するステップを含み、前記標的補間フィルタの前記指示情報が前記ビットストリームを構文解析することによって取得される、ステップと、
    前記現在のデコーディングピクチャブロックの前記予測ブロックに基づいて前記現在のデコーディングピクチャブロックを再構成するステップと、
    を含む、ビデオピクチャデコーディング方法。
  28. 前記現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、
    前記現在のデコーディングピクチャブロックの前記動き情報のインデックスを取得するために前記ビットストリームを構文解析するステップと、
    前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの前記動き情報を決定するステップと、を含む、請求項27に記載の方法。
  29. 前記現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、
    前記現在のデコーディングピクチャブロックの前記動き情報のインデックスと動きベクトル差分とを取得するために前記ビットストリームを構文解析するステップと、
    前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの動きベクトル予測子を決定するステップと、
    前記動きベクトル予測子と前記動きベクトル差分とに基づいて前記現在のデコーディングピクチャブロックの動きベクトルを取得するステップと、を含む、請求項27に記載の方法。
  30. 前記方法は、前記現在のピクチャブロックの前記インター予測モードが標的インター予測モードである場合に、前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行するステップであって、前記予測プロセスが、前記現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するステップを含む、ステップと、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記標的補間フィルタを使用することによってサブピクセル補間を実行するステップと、を含む、請求項27に記載の方法。
  31. 前記標的インター予測モードがマージモードであり、
    前記現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、既にデコードされたピクチャブロックの動き情報を取得するステップであって、前記既にデコードされたピクチャブロックの前記動き情報が前記マージモードでのマージングによって取得される、ステップを含み、
    前記現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定する前記ステップは、デコーディングプロセスにおいて前記既にデコードされたピクチャブロックのために使用される補間フィルタが前記現在のデコーディングピクチャブロックのために使用される前記標的補間フィルタであると決定するステップ、又は、前記現在のデコーディングピクチャブロックのために使用される前記標的補間フィルタが、前記標的補間フィルタの、前記ビットストリームを構文解析することにより取得される前記指示情報によって示される前記標的補間フィルタであると決定するステップを含む、請求項30に記載の方法。
  32. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項27から31のいずれか一項に記載の方法。
  33. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するために前記ビットストリームを構文解析し、
    前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成する、請求項27から32のいずれか一項に記載の方法。
  34. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、前記方法は、
    フィルタパラメータ差分を取得するために前記ビットストリームを構文解析するステップであって、前記フィルタパラメータ差分が、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差である、ステップと、
    前記既にデコードされたピクチャユニットの前記標的補間フィルタの前記フィルタパラメータと前記フィルタパラメータ差分とに基づいて前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを取得するステップと、
    前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するステップと、を更に含む、請求項27から32のいずれか一項に記載の方法。
  35. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項33又は34に記載の方法。
  36. 整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にある前記サンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うように構成されるラベルデータ取得モジュールと、
    第2のサブピクセルピクチャを取得するために、前記サンプルピクチャを第2の補間フィルタに入力するように構成される補間モジュールと、
    前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数を最小化することによって前記第2の補間フィルタのフィルタパラメータを決定するように構成されるパラメータ決定モジュールと、
    を備える、補間フィルタトレーニング装置。
  37. 整数ピクセル位置にあるサンプルピクチャのピクセルに対して、第1の分数ピクセル位置にある前記サンプルピクチャの第1のサブピクセルピクチャを取得するために、第1の補間フィルタを使用することによって補間を行うように構成されるラベルデータ取得モジュールと、
    第2のサブピクセルピクチャを取得するために、前記サンプルピクチャを第2の補間フィルタに入力するように構成される補間モジュールと、
    第1のピクチャを取得するために、フリップ演算が行われる前記第2のサブピクセルピクチャを第3の補間フィルタに入力するとともに、第2のピクチャを取得するために前記フリップ演算の逆演算を前記第1のピクチャに対して行うように構成される逆補間モジュールであって、前記第2の補間フィルタ及び前記第3の補間フィルタがフィルタパラメータを共有する、逆補間モジュールと、
    前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の差を表すために使用される第1の関数と、前記サンプルピクチャと前記第2のピクチャとの間の差を表すために使用される第2の関数とに基づいて前記フィルタパラメータを決定するように構成されるパラメータ決定モジュールと、
    を備える、補間フィルタトレーニング装置。
  38. 前記パラメータ決定モジュールは、第3の関数を最小化することによって前記フィルタパラメータを決定するように特に構成され、前記第3の関数は、前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の前記差を表すために使用される前記第1の関数と、前記サンプルピクチャと前記第2のピクチャとの間の前記差を表すために使用される前記第2の関数との間の加重和である、請求項37に記載の装置。
  39. 前記パラメータ決定モジュールは、前記第1のサブピクセルピクチャと前記第2のサブピクセルピクチャとの間の前記差を表すために使用される第1の損失関数と、前記サンプルピクチャと前記第2のピクチャとの間の前記差を表すために使用される前記第2の関数とを交互に最小化することによって前記フィルタパラメータを決定するように特に構成される、請求項37に記載の装置。
  40. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うように構成されるインター予測ユニットであって、前記現在のエンコーディングピクチャブロックの前記動き情報が分数ピクセル位置を指し示し、前記インター予測ユニットが、候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように構成されるフィルタ選択ユニットを備える、インター予測ユニットと、
    エンコーディング情報を取得するために、前記現在のエンコーディングピクチャブロックのインター予測モードと前記現在のエンコーディングピクチャブロックの前記動き情報とに基づいて前記現在のエンコーディングピクチャブロックをエンコードするとともに、前記エンコーディング情報をビットストリームにエンコードするように構成されるエントロピーエンコーディングユニットであって、前記エンコーディング情報が前記標的補間フィルタの指示情報を含み、前記標的補間フィルタの前記指示情報は、前記現在のエンコーディングピクチャブロックに対応する分数ピクセル位置の基準ブロックを取得するために前記標的補間フィルタを使用することによってサブピクセル補間を実行することを示すために使用される、エントロピーエンコーディングユニットと、
    を備える、エンコーダ。
  41. 前記フィルタ選択ユニットは、レート歪みコスト基準に従った候補補間フィルタの前記セットから、前記現在のエンコーディングピクチャブロックのために使用される前記標的補間フィルタを決定するように特に構成される、請求項40に記載のエンコーダ。
  42. 前記インター予測ユニットは、
    前記現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定し、
    N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタの前記セット内の各補間フィルタを使用することによって前記整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行い、Nが正の整数であり、
    前記整数ピクセル基準ピクチャブロック及び前記N個のサブピクセル基準ピクチャブロックから、前記現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、
    前記予測ブロックに基づいて前記動き情報を決定し、補間によって前記予測ブロックを取得するために使用される補間フィルタが前記標的補間フィルタである、ように特に構成される、請求項40に記載のエンコーダ。
  43. 候補補間フィルタの前記セットは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタを含む、請求項40から42のいずれか一項に記載のエンコーダ。
  44. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項43に記載のエンコーダ。
  45. 前記エンコーディング情報は、トレーニングによって取得される前記標的補間フィルタの前記フィルタパラメータを更に含み、又は、前記エンコーディング情報が前記フィルタパラメータ差分を更に含み、前記フィルタパラメータ差分は、現在のピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である、請求項44に記載のエンコーダ。
  46. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項45に記載のエンコーダ。
  47. 現在のエンコーディングピクチャブロックに対して、前記現在のエンコーディングピクチャブロックの動き情報を取得するためにインター予測を行うように構成されるインター予測ユニットであって、前記現在のエンコーディングピクチャブロックの前記動き情報が分数ピクセル位置を指し示し、前記インター予測ユニットが、候補補間フィルタのセットから、前記現在のエンコーディングピクチャブロックのために使用される標的補間フィルタを決定するように構成されるフィルタ選択ユニットを備える、インター予測ユニットと、
    エンコーディング情報を取得するために、前記現在のエンコーディングピクチャブロックのインター予測モードと前記現在のエンコーディングピクチャブロックの前記動き情報とに基づいて前記現在のエンコーディングピクチャブロックをエンコードするとともに、前記エンコーディング情報をビットストリームにエンコードするように構成されるエントロピーエンコーディングユニットであって、前記現在のエンコーディングピクチャブロックの前記インター予測モードが標的インター予測モードである場合、前記エンコーディング情報が前記標的補間フィルタの指示情報を含まず、又は、前記現在のエンコーディングピクチャブロックの前記インター予測モードが標的インター予測モードでない場合、前記エンコーディング情報が前記標的補間フィルタの指示情報を含み、前記標的補間フィルタの前記指示情報は、前記現在のエンコーディングピクチャブロックがサブピクセル補間を実行するべく前記標的補間フィルタを使用することを示すために使用される、エントロピーエンコーディングユニットと、
    を備える、エンコーダ。
  48. 前記フィルタ選択ユニットは、
    レート歪みコスト基準に従った候補補間フィルタの前記セットから、前記現在のエンコーディングピクチャブロックのために使用される前記標的補間フィルタを決定する、ように特に構成される、請求項47に記載のエンコーダ。
  49. 前記インター予測ユニットは、
    前記現在のエンコーディングピクチャブロックと最適に一致する整数ピクセル基準ピクチャブロックを決定し、
    N個のサブピクセル基準ピクチャブロックを取得するために、候補補間フィルタの前記セット内の各補間フィルタを使用することによって前記整数ピクセル基準ピクチャブロックに対してサブピクセル補間を行い、Nが正の整数であり、
    前記整数ピクセル基準ピクチャブロック及び前記N個のサブピクセル基準ピクチャブロックから、前記現在のエンコーディングピクチャブロックと最適に一致する予測ブロックを決定し、
    前記予測ブロックに基づいて前記動き情報を決定し、補間によって前記予測ブロックを取得するために使用される補間フィルタが前記標的補間フィルタである、ように特に構成される、請求項47に記載のエンコーダ。
  50. 候補補間フィルタの前記セットは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタを含む、請求項47から49のいずれか一項に記載のエンコーダ。
  51. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項50に記載のエンコーダ。
  52. 前記エンコーディング情報は、トレーニングによって取得される前記標的補間フィルタの前記フィルタパラメータを更に含み、又は、前記エンコーディング情報がフィルタパラメータ差分を更に含み、前記フィルタパラメータ差分は、現在のエンコーディングピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータと、既にエンコードされたピクチャユニットのために使用されてトレーニングによって取得される標的補間フィルタのフィルタパラメータとの間の差である、請求項51に記載のエンコーダ。
  53. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項52に記載のエンコーダ。
  54. 標的補間フィルタの指示情報を取得するためにビットストリームを構文解析するとともに、現在のデコーディングピクチャブロックの動き情報を取得するように構成されるエントロピーデコーディングユニットであって、前記動き情報が分数ピクセル位置を指し示す、エントロピーデコーディングユニットと、
    前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行するように構成されるインター予測ユニットであって、前記予測プロセスが、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記指示情報によって示される前記標的補間フィルタに基づいてサブピクセル補間を実行する、インター予測ユニットと、
    前記現在のデコーディングピクチャブロックの前記予測ブロックに基づいて前記現在のデコーディングピクチャブロックの再構成ブロックを再構成するように構成される再構成ユニットと、
    を備える、デコーダ。
  55. 前記エントロピーデコーディングユニットは、前記現在のデコーディングピクチャブロックの前記動き情報のインデックスを取得するために前記ビットストリームを構文解析するように特に構成され、
    前記インター予測ユニットは、前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの前記動き情報を決定するように更に構成される、
    請求項54に記載のデコーダ。
  56. 前記エントロピーデコーディングユニットは、前記現在のデコーディングピクチャブロックの前記動き情報のインデックスと動きベクトル差分とを取得するために前記ビットストリームを構文解析するように特に構成され、
    前記インター予測ユニットは、前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの動きベクトル予測子を決定するとともに、前記動きベクトル予測子と前記動きベクトル差分とに基づいて前記現在のデコーディングピクチャブロックの動きベクトルを取得するように更に構成される、
    請求項54に記載のデコーダ。
  57. 前記インター予測ユニットは、
    前記現在のデコーディングピクチャブロックのインター予測モードがマージモード(merge mode)である場合に、既にデコードされたピクチャブロックの、前記マージモードでマージングによって取得される動き情報、すなわち、前記現在のデコーディングピクチャブロックの前記動き情報を取得する、ように更に構成される、請求項54に記載のデコーダ。
  58. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニングデコーダを使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項54から57のいずれか一項に記載のデコーダ。
  59. 前記エントロピーデコーディングユニットは、前記現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するために前記ビットストリームを構文解析するように更に構成され、
    前記デコーダは、前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するように構成された構成ユニットを更に備える、
    請求項58に記載のデコーダ。
  60. 前記エントロピーデコーディングユニットは、フィルタパラメータ差分を取得するために前記ビットストリームを構文解析するように更に構成され、前記フィルタパラメータ差分は、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差であり、
    前記デコーダは、前記既にデコードされたピクチャユニットの前記標的補間フィルタの前記フィルタパラメータと前記フィルタパラメータ差分とに基づいて前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを取得するとともに、前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するように構成された構成ユニットを更に備える、請求項58に記載のデコーダ。
  61. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項59又は60に記載のデコーダ。
  62. 現在のデコーディングピクチャブロックの情報を取得するためにビットストリームを構文解析するように構成されるエントロピーデコーディングユニットであって、前記情報は、前記現在のデコーディングピクチャブロックのインター予測モードを示すために使用される、エントロピーデコーディングユニットと、
    前記現在のデコーディングピクチャブロックの動き情報を取得するように構成されるインター予測ユニットであって、前記動き情報が分数ピクセル位置を指し示し、前記現在のピクチャブロックの前記インター予測モードが標的インター予測モードではない場合に、前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行し、前記予測プロセスが、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記標的補間フィルタの指示情報によって示される標的補間フィルタに基づいてサブピクセル補間を実行することを含み、前記標的補間フィルタの前記指示情報が前記ビットストリームを構文解析することによって取得される、インター予測ユニットと、
    前記現在のデコーディングピクチャブロックの前記予測ブロックに基づいて前記現在のデコーディングピクチャブロックを再構成するように構成される再構成ユニットと、
    を備える、デコーダ。
  63. 前記エントロピーデコーディングユニットは、前記現在のデコーディングピクチャブロックの前記動き情報のインデックスを取得するために前記ビットストリームを構文解析するように更に構成され、
    前記インター予測ユニットは、前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの前記動き情報を決定するように更に構成される、
    請求項62に記載のデコーダ。
  64. 前記エントロピーデコーディングユニットは、前記現在のデコーディングピクチャブロックの前記動き情報のインデックスと動きベクトル差分とを取得するために前記ビットストリームを構文解析するように更に構成され、
    前記インター予測ユニットは、前記現在のデコーディングピクチャブロックの前記動き情報の前記インデックスと前記現在のデコーディングピクチャブロックの候補動き情報リストとに基づいて前記現在のデコーディングピクチャブロックの動きベクトル予測子を決定するとともに、前記動きベクトル予測子と前記動きベクトル差分とに基づいて前記現在のデコーディングピクチャブロックの動きベクトルを取得するように更に構成される、
    請求項62に記載のデコーダ。
  65. 前記インター予測ユニットは、前記現在のピクチャブロックの前記インター予測モードが標的インター予測モードである場合に、前記現在のデコーディングピクチャブロックの前記動き情報に基づいて前記現在のデコーディングピクチャブロックに対して予測プロセスを実行するように更に構成され、前記予測プロセスは、前記現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定するとともに、前記現在のデコーディングピクチャブロックの予測ブロックを取得するために、前記標的補間フィルタを使用することによってサブピクセル補間を実行することを含む、請求項62に記載のデコーダ。
  66. 前記標的インター予測モードがマージモードであり、
    前記現在のデコーディングピクチャブロックの動き情報を取得する前記ステップは、既にデコードされたピクチャブロックの動き情報を取得するステップであって、前記既にデコードされたピクチャブロックの前記動き情報が前記マージモードでのマージングによって取得される、ステップを含み、
    前記現在のデコーディングピクチャブロックのために使用される標的補間フィルタを決定する前記ステップは、デコーディングプロセスにおいて前記既にデコードされたピクチャブロックのために使用される補間フィルタが前記現在のデコーディングピクチャブロックのために使用される前記標的補間フィルタであると決定するステップ、又は、前記現在のデコーディングピクチャブロックのために使用される前記標的補間フィルタが前記標的補間フィルタの、前記ビットストリームを構文解析することにより取得される前記指示情報によって示される前記標的補間フィルタであると決定するステップを含む、請求項65に記載のデコーダ。
  67. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、
    前記標的補間フィルタのフィルタパラメータが事前に設定されたフィルタパラメータであり、又は、前記標的補間フィルタのフィルタパラメータが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記フィルタパラメータである、請求項62から66のいずれか一項に記載のデコーダ。
  68. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、前記エントロピーデコーディングユニットは、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータを取得するために前記ビットストリームを構文解析するように更に構成され、
    前記デコーダは、前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するように構成される構成ユニットを更に備える、請求項62から67のいずれか一項に記載のデコーダ。
  69. 前記標的フィルタが請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を使用することによって取得される前記第2の補間フィルタである場合、前記エントロピーデコーディングユニットは、フィルタパラメータ差分を取得するために前記ビットストリームを構文解析するように更に構成され、前記フィルタパラメータ差分は、現在のデコーディングピクチャユニットのために使用される標的補間フィルタのフィルタパラメータと既にデコードされたピクチャユニットのために使用される標的補間フィルタのフィルタパラメータとの間の差であり、
    前記デコーダは構成ユニットであって、前記構成ユニットが、前記既にデコードされたピクチャユニットの前記標的補間フィルタの前記フィルタパラメータと前記フィルタパラメータ差分とに基づいて前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを取得するとともに、前記現在のデコーディングピクチャユニットの前記標的補間フィルタの前記フィルタパラメータを使用することによって前記標的補間フィルタを構成するように構成される、構成ユニットを更に備える、請求項62から67のいずれか一項に記載のデコーダ。
  70. 前記ピクチャユニットは、ピクチャフレーム、スライス(slice)、ビデオシーケンスサブグループ、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)を備える、請求項68又は69に記載のデコーダ。
  71. メモリ及びプロセッサを備える補間フィルタトレーニング装置であって、前記メモリがプログラムコードを記憶するように構成され、前記プロセッサが、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を実行するために、前記プログラムコードを呼び出すように構成される、補間フィルタトレーニング装置。
  72. メモリ及びプロセッサを備えるエンコーディング装置であって、前記メモリがプログラムコードを記憶するように構成され、前記プロセッサが、請求項5から19のいずれか一項に記載のビデオピクチャエンコーディング方法を実行するために、前記プログラムコードを呼び出すように構成される、エンコーディング装置。
  73. メモリ及びプロセッサを備えるデコーディング装置であって、前記メモリがプログラムコードを記憶するように構成され、前記プロセッサが、請求項20から35のいずれか一項に記載のビデオピクチャデコーディング方法を実行するために、前記プログラムコードを呼び出すように構成される、デコーディング装置。
  74. プログラムコードを含むコンピュータ可読記憶媒体であって、前記プログラムコードがコンピュータ上で実行されるときに、前記コンピュータは、請求項1から4のいずれか一項に記載の補間フィルタトレーニング方法を実行できるようにされる、コンピュータ可読記憶媒体。
  75. プログラムコードを含むコンピュータ可読記憶媒体であって、前記プログラムコードがコンピュータ上で実行されるときに、前記コンピュータは、請求項5から19のいずれか一項に記載のビデオピクチャエンコーディング方法を実行できるようにされる、コンピュータ可読記憶媒体。
  76. プログラムコードを含むコンピュータ可読記憶媒体であって、前記プログラムコードがコンピュータ上で実行されるときに、前記コンピュータは、請求項20から35のいずれか一項に記載のビデオピクチャデコーディング方法を実行できるようにされる、コンピュータ可読記憶媒体。
JP2021518927A 2018-10-06 2019-09-26 補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ Active JP7331095B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201811166872.X 2018-10-06
CN201811166872.XA CN111010568B (zh) 2018-10-06 2018-10-06 插值滤波器的训练方法、装置及视频图像编解码方法、编解码器
PCT/CN2019/108311 WO2020069655A1 (zh) 2018-10-06 2019-09-26 插值滤波器的训练方法、装置及视频图像编解码方法、编解码器

Publications (2)

Publication Number Publication Date
JP2022514160A true JP2022514160A (ja) 2022-02-10
JP7331095B2 JP7331095B2 (ja) 2023-08-22

Family

ID=70054947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021518927A Active JP7331095B2 (ja) 2018-10-06 2019-09-26 補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ

Country Status (6)

Country Link
US (1) US20210227243A1 (ja)
EP (1) EP3855741A4 (ja)
JP (1) JP7331095B2 (ja)
KR (1) KR102592279B1 (ja)
CN (1) CN111010568B (ja)
WO (1) WO2020069655A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113784146A (zh) * 2020-06-10 2021-12-10 华为技术有限公司 环路滤波方法和装置
EP3993414A1 (en) * 2020-11-03 2022-05-04 Ateme Method for image processing and apparatus for implementing the same
CN112911286B (zh) * 2021-01-29 2022-11-15 杭州电子科技大学 一种分像素插值滤波器的设计方法
US11750847B2 (en) * 2021-04-19 2023-09-05 Tencent America LLC Quality-adaptive neural network-based loop filter with smooth quality control by meta-learning
CN117280685A (zh) * 2021-05-28 2023-12-22 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质
WO2023019567A1 (zh) * 2021-08-20 2023-02-23 深圳传音控股股份有限公司 图像处理方法、移动终端及存储介质
US20230059035A1 (en) * 2021-08-23 2023-02-23 Netflix, Inc. Efficient encoding of film grain noise
US11924467B2 (en) * 2021-11-16 2024-03-05 Google Llc Mapping-aware coding tools for 360 degree videos
CN118235394A (zh) * 2021-11-29 2024-06-21 北京达佳互联信息技术有限公司 用于视频编解码的可逆滤波
WO2023153891A1 (ko) * 2022-02-13 2023-08-17 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
CN117201782A (zh) * 2022-05-31 2023-12-08 华为技术有限公司 滤波方法、滤波模型训练方法及相关装置
CN115277331B (zh) * 2022-06-17 2023-09-12 哲库科技(北京)有限公司 信号补偿方法及装置、调制解调器、通信设备、存储介质
CN115278248B (zh) * 2022-09-28 2023-04-07 广东电网有限责任公司中山供电局 一种视频图像编码设备
WO2024119488A1 (zh) * 2022-12-09 2024-06-13 Oppo广东移动通信有限公司 视频编解码方法、解码器、编码器及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004147328A (ja) * 2002-10-22 2004-05-20 Docomo Communications Laboratories Usa Inc 動き補償予測を用いたビデオ符号化のための適応補間フィルタシステム
JP2011523326A (ja) * 2008-06-12 2011-08-04 トムソン ライセンシング 動き補償の補間フィルタリング及び参照画像のフィルタリングのための局所的な適応フィルタリングの方法及び装置
JP2012070153A (ja) * 2010-09-22 2012-04-05 Kddi Corp 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
JP2012080162A (ja) * 2010-09-30 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
US20160366422A1 (en) * 2014-02-26 2016-12-15 Dolby Laboratories Licensing Corporation Luminance based coding tools for video compression

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1530829B1 (en) * 2002-07-09 2018-08-22 Nokia Technologies Oy Method and apparatus for selecting interpolation filter type in video coding
US8516026B2 (en) * 2003-03-10 2013-08-20 Broadcom Corporation SIMD supporting filtering in a video decoding system
CN100566413C (zh) * 2006-06-05 2009-12-02 华为技术有限公司 一种自适应插值处理方法及编解码模块
CN100551073C (zh) * 2006-12-05 2009-10-14 华为技术有限公司 编解码方法及装置、分像素插值处理方法及装置
EP2048886A1 (en) * 2007-10-11 2009-04-15 Panasonic Corporation Coding of adaptive interpolation filter coefficients
EP2136565A1 (en) * 2008-06-19 2009-12-23 Thomson Licensing Method for determining a filter for interpolating one or more pixels of a frame, method for encoding or reconstructing a frame and method for transmitting a frame
US8811484B2 (en) * 2008-07-07 2014-08-19 Qualcomm Incorporated Video encoding by filter selection
US9078007B2 (en) * 2008-10-03 2015-07-07 Qualcomm Incorporated Digital video coding with interpolation filters and offsets
KR101647376B1 (ko) * 2009-03-30 2016-08-10 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
CN101616325B (zh) * 2009-07-27 2011-05-11 清华大学 一种视频编码中自适应插值滤波计算的方法
CN101790092B (zh) * 2010-03-15 2013-02-06 河海大学常州校区 基于图像块编码信息的智能滤波器设计方法
JP5762243B2 (ja) * 2011-10-18 2015-08-12 日本電信電話株式会社 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム
BR112014033038A2 (pt) * 2012-07-02 2017-06-27 Samsung Electronics Co Ltd método de predição de vetor de movimento para inter predição, e aparelho de predição de vetor de movimento para inter predição
US10462480B2 (en) * 2014-12-31 2019-10-29 Microsoft Technology Licensing, Llc Computationally efficient motion estimation
EP3354028B1 (en) * 2015-09-25 2021-09-15 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation with selectable interpolation filter
US10341659B2 (en) * 2016-10-05 2019-07-02 Qualcomm Incorporated Systems and methods of switching interpolation filters
KR102595689B1 (ko) * 2017-09-29 2023-10-30 인텔렉추얼디스커버리 주식회사 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN108012157B (zh) * 2017-11-27 2020-02-04 上海交通大学 用于视频编码分数像素插值的卷积神经网络的构建方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004147328A (ja) * 2002-10-22 2004-05-20 Docomo Communications Laboratories Usa Inc 動き補償予測を用いたビデオ符号化のための適応補間フィルタシステム
JP2011523326A (ja) * 2008-06-12 2011-08-04 トムソン ライセンシング 動き補償の補間フィルタリング及び参照画像のフィルタリングのための局所的な適応フィルタリングの方法及び装置
JP2012070153A (ja) * 2010-09-22 2012-04-05 Kddi Corp 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
JP2012080162A (ja) * 2010-09-30 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
US20160366422A1 (en) * 2014-02-26 2016-12-15 Dolby Laboratories Licensing Corporation Luminance based coding tools for video compression

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MATSUO, SHOHEI ET AL.: "CE3: LCU-based adaptive interpolation filter", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH M, vol. JCTVC-G258 (version 2), JPN6022027018, 15 November 2011 (2011-11-15), ISSN: 0004981492 *
YAN, NING ET AL.: "A convolutional neural network approach for half-pel interpolation in video coding", 2017 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS), JPN6022027017, 28 May 2017 (2017-05-28), pages 1 - 4, XP033156121, ISSN: 0004981493, DOI: 10.1109/ISCAS.2017.8050458 *

Also Published As

Publication number Publication date
WO2020069655A1 (zh) 2020-04-09
US20210227243A1 (en) 2021-07-22
KR102592279B1 (ko) 2023-10-19
CN111010568A (zh) 2020-04-14
CN111010568B (zh) 2023-09-29
EP3855741A4 (en) 2021-11-24
EP3855741A1 (en) 2021-07-28
KR20210064370A (ko) 2021-06-02
JP7331095B2 (ja) 2023-08-22

Similar Documents

Publication Publication Date Title
JP7331095B2 (ja) 補間フィルタトレーニング方法及び装置、ビデオピクチャエンコーディング及びデコーディング方法、並びに、エンコーダ及びデコーダ
US20240048686A1 (en) Inter prediction method and apparatus
CN111107356B (zh) 图像预测方法及装置
JP7332703B2 (ja) クロマサブブロックのアフィンベースのインター予測のための方法及び装置
US11438578B2 (en) Video picture prediction method and apparatus
JP7346601B2 (ja) Mpmリストを構成する方法、クロマブロックのイントラ予測モードを取得する方法、および装置
US20220295071A1 (en) Video encoding method, video decoding method, and corresponding apparatus
US11425372B2 (en) Video picture decoding and encoding method and apparatus
JP7277586B2 (ja) モードおよびサイズに依存したブロックレベル制限の方法および装置
US20210360275A1 (en) Inter prediction method and apparatus
WO2020114394A1 (zh) 视频编解码方法、视频编码器和视频解码器
JP2023099561A (ja) オプティカルフローの改善の早期終了
CA3137980A1 (en) Picture prediction method and apparatus, and computer-readable storage medium
JP2022515555A (ja) インター予測の方法および装置、並びに対応するエンコーダおよびデコーダ
JP2023179684A (ja) ピクチャ予測方法および装置、およびコンピュータ可読記憶媒体
CN111432219B (zh) 一种帧间预测方法及装置
EP3910955A1 (en) Inter-frame prediction method and device
WO2020114393A1 (zh) 变换方法、反变换方法以及视频编码器和视频解码器

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230809

R150 Certificate of patent or registration of utility model

Ref document number: 7331095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150