JP2017507532A - 再帰的なブロック・パーティショニング - Google Patents

再帰的なブロック・パーティショニング Download PDF

Info

Publication number
JP2017507532A
JP2017507532A JP2016543655A JP2016543655A JP2017507532A JP 2017507532 A JP2017507532 A JP 2017507532A JP 2016543655 A JP2016543655 A JP 2016543655A JP 2016543655 A JP2016543655 A JP 2016543655A JP 2017507532 A JP2017507532 A JP 2017507532A
Authority
JP
Japan
Prior art keywords
region
block
sub
regions
encoding
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
JP2016543655A
Other languages
English (en)
Other versions
JP6342500B2 (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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2017507532A publication Critical patent/JP2017507532A/ja
Application granted granted Critical
Publication of JP6342500B2 publication Critical patent/JP6342500B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

本開示の態様により、画像を領域に分割する工程と、各領域にパーティション・タイプを適用する工程と、各領域に対し適用されたパーティション・タイプに基づき各領域に対するレート歪みコストを決定する工程と、各領域に対し適用されたパーティション・タイプに基づき各領域に対する符号化方式を決定する工程と、各領域に対し決定されたレート歪みコストおよび符号化方式に基づき、各領域を別個に符号化する工程と、を行うためのシステムおよび方法が提供される。

Description

本記載は、動画圧縮における再帰的なブロック・パーティショニングとそのエントロピー符号化とのための様々なコンピュータ・ベース技術に関する。
一般に、ビデオ・コーデックは、デジタルビデオの圧縮/伸張を可能にする。通常、ビデオ品質と、ビデオを表現するために必要なデータの量(すなわち、ビット・レート)と、符号化/復号アルゴリズムの複雑性と、複数の他の因子との間には、複雑なバランスが存在する。ビデオ・コーデックでは、通常、ブロック符号化が用いられる。ブロック・サイズが大きいほど符号化に関する平均オーバヘッド・コストは少なくなる一方、ブロック・サイズが小さいほど、予測をより柔軟として、残差のエネルギーを減少させることが可能となる。レート歪みコストを最適化するようにブロック・サイズ選択を取り扱う場合、従来のビデオ・コーデックは不十分であるものの、比較的単純かつ簡潔なコーデック構造が維持される。最近では、平均オーバヘッド・コストと予測品質との間のトレードオフを最適化する共通戦略は、所与の領域について、エンコーダがすべての可能なブロック・サイズをテストし、レート歪みコストを最小とするものを選択することである。この共通戦略では、選択されたブロック・サイズをビットストリームへと明示的に符号化する。
残念ながら、従来の符号化では、そうしたすべてのブロック・サイズを通じた大規模な検索によって、極めて複雑なビデオ・コーデック実装が生じる。さらに、ブロック・サイズ情報を明示的に符号化すると空間的相関が十分に利用されず、圧縮効率が低くなる場合がある。このように、ビデオ・コーデックを実装する処理の最適化および/または改良を行う必要が存在する。
本開示の態様により、実行時に1つ以上のプロセッサに処理を実行させる命令を記憶するための非一時的なコンピュータ可読記憶媒体を提供する。この命令は、画像を複数の領域に分割する工程と、前記複数の領域の各領域に対し複数のパーティション・タイプを適用する工程と、を行うように構成されている命令を含んでよい。この命令は、前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対するレート歪み(例えば、レート歪みコスト)を決定する工程を行うように構成されている命令を含んでよい。この命令は、前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対する符号化方式を決定する工程を行うように構成されている命令を含んでよい。この命令は、前記複数の領域の各領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、前記複数の領域の各領域を別個に符号化する工程を行うように構成されている命令を含んでよい。
本開示の態様により、実行時に1つ以上のプロセッサに処理を実行させる命令を記憶するための非一時的なコンピュータ可読記憶媒体を提供する。この命令は、ビデオ・フレームを複数のピクセル・ブロックに分割する工程と、前記複数のピクセル・ブロックの各ピクセル・ブロックに対し複数のパーティション・タイプを適用する工程と、を行うように構成されている命令を含んでよい。この命令は、前記複数のピクセル・ブロックの各ピクセル・ブロックに対し適用された前記複数のパーティション・タイプのうちの第1のパーティション・タイプについて、前記第1のパーティション・タイプの各ピクセル・ブロックを複数のピクセル・サブブロックに分割し、前記複数のピクセル・サブブロックの各ピクセル・サブブロックに対し前記複数のパーティション・タイプを再適用する工程を行うように構成されている命令を含んでよい。この命令は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対するレート歪みコストを決定する工程を行うように構成されている命令を含んでよい。この命令は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対する符号化方式を決定する工程を行うように構成されている命令を含んでよい。この命令は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対し決定された前記レート歪みコストと前記符号化方式とに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックを別個に符号化する工程を行うように構成されている命令を含んでよい。
本開示の態様により、システムは1つ以上のプロセッサおよびメモリを備えてもよい。このシステムは、前記1つ以上のプロセッサに、画像を複数の領域に分割する工程と、前記複数の領域の各領域に対し複数のパーティション・タイプを適用する工程と、を行わせるように構成されているエンコーダを備えてよい。このエンコーダは、前記1つ以上のプロセッサに、前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプのうちの1つ以上のパーティション・タイプについて、前記1つ以上のパーティション・タイプの各領域を複数のサブ領域に分割し、前記複数のサブ領域の各サブ領域に対し前記複数のパーティション・タイプを再適用する工程を行わせるように構成されてよい。このエンコーダは、前記1つ以上のプロセッサに、各領域および各サブ領域に対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各領域および各サブ領域に対するレート歪みコストを決定する工程を行わせるように構成されてよい。このエンコーダは、前記1つ以上のプロセッサに、各領域および各サブ領域に対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各領域および各サブ領域に対する符号化方式を決定する工程を行わせるように構成されてよい。このエンコーダは、前記1つ以上のプロセッサに、各領域および各サブ領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、各領域および各サブ領域を別個に符号化する工程を行わせるように構成されてよい。
1つ以上の実装の詳細について、添付の図面および以下の記載において述べる。他のフィーチャは、この記載および図面、および特許請求の範囲から明らかである。
本開示の態様による、動画圧縮における再帰的なブロック・パーティショニングおよびそのエントロピー符号化のための様々なコンピュータ・ベースの技術を実装するための一例のシステムを示すブロック図。 本開示の態様による図1Aに示すブロックの一部に関連付けられているコンポーネント例を示すブロック図。 本開示の態様による一例のエンコーダを示すブロック図。 本開示の態様による一例のデコーダを示す別のブロック図。 本開示の態様による再帰的なブロック・パーティショニング用の一例の技術を示すブロック図。 本開示の態様によるコンテキスト・ベース・エントロピー符号化用の一例の技術を示すブロック図。 本開示の態様による、エンコーダにおいて表を生成するための方法を示す処理フロー。 本開示の態様による、再帰的なブロック・パーティショニングのための方法例を示す処理フロー。 本開示の態様による、再帰的なブロック・パーティショニングのための方法例を示す処理フロー。 一実装による確率表の一例を示す図。 本開示の態様による、再帰的なブロック・パーティショニング用の別の方法例を示す処理フロー。
図1Aは、本開示の態様による、動画圧縮における再帰的なブロック・パーティショニングおよびそのエントロピー符号化のための様々な技術を実装するための一例のシステム100を示す図である。一部の実装では、画像は、複数の領域(各々が、例えば、64×64ピクセルなど、n×nピクセルのサイズを有する領域)に分割されてもよい。さらに、各領域は、最適な符号化解を発見するためにレート歪みループを通じてテストされてもよく(画像が領域またはピクセル・ブロック・サイズに分割されるまたはパーティショニングされる方式、ブロック毎予測モード、各ブロックに対し適用される変換タイプを含む)、次いで、各領域がラスタ順にビットストリームへと符号化すなわちエンコードされてもよい。一部の実装では、画像は、64×32ピクセルなど、n×mピクセルのサイズを有する領域に分割されてもよい。
レート歪みループは、動画圧縮におけるビデオ品質を向上させるために用いられてもよく、ビデオを符号化するために用いられるデータの量(データレート)に対する歪み(ビデオ品質の損失)の量を比較し決定することを含んでもよい。一部の実装では、レート歪みループは、符号化(符号化されたビデオのファイル・サイズと質とが解による影響を同時に受ける)を改良するために用いられてもよい。
図1Aの例では、システム100は、再帰的なブロック・パーティショニングを実装するためのコンピュータ・システムを備える。図1Aの例では、エンコーダ120は、入力ビデオ・ストリームを用いて、符号化または圧縮されたビットストリームを提供するフォワードパスにおいて様々な機能を実行するための1つ以上のステージを備える。本明細書にさらに記載するように、入力ビデオ・ストリームの画像またはビデオ・フレームは複数の領域に分割されてもよい。ここで、各領域は最適な符号化解を発見するためにレート歪みループを通じてテストまたは評価されてよく、次いで、各領域はラスタ順にビットストリームへ符号化されてよい。
図1Aの例では、デコーダ124は、符号化または圧縮されたビットストリームから出力ビデオ・ストリームを提供する様々な機能を実行するための1つ以上のステージを備える。本明細書にさらに記載するように、符号化または圧縮されたビットストリームは、出力ビデオ・ストリームを提供するように復号するためのデコーダに対し提供されてよい。一部の実装では、デコーダ124は、エンコーダ120の補体(complement)であり、したがって、デコーダ124によって用いられる復号処理は、エンコーダ120によって用いられる符号化処理の補体である。エンコーダ120およびデコーダ124の動作に関するさらなる詳細について、例えば、図2〜図5に関連して以下に記載する。
図1Aの例では、コンピューティング・デバイス104は、ビデオ・ソース114およびネットワーク118と通信するサーバまたはユーザデバイスを含む。一部の実装では、コンピューティング・デバイス104はビデオ・インタフェース130を介してビデオ・ソース114からビデオ・データ・ストリームを受信し、このビデオ・データ・ストリームをエンコーダ120を介して符号化し、符号化されたビデオ・データ・ストリームを、ネットワーク・インタフェース134を介してネットワーク118を通じて送信するように構成されてもよい。エンコーダ120は、ビデオ・ソース114のブロック・パーティショニングおよびそのエントロピー符号化に基づき最適化される符号化処理を用いてもよい。それによって最適化が生じる1または複数の符号化処理の例について、さらに本明細書に記載する。
一部の実装では、コンピューティング・デバイス104は、ネットワーク・インタフェース134を介してネットワーク118からビデオ・データ・ストリームを受信し、このビデオ・データ・ストリームをデコーダ124を介して復号し、復号されたビデオ・データ・ストリームを、ビデオ・インタフェース130を介してディスプレイ・デバイス150上に表示するように構成されてもよい。デコーダ124は、ビデオ・データ・ストリームのブロック・パーティショニングおよびそのエントロピー復号に基づき最適化される復号処理を用いてもよい。1または複数の復号処理の例について、さらに本明細書に記載する。
ビデオ・ソース114は、静止画像、ビデオ・フレームなどを含むビデオ画像の提供、キャプチャ、および/または送信を行うことが可能な任意のデバイスであってよい。例えば、ビデオ・ソース114は、コンピュータ・サーバ、ラップトップ・コンピュータ、ノート型コンピュータ、タブレット・コンピュータ、モバイルフォン、携帯情報端末、デジタル・カメラ、デジタル・カムコーダ、ウェブカメラ、またはビデオ画像を含む画像の提供、キャプチャ、および/または送信を行うことの可能な任意の他のデバイスを含んでよい。一部の実装では、コンピューティング・デバイス104は、複数のビデオ・ソース114からオーディオおよび/またはビデオを受信し、それらのソースを1つのビデオ・データ・ストリームへと組み合わせてよい。
一部の実装では、コンピューティング・デバイス104は、ネットワーク118の1つのノードにあってよく、ネットワーク118の1つ以上の他のノードと直接的また間接的に通信を行うように動作可能であってよい。例えば、コンピューティング・デバイス104は、コンピューティング・デバイス104がネットワーク118を用いてユーザに対する情報を送信しディスプレイ・デバイス152上に表示するように、ネットワーク118を介して1つ以上のクライアント・デバイスと通信を行うように動作可能なウェブ・サーバを含んでよい。本明細書に記載の概念および技術について一般にコンピューティング・デバイス104を参照して記載しているが、開示の様々な態様は、符号化/復号動作を実装可能な実行することができる任意のデバイスおよび/またはコンピューティング・ノードに対し適用されてよい。
一部の実装では、システム100は、例えば、個人識別可能な情報の匿名化、データのアグリゲーション、機密情報のフィルタリング、暗号化、個人属性を除去するための機密情報のハッシュ化またはフィルタリング、情報の記憶の期間制限、および/またはデータ利用または共有の制限を含む、データのプライバシー保護を提供するように構成されてもよい。このように、個々のユーザデータが明かされないようにデータが匿名化され、集約されてよい。
図1Aの例では、ビデオ・インタフェース130は、コンピューティング・デバイス、周辺機器、および様々なタイプの電気器具の間の接続用に指定される物理的特性とパラメータとのタイプを定義する多くの異なるオーディオおよびビデオ規格に関係する入力用のハードウェアおよび/またはソフトウェア・インタフェースを提供するように構成されてよい。これらのオーディオおよびビデオ規格は、信号の転送を成功させるためのアナログおよびデジタルのビデオ・データ転送プロトコルを定義してもよい。例えば、デジタル・インタフェースは、入力ビデオ・ストリームなどのデジタル・ビデオ・コンテンツの転送の目的で、コンピュータなどのコンピューティング・デバイスにビデオ・ソースを接続するために用いられてもよい。一部の例では、ビデオ・インタフェース130は、ビデオ・ソース114から入力ビデオ・ストリームを受信し、それをエンコーダ120に符号化のために提供するように設計されてよい。
図1Aの例では、ネットワーク・インタフェース134は、エンコーダ120によって符号化されるような送信ビデオ・データ・ストリームを管理するように構成されてよい。さらに、ネットワーク・インタフェース134は、デコーダ124によって復号されるような受信ビデオ・データ・ストリームを管理するように構成されてよい。ネットワーク・インタフェース134は、ビデオ・データ・ストリームを送受信するためのネットワーク・パラメータおよびネットワーク・プロトコルを構成すべく1つ以上のプロセッサ110から命令を受信するように構成されてよい。
ネットワーク118は、様々な構成を含んでよく、インターネット、ワールド・ワイド・ウェブ、イントラネット、仮想プライベート・ネットワーク、ローカル・イーサネット(登録商標)・ネットワーク、1つ以上の企業に対してプロプライエタリな通信プロトコルを用いるプライベート・ネットワーク、セルラー・ネットワークおよびワイヤレス・ネットワーク(例えば、Wi−Fi)、インスタント・メッセージング、ハイパーテキスト転送プロトコル(「HTTP」)、簡易メール転送プロトコル(「SMTP」)、ならびにそれらの様々な組み合わせを含む、様々なプロトコルを用いてよい。さらに、システム100は、ネットワーク118を介して通信する接続された複数のコンピュータからなる、より大きなシステムの一部であってよい。
上述の通り、情報が送信または受信される場合に一定の利点が得られるが、しかしながら、本明細書に記載のシステムおよび方法の他の態様は情報の伝送の任意の特定の方式に限定されない。例えば、一部の実装では、情報は光ディスクまたはポータブル・ドライブなどの媒体を介して送られてもよい。他の実装では、情報は電子的でないフォーマットにより送信されてもよく、手動でシステムに入力されてもよい。
図1Aの例では、システム100は、再帰的なブロック・パーティショニングを実装するためのコンピュータ・システムを備える。このコンピュータ・システムは、本明細書に記載されるものなど、動画圧縮における再帰的なブロック・パーティショニングとそのエントロピー符号化とのための様々なコンピュータ・ベース技術を実装するように設計されている専用機械として構成され得るコンピューティング・デバイス104に関連付けられていてもよい。この意味において、コンピューティング・デバイス104は、1つ以上のプロセッサ110、1つ以上のメモリ112(例えば、非一時的なコンピュータ可読記憶媒体)、1つ以上のデータベース140、電源、周辺機器、および様々な他のコンピューティング要素および/またはコンポーネント(図1Aに具体的に示されていない場合もある)を含む、任意の規格要素および/またはコンポーネントを備えてよい。さらに、システム100は、ユーザ・インタフェース(UI)152(例えば、グラフィカル・ユーザ・インタフェース(GUI)など)を提供するために用いられ得るディスプレイ・デバイス150(例えば、モニタまたは他のディスプレイ)に関連付けられてもよい。UI152は、システム100を利用するユーザから入力を受け取るために用いられてもよい。
このように、システム100を実装するのに有用であり得るシステム100の様々な他の要素および/またはコンポーネントが追加されてもよく、含められてもよい。さらに、様々な実装では、コンピューティング・デバイス104は、コンピュータ・サーバ、ラップトップ・コンピュータ、ノート型コンピュータ、タブレット・コンピュータ、モバイルフォン、携帯情報端末または、画像(静止画像およびビデオ画像を含む)の処理(例えば、符号化、復号など)および/または送信を行うことの可能な任意の他のデバイスなど、任意のタイプのデバイスを含んでよい。
図1Aには単一の機能ブロック内における1つ以上のプロセッサ110および1つ以上のメモリ112を機能的に示しているが、しかしながら、この1つ以上のプロセッサ110およびこの1つ以上のメモリ112は、同じ物理的なハウジング内に置かれてもよく置かれなくてもよい複数のプロセッサおよびメモリを備えてよいことが理解される。このように、プロセッサ、コンピュータ、および/またはメモリに対する参照は、プロセッサ、コンピュータ、および/または並列に動作してもよく動作しなくてもよいメモリの集合に対する参照を含んでもよい。
図1Aの例では、システム100は、コンピューティング・デバイス104と、コンピュータ可読媒体112上に記録されており1つ以上のプロセッサ110によって実行可能な命令を含んでよい。さらに、一実装では、システム100は、ユーザに出力を提供するためのディスプレイ・デバイス150を備えてよく、ディスプレイ・デバイス150は、ユーザから入力を受け取るためのUI152を備えてもよい。
図1Aの例では、システム100は、幾つかの分離した機能を表す様々な機能ブロックまたはモジュールを用いて示されていることが認められる。しかしながら、そうした図示は明確さおよび簡便さを目的として提供されており、したがって、様々な機能が記載のブロックまたはモジュール内において重なったり組み合わされたりしてもよいこと、および/または図1Aの例に具体的に示されていない1つ以上のブロックまたはモジュールによって実装されてもよいことが認められる。このように、図1Aのシステム100に有用であると考えられ得る従来の機能は、そうした従来の要素が明確さおよび簡便さの目的のため明示的に示されていない場合であっても、含まれてよいことが認められる。
図1Bは、本開示の態様による図1Aに示すブロックの一部に関連付けられているコンポーネント例を示すブロック図である。特に、図1Bには、図1Aに示したメモリ112およびエンコーダ120に関連付けられているコンポーネント例を示す。
図1Bの例では、メモリ112は、確率表160を含んでよい。各確率表160は、1つ以上の確率値(例えば、CN1、CN2、CN3、CN4)に関連付けられているか、1つ以上の確率値で満たされているか、その両方である。様々な実装では、メモリ112は、任意の数の確率表(確率表160など)と、任意の数の関連付けられている確率値とを含んでよい。一部の実装では、確率値のうちの1つ以上は、1つ以上の他の確率表(図示せず)に関係してもよい。確率表160に含まれる確率値のうちの1つ以上は、1組のビデオ・フレームを含むビデオ・シーケンスにおける各フレームに対し修正/更新されてよい。確率値CN1、CN2、CN3、CN4は、ビデオ・フレーム内のブロックの符号化に関連して特定のパーティション・タイプが用いられる確率に各々関連付けられることが可能である。
さらに、図1Bの例では、エンコーダ120は、ビデオ・シーケンス検出器162、確率計算器164、およびパーティション・モジュール165を含む、1つ以上のコンポーネント(例えば、処理コンポーネント)を備えてよい。一部の実装では、ビデオ・シーケンスの各ビデオ・フレームは小さな領域のグリッドに分割されてよい。ここで、すべての領域が最適な符号化解を発見するべくレート歪み最適化ループを通じてテストされて、次いで、ラスタ順にビットストリームへと符号化されてよい。
ビデオ・シーケンス検出器162は、ビデオ・フレームのシーケンスにおける第1のフレームを識別するように構成されてよい。例えば、ビデオ・シーケンス検出器162は、新たなビデオ・シーケンスを検出し、確率計算をリセット/再始動し、確率表を更新/修正するように構成されてよい(例えば、ビデオ・シーケンスの始め(第1のフレーム)にて確率表をデフォルトリセットすることを含む)。一部の実装では、ビデオ・シーケンス検出器162は、ビデオ・シーケンスの第1のフレームを検出するとき、確率分布番号および/または値を変化させるように構成されてよい。
確率計算器164は、ビデオ・フレームのシーケンスにおける第1のフレーム(または続くフレーム)の符号化に基づき、パーティション・タイプに関連付けられている確率値(例えば、確率値CN1)を更新された確率値に修正/更新するように構成されてよい。一部の実装では、各確率表160の確率値は、ビデオ・シーケンスにおける各フレームに対する符号化解を最適化するように修正/更新されてよい。
パーティション・モジュール165は、メモリ112に記憶されている確率表160に基づき、ビデオ・フレームのシーケンスにおける第1のフレームを符号化するように構成されてよい。一部の実装では、確率表160は、1つ以上のパーティション・タイプに関連付けられている1つ以上の確率値を含んでよい。さらに、パーティション・モジュール165は、確率表160に含まれている更新された確率値に基づき、ビデオ・フレームのシーケンスにおける第2のフレームを符号化するように構成されてよい。一部の実装では、各フレームは、各フレームがより小さなブロック・サイズへ分割される方式、ブロック毎予測モード、各ブロックに対し適用される変換タイプなどを含め、最適な符号化解を決定するように再帰的に符号化されてよい。
パーティション・モジュール165は、近隣ブロック・アナライザ166およびパーティション・セレクタ167を含む、1つ以上のコンポーネントを含んでよい。一部の実装では、近隣ブロック・アナライザ166は、左の近隣ブロックおよび上の近隣ブロック(および/または異なる近隣)を含む近隣のブロックを識別するように構成されてよく、パーティション・セレクタ167は、近隣ブロックのパーティショニングに関連して現在のブロックの最適なパーティショニングを識別することを含むさらなる解析のために1つ以上の近隣ブロックに様々なパーティション・タイプを適用するように構成されてよい。
本開示の態様では、エンコーダ120は、近隣ブロックを解析するためにコンテキスト・ベース・エントロピー符号化アプローチを利用し、符号化解を最適化するためにパーティション・タイプを選択するように構成されてよい。例えば、パーティション・タイプ符号化に対する確率モデルは、次の因子のうちの1つ以上に基づく条件付きであってもよい:現在のブロック・サイズ(例えば、64×64、32×32、16×16、8×8、4×4、2×2など)、上の近隣ブロックのパーティション・タイプ、および左の近隣ブロックのパーティション・タイプ。各条件付き確率モデルはバックワード適応型であってもよく、フレーム毎ベースで更新されてもよい。このコンテキスト・ベース・エントロピー符号化技術は、空間的相関性(連続する領域においてパーティション・タイプが一貫する傾向)を効率的に利用するために用いられてよく、様々な性能向上を達成するために用いられてよい。
全ての可能なブロック・サイズを通じた従来の大規模な検索アプローチと異なり、本開示のコンテキスト・ベース・エントロピー符号化技術は、最適なレート歪み検索ならびに最適な符号化および復号する処理のために再帰的なブロック・パーティショニングを用いるように構成されている。レート歪み最適化フェーズ中、すべての領域/ブロックは、例えば、垂直(vert)パーティション、水平(horz)パーティション、無パーティション(none)、およびより小さな領域/ブロックへの分割(split)パーティションなど、複数のパーティション・タイプを通じてテストされてよい。さらに、得られるサブブロックの各々は、次いで、それらの(ローカルな)最適符号化解を見出すべく、様々な可能な予測モード、フィルタ・タイプ、変換サイズなどを通じて独立にテストされる。本開示のこれらのおよび様々な他の態様について、本明細書においてより詳細に記載する。
図2は、本開示の態様による一例のエンコーダ200を示すブロック図である。エンコーダ200は、メモリ(例えば、メモリ112(図1Aに示す))に記憶されているコンピュータ・ソフトウェア・プログラムを提供することによってなど、コンピューティング・デバイス、サーバ、送信局などにより実装されてよい。エンコーダ200は、入力ビデオ・ストリーム210を用いて、符号化または圧縮されたビットストリーム230を提供するフォワードパス208(例えば、点線のフローによって示されるように)により様々な機能を実行するための1つ以上のステージを含んでよい。様々な実装では、フォワードパス208は、エンコーダ200に対する入力など入力ビデオ・ストリーム210、それに続く、イントラ/インター予測ステージ214(例えば、予測信号は次のステージのための残差を生成するように元のビデオ信号から減じられ得る)、変換ステージ218、量子化ステージ222、およびエントロピー符号化ステージ226を含む。
エンコーダ200は、将来のブロックの符号化のためにフレームを再構築するための再構築経路232(例えば、点線の接続によって示すような)を含んでよい。一部の実装では、これによって、エンコーダ200およびデコーダ300(例えば、図3に示すような)の両方がエンコーダ200によって提供される、符号化または圧縮されたビットストリーム230を復号するために同じ参照を用いることが保証される。図2に示すように、エンコーダ200は、再構築経路232において様々な機能を実行するための1つ以上の追加のステージを含んでよい。様々な実装では、再構築経路232は、逆量子化ステージ234、逆変換ステージ238、再構築ステージ242、およびループ・フィルタリング・ステージ246を含んでよい。他の実装では、エンコーダ200の構造のバリエーションが、入力ビデオ・ストリーム210を符号化するために用いられてよい。
入力ビデオ・ストリーム210が符号化のためにエンコーダ200に対し送られる場合、入力ビデオ・ストリーム210の各フレームはブロックのユニットにより処理されてよい。一部の実装では、イントラ/インター予測ステージ214にて、各ブロックはフレーム内予測(イントラ予測とも呼ばれる)またはフレーム間予測(インター予測とも呼ばれる)を用いて符号化されてよい。いずれの場合も、予測ブロックが形成(例えば、定義)されてよい。イントラ予測の場合、予測ブロックは、以前に符号化され再構築された現在のフレーム中のサンプルから形成されてよい。インター予測の場合、予測ブロックは、1つ以上の以前に構築された基準フレーム中のサンプルから形成されてよい。予測ブロックは、残差ブロック(残差とも呼ばれる)を提供するように、イントラ/インター予測ステージ214にて現在のブロックから減じられてよい。変換ステージ218は、変換係数(例えば、周波数領域の)へと残差を変換するように構成されてよい。
さらに、一部の実装では、量子化ステージ222は、量子化器の値または量子化レベルを用いて変換係数を離散的な量子値(量子化された変換係数とも呼ばれる)へと変換するように構成されてよい。量子化された変換係数は、次いで、エントロピー符号化ステージ226によってエントロピー符号化されてよい。エントロピー符号化された係数は、ブロックを復号するために用いられる他の情報(例えば、用いられる予測のタイプ、運動ベクトル、および量子化器の値を含む)と一緒に、次いで、符号化または圧縮されたビットストリーム230に出力される。様々な実装では、圧縮されたビットストリーム230は、例えば、可変長符号(VLC)、算術符号化など、様々な技術を用いてフォーマットされてよい。圧縮されたビットストリーム230は、符号化されたビデオ・ストリームまたは符号化された出力ビデオ・ストリームとも呼ばれる。エントロピー符号化ステージ226は、本明細書に記載の方式により、1つ以上の確率表を生成するとともに、この確率表を満たすための1つ以上の確率値を生成するように構成されてよい。
一部の実装では、ビデオ・コーデックは、ブロック・ベースの符号化を用いてよい。ここで、各フレームはブロックのグリッドへと分割され、各ブロックは、次いで、インター/イントラ・フレーム予測とそれに続く空間変換およびまた量子化を用いて、独立に符号化される。大きなブロック・サイズでは、予測モード、基準フレーム・インデックス、運動ベクトルなどの符号化時により少ない平均オーバヘッド・コストが得られる一方、小さなブロック・サイズでは、予測がより柔軟となるので残差のエネルギーが低減される。開示の態様は、比較的単純かつ簡潔なコーデック構造を維持しつつ、総レート歪みコストのトレードオフを最適化するべくブロック・サイズ選択を効率的に取り扱う方法および装置を提供するように構成されてよい。さらに、符号化性能向上のために空間的相関性を完全に利用するべく各選択されたブロック・サイズを符号化/エンコードするための補体のエントロピー符号化技術がエンコーダ200において提供される。これについて本明細書にさらに記載する。
平均オーバヘッド・コストと予測品質との間のトレードオフを最適化するまたはバランスさせる1つの戦略は、所与の領域について、エンコーダがあらゆる可能なブロック・サイズをテストし、レート歪みコストを最小とする1つ以上のブロック・サイズを選択することである。さらに、エンコーダは、次いで、選択されたブロック・サイズをビットストリームへと明示的に符号化してよい。そうしたあらゆるブロック・サイズを通じた大規模な検索によって、極めて複雑なコーデック実装がなされる。さらに、ブロック・サイズ情報を明示的に符号化すると空間的相関が十分に利用されず、圧縮効率を減少させる場合がある。
しかしながら、開示の態様では、ブロック・サイズを最適化する際により大きな柔軟性を可能とするとともに、比較的単純かつ簡潔なコーデック実装を維持する、再帰的なブロック・パーティショニングが用いられる。一部の実装では、再帰的なブロック・パーティショニングによって、実際のブロック・サイズの符号化がパーティション・タイプの符号化に翻訳され(さらに本明細書に記載する)、これによってコンテキスト・ベース・エントロピー符号化と一緒に、改良された性能向上が提供される。可能なブロック・サイズに関する柔軟性は、単純かつ簡潔なコーデック構造を維持することによって、圧縮効率を向上させることができる。さらに、一部の実装では、パーティション・タイプのコンテキスト・ベース・エントロピー符号化によって、符号化性能を向上させることができる。開示の態様は、ビデオ・コーデックおよび/または様々な動画圧縮技術(例えば、コーデック設計)の研究開発に適用されてもよい。またさらに、開示の態様は、ビデオ・ストリーミングおよび/または静止画像の符号化に関連する技術に対し適用されるか、適用可能であるか、またはその両方であってよい。
図3は、本開示の態様による一例のデコーダ300を示すブロック図である。一部の実装では、デコーダ300は、エンコーダ200の再構築経路232と同様であってよい。デコーダ300は、符号化または圧縮されたビットストリーム310から出力ビデオ・ストリーム342を提供する様々な機能を実行するための1つ以上のステージを備えてよい。デコーダ300は、エントロピー復号ステージ314、逆量子化ステージ318、逆変換ステージ322、再構築ステージ326、ループ・フィルタリング・ステージ330、イントラ/インター予測ステージ334、およびデブロッキング・フィルタリング・ステージ338を備えてよい。他の実装では、デコーダ300の構造のバリエーションが、圧縮されたビットストリーム310を復号するために用いられてよい。
圧縮されたビットストリーム310が復号のためにデコーダ300に提供される場合、圧縮されたビットストリーム310内のデータ要素は、1組の量子化された変換係数を生成するように、エントロピー復号ステージ314によって復号されてよい(例えば、VLC、算術符号化などを用いて)。逆量子化ステージ318は、量子化された変換係数を逆量子化するように構成されてよく、逆変換ステージ322は、逆量子化された変換係数を逆変換して微分残差を提供するように構成されてよい(エンコーダ200の逆変換ステージ238によって生成されるものと同一であってよい)。一部の実装では、圧縮されたビットストリーム310から復号されるヘッダ情報を用いて、デコーダ300は、イントラ/インター予測ステージ334を用いて、エンコーダ200においてイントラ/インター予測ステージ214によって生成されるのと同じ予測ブロックを生成するように構成されてよい。再構築ステージ326では、予測ブロックは、再構築されたブロックを生成するために微分残差に追加されてよい。ループ・フィルタリング・ステージ330は、ブロック化アーチファクトを減少させるべく、再構築されたブロックに適用されてよい。一部の実装では、様々な他のフィルタリングが、再構築されたブロックに対し適用されてよい。例えば、デブロッキング・フィルタリング・ステージ338が、出力を与える(例えば、出力ビデオ・ストリーム342として)ブロック化ひずみを減少させるべく、再構築されたブロックに対し適用されてよい。出力ビデオ・ストリーム342は、復号されたビデオ・ストリームまたは復号された出力ビデオ・ストリームとも呼ばれる。
図4は、本開示の態様による再帰的なブロック・パーティショニング400用の一例の技術を示すブロック図である。図4において、一部の実装では、画像410(例えば、ビデオフレーム)は領域のグリッドなど複数の領域414に分割されてよく、ここで、各領域418は少なくともその画像自体より小さい(例えば、サイズ64×64ピクセルの各領域)。この例では、各領域418は最適な符号化解を評価および発見するためにレート歪みループによってテストされ(画像410をより小さなブロック・サイズに分割またはパーティショニングする方式、ブロック毎予測モード、各ブロックに対し適用される変換タイプなどを含む)、次いで、ラスタ順にビットストリームへと符号化されてよい。
最適な符号化方式に関して、所与の領域について、エンコーダは、1つの、幾つかの、または全てのパーティション(分割)タイプをテストするように構成されてよく、各パーティション(分割)タイプは、互いに排反であり、かつ、一緒に全領域をカバーする1組のサブブロックを生じる。エンコーダは、次いで、各サブブロックに対し、予測モード、参照ソース、フィルタ・タイプ、変換タイプ、およびサイズなどを含む、様々な可能な符号化モードをテストして、このサブブロックのレート歪みコストを最小化する符号化モードまたは閾値条件(例えば、閾値)を満たすレート歪みコストを有する符号化モードを得てよい。所与の領域の各パーティション・タイプは、ここで、レート歪みコスト値(各サブブロックの最低レート歪みコストの合計として算出され得る)に関連付けられてもよい。したがって、エンコーダは、最小の総コストを与えるパーティション・タイプを選んで、すなわち、選択してよい。
全ての可能なブロック・サイズを通じた従来の大規模な検索と異なり、本開示の態様は、本明細書に記載のように、レート歪み検索ならびに符号化および復号する処理のために再帰的なブロック・パーティショニングのアプローチ用に構成されてよい。様々な実装では、レート歪み最適化フェーズ中、各領域418は、例えば、無パーティション(none)パーティション・タイプ430、水平(horz)パーティション・タイプ432、垂直(vert)パーティション・タイプ434、および各領域438を4つのより小さな領域すなわちサブ領域438(サブブロックとも呼ばれる)に分割する(split)スプリット・パーティション・タイプ436を含む4つのパーティション・タイプのうちの少なくとも1つなど、複数のパーティション・タイプ426を通じてテストされてよい。図4に示すように、得られるサブ領域438は、次いで、それらの(ローカルな)最適符号化解を見出すべく、1つ以上の可能な予測モード、フィルタ・タイプ、変換サイズなどを通じて独立にテストされてよい。これは、画像410の再帰的なパーティショニングを意味する。
一部の実装では、パーティション演算は正方形ブロックに適用されてよい。例えば、1つの領域は、サイズN×Nを含んでよく、ここでNは偶数(例えば、2の累乗)である。4つのパーティション・タイプは、次のサブブロック・サイズを与えてよい:
NONE −> 1つのN×Nサブブロック
SPLIT −> 4つの(N/2)×(N/2)サブブロック
VERTICAL −> 2つの(N/2)×Nサブブロック
HORIZONTAL −> 2つのN×(N/2)サブブロック。
一部の実装では、第1のパーティション・タイプは、同様の寸法の4つのサブブロックを有するスプリット・パーティション・タイプ436を含み、第2のパーティション・タイプは、水平方向に並べられた同様の寸法の2つのサブブロックを有するホライゾンタル・パーティション・タイプ432を含み、第3のパーティション・タイプは、垂直方向に並べられた同様の寸法の2つのサブブロックを有するバーティカル・パーティション・タイプ434を含み、第4のパーティション・タイプは、単一のブロックを有する無パーティション・タイプ430を含んでよい。
一部の実装では、none430、horz432、およびvert434を含むパーティション・タイプ426は、終点ノード(すなわち、サブブロック内にさらなるパーティショニングが適用されない)と考えられてよい。スプリット・パーティション・タイプ436の各サブ領域438は、次いで、none430、horz432、vert434、およびsplit456を含む4つのパーティション・タイプ446の各々を通じて再帰的にテストされる出発点と考えられてよい。この例では、第1の区分414の各領域418は、4つの領域からなるグリッドなど、第2の区分446における複数のサブ領域438に分割されてよい。この再帰的なパーティショニングは、スプリット・パーティション・タイプの各反復について、任意の回数繰り返されてよい。一部の実装では、この再帰的なパーティショニングは64×64ピクセル・ブロックで開始し、続く各再帰的パーティショニングでは、32×32ピクセル・ブロック、16×16ピクセル・ブロック、8×8ピクセル・ブロック、および4×4ピクセル・ブロックが続く。一部の実装では、この再帰的なパーティショニングにおいて、4×4ピクセル・ブロックから2×2ピクセル・ブロックに続いてよい。他の実装では、再帰的なパーティショニングは、任意のn×nピクセル・ブロックで開始し、任意のn×nピクセル・ブロックで終了してよい。符号化モード情報(例えば、基準フレーム・インデックス、フィルタ・タイプなど)は、随意で、一定のブロック・サイズ・レベルを超えて割り当てられるように制約されてよいことが理解される。
最適な符号化モードが選択されると、それをビットストリームに書き込むようにエンコーダ200が構成されてよい。所与の領域内の実際のブロック・サイズを明示的に符号化することに代えて、この再帰的なパーティショニング・アプローチは再帰的な方式によりパーティション・タイプを符号化する。例えば、この再帰的なパーティショニング・アプローチは、64×64ブロックで開始し、パーティション・タイプを書き込む。このタイプが、vert、horz、またはnoneである場合、サブブロック・サイズは既にパースされているので、さらなるパーティション情報は送られない。このタイプがスプリット・パーティション・タイプである場合、エンコーダ200は、別の4つのパーティション・タイプを書き込んでよい(各サブブロックに対して1つ)。例えば、一部の実装では、エンコーダ200は、vert/horz/noneのパーティション・タイプに達するまで、または一部の例では、例えば、8×8ブロック・サイズより小さくなるまで、パーティション・タイプ情報の送信を繰り返す。デコーダ300は、64×64ブロックで開始し、パーティション・タイプを読み取り、それにしたがってサブブロック・サイズをパースするように構成されてよい。
さらに、開示の態様は、パーティション情報に対するコンテキスト・ベース・エントロピー符号化アプローチを実装するように構成される。例えば、パーティション・タイプ符号化に対する確率モデルは、図5を参照して記載するように、次の因子の3つの因子に基づく条件付きであってもよい:現在のブロック・サイズ(例えば、64×64、32×32、16×16など)、その上の近隣ブロックのパーティション・タイプ、その左の近隣ブロックのパーティション・タイプ。一部の実装では、これらの条件付き確率モデルはバックワード適応型として構成されてよく、フレーム毎に更新されてよい。そうしたコンテキスト・ベース・エントロピー符号化アプローチは、空間的相関性(すなわち、連続する領域においてパーティション・タイプが一貫する傾向)を効率的に利用し、このコンテキスト・ベース・エントロピー符号化アプローチによって一定の性能向上が達成されることができる。
一部の実装では、未処理のビデオ信号は、静的ランダム過程として観察(モデル化)されてよい。ブロックは、ピクセル値、動き情報などを含む、1以上の近くのブロックに対し、一定の類似を有し得る。例えば、フレームが明るい背景の前を水平方向に移動する暗い色のオブジェクトを含む場合、そのオブジェクトと背景とを含むサブブロックがそれぞれ別個に符号化され、それによって各符号化モードを最適化する際により多くの柔軟性を可能とするように、そのオブジェクトのエッジを含むブロック(領域)は垂直方向に分割される傾向を有してよい。
図4の実装では、開示のシステムおよび方法は、画像410(例えば、ビデオフレーム)を複数の領域414に分割し、この複数の領域の各領域418に対し複数のパーティション・タイプ426を適用し、各領域418に対し適用された複数のパーティション・タイプ426に基づき各領域418に対するレート歪みコストを決定するように構成されてよい。さらに、開示のシステムおよび方法は、各領域418に対し適用された複数のパーティション・タイプ426に基づき、各領域418に対する符号化方式を決定し、各領域418に対し決定されたレート歪みコストおよび符号化方式に基づき、各領域418を別個に符号化するように構成されてよい。一部の実装では、このパーティショニング方法は、最適なレート歪みコストを達成するための繰返方式において、パーティション・タイプ426のうちの1つ以上(分割パーティション・タイプ436など)の1つ以上のサブ領域438に再帰的に適用されてよい。レート歪みループは、動画圧縮におけるビデオ品質を向上させるために用いられてもよく、ビデオを符号化するために用いられるデータの量(データレート)に対する歪み(ビデオ品質の損失)の量を比較し決定することを含んでもよい。一部の例では、レート歪みループは、符号化(符号化されたビデオのファイル・サイズと質とが解による影響を同時に受ける)を改良するために用いられてもよい。
図5は、本開示の態様による、パーティション・タイプのコンテキスト・ベース・エントロピー符号化用の一例の技術を示すブロック図である。一部の実装では、本明細書に記載のように、パーティション・タイプの標本空間は、無パーティション(NONE)、水平パーティション(HORZ)、垂直パーティション(VERT)、および4つのサブブロックへの分割(SPLIT)を含む、少なくとも4つのエントリを含んでよい。例えば、8×8から64×64の範囲のサイズの各平方ブロックが、1つ以上のパーティション・タイプに割り当てられてよい。このシンボルは、圧縮を達成するように標本空間を通じる確率分布を採用するエントロピー符号化を用いて符号化されてよい。
例えば、図5に示すように、ブロックA,Bは、以前に符号化されたブロックを表し、ブロックCは符号化されるブロックを表してよい。未処理のビデオ/画像信号の空間一貫性に関して、Aが垂直に分割される場合(すなわち、VERTまたはSPLITである場合)、Cも垂直に分割される可能性が高くてよい。同様に、Bが水平に分割される場合(すなわち、HORZまたはSPLITである場合)、Cも水平に分割されることが非常に起こり得る。したがって、開示の態様は、図5においてその上の符号化された近隣(すなわち、A)および左の符号化された近隣(すなわち、B)のパーティション・タイプに依存するエントロピー符号化器によって用いられる確率分布を提供する。さらに、開示の態様では、同じ上および/または左のブロックのパーティション・タイプが与えられた場合、ブロックCのブロック・サイズ(例えば、64×64ブロック)に対する確率モデル(分布)の潜在的な依存性は、8×8ブロックよりもSPLITを選ぶ可能性が高いことが認識され得る。
したがって、図5に示すように、この作業では、上述の依存性を捕捉するために複数の確率モデルの配列を使用する。さらに、この作業では、近隣の上/左ブロック(AおよびB)のパーティション・タイプおよび現在のブロック・サイズからインデックス数を計算し、対応する確率モデルを配列から取り出し、取り出しモデルをCのパーティション・タイプのエントロピー符号化に用いる。
以下はパーティション・タイプのコンテキスト・ベース・エントロピー符号化のサンプルコードである:
一部の実装では、動画圧縮における再帰的なブロック・パーティショニング・アプローチとそのエントロピー符号化とに関して、図4〜図5に関して記載するように、許容されるブロック・サイズは、8×8、16×16、32×32、64×64など様々なn×nピクセル・ブロックを含んでよく、本明細書に記載のように、ここで、各ブロック・サイズは、4つのパーティション・タイプ、{NONE、HORZ、VERT、SPLIT}のうちの1つとして符号化されてよい。
この点において、一部の実装では、起こり得る結果は、正方形または長方形のブロックであってよい。1以上のパーティション・タイプを省略することも可能である。例えば、32×32ブロックについて、最適化処理または技術では、1つの32×32ブロックと2つの32×16サブブロックとのいずれかとしての符号化を選び、したがって、最適化処理を高速化するために他のパーティション・タイプのテストを省略してよい。
一部の実装では、図5に関して、パーティション・タイプAおよびBの組合せは、次の規則により、0〜3の範囲の整数に翻訳される:
Aのパーティション・タイプがVERTまたはSPLITである場合、a=2;それ以外の場合、a=0;
Bのパーティション・タイプがHORZまたはSPLITである場合、b=1;それ以外の場合、b=0;
これらの2つの因子を結合してc=(a+b)を与える。
この数cは、ブロック・サイズにしたがってさらにオフセットされる:
ブロック・サイズが8×8である場合、オフセット=0;
ブロック・サイズが16×16である場合、オフセット=4;
ブロック・サイズが32×32である場合、オフセット=8;
ブロック・サイズが64×64である場合、オフセット=12。
配列から確率モデルを取り出すために用いられ得る総合的なインデックスは、(c+オフセット)として算出される。
本明細書に記載のように、コンテキスト・ベース・エントロピー符号化はパーティション情報に対し適用されてよく、ここで、パーティション・タイプ符号化に対する確率モデルは、現在のブロック・サイズ(例えば、64×64、32×32、16×16など)と、その上のブロックのパーティション・タイプと、その左のブロックのパーティション・タイプとを含む因子のうちの1つ以上に基づく条件付きである。これらの各条件付き確率モデルはバックワード適応型と考えられてよく、フレーム毎ベースで更新されてよい。このコンテキスト・ベース・エントロピー符号化の技術は、空間的相関性(幾つかの例では、連続する領域においてパーティション・タイプが一貫する傾向)を効率的に利用するために用いられてよく、一定の性能向上を達成するために用いられてよい。
例えば、図5を参照すると、一部の実装では、確率分布は、その上(a)の符号化された近隣(例えば、A)およびその左(l)の符号化された近隣(例えば、B)のパーティション・タイプに依存すると考えられる。さらに、一部の例では、同じ上および/または左のブロックのパーティション・タイプが与えられた場合、ブロックCのブロック・サイズ(例えば、64×64ブロック)に対する確率モデル(分布)の潜在的な依存性は、8×8ブロックよりもSPLITを選ぶ可能性が高い。したがって、図5に示すように、それらの潜在的な依存性をキャプチャするために、確率モデルの配列を用いてもよい。
一部の実装では、1以上の確率表は、その上および左の近隣ブロックのパーティション・タイプに基づき、現在のブロックに対する確率分布を識別するように生成されてよい。そのようにして、開示の態様では、近隣ブロック(例えば、上および左の近隣ブロック)のパーティション・タイプに基づき、現在のブロックのコンテキスト・ベース・エントロピー符号化のためのビルディング・テーブル(例えば、確率表(確率分布表とも呼ばれることがある))を提供する。
一部の実装では、デフォルト確率表は、ビデオ・シーケンス(ビデオ・フレームのシーケンスとも呼ばれ得る)における第1のフレームに対し用いられてよく、第1のフレームのパーティション・タイプの確率分布に基づき、確率表の更新は次のフレーム(続くフレームとも呼ばれ得る)に適用されてもよい。一部の例では、図1Aおよび/または図1Bのエンコーダ120は、確率分布表を生成するために用いられてよい。
図1Bは、図1Aに示したコンピューティング・デバイス104に関連付けられているコンポーネント例を示す図である。図1Bに示すように、メモリ112は、確率表160を記憶するように構成されてよく、エンコーダ120は、確率表160に記憶されている確率値に基づき、ビデオ・フレームの各ブロックを最適に符号化するように構成されてよい。
例えば、図1Bおよび図4の例に関して、エンコーダ120は、1つの画像(例えば、ビデオフレーム)を複数の領域に分割し、この複数の領域の各領域に対し複数のパーティション・タイプ(例えば、垂直、水平、無、分割)を適用し、各領域に対し適用された複数のパーティション・タイプに基づき各領域に対する最適なレート歪みコストを決定するように構成されてよい。さらに、エンコーダ120は、各領域に対し適用された複数のパーティション・タイプに基づき、各領域に対する符号化方式を決定し、各領域に対し決定されたレート歪みコストおよび符号化方式に基づき、各領域を別個に符号化するように構成されてよい。
一部の実装では、このパーティショニング技術は、最適なレート歪みコストを達成するための繰返方式において、各パーティション・タイプの各領域およびサブ領域に再帰的に適用されてよい。レート歪みループは、動画圧縮におけるビデオ品質を向上させるために用いられてもよく、ビデオを符号化するために用いられるデータの量(データレート)に対する歪み(ビデオ品質の損失)の量を比較し決定することを含んでもよい。一部の例では、レート歪みループは、符号化(符号化されたビデオのファイル・サイズと質とが解による影響を同時に受ける)を改良するために用いられてもよい。
図6Aは、本開示の態様による、エンコーダ120において確率表を生成するための方法600を示すフローチャートである。エンコーダ120は、コンピューティング・デバイス104のメモリ112にデフォルト確率表を記憶することを含め、メモリ112に1以上の確率表160を記憶するように構成されてよい。
図6Aの例では、動作602〜608は、順次生じる分離した動作として示される。しかしながら、他の実装では、動作602〜608のうちの2以上が、部分的にまたは完全にオーバーラップして生じてもよいこと、並列に生じてもよいこと、入れ子またはループで生じてもよいこと、あるいは示されているのとは異なる順序で生じてもよいことが認められる。さらに、一部の実装例では、図6Aの例では具体的に示されていない追加の動作も含まれる場合があり、他の実装では、動作602〜608のうちの1つ以上が省略される場合もある。一部の実装では、方法600は、図1Aのシステム100における再帰的なブロック・パーティショニングのためのコンピュータに実装された方法に対する処理フローを含んでもよい。さらに、本明細書に記載のように、動作602〜608は、図1Aに関して記載されるフィーチャおよび機能を提供するべくコンピューティング・デバイス104によって実行され得る、簡略化された動作処理フローを提供してもよい。
図6Aの例では、602にて、方法600は、ビデオ・フレームのシーケンスにおける第1のフレームを識別することを含んでよい。例えば、エンコーダ120は、新たなビデオ・シーケンスを検出し、確率計算をリセット/再始動し、確率表を更新/修正するように構成されてよい(例えば、ビデオ・シーケンスの始め(第1のフレーム)にて確率表をデフォルトリセットすることを含む)。一部の実装では、エンコーダ120は、ビデオ・シーケンスの第1のフレームを検出するとき、確率分布番号および/または値を変化させるように構成されてよい。
604にて、方法600は、メモリに記憶されている確率表に基づきビデオ・フレームのシーケンスにおける第1のフレームを符号化することを含んでよい。この確率表は、パーティション・タイプに関連付けられている確率値を含む。例えば、エンコーダ120は、メモリに記憶されている確率表のうちの1つ以上に基づき、ビデオ・フレームのシーケンスにおける第1のフレームを符号化するように構成されてよい。一部の実装では、各確率表は、1つ以上のパーティション・タイプに関連付けられている1つ以上の確率値を含んでよい。一部の実装では、各フレームは、各フレームがより小さなブロック・サイズへ分割される方式、ブロック毎予測モード、各ブロックに対し適用される変換タイプなどを含め、最適な符号化解を決定するように再帰的に符号化されてよい。
606にて、方法600は、ビデオ・フレームのシーケンスにおける第1のフレームの符号化に基づき、パーティション・タイプに関連付けられている確率値を更新された確率値に修正する工程を含んでよい。例えば、エンコーダ120は、ビデオ・フレームのシーケンスにおける第1のフレームの符号化に基づき、パーティション・タイプに関連付けられている確率値を更新された確率値に修正/更新するように構成されてよい。一部の実装では、各確率表の確率値は、ビデオ・シーケンスにおける各フレームに対する符号化解を最適化するように修正/更新されてよい。
608にて、方法600は、確率表に含まれている更新された確率値に基づき、ビデオ・フレームのシーケンスにおける第2のフレームを符号化する工程を含んでよい。例えば、エンコーダ120は、確率表に含まれている修正/更新された確率値に基づき、ビデオ・フレームのシーケンスにおける第2のフレームを符号化するように構成されてよい。本明細書に記載のように、メモリ112は確率表160を含んでよく、確率表160は1以上の確率値を含む。
本開示の態様では、エンコーダ120は、近隣ブロックを解析するためにコンテキスト・ベース・エントロピー符号化アプローチを利用し、符号化解を最適化するためにパーティション・タイプを選択するように構成されてよい。例えば、パーティション・タイプ符号化に対する確率モデルは、次の因子のうちの1つ以上に基づく条件付きであってもよい:現在のブロック・サイズ(例えば、64×64、32×32、16×16、8×8、4×4、2×2など)、上の近隣ブロックのパーティション・タイプ、および左の近隣ブロックのパーティション・タイプ。各条件付き確率モデルはバックワード適応型であってもよく、フレーム毎ベースで更新されてもよい。このコンテキスト・ベース・エントロピー符号化技術は、空間的相関性(連続する領域においてパーティション・タイプが一貫する傾向)を効率的に利用するために用いられてよく、様々な性能向上を達成するために用いられてよい。
図1Aの例に関して、デコーダ124は、符号化または圧縮されたビットストリームから復号された出力ビデオ・ストリームを提供する様々な機能を実行するための1つ以上のステージを備えてよい。本明細書に記載のように、本開示の態様では、符号化されたビットストリームは、復号された出力ビデオ・ストリームを提供するように復号するためのデコーダに対し提供されてよい。一部の実装では、デコーダ124は、エンコーダ120の補体であり、したがって、デコーダ124によって用いられる復号処理は、エンコーダ120によって用いられる符号化処理の補体である。ここで、デコーダ124は、エンコーダ120によって実行される符号化処理の逆の復号処理を実行するように構成される。
図7は、一実装による確率表の一例を示す図である。図7に示すように、確率表700は、2つの異なるブロック部分、すなわち、ブロック部分Bおよびブロック部分Aを含む。それらのブロック部分の各々は、処理されている現在のブロック・サイズに関連付けられる。例えば、確率表700のブロック部分Aは、ブロック・サイズAを有するブロックをブロック・サイズBに分割(例えば、64×64を32×32に)することに関する決定を行うために用いられる。ブロック・サイズAは、処理されている現在のブロック・サイズとして参照されることが可能であり、ブロック・サイズBは、目標ブロック・サイズとして参照されることが可能である。確率表700のブロック部分Bは、ブロック・サイズBを有するブロックを、例えば、ブロック・サイズCに分割(例えば、32×32を16×16に)することに関する決定を行うために用いられる。示していないが、追加のブロック部分および/またはサイズ(正方形でないサイズを含む)が含まれることが可能である。
この例では、ブロック部分Aは、4行3列で確率値を含む。4つの行は、文字P〜Sによって記述され、列は数字1〜3によって記述される。したがって、確率値Q2は、第2行第2列に含まれる。
行P〜Sの各々は、様々なタイプの近隣解析に関連付けられる。具体的な一例として、行Pは、いずれも分割されていない上および左(解析されている現ブロックに対して)の近隣の解析用の確率値を含むことが可能であり、行Qは、分割されている上の近隣と分割されていない左の近隣との解析用の確率値を含むことが可能である。したがって、エンコーダ(例えば、図1Aに示すエンコーダ120)は、ブロックの近隣の(例えば、隣接する)ブロックの分割(または非分割)に対応する現在のブロックの解析中、確率表700の1つの行の確率値を選択するように構成されることが可能である。
確率値は、エントロピー符号化器によって用いることの可能である値を表すことが可能である。符号化中、エントロピー符号化器は、確率表700に含まれる確率値に基づきビット・レートを割り当てるように構成されることが可能である。確率値によって表される比較的高い結果(例えば、比較的、起こり易い結果、より可能性の高い結果)に対しては、エントロピー符号化器がより少ないビットしか割り当てないことが可能であり、確率値によって表される比較的可能性の低い結果に対しては、エントロピー符号化器がより多くのビットを割り当てることが可能である。
確率表700における列の各々は、様々なタイプのパーティションに関連付けられる。例えば、確率値P1(行Pにおける)は、無パーティショニングの確率を表すことが可能であり、確率値P2は、垂直分割の確率を表すことが可能であり、確率値P3は、水平分割の確率を表すことが可能である。確率値P1〜P3に関連付けられている分割のための条件が満たされない場合、パーティション解析の結果は別の分割(例えば、完全な十字の分割)である。一部の実装では、確率表700は、確率値の最初の3つのカラム(例えば、P1〜P3)に関連付けられている条件が満たされない場合、100%の確率を有し最終の結果に関連付けられている第4列を含むことが可能である。
一部の実装では、確率値は、例えば0〜255の範囲を有することが可能である。より高い確率値は、その確率値に関連付けられている結果の確率であることが可能である。例えば、確率値P2は垂直分割の確率を表すことが可能であり、確率値P2は0〜255のスケールにおいて245であることが可能である。したがって、確率値P2に基づく垂直分割の確率は、非常に高い。
一部の実装では、確率表700に含まれる確率値は、フレームのシーケンスにおけるフレームの処理中に更新されることが可能である。例えば、確率表700は、ビデオ・シーケンスすなわちフレームのシーケンスにおける最初のフレーム(例えば、第1のフレーム)に対し用いられることの可能なデフォルト確率表であることが可能である。最初のフレームにおけるブロックの分割の結果に応じて、確率表700に含まれる確率値は、続くフレーム(例えば、第2の)の符号化用に修正されることが可能である。具体的な一例として、確率値P2は、ブロック・サイズAのブロック内におけるブロック・サイズBへの垂直分割に関連付けられている確率を表すことが可能である。ブロック・サイズAからブロック・サイズBへの第1のフレーム内の垂直分割の分布が比較的大きい場合、確率値P2は、第2のフレームに対するブロックの処理について増大されることが可能である。他方、ブロック・サイズAからブロック・サイズBへの第1のフレーム内の垂直分割の分布が比較的小さい場合、確率値P2は、第2のフレームに対するブロックの処理について減少されることが可能である。
一部の実装では、確率表700に含まれる確率値のうちの1つ以上に対する確率表700に含まれるデフォルト確率値からの変化は、差(すなわち、残差)として記憶されることが可能である。この差は記憶されることが可能であり、処理されているブロックまたはフレームに関連付けられることが可能である。したがって、この差は復号中にデフォルト確率値に関連してデコーダ(例えば、図1Aに示すデコーダ124)によって用いられることが可能である。
この確率値の修正は、各フレーム(またはブロックのグループ)の処理によって実行されることが可能である。一部の実装では、デフォルト確率値は、ビデオ・フレームのシーケンスにおける第1のフレームに対し最初に用いられることが可能である。例えば、デフォルト確率値はIフレームに対し用いられることが可能であり、確率値はIフレームの後に処理される各続くPフレームまたはBフレームについて修正される(デフォルト確率値から)ことが可能である。新たなIフレーム(ビデオ・フレーム(例えば、Pフレーム、Bフレーム)のシーケンスに関連付けられている)に達すると、 デフォルト確率値が再設定され、この新たなIフレームに関連付けられているフレームに対し再び用いられることが可能である。
以下は、現在のブロックの上および左の近隣ブロックのパーティション・タイプに基づき、現在のブロックに対する確率分布を識別するように生成され得る確率表(デフォルト確率表であることが可能である)の具体的な一例である。処理されているブロック・サイズおよび目標ブロック・サイズ(例えば、//8×8−>4×4)は、テーブル(各々4行3列を含む)のブロック部分の上に記す。この例では、確率値の範囲は0〜255の間である。一部の実装では、この範囲は異なることが可能である。
この例では、確率は0〜255の値の間に分布してよく、ここで、より大きな数は、現在のブロックの現在のブロック・サイズ(例えば、64×64、32×32、16×16など)と、その上の近隣ブロックのパーティション・タイプと、その左の近隣ブロックのパーティション・タイプとに基づき現在のブロックに対してあり得るパーティション・タイプのより高い確率を示してよい。様々な例では、より少ないビットは可能性の高い候補に対し割り当てられてよく、より多いビットは可能性の高くない候補に割り当てられてよい。さらに、一部の例では、生成されるテーブルが、フレーム全体に適用されてよい。
本開示の態様では、再帰的なブロック・パーティショニングは、コンテキスト・ベース・エントロピー符号化とともに、効率的なビデオ・コーデック実装を維持しつつ、ブロック・サイズを最適化する際の改良された柔軟性を可能とする。様々な例では、この再帰的なブロック・パーティショニング技術によって、実際のブロック・サイズの符号化がブロック・パーティション・タイプの符号化に翻訳され、コンテキスト・ベース・エントロピー符号化と一緒に、この技術は改良された符号化性能の向上を提供する。
図6B〜図6Cは、本開示の態様による、再帰的なブロック・パーティショニングのための方法例を示す処理フローである。特に、図6Bは、本開示の態様による、再帰的なブロック・パーティショニング用の一例の方法620を示す処理フローである。
図6Bの例では、動作622〜628は、順次生じる分離した動作として示される。しかしながら、他の実装では、動作622〜628のうちの2以上が、部分的にまたは完全にオーバーラップして生じてもよいこと、並列に生じてもよいこと、入れ子またはループで生じてもよいこと、あるいは示されているのとは異なる順序で生じてもよいことが認められる。さらに、一部の実装例では、図6Bの例では具体的に示されていない追加の動作も含まれる場合があり、他の実装では、動作622〜628のうちの1つ以上が省略される場合もある。さらに、一部の実装では、方法620は、図1のシステム100における再帰的なブロック・パーティショニングのためのコンピュータに実装された方法に対する処理フローを含んでもよい。さらに、本明細書に記載のように、動作622〜628は、図1Aに関して記載されるフィーチャおよび機能を提供するべくコンピューティング・デバイス104によって実行され得る、簡略化された動作処理フローを提供してもよい。
図6Bの例では、622にて、方法620は、画像を複数の領域に分割する工程を含んでよい。624にて、方法620は、複数の領域の各領域に対し複数のパーティション・タイプを適用する工程を含んでよい。626にて、方法620は、複数の領域の各領域に対し適用された複数のパーティション・タイプに基づき、複数の領域の各領域に対するレート歪み(例えば、レート歪みコスト)を決定する工程を含んでよい。
628にて、方法620は、複数の領域の各領域に対し適用された複数のパーティション・タイプに基づき、複数の領域の各領域に対する符号化方式を決定する工程を含んでよい。630にて、方法620は、複数の領域の各領域に対し決定されたレート歪みコストと符号化方式とに基づき、複数の領域の各領域を別個に符号化する工程を含んでよい。
一部の実装では、第1のパーティション・タイプは、同様の寸法の4つのサブブロックを有するスプリット・パーティション・タイプを含み、第2のパーティション・タイプは、水平方向に並べられた同様の寸法の2つのサブブロックを有するホライゾンタル・パーティション・タイプを含み、第3のパーティション・タイプは、垂直方向に並べられた同様の寸法の2つのサブブロックを有するバーティカル・パーティション・タイプを含み、第4のパーティション・タイプは、単一のブロックを有する無パーティション・タイプを含んでよい。
図6Cは、本開示の態様による、再帰的なブロック・パーティショニングの別例の方法640を示す処理フローである。
図6Cの例では、動作642〜648は、順次生じる分離した動作として示される。しかしながら、他の実装では、動作642〜648のうちの2以上が、部分的にまたは完全にオーバーラップして生じてもよいこと、並列に生じてもよいこと、入れ子またはループで生じてもよいこと、あるいは示されているのとは異なる順序で生じてもよいことが認められる。さらに、一部の実装例では、図6Cの例では具体的に示されていない追加の動作も含まれる場合があり、他の実装では、動作642〜648のうちの1つ以上が省略される場合もある。さらに、一部の実装では、方法640は、図1のシステム100における再帰的なブロック・パーティショニングのためのコンピュータに実装された方法に対する処理フローを含んでもよい。さらに、本明細書に記載のように、動作642〜648は、図1Aに関して記載されるフィーチャおよび機能を提供するべくコンピューティング・デバイス104によって実行され得る、簡略化された動作処理フローを提供してもよい。またさらに、動作642〜648は、図6Bの動作622〜630に続いて、図1Aに関して記載されるフィーチャおよび機能を提供するべくコンピューティング・デバイス104によって実行され得る、簡略化された動作処理フローを提供してもよい。
図6Bの例では、642にて、方法640は、複数の領域の各領域に対し適用された複数のパーティション・タイプのうちの第1のパーティション・タイプについて、複数の領域の各領域を複数のサブ領域に分割する工程を含んでよい。644にて、方法640は、複数のサブ領域の各サブ領域に対し複数のパーティション・タイプを再適用する工程を含んでよい。
646にて、方法640は、複数のサブ領域の各サブ領域に対し適用された複数のパーティション・タイプに基づき、複数のサブ領域の各サブ領域に対するレート歪みコストを決定する工程を含んでよい。648にて、方法640は、複数のサブ領域の各サブ領域に対し適用された複数のパーティション・タイプに基づき、複数のサブ領域の各サブ領域に対する符号化方式を決定する工程を含んでよい。
一部の実装では、第1のパーティション・タイプは、同様の寸法の4つのサブブロックを有するスプリット・パーティション・タイプを含み、第2のパーティション・タイプは、水平方向に並べられた同様の寸法の2つのサブブロックを有するホライゾンタル・パーティション・タイプを含み、第3のパーティション・タイプは、垂直方向に並べられた同様の寸法の2つのサブブロックを有するバーティカル・パーティション・タイプを含み、第4のパーティション・タイプは、単一のブロックを有する無パーティション・タイプを含んでよい。
一部の実装では、複数の領域の各領域に対し決定されたレート歪みコストと符号化方式とに基づき、複数の領域の各領域を別個に符号化する工程は、複数のサブ領域の各サブ領域に対し決定されたレート歪みコストと符号化方式とに基づき、複数のサブ領域の各サブ領域を別個に符号化する工程を含んでよい。
一部の実装では、複数の領域の各領域に対するレート歪みコストを決定する工程は、複数の領域の各領域に対し適用された複数のパーティション・タイプに基づき、複数の領域の各領域に対する複数のレート歪みコストを評価する工程と、複数の領域の各領域に対する最適なレート歪みコストを決定する工程であって、最適なレート歪みコストは、複数の領域の各領域に対し評価された複数のレート歪みコストから選択される、工程と、を含んでよい。
一部の実装では、複数の領域の各領域に対する符号化方式を決定する工程は、複数の領域の各領域に対し適用された複数のパーティション・タイプに基づき、複数の領域の各領域に対する複数の符号化方式を評価する工程と、複数の領域の各領域に対する最適な符号化方式を決定する工程であって、最適な符号化方式は、複数の領域の各領域に対し評価された複数の符号化方式から選択される、工程と、を含んでよい。
図8は、本開示の態様による、再帰的なブロック・パーティショニング用の別の方法例800を示す処理フローである。
図8の例では、動作802〜808は、順次生じる分離した動作として示される。しかしながら、他の実装では、動作802〜808のうちの2以上が、部分的にまたは完全にオーバーラップして生じてもよいこと、並列に生じてもよいこと、入れ子またはループで生じてもよいこと、あるいは示されているのとは異なる順序で生じてもよいことが認められる。さらに、一部の実装例では、図8の例では具体的に示されていない追加の動作も含まれる場合があり、他の実装では、動作802〜808のうちの1つ以上が省略される場合もある。さらに、一部の実装では、方法800は、図1のシステム100における再帰的なブロック・パーティショニングのためのコンピュータに実装された方法に対する処理フローを含んでもよい。さらに、本明細書に記載のように、動作802〜808は、図1Aに関して記載されるフィーチャおよび機能を提供するべくコンピューティング・デバイス104によって実行され得る、簡略化された動作処理フローを提供してもよい。
図8の例では、802にて、方法800は、ビデオ・フレームを複数のピクセル・ブロックに分割する工程を含んでよい。804にて、方法800は、複数のピクセル・ブロックの各ピクセル・ブロックに対し複数のパーティション・タイプを適用する工程を含んでよい。
806にて、方法800は、複数のピクセル・ブロックの各ピクセル・ブロックに対し適用された複数のパーティション・タイプのうちの第1のパーティション・タイプについて、第1のパーティション・タイプの各ピクセル・ブロックを複数のピクセル・サブブロックに分割し、複数のピクセル・サブブロックの各ピクセル・サブブロックに対し複数のパーティション・タイプを再適用する工程を含んでよい。808にて、方法800は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対するレート歪みコストを決定する工程を含んでよい。
810にて、方法800は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対する符号化方式を決定する工程を含んでよい。812にて、方法800は、各ピクセル・ブロックおよび各ピクセル・サブブロックに対し決定されたレート歪みコストと符号化方式とに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックを別個に符号化する工程を含んでよい。
本明細書に記載の様々な技術の実装は、デジタル電子回路類により実装されてもよく、コンピュータ・ハードウェア、ファームウェア、ソフトウェアにより実装されてもよく、それらの組み合わせにより実装されてもよい。実装は、データ処理装置(例えば、プログラム可能なプロセッサ、コンピュータ、または複数のコンピュータ)による実行用またはデータ処理装置の動作を制御するために、コンピュータ・プログラム製品、すなわち、情報キャリア(例えば、機械可読記憶デバイスまたは伝搬信号)により有形に具体化されるコンピュータ・プログラムとして実装されてよい。上述のコンピュータ・プログラムなどコンピュータ・プログラムは、コンパイル型またはインタプリタ型言語を含む任意の形態のプログラミング言語により書かれてよく、スタンドアロン・プログラムとして、またはモジュール、コンポーネント、サブルーチン、またはコンピューティング環境における使用に適切な他のユニットとしてを含め、任意の形態によりデプロイされてよい。コンピュータ・プログラムは、1つのコンピュータ、または複数のコンピュータ(1つのサイトにおけるまたは複数のサイトを通じて分散され通信ネットワークによって相互接続される)上で実行されるようにデプロイされてよい。
方法の工程は、入力データに対して動作し出力を生成することによって機能を実行するコンピュータ・プログラムを実行する、1以上のプログラム可能なプロセッサによって実行されてよい。また、方法の工程は、専用の論理回路(例えば、FPGA(field programmable gate array)またはASIC(application specific integrated circuit))によって実行されてもよく、装置が専用の論理回路として実装されてもよい。
コンピュータ・プログラムの実行に適切なプロセッサは、例として、汎用および専用のマイクロプロセッサの両方と、任意の種類のデジタル・コンピュータの任意の1以上のプロセッサとを含む。一般に、プロセッサは、読出専用メモリ、ランダム・アクセス・メモリ、またはその両方から、命令およびデータを受信する。コンピュータの要素は、命令を実行するための1つ以上のプロセッサと、命令およびデータを記憶するための1つ以上のメモリ・デバイスとを含んでよい。また、一般に、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス(例えば、磁気、光磁気ディスク、または光ディスク)を備えてもよく、この大容量記憶デバイスについてデータの受信、送信、またはその両方を行うように動作可能に結合されてもよい。コンピュータ・プログラム命令およびデータを具体化するのに適切な情報キャリアは、全ての形態の不揮発性メモリ(例として、半導体メモリ・デバイス(例えば、EPROM、EEPROM、フラッシュメモリ・デバイス)、磁気ディスク(例えば、内部ハードディスクまたはリムーバブル・ディスク)、光磁気ディスク、ならびにCD−ROMおよびDVD−ROMディスクを含む)を含む。プロセッサおよびメモリは、専用の論理回路によって補助されたり、専用の論理回路に組み込まれたりしてよい。
ユーザ対話を提供するために、実装は、ユーザに情報を表示するためのディスプレイ・デバイス(例えば、陰極線管(CRT)または液晶ディスプレイ(LCD)モニタ)と、ユーザがコンピュータに入力を提供可能なキーボードおよびポインティング・デバイス(例えば、マウスまたはトラックボール)とを有するコンピュータ上に実装されてよい。他のタイプのデバイスも、ユーザとの対話用に同様に用いられてよい。例えば、ユーザに対し提供されるフィードバックは任意の形態の知覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってよく、ユーザからの入力は、音響、音声、または触覚の入力を含む任意の形態により受信されてよい。
実装は、バックエンド・コンポーネントを備える(例えば、データ・サーバとして)か、ミドルウェア・コンポーネント(例えば、アプリケーションサーバ)を備えるか、またはフロントエンド・コンポーネント(例えば、実装とユーザが対話可能なグラフィカル・ユーザ・インタフェースまたはウェブブラウザを有するクライアント・コンピュータ)を備えるコンピューティング・システム、またはそうしたバックエンド、ミドルウェア、またはフロントエンド・コンポーネントの任意の組み合わせにより実装されることが可能である。コンポーネントは、任意の形態または媒体のデジタル・データ通信(例えば、通信ネットワーク)によって相互接続されてよい。通信ネットワークなどネットワークの例には、ローカル・エリア・ネットワーク(LAN)およびワイド・エリア・ネットワーク(WAN)(例えば、インターネット)が含まれてよい。
記載の実装の一定のフィーチャは本明細書に記載されるように示されているが、ここで多くの修正、置換、変更、および均等が当業者に生じるであろう。したがって、添付の特許請求の範囲は、実施形態の範囲内にあるそうした修正および変更を全てカバーすることが意図されるものである。

Claims (26)

  1. 実行時に1つ以上のプロセッサに処理を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体であって、前記命令は、
    画像を複数の領域に分割する工程と、
    確率表に基づき前記複数の領域の各領域に対し複数のパーティション・タイプを適用する工程と、
    前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対するレート歪みコストを決定する歪みコスト決定工程と、
    前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対する符号化方式を決定する符号化方式決定工程と、
    前記複数の領域の各領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、前記複数の領域の各領域を別個に符号化する符号化工程と、
    を行うように構成された命令を含む、コンピュータ可読記憶媒体。
  2. 前記画像はビデオ・フレームを含み、前記複数の領域は前記複数の領域のグリッドを含む、請求項1に記載のコンピュータ可読記憶媒体。
  3. 前記複数の領域の各領域は、n×nピクセルのブロックを含む、請求項1または2に記載のコンピュータ可読記憶媒体。
  4. n×nピクセルの前記ブロックは、64×64ピクセルのブロック、32×32ピクセルのブロック、16×16ピクセルのブロック、8×8ピクセルのブロック、4×4ピクセルのブロック、および2×2ピクセルのブロックのうちの1つ以上を含む、請求項3に記載のコンピュータ可読記憶媒体。
  5. 前記確率表は、前記複数のパーティション・タイプにおける第1のパーティション・タイプに関連付けられている確率値と、前記複数のパーティション・タイプにおける第2のパーティション・タイプに関連付けられている確率値とを含む、請求項1〜4のいずれか一項に記載のコンピュータ可読記憶媒体。
  6. 前記複数のパーティション・タイプは、
    同様の寸法の4つのサブブロックを有するスプリット・パーティション・タイプを含む第1のパーティション・タイプ、
    水平方向に並べられた同様の寸法の2つのサブブロックを有するホライゾンタル・パーティション・タイプを含む第2のパーティション・タイプ、
    垂直方向に並べられた同様の寸法の2つのサブブロックを有するバーティカル・パーティション・タイプを含む第3のパーティション・タイプ、および
    単一のブロックを有する無パーティション・タイプを含む第4のパーティション・タイプを含む、請求項1〜5のいずれか一項に記載のコンピュータ可読記憶媒体。
  7. 前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプのうちの第1のパーティション・タイプについて、前記命令は、
    前記複数の領域の各領域を複数のサブ領域に分割する工程と、
    前記複数のサブ領域の各サブ領域に対し前記複数のパーティション・タイプを再適用する工程と、
    前記複数のサブ領域の各サブ領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数のサブ領域の各サブ領域に対するレート歪みコストを決定する工程と、
    前記複数のサブ領域の各サブ領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数のサブ領域の各サブ領域に対する符号化方式を決定する工程と、
    を行うように構成された命令を含む、請求項1〜6のいずれか一項に記載のコンピュータ可読記憶媒体。
  8. 前記符号化工程を行うように構成された命令は、
    前記複数のサブ領域の各サブ領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、前記複数のサブ領域の各サブ領域を別個に符号化する工程を行うように構成された命令を含む、請求項1〜7のいずれか一項に記載のコンピュータ可読記憶媒体。
  9. 前記歪みコスト決定工程を行うように構成された命令は、
    前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対する複数のレート歪みコストを評価する工程と、
    前記複数の領域の各領域に対するレート歪みコストを決定する工程であって、前記レート歪みコストは、前記複数の領域の各領域に対し評価された前記複数のレート歪みコストから選択される、工程と、
    を行うように構成された命令を含む、請求項1〜8のいずれか一項に記載のコンピュータ可読記憶媒体。
  10. 前記符号化工程を行うように構成された命令は、
    前記複数の領域の各領域に対し決定された最適なレート歪みコストに基づき、前記複数の領域の各領域を別個に符号化する工程を行うように構成された命令を含む、請求項1〜9のいずれか一項に記載のコンピュータ可読記憶媒体。
  11. 前記符号化方式決定工程を行うように構成された命令は、
    前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプに基づき、前記複数の領域の各領域に対する複数の符号化方式を評価する工程と、
    前記複数の領域の各領域に対する最適な符号化方式を決定する工程であって、前記最適な符号化方式は、前記複数の領域の各領域に対し評価された前記複数の符号化方式から選択される、工程と、
    を行うように構成された命令を含む、請求項1〜10のいずれか一項に記載のコンピュータ可読記憶媒体。
  12. 前記符号化工程を行うように構成された命令は、
    前記複数の領域の各領域に対し決定された前記最適な符号化方式に基づき、前記複数の領域の各領域を別個に符号化する工程を行うように構成された命令を含む、請求項1〜11のいずれか一項に記載のコンピュータ可読記憶媒体。
  13. 前記符号化方式は、前記複数の領域の各領域に対する符号化方式を決定するとき、各領域のサイズと、各領域の上の第1の近隣領域に対し適用されるパーティション・タイプと、各領域の左の第2の近隣領域とを考慮する、コンテキスト・ベース・エントロピー符号化方式を含む、請求項1〜12のいずれか一項に記載のコンピュータ可読記憶媒体。
  14. 前記符号化工程を行うように構成された命令は、
    前記複数の領域の各領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、ラスタ順に各領域をビットストリームへと別個に符号化する工程を行うように構成された命令を含む、請求項1〜13のいずれか一項に記載のコンピュータ可読記憶媒体。
  15. 実行時に1つ以上のプロセッサに処理を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体であって、前記命令は、
    ビデオ・フレームを複数のピクセル・ブロックに分割する工程と、
    確率表に基づき前記複数のピクセル・ブロックの各ピクセル・ブロックに対し複数のパーティション・タイプを適用する工程と、
    前記複数のピクセル・ブロックの各ピクセル・ブロックに対し適用された前記複数のパーティション・タイプのうちの第1のパーティション・タイプについて、前記第1のパーティション・タイプの各ピクセル・ブロックを複数のピクセル・サブブロックに分割し、前記複数のピクセル・サブブロックの各ピクセル・サブブロックに対し前記複数のパーティション・タイプを再適用する工程と、
    各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対するレート歪みコストを決定する工程と、
    各ピクセル・ブロックおよび各ピクセル・サブブロックに対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックに対する符号化方式を決定する工程と、
    各ピクセル・ブロックおよび各ピクセル・サブブロックに対し決定された前記レート歪みコストと前記符号化方式とに基づき、各ピクセル・ブロックおよび各ピクセル・サブブロックを別個に符号化する工程と、
    を行うように構成された命令を含む、コンピュータ可読記憶媒体。
  16. 各ピクセル・ブロックは、n×nピクセルのブロックを含み、n×nピクセルの各ブロックは、64×64ピクセルのブロック、32×32ピクセルのブロック、16×16ピクセルのブロック、8×8ピクセルのブロック、4×4ピクセルのブロック、および2×2ピクセルのブロックのうちの1つ以上を含む、請求項15に記載のコンピュータ可読記憶媒体。
  17. 前記複数のパーティション・タイプのうちの前記第1のパーティション・タイプは、同様の寸法の4つのサブブロックを有するスプリット・パーティション・タイプを含み、
    第2のパーティション・タイプは、水平方向に並べられた同様の寸法の2つのサブブロックを有するホライゾンタル・パーティション・タイプを含み、
    第3のパーティション・タイプは、垂直方向に並べられた同様の寸法の2つのサブブロックを有するバーティカル・パーティション・タイプを含み、
    第4のパーティション・タイプは、単一のブロックを有する無パーティション・タイプを含む、請求項15または16に記載のコンピュータ可読記憶媒体。
  18. 前記符号化方式は、前記複数のピクセル・ブロックの各ピクセル・ブロックに対する符号化方式を決定するとき、各ピクセル・ブロックのサイズと、各ピクセル・ブロックの上の第1の近隣領域に対し適用されるパーティション・タイプと、各ピクセル・ブロックの左の第2の近隣領域とを考慮する、コンテキスト・ベース・エントロピー符号化方式を含む、請求項15〜17のいずれか一項に記載のコンピュータ可読記憶媒体。
  19. システムであって、
    1つ以上のプロセッサとメモリとを備え、
    1つ以上のプロセッサは、
    フレームを複数の領域に分割する工程と、
    前記複数の領域の各領域に対し複数のパーティション・タイプを適用する工程と、
    前記複数の領域の各領域に対し適用された前記複数のパーティション・タイプのうちの1つ以上のパーティション・タイプについて、前記1つ以上のパーティション・タイプの各領域を確率表に基づき複数のサブ領域に分割し、前記複数のサブ領域の各サブ領域に対し前記複数のパーティション・タイプを再適用する工程と、
    各領域および各サブ領域に対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各領域および各サブ領域に対するレート歪みコストを決定する工程と、
    各領域および各サブ領域に対しそれぞれ適用および再適用された前記複数のパーティション・タイプに基づき、各領域および各サブ領域に対する符号化方式を決定する工程と、
    各領域および各サブ領域に対し決定された前記レート歪みコストと前記符号化方式とに基づき、各領域および各サブ領域を別個に符号化する工程と、
    を行うように構成されている、システム。
  20. 前記フレームは第1のフレームであり、前記確率表は、前記1つ以上のパーティション・タイプに関連付けられている確率値を含み、前記1つ以上のプロセッサは、前記第1のフレームに関連付けられている処理に基づく第2のフレームの処理のために前記確率値を更新するように構成されている、請求項19に記載のシステム。
  21. 前記フレームは、ビデオ・フレームのシーケンスにおける第1のフレームであり、前記確率表は、前記1つ以上のパーティション・タイプに関連付けられているデフォルト確率値を含む、請求項19または20に記載のシステム。
  22. 実行時に1つ以上のプロセッサに処理を実行させる命令を記憶する非一時的なコンピュータ可読記憶媒体であって、前記命令は、
    ビデオ・フレームのシーケンスにおける第1のフレームを識別する工程と、
    メモリに記憶されている確率表に基づき、ビデオ・フレームの前記シーケンスにおける前記第1のフレームを符号化する工程であって、前記確率表はパーティション・タイプに関連付けられている確率値を含む、工程と、
    ビデオ・フレームの前記シーケンスにおける前記第1のフレームの前記符号化に基づき、前記パーティション・タイプに関連付けられている前記確率値を更新された確率値に修正する工程と、
    前記確率表に含まれている前記更新された確率値に基づき、ビデオ・フレームのシーケンスにおける第2のフレームを符号化する工程と、
    を行うように構成された命令を含む、コンピュータ可読記憶媒体。
  23. 前記第1のフレームの前記符号化は、エントロピー符号化を含む、請求項22に記載のコンピュータ可読記憶媒体。
  24. 前記命令は、
    前記第1のフレームに関連付けられている前記パーティション・タイプの確率分布を算出し、前記パーティション・タイプの確率分布に基づき前記確率値を修正する工程を行うように構成された命令をさらに含む、請求項22または23に記載のコンピュータ可読記憶媒体。
  25. エントロピー・エンコーダに関連付けられているビット・レートは、前記確率値に基づき割り当てられる、請求項22〜24のいずれか一項に記載のコンピュータ可読記憶媒体。
  26. 前記確率表は、第1のブロック・サイズから第2のブロック・サイズへのパーティショニングに関連付けられている第1のブロック部分を含み、前記確率表は、第2のブロック・サイズから第3のブロック・サイズへのパーティショニングに関連付けられている第2のブロック部分を含む、請求項22〜25のいずれか一項に記載のコンピュータ可読記憶媒体。
JP2016543655A 2013-12-30 2014-12-26 再帰的なブロック・パーティショニング Expired - Fee Related JP6342500B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/144,375 2013-12-30
US14/144,375 US20150189269A1 (en) 2013-12-30 2013-12-30 Recursive block partitioning
PCT/US2014/072435 WO2015103088A1 (en) 2013-12-30 2014-12-26 Recursive block partitioning

Publications (2)

Publication Number Publication Date
JP2017507532A true JP2017507532A (ja) 2017-03-16
JP6342500B2 JP6342500B2 (ja) 2018-06-13

Family

ID=52440819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016543655A Expired - Fee Related JP6342500B2 (ja) 2013-12-30 2014-12-26 再帰的なブロック・パーティショニング

Country Status (6)

Country Link
US (1) US20150189269A1 (ja)
EP (1) EP3090548A1 (ja)
JP (1) JP6342500B2 (ja)
KR (1) KR101941955B1 (ja)
CN (1) CN105960803A (ja)
WO (1) WO2015103088A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014190468A1 (en) 2013-05-27 2014-12-04 Microsoft Corporation Video encoder for images
TWI536811B (zh) * 2013-12-27 2016-06-01 財團法人工業技術研究院 影像處理方法與系統、解碼方法、編碼器與解碼器
CN105359531B (zh) 2014-03-17 2019-08-06 微软技术许可有限责任公司 用于针对屏幕内容编码的编码器侧判定的方法和系统
US9641854B2 (en) * 2014-05-19 2017-05-02 Mediatek Inc. Count table maintenance apparatus for maintaining count table during processing of frame and related count table maintenance method
US10924743B2 (en) 2015-02-06 2021-02-16 Microsoft Technology Licensing, Llc Skipping evaluation stages during media encoding
US9883187B2 (en) 2015-03-06 2018-01-30 Qualcomm Incorporated Fast video encoding method with block partitioning
US10136132B2 (en) * 2015-07-21 2018-11-20 Microsoft Technology Licensing, Llc Adaptive skip or zero block detection combined with transform size decision
WO2017065422A1 (ko) * 2015-10-12 2017-04-20 엘지전자(주) 영상 처리 방법 및 이를 위한 장치
CN116506601A (zh) * 2016-03-11 2023-07-28 数字洞察力有限公司 视频编码方法以及装置
CN106162184B (zh) * 2016-07-28 2020-01-10 华为技术有限公司 一种数据块编码方法及装置
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
EP3586508A4 (en) * 2017-02-23 2020-08-12 RealNetworks, Inc. RESIDUAL TRANSFORMATION AND INVERSE TRANSFORMATION IN VIDEO ENCODING SYSTEMS AND METHODS
CN117201818A (zh) 2017-05-26 2023-12-08 Sk电信有限公司 对视频数据进行编码或解码的方法和发送比特流的方法
KR102435881B1 (ko) 2017-05-26 2022-08-24 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
US11412220B2 (en) * 2017-12-14 2022-08-09 Interdigital Vc Holdings, Inc. Texture-based partitioning decisions for video compression
JP7491762B2 (ja) 2020-07-22 2024-05-28 アマノ株式会社 駐車場管理システム、情報処理装置、情報処理方法及びプログラム
WO2024020119A1 (en) * 2022-07-19 2024-01-25 Google Llc Bit stream syntax for partition types

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009510935A (ja) * 2005-09-27 2009-03-12 クゥアルコム・インコーポレイテッド マルチメディア符号化のためのモード選択技術
US20130034154A1 (en) * 2010-04-16 2013-02-07 Sk Telecom Co., Ltd. Video encoding/decoding apparatus and method
JP2013524709A (ja) * 2010-04-13 2013-06-17 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 標本の領域の結合

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1351510A4 (en) * 2001-09-14 2008-12-10 Ntt Docomo Inc ENCODING METHOD, DECODING METHOD, ENCODING APPARATUS, DECODING APPARATUS, IMAGE PROCESSING SYSTEM, ENCODING PROGRAM, AND DECODING PROGRAM
EP1445955A4 (en) * 2001-11-16 2009-10-28 Ntt Docomo Inc IMAGE ENCODING METHOD, IMAGE DECODING METHOD, ENCODER AND IMAGE DECODER, PROGRAM, COMPUTER DATA SIGNAL, AND IMAGE TRANSMISSION SYSTEM
ES2730953T3 (es) * 2002-04-26 2019-11-13 Ntt Docomo Inc Método de decodificación de señal, dispositivo de decodificación de señal, y programa de decodificación de señal
US20040081238A1 (en) * 2002-10-25 2004-04-29 Manindra Parhy Asymmetric block shape modes for motion estimation
US20080123977A1 (en) * 2005-07-22 2008-05-29 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US7693219B2 (en) * 2006-01-04 2010-04-06 Freescale Semiconductor, Inc. System and method for fast motion estimation
US8208548B2 (en) * 2006-02-09 2012-06-26 Qualcomm Incorporated Video encoding
US20080126278A1 (en) * 2006-11-29 2008-05-29 Alexander Bronstein Parallel processing motion estimation for H.264 video codec
EP2081386A1 (en) * 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
US8503527B2 (en) * 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
WO2010047099A1 (ja) * 2008-10-22 2010-04-29 日本電信電話株式会社 スケーラブル動画像符号化方法、スケーラブル動画像符号化装置、スケーラブル動画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
KR101567974B1 (ko) * 2009-01-05 2015-11-10 에스케이 텔레콤주식회사 블록 모드 부호화/복호화 방법 및 장치와 그를 이용한 영상부호화/복호화 방법 및 장치
US9100656B2 (en) * 2009-05-21 2015-08-04 Ecole De Technologie Superieure Method and system for efficient video transcoding using coding modes, motion vectors and residual information
US20110170608A1 (en) * 2010-01-08 2011-07-14 Xun Shi Method and device for video transcoding using quad-tree based mode selection
WO2011127963A1 (en) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Sample region merging
WO2011129672A2 (ko) 2010-04-16 2011-10-20 에스케이텔레콤 주식회사 영상 부호화/복호화 장치 및 방법
US20110310976A1 (en) * 2010-06-17 2011-12-22 Qualcomm Incorporated Joint Coding of Partition Information in Video Coding
PL2663075T3 (pl) * 2011-01-06 2020-10-19 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania wideo z wykrzystaniem jednostki danych o strukturze hierarchicznej i sposób i urządzenie do jego dekodowania
US10440373B2 (en) * 2011-07-12 2019-10-08 Texas Instruments Incorporated Method and apparatus for coding unit partitioning
KR102036175B1 (ko) * 2011-11-11 2019-10-24 지이 비디오 컴프레션, 엘엘씨 적응적 분할 코딩
US20130301727A1 (en) * 2012-05-14 2013-11-14 Qualcomm Incorporated Programmable and scalable integer search for video encoding
US9219915B1 (en) * 2013-01-17 2015-12-22 Google Inc. Selection of transform size in video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009510935A (ja) * 2005-09-27 2009-03-12 クゥアルコム・インコーポレイテッド マルチメディア符号化のためのモード選択技術
JP2013524709A (ja) * 2010-04-13 2013-06-17 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 標本の領域の結合
US20130034154A1 (en) * 2010-04-16 2013-02-07 Sk Telecom Co., Ltd. Video encoding/decoding apparatus and method

Also Published As

Publication number Publication date
CN105960803A (zh) 2016-09-21
JP6342500B2 (ja) 2018-06-13
KR20160104706A (ko) 2016-09-05
EP3090548A1 (en) 2016-11-09
WO2015103088A1 (en) 2015-07-09
US20150189269A1 (en) 2015-07-02
KR101941955B1 (ko) 2019-01-24

Similar Documents

Publication Publication Date Title
JP6342500B2 (ja) 再帰的なブロック・パーティショニング
CN110024392B (zh) 用于视频译码的低复杂度符号预测
TWI717776B (zh) 應用於視訊內容編碼之多重參考鄰邊之畫面內預測之自適應性濾波方法、使用上述方法的視訊編碼裝置及視訊解碼裝置
CN110313183A (zh) 用于对视频内容进行编码的迭代技术
US20090268821A1 (en) Block parallel and fast motion estimation in video coding
TW201826798A (zh) 取樣自適應偏移裝置
TW201507439A (zh) 視訊編碼方法與裝置以及非暫時性電腦可讀記錄媒體
KR20220088680A (ko) 프레임 타입에 기반한 적응적 해상도 관리의 묵시적 시그널링
US20210360246A1 (en) Shape adaptive discrete cosine transform for geometric partitioning with an adaptive number of regions
US20150010056A1 (en) Method and apparatus for video encoding capable of parallel entropy encoding of subregions, method and apparatus for video decoding capable of parallel entropy decoding of subregions
JP2018529270A (ja) 動きベクトル場の符号化方法、復号方法、符号化装置、および復号装置
US20230239464A1 (en) Video processing method with partial picture replacement
KR20200125698A (ko) 서브-블록 모션 벡터 예측을 위한 방법 및 장치
KR20240000583A (ko) 블록 단위 이미지 압축에서의 디블로킹을 위한 콘텐츠 적응적 온라인 트레이닝 방법 및 장치
JP2023532397A (ja) ポストフィルタリングのためのコンテンツ適応型オンライン訓練方法、装置およびコンピュータプログラム
JP2023504817A (ja) ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置
JP7437426B2 (ja) インター予測方法および装置、機器、記憶媒体
KR20220002991A (ko) 글로벌 모션을 갖는 프레임들에서의 적응적 모션 벡터 예측 후보들
WO2022166370A1 (zh) 视频编解码方法、装置、计算机程序产品、计算机可读存储介质及电子设备
JP7411785B2 (ja) イントラ予測のための補間フィルタリング方法と装置、コンピュータプログラム及び電子装置
KR20230003227A (ko) 신경 이미지 압축에서의 스케일링 인자 및/또는 오프셋에 의한 컨텐츠-적응적 온라인 훈련
US11825075B2 (en) Online and offline selection of extended long term reference picture retention
US20230096682A1 (en) Systems and Methods for Low Resolution Motion Estimation Searches
KR20230175240A (ko) 하이브리드 피처 비디오 비트스트림 및 디코더를 위한 시스템들, 방법들 및 비트스트림 구조
JP2023528180A (ja) ポストフィルタリングを伴うニューラル画像圧縮におけるブロック単位のコンテンツ適応オンライン訓練の方法、装置、およびコンピュータプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180516

R150 Certificate of patent or registration of utility model

Ref document number: 6342500

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees