IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カカデゥ アール アンド ディー ピーティーワイ リミテッドの特許一覧

特表2023-501909高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置
<>
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図1
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図2
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図3
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図4
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図5
  • 特表-高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-01-20
(54)【発明の名称】高スループットJPEG2000(HTJ2K)符号化における複雑度制御のための方法および装置
(51)【国際特許分類】
   H04N 19/126 20140101AFI20230113BHJP
   H04N 19/63 20140101ALI20230113BHJP
   H04N 19/147 20140101ALI20230113BHJP
【FI】
H04N19/126
H04N19/63
H04N19/147
【審査請求】未請求
【予備審査請求】有
(21)【出願番号】P 2022523830
(86)(22)【出願日】2020-10-26
(85)【翻訳文提出日】2022-06-06
(86)【国際出願番号】 AU2020051151
(87)【国際公開番号】W WO2021077178
(87)【国際公開日】2021-04-29
(31)【優先権主張番号】2019904032
(32)【優先日】2019-10-25
(33)【優先権主張国・地域又は機関】AU
(81)【指定国・地域】
(71)【出願人】
【識別番号】522161568
【氏名又は名称】カカデゥ アール アンド ディー ピーティーワイ リミテッド
(74)【代理人】
【識別番号】110000796
【氏名又は名称】弁理士法人三枝国際特許事務所
(72)【発明者】
【氏名】トーブマン デイビッド スコット
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA41
5C159MC11
5C159TA46
5C159TC38
5C159UA02
5C159UA05
(57)【要約】
【課題】画像及びビデオ符号化のための、例えばJPEG2000標準ファミリに属するアルゴリズムのための、符号化複雑度を管理する方法であり、ここで符号化プロセスは、画像又はビデオシーケンスの各フレームの所与の圧縮サイズ(すなわち符号化全長)を対象とする。
【解決手段】HTJ2Kコードストリームの複雑度制約付き符号化のための一連の方法を記載しており、各サブバンド(各コードブロックではない)のローカル統計値又はグローバル統計値の収集、空間変換及び量子化プロセスによってまだ生成されていないサブバンドサンプルの統計値の予測の生成、及びグローバル量子化パラメータを生成するためのこの情報の使用を含み、各コードブロックで生成すべき最も粗いビットプレーンを導出することができる。符号化長の推定値は、低い計算複雑度を維持しながら、符号化画像品質に対してレイテンシ及びメモリが別々に最適化されるような方法で生成される。
【特許請求の範囲】
【請求項1】
目標全長制約を受ける、JPEG2000および高スループットJPEG2000のコードストリームを含む、コードストリームの複雑度制約付き符号化のための方法であって、
a.空間変換によって生成されたサブバンドサンプルに関する情報を収集するステップと、
b.複数の潜在的なビットプレーン切り捨て点について、前記収集された情報から符号化長の推定値を生成するステップと、
c.各サブバンドの各関連するコードブロックのベースビットプレーンインデックスに量子化パラメータ(QP値)をマッピングした後、これらのビットプレーンインデックスで切り捨てたときに推定される全体の符号化長が前記目標全長制約を超えない見込みとなるように、これらの長さ推定値からQP値を決定するステップと、
d.前記QP値をそのような各コードブロックのベースビットプレーンインデックスにマッピングするステップと、
e.各関連するコードブロックを、対応するベースビットプレーンインデックスに関連する精度で符号化するステップと、各コードブロックからの1つ以上の追加符号化パスを符号化するステップと、
f.このようにして生成されたすべての符号化パスを、圧縮後レート歪み最適化プロセスにかけて、圧縮結果として各コードブロックから出力される符号化パスの最終セットを決定するステップと、を含む方法。
【請求項2】
JPEG2000パート1のブロック符号化アルゴリズムが用いられる、請求項1に記載の方法。
【請求項3】
JPEG2000パート15の高スループットブロック符号化アルゴリズムが用いられ、コードブロックに対するベースビットプレーンは、そのコードブロックに対して生成された第1の高スループット(High Throughput:HT)Cleanupパスに対応する、請求項1に記載の方法。
【請求項4】
グローバルQP値を決定する前に、各サブバンドのすべてのサンプルについて符号化長の推定値が形成され、その後、すべてのコードブロックについてのベースビットプレーンインデックスが決定され、次いで、これらのインデックスに基づいて、関連する符号化パスの符号化を進めることができる、請求項1から3のいずれか一項に記載の方法。
【請求項5】
サブバンドサンプルが空間変換から利用可能になるにつれて、符号化長の推定値が増分的に形成される、請求項1から3のいずれか一項に記載の方法。
【請求項6】
前記QP値は、目標全長制約と等しい状態で開始する符号化長バジェットに従って増分的に更新され、コードブロックが符号化のために増分的に利用可能となり、前記コードブロックは、「ディスパッチされたコードブロック」として識別され、以下、
a.サブバンドに利用可能になったサンプルに基づく長さ推定値を推定長レコードへ収集するステップと、
b.サブバンドにまだ利用可能になっていないサンプルについて推定される符号化長を予測する予測長レコードを生成するステップと、
c.各サブバンドの各ディスパッチされていないコードブロックについてQP値をベースビットプレーンインデックスにマッピングした後、これらのビットプレーンインデックスで切り捨てたときに、ディスパッチされていないコードブロックの推定された全体の符号化長が残りの長さバジェットを超えない見込みとなるように、推定長レコードおよび予測長レコードに基づいてQP値を増分的に決定するステップと、
d.前記QP値を、サブバンドサンプルが利用可能であり、「アクティブコードブロック」として識別されるディスパッチされていないコードブロックのベースビットプレーンインデックスにマッピングするステップと、
e.アクティブコードブロックをディスパッチされたコードブロックのセットに入力すると共に、それぞれのベースビットプレーンインデックスにおける切り捨てに対応する推定符号化長を符号化長バジェットから減算するステップと、
f.ディスパッチされたコードブロックをそれぞれのベースビットプレーンインデックスに関連付けられた精度に符号化し、そのような各コードブロックからの1つ以上の追加の符号化パスを符号化するステップと、
g.すべてのそのような生成された符号化パスを圧縮後レート歪み最適化プロセスに利用可能にするステップと、を含む、請求項5に記載の方法。
【請求項7】
サブバンドサンプルの収集のための符号化長の推定値が、実際の符号化プロセスの1つ以上の特徴を欠くブロック符号化プロセスの簡略化モデルを使用して形成され、所与のビットプレーン切り捨て点に対する推定長が、ほぼ確実に、その同じ点における実際の符号化長よりも大きくなる、請求項1から6のいずれか一項に記載の方法。
【請求項8】
サブバンドサンプルの収集のための符号化長の推定値は、有意性統計値から形成され、サンプルは、そのビットプレーンにおける量子化された大きさが非ゼロである場合、ビットプレーン境界において有意である、請求項7に記載の方法。
【請求項9】
サブバンドサンプルの収集のための符号化長の推定値は、クワッド有意性数から形成され、クワッドは4つのサンプルからなり、所与のビットプレーンについての数は、そのビットプレーン内に少なくとも1つの有意なサンプルを含むであろう前記収集からのクワッドの数を識別する、請求項8に記載の方法。
【請求項10】
長さ予測は、同じサブバンド内の利用可能なサブバンドサンプルから決定された推定長を外挿することによって得られる、請求項6に記載の方法。
【請求項11】
予測は、以前に収集された類似の画像コンテンツの典型的な推定長に関するバックグラウンド情報を組み込む、請求項6または請求項10に記載の方法。
【請求項12】
複雑度制約付き符号化手順は、ビデオに適用され、現在のビデオフレーム内の所与のサブバンドの長さ予測は、前のフレームで観測されたサブバンドサンプルを使用して決定される、請求項6に記載の方法。
【請求項13】
現在のビデオフレームの所与のサブバンド内でまだ利用可能でないサンプルについての長さ予測が、ここでは時間予測として識別される、前のフレーム内の対応するサブバンドサンプルについて形成された長さ推定値を、ここでは空間予測として識別される、現在のフレーム内の利用可能なサブバンドサンプルから形成された外挿長さ推定値と組み合わせることによって形成される、請求項12に記載の方法。
【請求項14】
時間および空間予測が、フレームにわたる利用可能なサブバンドサンプルの長さ推定値の一貫性と、現在のフレームにおいてそれぞれ利用可能および利用不可能なサブバンドサンプルと前のフレームにおける長さ推定値の一貫性とを比較する信頼性尺度に基づいて組み合わされる、請求項13に記載の方法。
【請求項15】
画像またはビデオフレームのコードブロックは、各フラッシュセットがそれ自体の符号化長制約を有するようにフラッシュセットに区分され、QP生成、ベースビットプレーンマッピング、ブロック符号化、および圧縮後レート歪み最適化プロセスはすべて、個々のフラッシュセット長さ制約に基づいて、フラッシュセット毎に動作する、請求項1から14のいずれか一項に記載の方法。
【請求項16】
コードストリームの複雑度制約付き符号化のための装置であって、請求項1から15のいずれか一項の方法を実施するように構成されたエンコーダを備える装置。
【請求項17】
請求項1から15のいずれか一項に記載の方法を実施するようにコンピュータを制御するための命令を含む、コンピュータプログラム。
【請求項18】
請求項17に記載のコンピュータプログラムを提供する不揮発性コンピュータ可読媒体。
【請求項19】
請求項17に記載のコンピュータプログラムを含む、データ信号。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像およびビデオ符号化に関する。より詳細には、限定はしないが、本発明は符号化複雑度の管理に関し、特に、ただし限定的にではなく、JPEG2000標準ファミリに属するアルゴリズムの符号化複雑度の管理に関し、ここで、符号化プロセスは、画像またはビデオシーケンスの各フレームの所与の圧縮サイズ(すなわち、符号化全長)を対象とする。
【0002】
本開示に記載される実施形態は、JPEG2000標準ファミリのパート15、正式にはITU-T Rec T.814|ISO/IEC15444-15に記載されている高スループットJPEG2000(HTJ2K)として知られている符号化技術に適用される場合に特に有益である。HTJ2Kは、JPEG2000標準ファミリの他のパートの圧縮技術で使用できる新規の「HTブロック符号化アルゴリズム」を定義している。しかしながら、本開示に記載される実施形態は、ビデオコンテンツをJPEG2000パート1の元のブロック符号化アルゴリズムで符号化するときにも利点を有し得る。
【背景技術】
【0003】
ほとんどの従来の圧縮アルゴリズムにおいて、目標の圧縮サイズを達成する唯一の方法は、量子化パラメータのセットを調整することであり、通常は、品質係数(JPEG)またはQPパラメータ(H.264/AVC、H.265/HEVC)などのマスタパラメータを介して行われる。これは、圧縮サイズが目標値に近づくまで、画像レベル全体で反復符号化を行うか、または圧縮品質が画像全体にわたって変化するようにオンラインプログレッシブ適応を行うかのいずれかで行われる。第1のケースでは、計算およびメモリ消費が非常に高くなる可能性があり、第2のケースでは、画質が低下する可能性があり、圧縮サイズを確定的に制約することができない。
【0004】
これとは対照的に、JPEG2000は、量子化パラメータの反復または適応を必要とせずに目標の圧縮サイズを達成することができる。これは、各サブバンドの各コードブロックが埋め込み表現を有し、符号化が完了した後に、各ブロックの埋め込みビットストリームを切り捨てるだけで、ほぼ最適な形で圧縮サイズと歪みを交換できるためである。これは、通常、JPEG2000のベースとなる元の最適切り捨てによる埋め込みブロック符号化(Embedded Block Coding with Optimal Truncation:EBCOT)アルゴリズムと併せて記載される圧縮後レート歪み最適化(Post Compression Rate-Distortion optimization:PCRD-opt)アルゴリズムを使用して達成される。
【0005】
最近、JPEG2000標準ファミリに新規のパート15が追加された。「高スループットJPEG2000」としても知られているパート15では、新規の高スループットブロック符号化アルゴリズムが記載される。便宜上、ここでは元の埋め込みブロック符号化アルゴリズムを「J2K-1」と呼び、新規のアルゴリズムを高スループット(High Throughput)の「HT」と呼ぶ。J2K-1とは異なり、HTアルゴリズムは、各コードブロックに対して完全な埋め込みビットストリームを生成しない。しかしながら、HTアルゴリズムは、いわゆる「HTセット」に編成される部分的な埋め込み符号化パスのセットを生成する。単一のHTセットは、HT Cleanup符号化パス、HT SigProp符号化パス、およびHT MagRef符号化パスを含み、これらはJ2K-1ブロックコーダによって生成されたCleanup、SigProp、およびMagRef符号化パスと直接関連付けることができる。
【0006】
J2K-1符号化パスとHT符号化パスとの関係を図1に示す。各HTセットは、ベースビットプレーンインデックスpに関連付けられる。そのセットのHT Cleanupパスは、コードブロック内のすべてのサンプルをビットプレーンpの大きさに関連する精度に符号化し、一方、HT SigPropおよびHT MagRef符号化パスは、存在する場合、特定のサンプルの精度を次のより微細なビットプレーンp-1にリファインする。したがって、これらの最後の2つのパスは、HTリファインメントパスとして知られている。J2K-1は、HT Cleanupパスがすべてのサンプルをビットプレーンpに完全に符号化する(埋め込まれない)場合、対応するJ2K-1 Cleanupパスが、前の符号化パス(埋め込まれた)によって提供されたすべての情報を考慮して、すべてのサンプルをビットプレーンpの精度にリファインすることを除いて、同じことを行う。
【0007】
HTブロック符号化アルゴリズムの利点は、ソフトウェアとハードウェアの両方ではるかに高いスループットで実行でき、計算エネルギーの消費がはるかに少ないことである。復号化においては、1つのHTセットをデコードするだけでよい。複数のHTセットが符号化される場合であっても、典型的には、それらのうちの1つのみが最終コードストリーム内に含まれ、デコーダが、コードブロック毎に最大で1つのHTセット、つまり、同じHTセット内に存在する1つのHT Cleanupパス(存在する場合)、ならびに任意のHT SigPropおよびHT MagRefリファインメントパスを処理することで常に十分である。
【0008】
エンコーダのHTブロック符号化アルゴリズムは、複雑度/スループットと画質との間のトレードオフを最適化するより幅広い機会を提供する。図2は、HTJ2Kエンコーダの要素を示す図である。HTJ2Kは、JPEG2000の既存のアーキテクチャおよびコードストリーム構文を実質的に保存する。画像は、最初に、JPEG2000のパート1またはパート2によって可能にされるように、任意の必要なマルチコンポーネント変換および/または非線形点変換を受け、その後、変換された画像成分は、可逆または不可逆離散ウェーブレット変換(Discrete Wavelet Transform:DWT)によって処理され、DWTは、各成分を詳細サブバンドおよび1つのベース(LL)サブバンドの階層に分解する。
【0009】
すべてのサブバンドは、サイズが4096サンプル以下のブロックに分割され、典型的な寸法は64×64または32×32であり、1024×4などの非常に幅が広く、短いブロックも、低レイテンシアプリケーションにとって重要である。各ブロックは個別に量子化され(不可逆な場合)、符号化されて、0以上の符号化パスを含むブロックビットストリームが生成される。
【0010】
エンコーダでは、オプションの圧縮後レート歪み最適化(Post Compression Rate-Distortion optimization:PCRD-opt)フェーズを使用して、グローバル(コードストリーム全体)またはローカル(コードブロックの小ウィンドウ)であり得るレートまたは歪みの目標を達成するように、生成された符号化パスを破棄する。最後に、各コードブロックからの選択された符号化パスに属するビットがJ2Kパケットに組み立てられ、最終的なコードストリームが形成される。
【0011】
J2K-1およびHTブロックコーダの両方において、エンコーダは、最終コードストリームに含まれる情報から任意の数の末尾の符号化パスをドロップすることができる。実際、エンコーダは、そのような符号化パスがドロップされることを合理的に予測できる場合には、そのような符号化パスをそもそも生成する必要はない。これを行うための戦略は、D.Taubmanによる「Software architectures for JPEG2000」、DSPに関するIEEE国際会議プロシーディングス、ギリシャ、サントリーニ(2002)に記載されており、少なくともソフトウェア実装において日常的に展開されている。
【0012】
HTブロックコーダでは、最初に出力された符号化パスがCleanupパスである限り、先頭の符号化パスと末尾の符号化パスの両方がエンコーダによってドロップされ得る(または生成されない)。結果として、HTエンコーダは、通常、図1においてHTセット-1およびHTセット-2として識別されたもののような2つの連続するHTセットに対応するたった6つの符号化パスを生成するだけで十分である。その後、図2に示すPCRD-opt段階は、最終コードストリームに含めるために各コードブロックから生成された符号化パスの最大3つのパスを選択し、選択されたパスは単一のHTセットに属する。
【0013】
場合によっては、エンコーダが複数のHT Cleanupパスを生成する必要はない。これは、p=0に対するCleanupパスのみが対象となる可逆圧縮に確かに当てはまり、このパスは、図1において「HT Max」セットとして識別される縮退HTセットに属し、リファインメントパスを有さない可能性がある。不可逆圧縮の間、HT Maxセットに関連する歪みは、JPEGおよび他のほとんどのメディアコーデックにおいて圧縮を制御するために量子化が使用されるのと全く同じ方法で、所望のレベルの画質を達成するために設定され得る量子化パラメータに依存する。
【0014】
上述したように、HTJ2Kエンコーダが画像またはビデオソースを圧縮するための複数の方法がある。最も単純な手法は、シングルパスHT Maxセットのみを生成し、量子化パラメータを変調することによって画質と圧縮サイズとの間のトレードオフを管理することである。
【0015】
これとは逆に、エンコーダは、すべての可能なHT符号化パス(各コードブロックの有意な大きさのビットプレーン毎に1つのHTセット)を生成でき、PCRD-optレート制御アルゴリズムに、各コードブロックの質を切り捨てる最適点の決定を任せ、次いで、各コードブロックの決定された切り捨て点について最終的なコードストリームに含まれる必要があるCleanupパス、SigPropパスおよびMagRefパス(それぞれの多くとも1つ)を選択する。これは、計算およびメモリ両方の全くの無駄である。最適化された実装形態では、この手法は、J2K-1アルゴリズムと比較して、依然として何倍も計算上有利であるが(例えば、4~5倍速い)、複数のHT Cleanupパスに冗長な情報が含まれているため、符号化データをメモリに一時的にバッファリングするコストは、J2K-1の場合よりもかなり高くなる。参照のため、これを「HT-Full」符号化と呼ぶ。
【0016】
出願人の先の国際出願AU2019/051105号明細書(国際公開第2020/073098号として現在公開されている)は、ビデオ符号化アプリケーションにおいてドロップする先頭の符号化パスの数(すなわち、生成する最も粗いHTセット)を決定するための様々な方法を記載している。第1の方法では、エンコーダは、前のフレームから収集された情報を使用して、現在のフレーム内の各コードブロックの生成されたHT符号化パスの符号化長に対する制約を確立し、反復符号化技術を使用して、少なくともいくつかのパスが制約を満たすことを確実にし、その後、PCRD-optアルゴリズムが実行される。この方法は、各コードブロックに対して生成される必要がある符号化パスの数を、事前に決定論的に制限することができないという困難性を有する。
【0017】
国際公開第2020/073098号に記載される第2の方法では、前のフレーム内の各コードブロックに対して行われたPCRD-opt決定の様々な属性が、後続フレーム内の同じコードブロックに対して生成する適切な範囲の符号化パスの決定に使用するために記録され、その結果、生成された符号化パスのセットは、コードブロック毎に、より高いまたは低い精度に経時的に適応する。その目的は、任意の所与のコードブロックに対して生成されるパスの数を決定論的な方法で制約しながら、現在のフレームのPCRD-optアルゴリズムに適切な範囲のオプションを提供することである。後の実験比較の参照のために、この方法は、本明細書では「PCRD-Stats」法と呼ぶ。「PCRD-Stats」法は、時間の経過に伴うシーンの複雑度の変化、例えばシーンカットに迅速に応答することができないという欠点を有する。これらの方法はどちらも、静止画像符号化とは対照的に、ビデオ符号化にのみ適している。
【0018】
国際公開第2020/073098号には、モデルベースの技術を使用して、各コードブロックの量子化されたサブバンド統計の統計値を、切り捨て点の大きなセットの各々における符号化長および歪みの推定値に変換するさらなる方法が記載されている。各コードブロックの推定される歪み長特性は、目標圧縮全長に基づいて各コードブロックのおおよそ最適な切り捨て点を推定する粗PCRD-optアルゴリズムに供給される。次いで、これらの推定される切り捨て点を使用して、実際に生成する符号化パスの範囲を決定し、その結果はフルPCRD-opt段階に供給される。この方法は実装が複雑であり、最初の(粗)PCRD-opt段階のために統計値が収集される時点と、コードブロックサンプルが実際に符号化される時点との間のサブバンドサンプルをバッファするために大量のメモリを必要とする可能性がある。
【発明の概要】
【0019】
本発明の実施形態は、HTJ2Kコードストリームの複雑度制約付き符号化のための新規の一連の方法を記載しており、各サブバンド(各コードブロックではない)のローカル統計値またはグローバル統計値の収集、空間変換および量子化プロセスによるまだ生成されていないサブバンドサンプル統計値の予測の生成、およびグローバル量子化パラメータ生成のためのこの情報の使用を含み、各コードブロックで生成すべき最も粗いビットプレーンを簡単な方法で導出することができる。一実施形態では、方法の適用は、サブバンドサンプルが生成されるときにオンラインで(すなわち、動的に)実行されて、量子化サンプルが利用可能なコードブロック毎に生成するHTセットの集合を決定することができる。この方法はまた、画像またはビデオフレームのためのすべてのサブバンドサンプルが生成され、メモリにバッファされるまで延期でき、最も粗いビットプレーン、したがって、画像またはフレームにおけるすべてのコードブロックのために生成されるべき一連のHTセットが生成され、その後、符号化自体が行われ得る。これらのバリエーションは、低メモリおよび高メモリ構成を含む様々なアプリケーションおよび展開プラットフォームをサポートする。実施形態は、静止画像であっても目標圧縮サイズへの低メモリ符号化を達成するために使用することができる予測方法を記載しており、シーン複雑度の急激な変化に対してロバスト性を維持しながら、ビデオ符号化アプリケーションにおいて時間的情報を利用することができる効率的な適応予測方法が開示される。
【0020】
本明細書に記載される実施形態と、部分的にのみ埋め込まれたブロック符号化アルゴリズムを用いた複雑度制約付き符号化について前述した方法との違いは、以下を含む(D.Taubman、A.NamanおよびR.Mathewによる「FBCOT:a fast block coding option for JPEG2000」、SPIE Optics and Photonics:Applications of Digital Imaging、サンディエゴ(2017)も参照されたい)。
1.新規方法の実施形態は、目標サイズに依存しないマッピングと共に、目標圧縮サイズに依存する単一の量子化パラメータ(Quantization Parameter:QP)を、各コードブロック内で生成するためにQP値から最も粗いビットプレーンまで決定することを含む。
2.新規方法の実施形態は、各サブバンドの単純な統計セットの収集を含み、そこから上述のQP値の各値の圧縮サイズを推定することが可能である。
3.新規方法の実施形態は、まだ生成されていないサブバンドサンプルに関連する統計値を予測することを含み、その結果、QP値は、観測サンプルおよび予測サンプルから一緒に導出された推定される圧縮サイズに基づいて定期的に更新され得る。
4.ビデオアプリケーションの場合、シーケンス内の前のフレームからの情報は、現在のフレーム内の見えないサブバンドサンプルの統計の適応的予測を介して実施形態の方法に組み込まれ、予測は空間推論と時間推論の両方を使用して形成される。
【0021】
本明細書で記載される実施形態は、GPU配置を含む低メモリおよび高メモリソフトウェアベースの符号化配置、ならびに低レイテンシおよび高レイテンシハードウェア配置におけるアプリケーションを有する。実施形態は、低い計算複雑度を維持しながら、符号化画像品質に対してレイテンシおよびメモリを別々に最適化することを可能にする。実験的研究において、本発明の実施形態は、画質およびスループット/複雑度の両方に関して、以前に報告された複雑度制約付き符号化戦略を大幅に上回ることができる。実施形態の主な焦点は、画像およびビデオの複雑度制約付きHTJ2K符号化であるが、実施形態を使用して、ビデオの従来の(すなわち、J2K-1)JPEG2000符号化のロバスト性を改善することもできる。
【0022】
本発明は、目標全長制約を受ける、JPEG2000および高スループットJPEG2000コードストリームを含む、JPEG2000コードストリームの複雑度制約付き符号化のための方法を提供し、本方法は、以下、
a.空間変換によって生成されたサブバンドサンプルに関する情報を収集するステップと、
b.複数の潜在的なビットプレーン切り捨て点について、前記収集された情報から符号化長の推定値を生成するステップと、
c.各サブバンドの各関連するコードブロックのベースビットプレーンインデックスに量子化パラメータ(QP値)をマッピングした後、これらのビットプレーンインデックスで切り捨てたときに推定される全体の符号化長が前記目標全長制約を超えない見込みとなるように、これらの長さ推定値からQP値を決定するステップと、
d.前記QP値を各コードブロックのベースビットプレーンインデックスにマッピングするステップと、
e.各関連するコードブロックを、対応するベースビットプレーンインデックスに関連する精度で符号化し、各コードブロックからの1つ以上の追加符号化パスを符号化するステップと、
f.このようにして生成されたすべての符号化パスを、圧縮後レート歪み最適化プロセスにかけて、圧縮結果として各コードブロックから出力される符号化パスの最終セットを決定するステップ、を含む。
【0023】
一実施形態は、符号化長の推定値を生成するための方法を記載する。一実施形態は、ブロック符号化の前にサブバンドサンプルをバッファするために必要なメモリ量を削減するために、観測されないサブバンドサンプルの推定符号化長の予測を利用して、QPパラメータを増分的に決定する方法を記載する。一実施形態は、予測方法を拡張して、ビデオアプリケーションのための空間予測および時間予測のロバストな組合せを組み込む。一実施形態は、低レイテンシ画像およびビデオ符号化への上記で開示された方法の適用を含む。
【0024】
本発明はさらに、コードストリームの複雑度制約付き符号化のための装置であって、上記の方法を実施するように構成されたエンコーダを備える装置を提供する。
【0025】
本発明はさらに、上記の方法を実施するようにコンピュータを制御するための命令を含むコンピュータプログラムを提供する。
【0026】
本発明はさらに、上記によるコンピュータプログラムを提供する不揮発性コンピュータ可読媒体を提供する。
【0027】
本発明はさらに、上記によるコンピュータプログラムを含むデータ信号を提供する。
【図面の簡単な説明】
【0028】
本発明の特徴および利点は、添付の図面を参照して、単なる例として、その実施形態の以下の説明から明らかになるであろう。
図1】J2K-1およびHTアルゴリズムによって生成された符号化パスのビットプレーン寄与を示す図である。
図2】最適化切り捨てによるFASTブロック符号化(FAST Block Coding with Optimised Truncation:FBCOT)パラダイムに基づくHTJ2K符号化システムのブロック図である。
図3】本発明の一実施形態によるコア複雑度制御方法を示す図である。
図4】本発明の一実施形態によるオンライン適応複雑度制御方法を示す図である。
図5】本発明の一実施形態による低レイテンシ符号化のためのフラッシュセットの生成および符号化を示す図であり、2つのレベルのマラー型DWTについて示されている。ストライプバッファから符号化プロセスへのすべての接続が示されているわけではない。
図6】6つのセグメントで構成され、そのうちの4つはフレームの上半分において非常に低い複雑度を有する、シーン複雑度の急激な変化を伴うビデオ上の1bpbにおける複雑度制御戦略の探索を示すグラフである。
【発明を実施するための形態】
【0029】
本発明の実施形態の以下の説明では、5つの「実施の形態」が議論される。
実施の形態1:符号化長の推定値を使用するQPベースの複雑度制御
【0030】
この実施形態の背後にある重要な原理は、変換画像の量子化パラメータのほぼ最適なセットがすべて、ここではQP(これは、H.264/AVC、H.265/AVC、またはAV1などの最新のビデオコーデックで使用されるQPパラメータと同じではないが、関連する役割を果たすことに留意されたい)として識別される単一のグローバルパラメータに関して記載され得ることである。まず、この特性について説明する。
【0031】
画像内のすべてのサンプルを表すベクトルとしてxを、変換サブバンドbからのサブバンドサンプルの2Dシーケンス(n≡[n,n]によってインデックス付けされる)についてy[n]を記すと、変換ドメイン表現と画像ドメイン表現との間の関係は、以下のように表すことができる。
【数1】
式中、sb,nは、バンドb内の位置nに関連付けられた合成ベクトルである。次に、サブバンドサンプルの量子化による、画像ドメインにおける予測二乗誤差歪みDは、以下のように記すことができる。
【数2】
式中、
【数3】
は、サブバンドbのサンプルにおける予測二乗量子化誤差であり、
【数4】
は、「エネルギー利得係数」であり、合成ベクトルsb,nの二乗ユークリッドノルム(サンプル値の二乗和)であり、これらはすべて互いに変換されているので、画像境界付近を除いてすべて同じユークリッドノルムを持つことに留意されたい。
【0032】
より一般的には、視覚的に重み付けされた歪みメトリックの最小化を対象とすることが多く、次のように記すことができる。
【数5】
式中、Dは、依然としてサブバンドbの予測平均二乗量子化誤差であり、Wは、異なる空間周波数バンドの歪みに対する人間の視覚システムの様々な感度を説明する重み係数である。
【0033】
高ビットレートでは、サブバンドサンプル量子化プロセスにおける一般的な歪みレートモデルは、以下のようになる。
【数6】
式中、Nはサブバンドb内のサンプル数であり、σ はこれらの分散であり、Lはこれらのサンプルの符号化表現に関連するビット数であり、gおよびaは定数とすることができる。重要なのは、このモデルの指数関数的性質であり、その性質から、符号化長
【数7】
の制約に従ってDを最小化するサブバンド量子化割り当てを以下のように最小化しなければならないことを導き出すことができる。
【数8】
一部のλ>0の場合、その解は以下となる。
【数9】
すなわち、サブバンドbにおける平均二乗量子化誤差は、以下である。
【数10】
【0034】
サブバンドbに対して選択された量子化ステップサイズについてΔを、量子化されたサブバンドサンプルから破棄された最下位の大きさのビットプレーンの数についてPを記すと、以下のようになり、
【数11】
したがって、所与の動作点λにおいて破棄すべきビットプレーンの正しい数は、おおよそ以下となる。
【数12】
【0035】
以降、上式の右辺の第1項および第2項をそれぞれサブバンド固有バイアスパラメータβおよびグローバル量子化パラメータQPとして、以下のように解釈する。
【数13】
【0036】
本発明の複雑度制御方法は、ビットプレーンに対応するように、サブバンドbのコードブロックにおいて、Cup0で示される「ベースCleanupパス」を割り当てる。
【数14】
式中、Roffは、Roff=1/2などの丸めオフセットである。Roffの実際の値は、すべてのサブバンドbにわたって一貫している限り、実際には重要ではない。Pの値は、コードストリームがサブバンド内のすべてのコードブロックについてこのベースCleanupパスCup0のみを含む場合に、サブバンドbの量子化されたサンプルから効果的に破棄される最下位の大きさのビットプレーンの数として解釈することができる。
【0037】
これらの準備作業が終了したので、図3に示す本発明のコア複雑度制御方法を記載することができる。
【0038】
サブバンドbの各コードブロックにおいて、ビットプレーンPから開始して、多くともZ個の符号化パスが生成され、ここで、Zの好ましい値は6である。Pの値は、Gの整数倍に量子化されるQP値を使用して、式(1)から決定され、Gは、連続する整数間の「グリッド」点の数として解釈することができる。図3ではG=4であり、これは良好な選択である。Gに関しては、QPは以下のように整数Fを用いて表すことができ、
【数15】
式(1)は以下のように書き直すことができる。
【数16】
式中、
【数17】
はサブバンドbの整数バイアスである。式(2)は、図3の参照番号1および2で示されるボックスによって実施される。
【0039】
F(すなわち、QP)の値を見出すために、Pにおける各候補値pに関連するバイト数が推定され、各サブバンドbおよび各実現可能なベースビットプレーンpにおける推定長L (b)を含む「推定長レコード」(またはベクトル)L(b)を形成する。実際の長さの推定方法は、本明細書で後述するように、本発明の実施の形態2を形成する。しかしながら、ここでは、これらの推定値が保守的であること、すなわち、サブバンドbのすべてのコードブロックにわたるビットプレーンpにおけるCleanupパスに関連する符号化バイトの総数が、L (b)に近いが、それより大きくないことが非常に重要であることに留意する。
【0040】
各推定長レコードL(b)の要素は、G回複製され、以下を形成するようにバイアスされる。
【数18】
すなわち、L(b)ベクトルの各要素L (b)が、
【数19】
の要素から開始して、
【数20】
ベクトルのG要素
【数21】
にコピーされる。これは、図3において参照番号3および4で示されるボックスの機能である。
【0041】
拡張長さベクトル
【数22】
が累積されて
【数23】
が形成され、その要素は以下の通りである。
【数24】
【0042】
明らかに、整数Fがfに等しくなるように選択された場合、Lは、すべてのコードブロックのベースCleanupパスCup0によって生成された符号化バイトの(保守的な)推定数である。QP選択操作(図3で参照番号5で示されたボックス)は、単純に以下を選択する。
【数25】
式中、Lmaxは符号化バイトの目標最大数である。長さの推定値は保守的であるため、すべてのベースCleanupパスに関連する実際の符号化バイト数は、Lmaxよりも大幅に小さくなければならないが、すべてのコードブロックからの次のより微細なCleanupパスに関連する符号化バイトの総数は、Lmaxよりも大きくなる可能性が高い。Z>3の符号化パスが各コードブロックに対して生成される限り、PCRD-optアルゴリズムは、Lmaxに非常に近い総圧縮サイズを達成するのに十分な素材を有する可能性が高い。
【0043】
本発明において、長さ推定プロセスは、それ自体がレート制御(すなわち、所望の符号化長を有するコードストリームを生成すること)の基礎ではないという事実を強調する価値がある。長さ推定プロセスは、理想的には大幅な差をつけて、符号化長を意図的に過小推定し、符号化長の推定方法は、好ましくは非常に単純であるため、信頼できるレート制御には適していない。その代わりに、レート制御は、コードブロックに対する複数の切り捨て点の利用可能性、すなわち、コードブロックに対する複数の符号化長および関連する歪みを利用する、圧縮後レート歪み最適化手順によって実行される。実際、本発明の着想の1つの源は、非常に高い確率で所望のレベルの保守性を有する低複雑度の長さ推定器を考案することが可能であるという本発明者らの最近の発見(本明細書において後に実験的に実証される)である。
【0044】
ここで記載される複雑度制御方法は、HTブロックコーダを使用した、高スループットJPEG2000を対象としているが、他のメディア符号化システムに適用することができる。最も注目すべきことは、同じ複雑度制御方法を使用して、J2K-1ブロック符号化アルゴリズムによって生成される符号化パスの数を制限することができ、その結果、サブバンドb内の任意の所与のコードブロックに対して、多くともZ-1のパスがベースビットプレーンPに関連するCleanupパスを超えて生成されることである。J2K-1ブロックコーダの符号化効率は、通常、HTブロックデコーダの符号化効率(例えば、約10%良好)と同様であるため、両方の場合で同じ符号化長の推定方法を使用することができる。
【0045】
HTブロック符号化アルゴリズムとJ2K-1ブロック符号化アルゴリズムとの主な違いは、J2K-1が完全に埋め込まれているため、J2K-1ブロックコーダは、コードブロックがそれらのより粗いビットプレーンで有意なサンプルを含む限り、ベースビットプレーンPよりも粗いビットプレーンに関連するすべての符号化パスを生成しなければならないが、HTブロックコーダはこれを行う必要がないことである。それにもかかわらず、ビットプレーンPでのCleanupパスの後に符号化がZ-1のパスを停止できるという事実は、各コードブロックに対してすべての可能な符号化パスを単純に生成することと比較して、依然として著しい計算上の節約を表すことができる。
【0046】
この方法は、HTブロック符号化アルゴリズムを使用するコードブロックとJ2K-1ブロック符号化アルゴリズムを使用するコードブロックとが混在するコードストリームを生成するためにも使用することができる。
実施の形態2:サブバンドサンプル統計を使用した符号化長推定
【0047】
ここで、図3の参照番号6および7で示されるボックスによって実施されるように、推定長L (b)をどのように形成すべきかという問題に注目する。本方法は、以下の量子化インデックスを符号化するためのアルゴリズムの符号化コストをモデル化する。
【数26】
式中、
【数27】
は、それぞれ符号および量子化された大きさであり、pは、ビットプレーンp内のCleanupパスを超えて切り捨てた場合に、各サンプルから破棄される最下位の大きさビットの数であるため、有効量子化ステップサイズは実際のステップサイズΔ時間2であることに留意されたい。
【0048】
モデル化されたアルゴリズムは、大きさμb,p[n]、および大きさが非ゼロであるサンプルの符号χ[n]のみを符号化する。好ましい実施形態では、モデル化されたアルゴリズムは、実際の符号化アルゴリズムの粗近似である。特に、HT Cleanupエンコーダのモデル化されたアルゴリズムは、符号化長L (b)の保守的な推定値を得るために、実際のHT Cleanupアルゴリズムを効率的にする特徴の多くを意図的に省略する。本明細書では、計算が効率的であり、かつ実際に効果的である特定の実施形態について記載する。
【0049】
推定手順の第1のステップは、各ビットプレーンpに対するクワッド有意性統計値Cb,pの収集を含む。具体的には、サブバンドサンプルは、以下の場合に、サンプルy[n]がクワッドqに属するように、q≡[q,q]によってインデックス付けされた2×2個のクワッドに分割される。
【数28】
各クワッドについて、そのサンプルのいずれかが非ゼロの大きさμb,p[n]を有する場合、バイナリ有意値σb,p[q]がビットプレーンpにおいて1に設定され、すなわち、
【数29】
であり、次に、σb,p[q]値を累積することによって以下のようにクワッド有意性統計値が取得される。
【数30】
【0050】
なお、統計値Cb,pは、個々のμb,p[n]値を明示的に求めることなく算出することができることに留意されたい。各クワッドに対する最大の大きさを最初に形成し、量子化して以下を得るだけで十分である。
【数31】
【0051】
次いで、各候補ビットプレーンpについて、
【数32】
と2とを比較する。具体的には、Cb,pは、
【数33】
に対応するクワッドの数qである。
【0052】
推定手順の第2のステップは、統計値Cb,pを推定バイト数に変換することを含む。HT Cleanup符号化アルゴリズムは、MagSgnバイトストリーム、VLCバイトストリーム、およびMELバイトストリームとして知られる3つのバイトストリームを生成する。クワッドqからMagSgnバイトストリームにパックされるビット数は、クワッド内の量子化された大きさの精度の境界に依存する。実際のアルゴリズムでは、この境界は、いわゆる「大きさ指数」Eb,p[q]に基づいており、Eb,p[q]-1は、クワッド内の任意のサンプルに対してμb,p[n]-1を表すのに必要なビット数であり、追加の1は、非ゼロサンプルの符号ビットを伝達する必要があることを示している。ここで簡略化されたモデルの場合、以下のように数量を使用する方が便利であり、
【数34】
b,p[q]-1≦Pb,p[q]≦Eb,p[q]であることに留意されたい。クワッドq内の4つのサンプルがすべてPb,p[q]の大きさビットを受信し、非ゼロサンプルのみが符号ビットを受信する、非常に単純なモデルを採用する。非ゼロであるクワッド内のサンプルの割合は、1-2-Pb,p[q]としてモデル化される。このモデルは、本質的に、量子化されたサブバンドサンプルの大きさμb,p[n]が、0から2Pb,p[q]-1までの間にわたって均一に分布すると仮定しており、これは、実際にはラプラシアン確率分布に近いものに従う傾向があるサブバンドデータに対する非常に保守的な仮定である。このモデルの下でのMagSgnビットの総数は、以下のように拡張することができる。
【数35】
【0053】
大きさおよび符号ビットに加えて、Pb,p[q]値を伝達するコストのための単純なモデルを採用する。実際のHT Cleanupエンコーダは、第1の理由として大きさ指数Eb,p[q]がPb,p[q]値と同一でない(境界付けされた大きさに1のオフセットがある)ため、第2の理由としてHTブロックコーダが指数境界を伝達する方法に複雑なサンプル間(単にクワッド間ではない)依存性があるため、Pb,p[q]値を伝達するのとは異なる大きさ指数境界を差動的に伝達する。これをすべてモデル化しようと試みることも可能であるが、好ましい実施形態は、代わりに、同じ情報を記載する単純なコーダが実際のCleanupアルゴリズムの符号化長の上限を提供すべきであるという仮定に依拠する。ここで推奨される単純なコーダは、有意性の確率が0.5未満であるときはいつでもクワッド有意性シンボルの0次エントロピを達成すると仮定される符号化機構を有するクワッド有意性シンボルの適応ランレングス符号化と(非有意性クワッドのランを介して)組み合わされた、単項(コンマ)符号を使用した、各有意性クワッドに対するPb,p[q]の独立したシグナリングを含み、適応ランレングスコーダは、各ランに対して1ビット未満を使用することができないため、有意性尤度が0.5より大きくなると、各クワッドに対して単一の有意性ビットを出力するように縮退する。これらの2つの実施の形態(クワッド有意性符号化および有意性クワッドのPb,p[q]の単項符号化)は、それぞれHT CleanupコーダのMELおよびVLCバイトストリームを介して伝達される情報に若干類似している。
【0054】
単項符号の場合、第1のビットは、クワッドが有意である(すなわち、Pb,p[q]>0)ことを条件としてPb,p[q]>1であるか否かを示し、第2のビットは、Pb,p[q]>1を条件としてPb,p[q]>2であるか否かを示し、以下同様である。したがって、サブバンドの単項符号ビットの総数は、単純に以下の通りである。
【数36】
【0055】
重要度のランレングス符号化の場合、ビット数は以下のように近似される。
【数37】
式中、Qはサブバンドのクワッドの総数であり、H(u)は確率min{0.5,u}を有するバイナリランダム変数のエントロピである。関数H(u)を評価するために、好ましい実施形態は、ルックアップテーブルへのインデックスとして、uの浮動小数点表現から最上位ビットのいくつかを取ることによって得られるような、uの量子化された対数様表現を使用する。
【0056】
いくつかの実施形態では、HT Cleanupパスによって用いられるランレングス符号化手順の適応性は、サブバンド内の個々のラインペアjにわたって最初にクワッド有意性統計値を累積し、
【数38】
と、各ラインペアjについてランレングスビットカウントを以下のように別々に計算することによって組み込むことができる。
【数39】
式中、Q line-pairは、単一のラインペア内のクワッドの数である。次に、式(5)は次のように置き換えられる。
【数40】
【0057】
いずれにしても、サブバンドbのビットプレーンpについての最終的な推定バイト数は、上記で展開された3つの成分を加算し、8で除算することによって単純に形成され、以下の式が得られる。
【数41】
【0058】
実際には、Lb,pは、ビットプレーンpのHT Cleanup符号化によって必要とされるバイト数を常に過大推定するが、次のより微細なビットプレーンp-1のHT Cleanup符号化によって必要とされるバイト数よりも小さい傾向があることが観察され、これは、各コードブロックに対して生成された符号化パスの数が少なくともZ=4である場合に、図3の全体的な複雑度制御アルゴリズムが成功するために必要な特性である。各サブバンドbについて、任意のクワッドが有意である最大ビットプレーンP maxが存在する。すべてのp>P maxおよびCb,p=0についても、式(6)に対する唯一の非ゼロの寄与は、すべてのクワッドが重要でないという事実を伝達するためのごくわずかなコストRb,pである。特に、p>P maxについて、上記の手順を使用して求められるLb,pの値は、最大でサブバンド寸法に依存する。P max自体はデータ依存であるが、量子化ステップサイズΔ、サブバンドサンプルを生成するために使用される変換の特性、およびP max≦P boundのような、元の画像サンプル値のビット深度のみに依存する明確な境界P boundが存在する。本方法の実施態様は、この境界を使用して、各サブバンドbについて収集される必要があるクワッド有意性統計値Cb,pの数を決定することができる。
【0059】
いくつかのアプリケーションでは、Δ、変換特性または画像ビット深度に関係なく、サブバンドbについて収集されるクワッド有意性統計値Cb,pの数に固定限界Sを課すことが望ましい。これは、p≪P maxについて(すなわち、非常に高い精度で)、以下の関係が成り立つ傾向があるという事実を利用することによって、本方法の有効性を著しく損なうことなく行うことができる。
【数42】
【0060】
これは、非常に高い精度では、サブバンド内のほとんどのサンプルが有意になり、Cb,p≒Q、(Vb,p-Vb,p+1)≒Q、(Mb,p-Mb,p+1)≒4Qおよび(Rb,p-Rb,p+1)≒0となるためである。この関係を使用して、実施形態は、統計値Cb,pを収集し、以下のようにそれらのビットプレーンpについてのみ長さ推定値Lb,pを明示的に計算することができる。
【数43】
b,p=Lb,Pbmin+(5/8)Q(P min-p)から各p∈[0,P min)について長さ推定値を導出する。
【0061】
読者は、上述した符号化長の推定方法が、HT Cleanup符号化手順によって生成されたバイト数の保守的なモデルを提供するために使用することができる多くの関連する方法のうちの1つにすぎないことを理解するであろう。実際のエンコーダの挙動をより正確に模倣するより精巧なモデルを使用することができるが、実際の経験は、HT Cleanupエンコーダ自体の複雑度が低く、生成された符号化パスZの数が少ない場合でも上記の非常に単純なモデルで十分であるという事実を考慮すると、これらは正当化されない可能性があることを示唆している。
実施の形態3:予測統計を使用したオンラインQP適応
【0062】
実施の形態1に記載される複雑度制御方法では、QPパラメータが算出され得る前に、すべてのサブバンドサンプルから収集された統計値から符号化長が推定される必要がある。これにより、ブロック符号化プロセスによって生成される符号化パスが決定される。結果として、ブロック符号化プロセスが開始され得る前に、画像全体、その量子化されたサブバンドサンプル、または何らかの同等のデータセットをメモリにバッファリングする必要がある。多くの場合、計算量が少なくても、メモリの複雑度が高くなる。
【0063】
この実施の形態3は、空間変換プロセスによって実際に生成されたサブバンドサンプルに基づいてQP値を動的に更新することによって高いメモリ複雑度を回避する。図4は、この方法を例示し、1つのサブバンドbのみに焦点を当てながら、他のサブバンドが果たす役割を識別している。空間変換(ここでは離散ウェーブレット変換)は、画像全体がメモリにバッファリングされる必要がないようにパイプライン化される。周知のように、画像ラインは、トップダウン方式で離散ウェーブレット変換(Discrete Wavelet Transform:DWT)に増分的にプッシュすることができ、この方式では、適度な量の内部状態メモリのみを使用して、各サブバンドbについてサブバンドサンプルのラインを増分的に生成する。当然ながら、画像データのボトムアップおよび列方向の増分プッシュも、適切な場合、同様に実現することができるが、ほとんどのアプリケーションでは、画像データはラスタスキャン順序で到着するので、ここでは特にその場合の手法について記載する。サブバンドサンプルは、メモリバッファ内で収集され、そこからブロック符号化プロセスによって消費される。
【0064】
サブバンドサンプルをストライプに収集することが有用であり、各ストライプは、サブバンドのコードブロックの総数(典型的にはコードブロックの1行)を表す。図に示すように、プロセスの任意の所与の点で、以下のように4つのカテゴリのサブバンドサンプルを識別することができる。
1.「アクティブなストライプ」kは、変換によって生成され、QP値(等価的に、F値)が割り当てられる準備ができているサブバンドサンプルに対応し、ベースCleanupビットプレーンPが割り当てられ、これらのサンプルのブロック符号化が続行されることを可能にする。
2.「ディスパッチされたストライプ」は、QP値(すなわち、F値)が既に割り当てられている、以前にアクティブであったサブバンドサンプルに対応し、したがって、ブロック符号化を進めるためのベースCleanupビットプレーンPに対応する。これらのサンプルは既に符号化されている可能性があるが、これは厳密な要件ではない。並列処理環境では、コードブロックは、アクティブなストライプのQP値が決定されている間、1つ以上のディスパッチされたストライプが依然として実行中であり得るように、2つ以上のストライプにまたがることができる同時処理エンジンに分配され得る。ここで記載される方法は、複雑度制御プロセスとブロック符号化プロセスとの間の厳密な同期を必要としない。
3.「事前データ」は、変換によって生成されたが、まだストライプ全体に収集されていないか、またはそれらのストライプがまだQP割り当ての準備ができていないサブバンドサンプルに対応する。事前データの高さは、サブバンドサンプルの新規のラインの生成と、それらのサンプルがQP割り当ておよび符号化のためにアクティブになる点との間の遅延として理解することができる。より大きな遅延は、アクティブなストライプを超えて存在するサンプルの符号化長を予測するためのより既知の統計を提供するが、これはより多くのメモリを消費する。多くのアプリケーションでは、新規のストライプがアクティブになる時点で事前データが全く存在しないように、遅延を0に低減することが望ましい。
4.「見えないデータ」は、変換によってまだ生成されていないサブバンドサンプルに対応する。
【0065】
実施の形態1に記載される複雑度制御方法の場合のように、サブバンドサンプルは、ベースCleanupパス(Cup0)ビットプレーンPの各候補pについて、符号化長の推定値L (b)を生成するために使用される。ここでの違いは、符号化長の推定値が、サブバンドの1つのストライプのみを記載するレコードに収集されることである。具体的には、レコードL (b)内のエントリLk,p (b)は、ビットプレーンpに対するHT Cleanupパス内で、サブバンドbのストライプk内のサブバンドサンプルの符号化によって生成される符号化バイト数の保守的な推定値を提供する。一般に、これらの長さは、複数のコードブロック、具体的には、ストライプk内に存在するすべてのコードブロックを表す。
【0066】
いくつかの実施形態では、長さ推定値Lk,p (b)は、整数ではなく分数または浮動小数点値を取り得る。本発明の実施の形態2に記載される符号化長の推定方法は、当然ながら、サブバンド内の個々のラインペアからの長さ寄与を推定するように適合されているので、小数精度でラインペア長さの推定値を計算し、集約することに有用であり得る。これはまた、上記で定義されたような任意の「事前データ」から部分長の推定値を形成し、部分レコードLadv (b)内で収集することを可能にする。
【0067】
この実施の形態では、すべての見えないデータが利用可能になるのを待つことなく、サブバンドb内のアクティブなストライプkに対してQP値が生成される。これらの動的QP値を生成するための方法は、実施の形態1で記載したものと実質的に同様である。主な違いは以下の通りである。
1.アクティブなストライプを超えて存在するサブバンドサンプルに関連する符号化長を予測する必要がある。
2.ディスパッチされたストライプに属するコードブロックのベースCleanupパスに関連する推定バイト数を追跡する必要があり、これは、それらが異なるQP値を有することができ、このQP値に基づいてベースビットプレーンPが以前にコミットされているためである。
【0068】
図4に示すように、ここで述べた第1の問題は、アクティブなストライプkを超えるすべてのサンプルに関連する推定長を表すための予測長レコードΛ (b)を生成する「長さ予測器」によって対処される。予測プロセスについては、以下でさらに説明する。
【0069】
第2の問題は、ベースビットプレーンPがQP値(等価的に、QP=F/Gであるような整数値F)を使用して決定される時点でレコードL (b)から推定長B (b)を抽出することによって対処される。これは、図において参照番号10で示されるボックスによって行われ、式(2)を使用してストライプk内のコードブロックについてPを取得し、以下のように報告する。
【数44】
【0070】
これらのB (b)値は、コミットされたバイトの総数Baccを追跡するために、すべてのサブバンドのすべてのディスパッチされたストライプについて累積される。B (b)およびBacc値はスカラーであるが、L (b)およびΛ (b)はベクトル値レコードであり、アクティブなストライプkに対してまだ決定されていないベースビットプレーンに対する多数の仮説pを表すことに留意されたい。
【0071】
QP推定手順は、目標最大バイト数Lmaxが既にコミットされたバイト数Baccだけ減少され、式(4)が次のようになることを除いて、実施の形態1で用いられるものと同様である。
【数45】
および
【数46】
は、すべてのサブバンドbの最新の予測およびコミットされていないアクティブなレコードからオンラインで(すなわち、適応的に)計算される。特に、任意の所与のサブバンドbに対する最新のアクティブなストライプのインデックスについてkを、式(3)に従って、推定長レコードLkb (b)の拡張されバイアスされたバージョンについて
【数47】
を、最新の予測レコードΛkb (b)の同様に拡張されバイアスされたバージョンについて
【数48】
を、サブバンドbに対するすべてのディスパッチされたストライプインデックスのセットについてD(b)を記し、
【数49】
は、以下から求められる。
【数50】
【0072】
具体的には、式(3)の拡張およびバイアス演算は、ここでは以下のようになる。
【数51】

および式(8)は、以下を意味する。
【数52】
【数53】
は、式(7)によって求められる値Fに関する各仮説fについて、サブバンド内のディスパッチされたストライプに属さないすべてのサブバンドサンプルの(保守的な)推定符号化長について説明することに留意されたい。ディスパッチされたストライプは、上述したように、すべてのディスパッチされたストライプにF値(すなわち、QP)が既に割り当てられ、Bacc内のタリーにバイトがコミットされているため、除外される。
【0073】
QP(すなわち、F)割り当て手順は、任意のサブバンドに対して新しいアクティブなストライプが利用可能になるたびに実行することができる。この場合、式(8)の第2の合計は、割り当てが実行されているサブバンドbのみを含む可能性があり、他のすべてのサブバンドは、それらの最新のアクティブなストライプが以前にディスパッチされたことがある。しかしながら、この手順は、より少ない頻度で実行することもでき、いくつかのサブバンドがQP割り当ての準備ができたアクティブなストライプを有するまで待機し、その結果、式(8)の第2の合計は複数の項を含む。QP割り当て手順を少ない頻度で実行すると、推定長レコードおよび予測長レコードを拡張、バイアス、および累積することに関連する全体的な計算が減少するが、この計算は過度な負担にはならない。
【0074】
ここで、予測長レコードΛ (b)の作成に注目する。図4に示すように、予測を生成するために利用可能な情報は、アクティブなおよび過去の推定長レコード{L (b)0≦i≦kのセットと共に、事前データの一部または全部から既に形成された任意の部分推定長レコードLadv (b)からなる。
【0075】
これらの長さレコードによって表されるサブバンドラインの数についてN (b)を、サブバンドの高さについてH(b)を記し、単純な予測手法が、以下のように設定される。
【数54】
【0076】
いくつかの実施形態では、この単純な一様平均は、より最近の推定長レコードにより重点を置く加重平均によって置き換えられてもよく、これは、予測が適用されるサブバンドラインの数H(b)-N (b)よりもN (b)が大きいときに有益であり得る。
【0077】
最初に、変換が少数のサブバンドサンプルしか生成しなかった場合、いくつかのサブバンドは、ディスパッチされたまたはそうでない、アクティブなストライプをまだ累積していない可能性がある。これらのサブバンドbについては、最新のアクティブなストライプは存しないため、k=-1である。式(8)の第1の合計は、すべてのサブバンドからの予測を含むことが重要である。いくつかの実施形態では、この要件は、任意のサブバンドから第1のアクティブなストライプをディスパッチする前に、すべてのサブバンドがアクティブストライプを有するまで待機することによって対処することができる。しかしながら、これは、深いDWT階層において、かなりのメモリリソースを消費し得る。好ましい手法は、すべてのサブバンドが、部分符号化長の推定値Ladv (b)を累積するとすぐに、第1の予測長レコードΛ-1 (b)を生成することである。これは、サブバンドに対する単一のラインペアの生成後に行うことができ、したがって、QP割り当て手順の最初の実行は、すべてのサブバンドが少なくとも1つのラインペアを受信するまで遅延される。
【0078】
遅延およびメモリ消費をさらに低減するために、いくつかの実施形態では、変換から任意のデータが利用可能になる前に、深いDWT階層内のサブバンドに対する初期予測を生成することができる。これは、関連するサンプリング密度に従って、他のより高い分解能のサブバンドによって生成された予測をスケーリングすることによって行うことができる。幸いなことに、QP割り当て手順が最初に実行されるときにサブバンドサンプルが利用できない可能性がある低分解能サブバンドは、非常に低いサンプル密度を有する傾向があり、したがって、式(7)のQP割り当てで使用される
【数55】
ベクトルに対してわずかな影響しか及ぼさない傾向がある。
【0079】
他の実施形態では、他の画像データからの、オフラインで推定された長さを含む「バックグラウンド」推定長レコードLbg (b)を、一部またはすべてのサブバンドに使用することができる。次いで、このバックグラウンドデータから以下のように初期予測を生成することができる。
【数56】
式中、W(b)はサブバンドbの幅であり、Sbg (b)はバックグラウンド長レコードがLbg (b)導出されるサンプルの総数であり、あるいはバックグラウンド長レコードは、Lbg (b)/Sbg (b)として正規化された形式で保持されてもよい。いくつかの実施形態は、後の予測Λ (b)を生成するとき、特にkが小さいとき、そのようなバックグラウンドレコードからの寄与を含むことができる。
【0080】
上記の説明では、QP選択が集中化されたプロセスであり、すべてのサブバンドからの同期された情報を使用して、ブロック符号化のためのベースビットプレーン値Pの決定に使用される決定を形成し、配布するということを示唆しているように思われるかもしれない。しかしながら、QP選択プロセスは、実際には、必ずしも同期されていない情報を使用して、分散して実行することができる。特に、各サブバンドまたはサブバンドのグループには、図4の参照番号10で示されるボックスの自身のローカルコピーを割り当てることができ、これらのボックスは、コミットされたバイトB (b)を累積し、QP(等価的に、F)値を決定する。分散実装では、コミットされたバイトアキュムレータおよびQP生成プロセスのそのような各ローカルインスタンスは、依然として他のすべてのサブバンドからの入力を必要とするが、この入力は、QP推定値がアクティブに生成されているアクティブなストライプに対して、遅延または部分的に事前集約され得る。特に、ローカルQP生成プロセスの正しい動作のために必要とされる唯一の外部入力は、外部サブバンドbからのすべてのコミットされたバイト数の累積和と、外部サブバンドΛ (b)からの最新の予測を累積する拡張予測ベクトルと、まだコミットされていない外部のアクティブなストライプからの任意の長さ推定値L (b)である。
【0081】
ここでの複雑度制約方法は符号化プロセス自体を含まないということを指摘して、この実施の形態3の説明を終了する。多くの従来のコーダによって採用されている適応量子化方式とは異なり、QP値を決定するために、実際の符号化長は使用されない。さらに、ブロックエンコーダは、ビットプレーンPがQPに依存するベースCleanupパスだけでなく、Z-1追加符号化パスを生成するので、QP値自体は量子化されたサブバンドサンプル値を直接決定しない。これらの特性は、ブロック符号化プロセスを複雑度制御手順から大幅に切り離すことができることを意味し、独立したブロック符号化によって与えられるかなりの並列性をサポートする実装を可能にする。さらに、PCRD-optアルゴリズムは、任意の点において、個々のコードブロックに関連する歪み長のトレードオフを自由に最適化することができる。いくつかの実施形態では、PCRD-opt手順は、画像またはフレームのすべての符号化データが生成されたときにのみ実行され、シーンの複雑度に従ってビットを不均一に分配する機会を最大化することができる。他の実施形態では、PCRD-opt手順は、最終コードストリームコンテンツを漸進的に出力し、メモリ消費およびレイテンシを低減するように、増分的に実行されてもよい。しかしながら、その場合でも、PCRD-opt手順が実行される頻度は、QP割り当て手順が実行される頻度とは、両者が分離されているため、非常に異なる可能性がある。
【0082】
これらの特性と機会はすべて最終的に、先に入念に説明したように、符号化長推定プロセスがレート制御に使用されないという事実に由来する。
実施の形態4:ビデオアプリケーションのための強化された予測
【0083】
ビデオアプリケーションでは、以前に圧縮されたフレームは、現在のフレーム内の見えないデータの符号化長の予測に寄与することができる。開始点として、上述のバックグラウンド長レコードLbg (b)は、以前に圧縮されたフレームのサブバンドb内の推定長レコードから導出することができ、このバックグラウンド情報は、初期予測長レコードΛ-1 (b)を形成するために使用することができるだけでなく、各サブバンドの初期ストライプ(小さなk)における通常の予測長レコードΛ (b)に寄与することもできる。この実施の形態4は、さらに、前のフレームからの長さ推定値の信頼性を決定し、この信頼性に基づいて前のフレームからの長さ推定値を現在のフレーム内の予測長に組み込む方法を提供する。
【0084】
この実施の形態4では、J個の「前のフレーム」の要約長レコードP (b)のセットが、各サブバンドbに対して保持され、ここで、0≦j<Jおよびレコードjは、前のフレームにおけるサブバンドからH (b)ラインに対して推定される符号化長を要約する。推奨される例として、各サブバンドについてJ=6の要約レコードが保持され、その高さH (b)は、サブバンド全体の高さH(b)を大まかに次のように分割する。
【数57】
【0085】
実施の形態2に記載される長さ推定方法を使用して、符号化長の推定値は、サブバンドラインの各ペアが生成された後に利用可能になり得るクワッド有意性統計値から形成され、この場合、正確な要約レコード高さH (b)は2の倍数でなければならない。これらの増分長推定値は集約されて「現在のフレーム」の要約長レコードC (b)を形成し、これは次のフレームにおいて「前のフレーム」の要約長レコードP (b)になる。メモリ効率の良い実施形態では、C (b)レコードは、レコードが完全に生成されるとすぐにP (b)レコードを上書きすることができる。簡単にするために、要約レコード高さH (b)はフレーム間で一貫していると解釈され、このため、C (b)およびP (b)は両方ともサブバンドラインの同じセットに対する符号化長の推定値を表す。しかし、前記方法の、高さを変えることができるバリエーションを容易に開発することができる。
【0086】
(b)は、現在のフレーム内でこれまでに符号化長の推定値を形成するために使用されたサブバンドbからのライン数であることを想起されたい。Cjk (b)が現在アセンブルされている次の要約長レコードを示すように、jを完了した要約長レコードC (b)の数とする。したがって、以下のようになる。
【数58】
および
【数59】
は、Cjk (b)に対する長さ推定値に既に寄与したサブバンドラインの数である。
【0087】
これまでに見られたサブバンドbからのすべてのN (b)個のラインに対する符号化長の推定値の集合ベクトルは、以下であり、
【数60】
ここで、要約レコードCjk-1 (b)の完了以降見られるラインペアからの長さ推定値のアキュムレータとして不完全なCjk (b)を扱うことに留意されたい。
【0088】
前のフレームにおける同じ数のサブバンドラインを表す同様のベクトルは、以下のように形成することができる。
【数61】
【0089】
次に、現在のフレームにおいて長さ推定値を現在有していないH(b)-N (b)サブバンドラインについて、前のフレームにおける長さ推定値を表すベクトルは、以下のように形成することができる。
【数62】
【0090】
本発明のこの実施の形態では、フレーム間長さの推定値の信頼性は、2つの量を介してフレーム内長さ推定値の信頼性と比較される。
【数63】
式中、U(L)は、推定長ベクトルLから導出されたシーン複雑度のスカラー尺度である。関数U()に適した選択は、以下のような指数加重和である。
【数64】
【0091】
Δtemporal (b)<Δspatial (b)である場合、予測ベクトルΛ (b)をPpost (b)に設定することが好ましく、これは、基本的に、現在のフレーム内のH(b)-N (b)欠落サブバンドラインに対する推定バイト数が、前のフレーム内の同じサブバンドラインに対する推定バイト数と同様であると仮定することであり、これを「時間予測」と呼ぶ。あるいは、実施の形態3のように式(9)を使用して、Cpre (b)からΛ (b)を生成することが好ましく、これを「空間予測」と呼ぶ。
【0092】
本発明の好ましい実施形態では、サブバンドが現在のフレーム内に少なくとも1つのアクティブなストライプを有する場合に、以下を割り当てることにより、極端に純粋な時間予測または極端に純粋な空間予測を回避する。
【数65】
【0093】
ここで、
【数66】
という表記が意味するのは、ベクトルL内の個々の符号化長の推定値Lが、
【数67】
がPによって制約される可能性が最も高く、
【数68】
がCによって制約される可能性が最も高くなるように、下方に調整されるということである。具体的には、この下方調整プロセスに適した選択は、以下の割り当てである。
【数69】
【0094】
依然としてΔtemporal (b)とΔspatial (b)との間の関係を使用して時間予測または空間予測を有利にしつつ、純粋な時間予測と純粋な空間予測の両極端を回避する多くの異なる方法が存在することは、当業者には明らかであろう。
【0095】
また、U(Ppre (b))値は、完成したC (b)レコードによって上書きされようとしているP (b)レコードのそれぞれに式(10)を適用し、結果を累積することによって増分的に形成できることも明らかである。これは、サブバンドのC (b)およびP (b)の両方の要約レコードにストレージを提供する必要がないことを意味する。
【0096】
さらに、上記の式Δtemporal (b)およびΔspatial (b)は、高さ比を含むが、Δtemporal (b)およびΔspatial (b)のどちらが小さいかを決定することのみに関心があるので、これらの比におけるコストの高い除算演算は標準的な相互乗算技法によって回避できることは明らかであろう。
実施の形態5:低レイテンシ画像およびビデオ符号化のためのQP適応
【0097】
前述の実施の形態は、高品質レート制御、すなわち、画像またはビデオの各フレームの符号化長目標を正確に目標にすることで、画像およびビデオの高スループットをサポートする。本発明の実施の形態3および4は、低メモリ構成をサポートしており、この構成では、画像もサブバンドサンプルもブロック符号化の前にメモリ内に完全にバッファリングされる必要はない。すべての場合において、符号化プロセス全体のPCRD-opt段階は、画像またはビデオフレームの(ビデオフレームのグループであっても)すべてのブロック符号化が完了するまで延期することができ、符号化ビットをシーンの複雑度に応じて空間(またはさらには時間)にわたって不均一に分配することができる。多くの場合、PCRD-opt段階の前にバッファリングする必要がある符号化データの総量は、通常、それが表す画像またはサブバンドデータの量よりもはるかに少ないため、これは優れた戦略である。
【0098】
サブフレームレイテンシビデオ符号化などの低レイテンシアプリケーションでは、PCRD-optプロセスを実行して最終的なコードストリームを出力する前に、画像またはフレームのすべての符号化データが生成されるまで待つことはできない。さらに、このようなアプリケーションでは、エンドツーエンドレイテンシを決定するときに、固定の、または少なくとも制約されたビットレートを持つ通信チャネルを考慮する必要があることが多い。JPEG2000のコンテキストにおいて、そのようなアプリケーションに対処する自然な方法は、図5に示すように、画像またはビデオフレーム内の各サブバンドからのコードブロックのストライプを「フラッシュセット」に収集することであり、その結果、各サブバンドは同じ数のフラッシュセットに垂直に分割され、各フラッシュセットは、符号化画像表現を一貫した方法で進める各サブバンドからの寄与を含む。非常に低いレイテンシの場合、ウェーブレット変換における垂直分解レベルの数は、多くの場合、わずか2または3に制限され、高さよりもはるかに幅が広い(例えば、1024×4)矩形コードブロックが使用される。JPEG2000プリシンクト次元は、コードブロックの高さがDWT階層の各レベルで2分の1に減少することを保証するように選択することができ、空間的に配向された進行順序は、各フラッシュセットの符号化情報が利用可能になるとすぐにコードストリームに出力できるように選択される。いわゆる位置、成分、解像度、レイヤ(Position, Component, Resolution, Layer:PCRL)進行順序は、通常、低レイテンシのために使用されるべきであり、ここでは、符号化データは、垂直な空間的に進行する順序(上から下へ)で現れ、各空間位置に対して、画像成分(通常は色面)が順番に現れ、各空間位置における各成分に対して、連続的な解像度が順番に現れ、各区分の連続的な品質層(複数の場合)が連続して現れる。垂直タイリングを使用してフラッシュセットを構築することもできるが、タイル境界を導入するとDWTの特性が損なわれ、符号化効率が低下し、低いビットレートでデコードされた画像に視覚的アーチファクトが導入される可能性があるので、あまり望ましくない手法である。
【0099】
実施の形態1は、QP割り当てプロセスを、単一のフラッシュセットに属するサブバンドサンプルおよびコードブロックのみに制限することによって、そのような低レイテンシ符号化環境に容易に適合される。固定ビットレートまたは制約付きビットレート環境では、任意の所与のフラッシュセットに対して生成される符号化バイト数は、一般に、下限(アンダーフロー制約)および上限(オーバーフロー制約)の両方を満たす必要がある。フラッシュセットの圧縮サイズの上限は、図3のLmaxパラメータになる。フラッシュセットのすべてのサブバンドラインが変換によって生成されると、実施の形態2で記載される方法を使用して、フラッシュセットに対する推定符号化長レコードを作成し、これを使用して、フラッシュセットのLmax制約に基づいて、そのフラッシュセットのみに対するQP値を割り当てる。このQP(等価的に、F)値は、サブバンドbに属するフラッシュセット内のすべてのコードブロックのベースビットプレーンPを導出するために使用され、ブロック符号化が実行される。最後に、PCRD-optアルゴリズムが生成された符号化パスに適用されて、Lmax上限に適合するフラッシュセットのレート歪み最適表現を生成する。生成されたコンテンツがフラッシュセットの下限(アンダーフロー制約)を満たすことができない場合、デコードされた結果に影響を及ぼさない方法で、スタッフィングバイトをコードブロックバイトストリームに挿入することができ、J2K-1とHTブロック符号化アルゴリズムの両方が、符号化コンテンツへのスタッフィングバイトの導入をサポートしている。
【0100】
レイテンシおよび/またはメモリ消費をさらに低減するために、いくつかの実施形態は、実施の形態3に記載される空間予測方法または(ビデオの場合)実施の形態4に記載された組み合わされた空間および時間予測方法を使用して、フラッシュセット内のブロック符号化プロセスが、フラッシュセットのすべてのサブバンドサンプルが変換によって生成される前に開始されることを可能にすることができる。
実験結果
【0101】
ここで、本発明者らは、本発明の実施形態の有効性についてのいくつかの実験的証拠を提供する。
【0102】
最初に、単一の非常に大きな画像の圧縮について考える。問題の画像は、13333×13333サイズの航空写真で、RGBピクセルがそれぞれ24ビット(8ビット/サンプル)で、ディスク上で533MBを占めている。
【0103】
PCRD-opt手順の最適化目的として平均二乗誤差(Mean Squared Error:MSE)ピーク信号対雑音比(Peak Signal-to-Noise Ratio:PSNR)を使用して、画像を様々なビットレートに圧縮する。コードブロック寸法は64×64であり、通常の不可逆逆相関色変換(この場合はRGBからYCbCr)と共に、CDF9/7ウェーブレット変換を用いる。元の画像を参照として、解凍されたコードストリームのPSNRを測定するだけで複雑度制約付き符号化の効果を確認できるように、最適化目的としてピーク信号対雑音比(Peak Signal-to-Noise Ratio:PSNR)を選択する。いずれの場合も、HTブロック符号化アルゴリズムのみを使用して、JPEG2000パート15に準拠するHTJ2Kコードストリームを生成するために画像を圧縮する。すべての圧縮および解凍は、これまでに記載された方法を使用して行われる。
【0104】
ブロックエンコーダが各コードブロックの最初の(最も粗い)有意ビットプレーンから開始して多数のパスを生成する「Full」HT符号化に関連する性能を、最小遅延(ストライプがアクティブになる時点で「事前データ」がない)および様々な数のHT符号化パスZで、実施の形態3に記載される方法を使用して得られた性能と比較する。長さ推定値自体は、実施の形態2を使用して形成される。これらの異なる手法のPSNR結果を表1で報告する。明らかに、少なくともこのタイプのコンテンツについては、HTJ2Kエンコーダがコードブロック毎に最大でZ=6個の符号化パスを生成すれば十分であり、これは「Full」HT符号化によって生成されるパスの数よりもはるかに少ない。
【0105】
表1:様々なレベルのHTエンコーダ複雑度制御を使用した、大きな(0.5GB)RGB航空画像のHTJ2Kコードストリームへの圧縮であって、コードブロック毎に3、4、および6個の符号化パスに対応し、その後、重み付けされていない(PSNRベースの)PCRD-optレート制御が続く。
【表1】
【0106】
次に、実施の形態3に記載される空間のみ(フレーム内)予測方法と比較して、実施の形態4に記載される空間および時間の複合予測方法の有効性を調べる。これを行うために、2つの異なるタイプのコンテンツ間で交互になる、5つのシーンカット(6セグメント)を有する48フレームからなる人工的な4K 4:4:4 RGBビデオシーケンスを構築する。6つのセグメントのうち4つは、他の2つよりもはるかに圧縮が容易であり、ピクチャの上半分にはかなりの量の曇天があり、その結果、シーンの複雑度もフレームの上部から下部まで大きく変化する。コンテンツは、各フレームが本質的に同じ圧縮サイズ3840×2160×(1/8)=1,036,800bytesを有するように、一定のレート制御で1ビット/ピクセル(bpp)のビットレートに圧縮される。各フレームは、HTブロック符号化アルゴリズムのみを使用して、JPEG2000パート15に準拠するHTJ2Kコードストリームを生成するように符号化される。R、GおよびBチャネルにわたる各フレームの平均二乗誤差からのPSNRトレースを図6にプロットする。
【0107】
この図における「PCRD-STATS」トレースは、国際公開第2020/073098号に記載されているように、「背景技術」において言及された複雑度制約付きHTJ2K符号化のための既存の「PCRD-STATS」法に対応しており、ここで、所与のコードブロックに対して生成された符号化パスのセットは、前のフレーム内の同じコードブロックに対するPCRD-opt手順によって選択された動作点に基づいており、コードブロック毎にZ=6を超える符号化パスを生成することなく、経時的なシーンコンテンツの変化に漸進的に適応できるように追加の符号化パスを導入する。はじめに、第1のフレームには異なった処理がなされ、特に、図6にプロットされた結果について、すべての可能な符号化パスが第1のフレームの各コードブロックについて生成される。
【0108】
図中の「CPLEX-S」トレースは、実施の形態3に記載される方法に対応し、これも最小メモリを有しており、「CPLEX-ST」トレースは、実施の形態4に記載される方法に対応している。いずれの場合も、長さ推定値自体は、実施の形態2に従って、クワッド有意性統計値から形成され、各コードブロックに対して最大でZ=6の符号化パスが生成される。
【0109】
図中の「HTFULL」トレースは、「Full」HT符号化に対応し、コードブロックの任意のサンプルが有意である最初の(最も粗い)ビットプレーンから開始して、各コードブロックに対して多くの符号化パスが生成される。この手法は、HTブロックエンコーダによってより多くの符号化パスが生成されるため、他の方法よりも本質的に複雑である(スループットが低い)。PCRD-opt手順は、PSNRを最大にする(MSEを最小化する)ように構成されており、生成された各コードストリームの最適化された切り捨て点を決定するためのより大きなオプションセット(符号化パス)が提供されるため、「Full」HT符号化もまた、最も高いPSNRを生成することが予想される。しかしながら、ここでの「Full」HT符号化手法は、Kakadu(商標)ソフトウェアの勾配閾値予測機能を使用し、フレームの歪み長勾配閾値は、前のフレームで使用されたものから推定され、推定された勾配は、すべての可能な符号化パスを生成するのではなく、必要に応じて、ブロック符号化プロセスを早期に終了させるために使用される。複雑度制御のためのこの戦略は、D.Taubmanによる「Software architectures for JPEG2000」、DSPに関するIEEE国際会議プロシーディングス、ギリシャ、サントリーニ(2002)に記載されており、長年にわたってJPEG2000エンコーダによって首尾よく使用されてきたが、図中のトレース参照番号20によって証明されるように、高いシーン複雑度を有するフレームから低いシーン複雑度(低いPSNRから高いPSNRへ)への遷移において不利であることを示している。(注意:Kakaduソフトウェアは、一連のJPEG2000標準を実装するために広く使用されており、そのツールは、学術的および商業的な場でJPEG2000の参照結果を生成するために使用されることが多い。これらのツールは、http://www.kakadusoftware.comで入手可能である。)
【0110】
「PCRD-STATS」トレース(図の参照番号21)は、特にシーン複雑度が低いフレームからシーン複雑度が高いフレーム(高いPSNRから低いPSNR)への遷移において、シーン遷移時に著しい性能損失を示すことに留意されたい。これは、ローカルシーンの複雑度がフレーム間であまりにも急速には変化しないことを前提としているためであり、したがって、複雑度の低いフレームに続く複雑度の高いフレームでは、多くの粗いビットプレーンをスキップすることになり得る。
【0111】
実施の形態3からの純粋なフレーム内複雑度制御方法(参照番号22の「CPLEX-S」曲線)は、「HTFULL」および「PCRD-STATS」の両方よりも時間的にロバストであるが、各フレームの上部が非常に低いシーン複雑度を有するビデオの容易に圧縮される部分においていくらかの品質劣化を被る。本発明の実施の形態3は、空間変換によって既に生成された各サブバンドの上部からの符号化長の推定値を使用して、サブバンドの残りの(見えない)部分の予測長を生成するので、これは驚くべきことではない。
【0112】
全体として、実施の形態4の組み合わされた空間および時間予測方法(参照番号23の「CPLEX-ST」曲線)は、時間的なロバスト性と全体的な圧縮画像品質の両方において、他のすべての方法よりも優れている。
【0113】
上述の実施形態の符号化方法は、適切なソフトウェアでプログラムされた適切な計算装置によって実施することができる。方法の実施形態は、GPU配置ならびに低レイテンシハードウェアおよび高レイテンシハードウェア配置において実施することができる。
【0114】
実施形態を実施するためにソフトウェアが使用される場合、ソフトウェアは、ディスクなどのコンピュータ可読媒体上で、またはインターネットなどのネットワーク上のデータ信号として、または任意の他の方法で提供することができる。
【0115】
上述の実施形態は、JPEG2000(HTJ2K)およびJ2Kフォーマット内での使用に関する。本発明の実施形態はこれに限定されない。いくつかの実施形態は、他の画像処理フォーマットで使用されてもよい。実施形態は、他の画像処理コンテキストにおける用途を見出すことができる。
【0116】
当業者であれば、広く説明されている本発明の精神または範囲から逸脱することなく、特定の実施形態に示されているように本発明に対して多数の変形および/または修正を行うことができることを理解するであろう。したがって、本実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。
【0117】
以下の特許請求の範囲および本発明の先述の説明では、文脈上、明示的な言語または必要な含意により他の意味に解釈すべき場合を除いて、「含む/備える(comprise)」という単語、またはその語の変形(comprises、comprisingなど)は包括的な意味で使用され、すなわち、記載された特徴の存在を特定するが、本発明の様々な実施形態におけるさらなる特徴の存在または追加を排除するものではない。
【0118】
任意の先行技術刊行物が本明細書で参照される場合、そのような参照は、その刊行物がオーストラリアまたは任意の他の国において当該技術分野における共通の一般的知識の一部を形成すると認めることにはならないことを理解されたい。
図1
図2
図3
図4
図5
図6
【国際調査報告】