(58)【調査した分野】(Int.Cl.,DB名)
前記ピクチャは、ビデオ・シーケンスの一部であり、前記1つ以上のフィルタ・パラメータは、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベルのうちの少なくとも1つに関連する、請求項1に記載の方法。
フィルタ・パラメータ・テーブルが記憶され、前記可変変換の各々のための対応するフィルタ・パラメータは、前記パラメータ・テーブルと前記可変変換の各々との関数である、請求項5に記載の方法。
前記可変変換の各々に対するフィルタ・パラメータのセットが前記符号化器および復号器の双方に記憶され、前記可変変換のうちの対応する1つのインデックスのみが前記復号器に信号送信されるか、前記復号器で導出される、請求項5に記載の方法。
前記ピクチャは、ビデオ・シーケンスの部分であり、前記1つ以上のフィルタ・パラメータは、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベルのうちの少なくとも1つに関連する、請求項9に記載の方法。
フィルタ・パラメータ・テーブルが記憶され、前記可変変換の各々のための対応するフィルタ・パラメータは、前記パラメータ・テーブルと前記可変変換の各々との関数である、請求項13に記載の方法。
【背景技術】
【0003】
ビデオ符号化規格は、ブロックベースの変換(例えばユビキタス離散コサイン変換またはDCT)および動き補償を用いて圧縮効率を得る。変換係数の粗い量子化、さらに、動き補償された予測において各隣接ブロックによって相異なるリファレンス位置または相異なるリファレンス・ピクチャを使用すると、エッジ、テクスチャの周りの歪みやブロックの不連続など、視覚的な不快感を伴うアーティファクトが生じる場合がある。現行のISO/IEC(International Organization for Standardization/International Electrotechnical Commission) MEPG−4(Moving Picture Experts Group−4) Part 10 AVC(Part 10 Advanced Video Coding)規格/ITU‐T(International Telecommunication Union, Telecommunication Sector)H.264勧告(以下、「MPEG−4 AVC規格」と称する)においては、ブロック境界に沿って生ずるアーティファクトに対処するために、適応型のデブロッキング・フィルタが用いられる。
【0004】
ブロックの不連続部分においてだけでなく、画像に特異性が存在する部分(例えばエッジおよび/またはテクスチャ)の周囲にアーティファクトが現れるたびに、このアーティファクトに対処するための、アーティファクトを除去するより一般的なアプローチが提案されている。第1の従来技術のアプローチにおいては、クォータ共通中間フォーマット(quarter common intermediate format(QCIF))および共通インタフェース・フォーマット(common interface format(CIF))など、相対的に低解像度のビデオ・ソースにおけるノイズのある再構築された信号のスパース分解を提供するために、オーバーコンプリートな4×4DCTのセットが利用される。しかしながら、小さなサイズのDCT変換は、高解像度のビデオ・コンテンツ(例えば720pおよび1080pのビデオ・コンテンツ)において効率的ではないことがあり、より大きなサイズの変換、または、増加した空間解像度に対するスケーリングを良好に行うために異なる基準が必要である。具体的には、(閾値、反復処理数などを含む)フィルタ・パラメータは、フィルタリング性能にとって非常に重要であり、さらに、変換に対して適応的なものであるとよい。
【0005】
MPEG−4 AVC規格におけるデブロッキング・フィルタ
現行のMPEG−4 AVC規格内では、インループ・デブロッキング・フィルタが採用されている。フィルタは、ブロック境界に沿って生ずるアーティファクトを減衰させるように動作する。このようなアーティファクトは、変換(DCT)係数の粗い量子化と共に、動き補償された予測によって生ずる。ブロックの各エッジにローパス・フィルタを適応的に適用することによって、デブロッキング・フィルタは、ビデオ品質を主観的にも客観的にも改善させることができる。このフィルタは、ブロック・エッジの周りのサンプルの分析を実行することによって働き、フィルタ強度を適応化させてブロッキーなアーティファクトに起因する小さな強度差を減衰させる一方で、実際の画像コンテンツに係る一般的により大きな強度差を保持する。幾つかのブロック符号化モードおよび状態もまた、フィルタリングが適用される強度を示すように機能する。これらには、インター/イントラ予測決定および隣接ブロック間の符号化された残差や動きの差の存在が含まれる。デブロッキング・フィルタは、ブロック・レベルでの適応性を有する上、スライス・レベルおよびサンプル・レベルでの適応性を有する。スライス・レベルでは、フィルタリング強度は、ビデオ・シーケンスの個々の特性に応じて調節することができる。サンプル・レベルでは、サンプル値および量子化器ベースの閾値に依存して個々のサンプルでフィルタリングをオフにすることができる。
【0006】
MPEG−4 AVC規格のデブロッキング・フィルタによって除去されるブロッキーなアーティファクトは、圧縮されたビデオに存在するアーティファクトのみではない。粗い量子化に起因して、リンギング(ringing)、エッジの歪み、さらに、テクスチャの破損などの他のアーティファクトが発生する。デブロッキング・フィルタは、ブロック内に現れる量子化エラーによって生ずるアーティファクトを低減することはできない。さらに、デブロッキングに用いられるローパス・フィルタリング技術は、スムーズな画像モデルを想定しており、例えばエッジまたはテクスチャなどの画像の特異性が存在する部分の処理に適したものではない。
【0007】
スパース性ベースのアーティファクト除去
スパース性ベースのノイズ除去技術により動機付けられて、第1の従来技術のアプローチに関し、上述した圧縮アーティファクト除去技術のために非線型のイン・ループ・フィルタが提案されている。この第1の従来技術のアプローチは、オーバーコンプリートな変換のセットによって提供されるノイズ除去された推定値のセットを使用する。第1の従来技術のアプローチの実施態様は、ウエーブレットまたはDCTなど、所与の2D直交変換Hに対して想定される全ての変換H
iを用いることにより、オーバーコンプリートな変換のセットを生成する。従って、所与の画像Iにつき、様々な変換H
iを適用することによって、この画像Iに対し、一連の異なる変換されたバージョンY
iが作成される。次に、変換された各バージョンY
iに対し、通常、閾値処理を含む、ノイズ除去処理が適用され、一連のY’
iが生成される。次に、変換され、閾値処理が行われた係数Y’
iは、空間ドメインに逆変換され、ノイズ除去された推定値I’
iを発生させる。オーバーコンプリート設定においては、ノイズ除去された推定値のうちの幾らかは、他のものよりも良好なパフォーマンスを提供するものと考えられ、最終的にフィルタリングされたバージョンI’は、このようなノイズ除去された各推定値を平均化したものから得られた組み合わせによる利点を得ることができる。第1の従来技術のアプローチのノイズ除去フィルタは、ノイズ除去された各推定値I
i’の加重平均を用いることを提案するものであり、ここで、各重みは、信号のスパース性に基づいて、最良のノイズ除去された推定値を強調するように最適化されている。
【0008】
直交変換{H
i}のセットは、画像Iのスパース分解を提供するものと期待されている。例えばブロック・サイズ4×4のDCTは、QCIFコンテンツのために第1の従来技術のアプローチの処理において使用されている。高解像度(HD)コンテンツに対する需要の高まりにより、小さなブロック・サイズのDCTは、それが増加する解像度に対して十分に高まっていないので、もはや効率的なものとはいえない場合がある。特に、符号化処理が大きな変換を利用し、より大きなブロック・スケールにおいて係数の量子化を行うような場合には、小さなブロック・サイズのDCTはもはや効率的なものとはいえない場合がある。この点に関し、ノイズ除去において、より大きなブロック・ユニット内で、空間相関をより良好に利用するために、より大きなサイズ(例えば8×8または16×16)の変換、または、異なる基底関数を用いた変換が採用される。
【0009】
また、アーティファクト除去のパフォーマンスにとっては、フィルタ・パラメータの選択、例えば閾値などの選択が非常に重要である。閾値は、ノイズ除去された推定値の正確性および最良のノイズ除去推定値を強調する平均重みの両方の点で、フィルタのノイズ除去能力にとって必須である。不適切な閾値の選択により、過度にスムージングされた再構築ピクチャが生じたり、アーティファクトが残ってしまったりすることがある。第1の従来技術のアプローチでは、量子化パラメータ(QP)と符号化モード情報に基づいた画素クラス毎の選択された各閾値が符号化器側と復号器側との両方に記憶され、これらは、変換に適応的なものではない。
【0010】
相異なる変換サイズまたは相異なる基底関数を用いることで、同じQPまたは符号化モードの下でのビデオ・シーケンスのノイズまたはアーティファクトの挙動は異なることがあり、これにより、相異なるフィルタ・パラメータが必要となることがある。
【発明を実施するための形態】
【0019】
本発明の原理は、スパース性ベースのアーティファクト除去フィルタリングにおける可変変換に応じてフィルタ・パラメータの決定および選択を行う方法および装置に関する。
【0020】
本説明は、本発明の原理を例示するものである。従って、本明細書において明示的に記載、または図示されていなくとも、当業者が本願の原理を実施する様々な構成を企図することが可能であり、このような構成が本願の精神および範囲の中に包含されることが理解できるであろう。
【0021】
本明細書に記載された全ての例および条件付の文言は、本発明の原理を読者が理解するのを助けるための教示目的のものであり、発明者によって寄与された概念は、技術を発展させるものであり、このような具体的に記載された例や条件に限定されるように解釈されるべきではない。
【0022】
また、本明細書における本発明の原理、態様、および、実施形態についての全ての記載、さらに、その特定の例は、構造的な均等物、機能的な均等物の双方を包含するように意図したものである。さらに、このような均等物は、現在公知の均等物だけでなく、将来において開発される均等物、即ち、構造に係らず、同一の機能を実行するように開発された全ての要素を包含するように意図されている。
【0023】
従って、例えば当業者であれば、本明細書において示されたブロック図は、本発明の原理を実施する回路を例示する概念図であることが理解できよう。同様に、フローチャート、フロー図、状態遷移図、擬似コードなどは、いずれも様々な処理を表すことが理解できよう。これらの処理は、実質的にコンピュータによって読み取り可能なメディアにおいて表すことができ、コンピュータまたはプロセッサにより実行され、このようなコンピュータまたはプロセッサがはっきりと図示されているかどうかに係るものではない。
【0024】
各図面において示される様々な要素の機能は、専用のハードウエアの使用により提供されてもよく、適切なソフトウエアと関連付けてソフトウエアを実行することが可能なハードウエアの使用によって提供されてもよい。機能がプロセッサによって提供される場合にも、単一の専用プロセッサによって提供されてもよく、単一の共有プロセッサによって提供されてもよく、複数の別個のプロセッサによって提供されてもよく、プロセッサの中に共有されているものがあってもよい。さらに、用語「プロセッサ」または「コントローラ」を明示的に使用した場合であっても、ソフトウエアを実行することが可能なハードウエアのみを意味するように解釈されるべきではなく、限定するものではないが、ディジタル信号プロセッサ(DSP)・ハードウエア、ソフトウエアを格納する読み出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、および不揮発性の記憶装置を暗黙的に含むことがある。
【0025】
また、従来のおよび/または慣習的な他のハードウエアを含むこともある。同様に、図面に示されたどのスイッチも概念的なものに過ぎない。これらの機能はプログラム・ロジックの動作を介して、専用のロジックを介して、プログラム制御と専用のロジックとのインタラクションを介して、または、手動でも実行されることがある。状況に応じて具体的に理解されるように、実施者により、特定の技術を選択可能である。
【0026】
請求の範囲において、特定の機能を実施するための手段として表現されたいずれの要素も、この機能をどのような方法で実行するものも包含するように意図している。例えばa)機能を実行する回路要素を組み合わせたもの、または、b)形態に関わらず、ソフトウエア、つまり、ファームウエア、マイクロコード等を含み、機能を実施するためにソフトウエアの実行に適した回路と組み合わせたものも包含する。このような請求の範囲によって定義される本発明の原理は、請求項に記載された様々な手段によって提供される機能が請求の範囲の要件として、組み合わせられ、まとめられている事実に基づいたものである。従って、このような機能を提供することが可能な手段はどのようなものであっても、本願において示されているものと均等であるとみなされる。
【0027】
明細書において、本発明の原理の「一実施形態」、「実施形態」、または、この類の表現が言及されている場合、これは、実施形態に関して記載される特定の特徴事項、構造、特性などが本発明の原理の少なくとも1つの実施形態に含まれることを意味する。従って、明細書全体に渡って様々な箇所に存在する文言「一実施形態においては」、「実施形態においては」、または、この類の表現は、必ずしも、全てが同一の実施形態について言及するものではない。
【0028】
「/(スラッシュ)」、「および/または」、さらに、「〜のうちの少なくとも一方(〜のうちの少なくとも1つ)」の使用は、例えば「A/B」、「Aおよび/またはB」、「AおよびBのうちの少なくとも一方」の場合、1番目に列挙されたオプション(A)のみの選択、2番目に列挙されたオプション(B)のみの選択、または、両方のオプション(AおよびB)の選択を包含するものと意図されている。別の例として、「A、B、および/またはC」、さらに、「A、B、およびCのうちの少なくとも1つ」の場合、このような文言は、1番目に列挙されたオプション(A)のみの選択、2番目に列挙されたオプション(B)のみの選択、3番目に列挙されたオプション(C)のみの選択、1番目および2番目に列挙されたオプション(AおよびB)のみの選択、1番目および3番目に列挙されたオプション(AおよびC)のみの選択、2番目および3番目に列挙されたオプション(BおよびC)のみの選択、または、全ての3つのオプション(A、B、およびC)の選択を包含するものと意図されている。列挙された数の項目の分だけ、このことが拡張されることは、当該技術分野、さらに、関連する技術分野における通常の技術知識を有するものであれば容易に理解できるであろう。
【0029】
さらに、本明細書において、本発明の原理の1つ以上の実施形態は、MPEG−4 AVC規格に関して記載されているが、本発明の原理は、この規格のみに限定されるものではない。従って、本発明の原理は、本発明の原理の精神を逸脱することなく、MPEG−4 AVC規格の拡張版を含む、他のビデオ符号化規格、勧告およびその拡張版にも利用することができる。
【0030】
また、本発明の原理の1つ以上の実施形態を閾値パラメータに関して説明しているが、本発明の原理が適用されるフィルタ・パラメータに関し、閾値パラメータのみに本発明の原理が限定されるものではなく、本発明の原理の精神を逸脱することなく、本願および関連する技術における当業者によって容易に決定されるように、どのような他のフィルタ・パラメータにも適用することができる。
【0031】
また、本明細書において使用される単語「ピクチャ」および「イメージ」は、同じ意味で使用され、静止画像または、ビデオ・シーケンスからのピクチャを意味する。公知であるように、ピクチャは、フレームやフィールドであったりする。
【0032】
また、本明細書において使用される単語「信号送信(signal)」は、特に、何かを対応する復号器に示すものを指す。例えば符号化器は、符号化器の側で使用した特定の変換サイズおよび/またはフィルタ・パラメータを復号器に知らせるために、この復号器に対し、想定される変換サイズおよび/またはフィルタ・パラメータのグループのうち、特定の変換サイズおよび/またはフィルタ・パラメータを信号送信する。このようにして、同一の変換サイズおよび/またはフィルタ・パラメータを符号化器側と、復号器側の双方で用いることができる。従って、例えば符号化器は、特定の変換サイズおよび/またはフィルタ・パラメータを復号器に送信し、復号器が同一の変換サイズおよび/またはフィルタ・パラメータを用いることができるようにしてもよく、復号器が既に他のものと共に特定の変換サイズおよび/またはフィルタ・パラメータを有する場合には、(データを送信することなく)信号送信により、単純に、復号器に対し、特定の変換サイズおよび/またはフィルタ・パラメータを知らせ、これを選択させるようにしてもよい。任意の実際の変換サイズおよび/またはフィルタ・パラメータの送信を回避することによって、ビット節約を実現できる。信号送信は、様々な方法で行えることが理解できよう。例えば1つ以上のシンタックス要素、フラグなどを用いて対応する復号器に情報を信号送信することができる。上述の内容は、単語“signal”の動詞形(信号送信)に関するものであるが、本明細書において、単語“signal”は、名詞(信号)として使用されることもある。
【0033】
さらに、本明細書において使用される用語「ピクチャ領域(または、簡略化して、単に、「領域」)は、例えば任意のサイズの任意の形を有する1つ以上のブロックを包含する、および/または、任意のサイズの任意の形を有する1つ以上のブロックから形成されるピクチャの部分を指す。1つ以上のブロックは、例えばスーパーマクロブロック、マクロブロック、マクロブロック・パーティションなどに関することがある。さらに、ブロック境界に限定される従来のデブロッキング・フィルタとは異なり、本発明の原理に従ったピクチャ領域には、ブロック境界に加えて、非ブロック境界を含めることができる。即ち、実施形態によっては、ピクチャ領域は、非ブロック境界のみを含むことがある(即ち、ブロック境界を含まないことがある)。従って、ブロック境界以外の領域に対し、フィルタリングを適用してこの領域からアーティファクトを除去または低減できるという効果が得られる。
【0034】
図1を参照するに、本発明の原理に従ってビデオ符号化を実行することが可能なビデオ符号化器が概ね参照符号100によって示されている。
【0035】
ビデオ符号化器100は、結合器185の非反転入力部と信号通信する出力部を有するフレーム順序付けバッファ110を含む。結合器185の出力部は、変換器/量子化器125の第1の入力部と信号通信するように結合されている。変換器/量子化器125の出力部は、エントロピー符号化器145の第1の入力部と、逆変換器/逆量子化器150の第1の入力部と信号通信するように結合されている。エントロピー符号化器145の出力部は、結合器190の第1の非反転入力部と信号通信するように結合されている。結合器190の出力部は、出力バッファ135の第1の入力部と信号通信するように結合されている。
【0036】
符号化器コントローラ105の第1の出力部は、フレーム順序付けバッファ110の第2の入力部と、逆変換器/逆量子化器150の第2の入力部と、ピクチャ・タイプ決定モジュール115の入力部と、マクロブロック・タイプ(MBタイプ)決定モジュール120の第1の入力部と、イントラ予測モジュール160の第2の入力部と、アーティファクト除去フィルタ165の第2の入力部と、動き補償器170の第1の入力部と、動き推定器175の第1の入力部と、参照ピクチャ・バッファ180の第2の入力部と信号通信するように結合されている。
【0037】
符号化器コントローラ105の第2の出力部は、補助拡張情報(SEI)挿入器130の第1の入力部と、変換器/量子化器125の第2の入力部と、エントロピー符号化器145の第2の入力部と、出力バッファ135の第2の入力部と、シーケンス・パラメータ・セット(Sequence Parameter Set(SPS))/ピクチャ・パラメータ・セット(Picture Parameter Set(PPS))挿入器140の入力部と信号通信するように結合されている。
【0038】
SEI挿入器130の出力部は、結合器190の第2の非反転入力部と信号通信するように結合されている。
【0039】
ピクチャ・タイプ決定モジュール115の第1の出力部は、フレーム順序付けバッファ110の第3の入力部と信号通信するように結合されている。ピクチャ・タイプ決定モジュール115の第2の出力部は、マクロブロック・タイプ決定モジュール120の第2の入力部と信号通信するように結合されている。
【0040】
シーケンス・パラメータ・セット(SPS)/ピクチャ・パラメータ・セット(PPS)挿入器140の出力部は、結合器190の第3の非反転入力部と信号通信するように結合されている。
【0041】
逆変換器/逆量子化器150の出力部は、結合器119の第1の非反転入力部と信号通信するように結合されている。結合器119の出力部は、イントラ予測モジュール160の第1の入力部と、アーティファクト除去フィルタ165の第1の入力部と信号通信するように結合されている。アーティファクト除去フィルタ165の出力部は、参照ピクチャ・バッファ180の第1の入力部と信号通信するように結合されている。参照ピクチャ・バッファ180の出力部は、動き推定器175の第2の入力部と動き補償器170の第3の入力部と信号通信するように結合されている。動き推定器175の第1の出力部は、動き補償器170の第2の入力部と信号通信するように結合されている。動き推定器175の第2の出力部は、エントロピー符号化器145の第3の入力部と信号通信するように結合されている。
【0042】
動き補償器170の出力部は、スイッチ197の第1の入力部と信号通信するように結合されている。イントラ予測モジュール160の出力部は、スイッチ197の第2の入力部と信号通信するように結合されている。マクロブロック・タイプ決定モジュール120の出力部は、スイッチ197の第3の入力部と信号通信するように結合されている。スイッチ197の第3の入力部は、スイッチの(制御入力部、即ち、第3の入力部と比較される)「データ」入力が、動き補償器170またはイントラ予測モジュール160によって供給されるかどうかを判定する。スイッチ197の出力部は、結合器119の第2の非反転入力部および結合器185の反転入力部と信号通信するように結合されている。
【0043】
フレーム順序付けバッファ110の第1の入力部および符号化器コントローラ105の入力部は、符号化器100の入力部として、入力ピクチャを受信するために利用可能である。さらに、補助拡張情報(SEI)挿入器130の第2の入力部は、符号化器100の入力部として、メタデータを受信するために利用可能である。出力バッファ135の出力部は、符号化器100の出力部として、ビットストリームを出力するために利用可能である。
【0044】
図2を参照するに、本発明の原理に従ってビデオ復号を実行することが可能なビデオ復号器が概ね参照符号200によって示されている。
【0045】
ビデオ復号器200は、エントロピー復号器245の第1の入力部と信号通信するように結合された出力部を有する入力バッファ210を含む。エントロピー復号器245の第1の出力部は、逆変換器/逆量子化器250の第1の入力部と信号通信するように結合されている。逆変換器/逆量子化器250の出力部は、結合器225の第2の非反転入力部と信号通信するように結合されている。結合器225の出力部は、アーティファクト除去フィルタ265の第2の入力部と、イントラ予測モジュール260の第1の入力部と信号通信するように結合されている。アーティファクト除去フィルタ265の第2の出力部は、参照ピクチャ・バッファ280の第1の入力部と信号通信するように結合されている。参照ピクチャ・バッファ280の出力部は、動き補償器270の第2の入力部と信号通信するように結合されている。
【0046】
エントロピー復号器245の第2の出力部は、動き補償器270の第3の入力部と、アーティファクト除去フィルタ265の第1の入力部とイントラ予測モジュール260の第3の入力部と信号通信するように結合されている。エントロピー復号器245の第3の出力部は、復号器コントローラ205の入力部と信号通信するように結合されている。復号器コントローラ205の第1の出力部は、エントロピー復号器245の第2の入力部と信号通信するように結合されている。復号器コントローラ205の第2の出力部は、逆変換器/逆量子化器250の第2の入力部と信号通信するように結合されている。復号器コントローラ205の第3の出力部は、アーティファクト除去フィルタ265の第3の入力部と信号通信するように結合されている。復号器コントローラ205の第4の出力部は、イントラ予測モジュール260の第2の入力部と、動き補償器270の第1の入力部と、参照ピクチャ・バッファ280の第2の入力部と信号通信するように結合されている。
【0047】
動き補償器270の出力部は、スイッチ297の第1の入力部と信号通信するように結合されている。イントラ予測モジュール260の出力部は、スイッチ297の第2の入力部と信号通信するように結合されている。スイッチ297の出力部は、結合器225の第1の非反転入力部と信号通信するように結合されている。
【0048】
入力バッファ210の入力部は、復号器200の入力部として、入力ビットストリームを受信するために利用可能である。アーティファクト除去フィルタ265の第1の出力部は、復号器200の出力部として、出力ピクチャを出力するために利用可能である。
【0049】
上述したように、本発明の原理は、スパース性ベースのアーティファクト除去フィルタリングにおける可変変換に応じてフィルタ・パラメータの決定および選択を行う方法および装置に関する。
【0050】
本発明の原理に従って、可変変換のアーティファクト除去フィルタリングに基づいて、フィルタ・パラメータを適応化、調整、設定、および/または、選択および構成する方法および装置が提案される。フィルタ・パラメータの適応化は、スパース性ベースのアーティファクト除去に対して著しい影響を与えることが可能であるため、本発明の原理に関わる可変変換のアーティファクト除去フィルタリングのためのフィルタ・パラメータを構成できることにより、符号化効率を向上できるという利点が得られる。
【0051】
一実施形態においては、基底が同じ方向であるが、異なる変換サイズを有する変換に焦点を当てる。QPおよびモード情報だけでなく、変換サイズにも基づいてフィルタ・パラメータを適応化させる。例示的な目的で、MPEG−4 AVC規格、さらに、閾値パラメータに適応化させる例に関して説明するが、上述したように、本発明の原理の精神を逸脱することなく、本発明の原理を他のどのようなビデオ符号化規格および/または勧告、および/または、その拡張版、他のパラメータに適用することもできる。さらに、他の実施形態は、相異なる方向を有する1つ以上の変換に関わる場合があることが理解できよう。
【0052】
一実施形態においては、変換は、1つ以上のDCT、ウエーブレットなどとすることができ、変換サイズは、4×4、8×8、16×16、32×32などのうちの1つ以上であり、変換次元は、1、2、またはそれ以上である。勿論、本発明の原理の精神を逸脱することなく、本発明の原理は、前述した変換タイプ、変換サイズ、または、変換次元に限定されるものではなく、他の変換タイプ、変換サイズ、変換次元にも適用することができる。変換サイズ毎に、アーティファクト除去フィルタの各パラメータを異なるものとしてもよい。選択された変換サイズとこれに対応するフィルタ・パラメータの双方を信号送信する必要があり、例えば限定するものではないが、各スライスのスライス・ヘッダ、ピクチャ・パラメータ・セット(PPS)、シーケンス・パラメータ・セット(SPS)、ネットワーク抽象化層(network abstraction layer(NAL))ユニット・ヘッダなどの内部に位置するハイレベル・シンタックスを使用して、選択された変換サイズとこれに対応するフィルタ・パラメータの双方を信号送信する必要がある。信号送信のオーバーヘッドを削減するために、幾つかの方法を適用することができる。本明細書において、例示的な目的で、信号送信のオーバーヘッドを削減するための幾つかの方法が提供される。
【0053】
従って、本明細書において説明する実施形態の多くは、本発明の原理に従って用いられる特定の変換パラメータとしての変換サイズに関するものであるが、本発明の原理の精神を逸脱することなく、本願の開示内容に従って、他の変換パラメータを用いることもできる。さらに、実施形態の中には、1つの特定の変換パラメータ(例えばサイズ)を変更可能であることに関わるものもあるが、他の実施形態では、複数の特定の変換パラメータを変更可能であることに関わることがある。本発明の原理の精神を逸脱することなく、本明細書において提供される本発明の原理の開示内容を考慮して、本発明の原理のこれらの変更およびその他の変更を、本技術および関連する技術の当業者によって容易に決定することができる。
【0054】
図3を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う例示的な方法が概ね参照符号300によって示されている。方法300は、制御を機能ブロック310に受け渡す開始ブロック305を含む。機能ブロック310は、符号化セットアップを実行し、制御をループ端ブロック315に受け渡す。ループ端ブロック315は、各変換サイズ(例えば4×4、8×8、16×16など)に対してループを開始し、制御をループ端ブロック320に受け渡す。ループ端ブロック320は、フィルタ・パラメータに対してループを開始し、制御を機能ブロック325に受け渡す。機能ブロック325は、アーティファクト除去フィルタリングを実行し、制御をループ端ブロック330に受け渡す。ループ端ブロック330は、フィルタ・パラメータに対するループを終了し、制御を機能ブロック335に受け渡す。機能ブロック335は、符号化コストに基づいて最良のパラメータを設定(例えば決定および選択)し、制御をループ端ブロック340に受け渡す。ループ端ブロック340は、変換サイズに対するループを終了し、制御を機能ブロック345に受け渡す。機能ブロック345は、符号化コストに基づいて最良の変換サイズを設定(例えば決定および選択)し、制御を機能ブロック347に受け渡す。機能ブロック347は、(例えば量子化ノイズおよび符号化情報に基づいて)フィルタ・パラメータを適応化し、制御を機能ブロック350に受け渡す。機能ブロック350は、最良の変換サイズおよび最良のフィルタ・パラメータを符号化し、制御を機能ブロック355に受け渡す。機能ブロック355は、(例えば1つ以上のスケーリング・ファクタおよびオフセット・ペア、パラメータ・テーブル内のエントリについてのインデックス、さらに、フラグ(例えば可変変換が適用されるかどうかを示すフラグ)を使用して)変換サイズおよびフィルタ・パラメータを信号送信し、制御を終了ブロック399に受け渡す。機能ブロック355によって実行される信号送信は、例えば1つ以上のサンプル、1つ以上のブロック、1つ以上のスライス、1つ以上のピクチャなどに関連することがあることが理解できよう。さらに、機能ブロック355は、特定の実施態様に依存して、オプションとすることができることが理解できよう。
【0055】
図4を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う例示的な方法が概ね参照符号400によって示されている。方法は、制御を機能ブロック410に受け渡す開始ブロック405を含む。機能ブロック410は、(例えばスケーリング・ファクタおよびオフセット・ペア、パラメータ・テーブル内のエントリに対するインデックス、さらに、フラグのうちの1つ以上を使用して)変換サイズおよびフィルタ・パラメータを復号し、制御を機能ブロック415に受け渡す。機能ブロック415は、機能ブロック410によって復号された項目のうちの1つ以上に基づいてスパース性ベースのアーティファクト除去フィルタリングを実行し、制御を終了ブロック499に受け渡す。
【0056】
一実施形態においては、QP値および符号化モード情報に基づいて形成可能な1つの変換サイズS
0のための独自パラメータ・テーブルP
0が符号化器および復号器の双方に記憶される。他の変換サイズ、例えばSiなどのような他の変換サイズのパラメータ・テーブルP
iは、P
0とS
iの関数、即ち、P
i=f(P
0,S
i)とすることができる。
【0057】
一実施形態においては、テーブルの各エントリにP
i=a
i*P
0+b
iを設定することができる。ここで、a
iおよびb
iは定数とすることができる。従って、変換ブロックのサイズS
iについて、スケーリング・ファクタa
iおよびオフセットb
iを信号送信するだけでよい。
【0058】
図5を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号500によって示されている。方法500は、制御を機能ブロック510に受け渡す開始ブロック505を含む。機能ブロック510は、各変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック515に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセット・ペアによって表される、さらに/または、対応する。一実施形態においては、フィルタ・パラメータは、例えば方法300を用いて、決定される。機能ブロック515は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、スケーリング・ファクタおよびオフセット・ペア、およびフラグを信号送信し、制御を終了ブロック599に受け渡す。
【0059】
図6を参照するに、ビデオ復号器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号600によって示されている。
【0060】
方法600は、制御を機能ブロック610に受け渡す開始ブロック605を含む。機能ブロック610は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック615に受け渡す。一実施形態においては、パラメータ・テール内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセットによって表される、さらに/または、対応する。機能ブロック615は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、スケーリング・ファクタおよびオフセット・ペア、およびフラグを受信、復号し、制御を機能ブロック620に受け渡す。機能ブロック620は、機能ブロック615によって受信された各項目に基づいて、対応するサンプル、ブロック、領域、スライス、ピクチャ、またはシーケンスについて、フィルタ・パラメータを決定および選択し、制御を機能ブロック625に受け渡す。オプションとして、機能ブロック625は、例えばノイズ分散の統計に基づいて、決定および選択されたフィルタ・パラメータを適応化し、制御を機能ブロック630に受け渡す。機能ブロック630は、決定および選択された、または、適応化されたフィルタ・パラメータを用いて、サンプル、ブロック、領域、スライス、ピクチャ、または、シーケンスに対してスパース性ベースのアーティファクト除去フィルタリングを実行し、制御を終了ブロック699に受け渡す。
【0061】
一実施形態においては、テーブルの各エントリにP
i=a
i*P
0+b
iを設定することができる。ここで、a
iおよびb
iは定数とすることができる。従って、変換ブロックのサイズS
iについて、パラメータ・テーブルに対する対応するインデックスを信号送信するだけでよい。
【0062】
図7を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの選択を行う別の例示的な方法が概ね参照符号700によって示されている。方法700は、制御を機能ブロック710に受け渡す開始ブロック705を含む。機能ブロック710は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック715に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセット・ペアによって表される、さらに/または、対応する。一実施形態においては、フィルタ・パラメータは、例えば方法300を用いて決定される。機能ブロック715は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、パラメータ・テーブル内の特定のエントリに対するインデックス、および、フラグを信号送信し、制御を終了ブロック799に受け渡す。
【0063】
図8を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号800によって示されている。
【0064】
方法800は、制御を機能ブロック810に受け渡す開始ブロック805を含む。機能ブロック810は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック815に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセットによって表される、さらに/または、対応する。機能ブロック815は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、パラメータ・テーブル内の特定のエントリに対するインデックス、および、フラグを受信、復号し、制御を機能ブロック820に受け渡す。機能ブロック820は、機能ブロック815によって受信された各項目に基づいて、対応するサンプル、ブロック、領域、スライス、ピクチャ、またはシーケンスについて、フィルタ・パラメータを決定および選択し、制御を機能ブロック825に受け渡す。機能ブロック825は、決定および選択されたフィルタ・パラメータを適応化し、制御を機能ブロック830に受け渡す。機能ブロック830は、決定および選択されたフィルタ・パラメータを用いて、サンプル、ブロック、領域、スライス、ピクチャ、または、シーケンスに対してスパース性ベースのアーティファクト除去フィルタリングを実行し、制御を終了ブロック899に受け渡す。
【0065】
代替的には、パラメータa
iおよびb
iは、現在のスライスの統計に基づいて適応的なものとすることができる。一実施形態においては、統計は、アーティファクト除去フィルタの前の局所分散とすることができる。この場合、a
iおよびb
iを信号送信する必要はない。
【0066】
図9を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号900によって示されている。方法900は、制御を機能ブロック910に受け渡す開始ブロック905を含む。機能ブロック910は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック915に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセットによって表される、さらに/または、対応する。一実施形態においては、フィルタ・パラメータは、例えば方法300を用いて決定される。機能ブロック915は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、および、フラグを信号送信し、制御を終了ブロック999に受け渡す。
【0067】
図10を参照するに、ビデオ復号器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号1000によって示されている。
【0068】
方法1000は、制御を機能ブロック1010に受け渡す開始ブロック1005を含む。機能ブロック1010は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック1015に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセットによって表される、さらに/または、対応する。機能ブロック1015は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、および、フラグを受信、復号し、制御を機能ブロック1020に受け渡す。機能ブロック1020は、機能ブロック1015によって受信された各項目に基づいて、対応するサンプル、ブロック、領域、スライス、ピクチャ、またはシーケンスについて、フィルタ・パラメータを決定および選択し、制御を機能ブロック1025に受け渡す。機能ブロック1025は、例えば現在のスライスの、例えばローカル統計に基づいて、決定および選択されたフィルタ・パラメータを適応化し、制御を機能ブロック1030に受け渡す。機能ブロック1030は、決定および選択されたフィルタ・パラメータを用いて、サンプル、ブロック、領域、スライス、ピクチャ、または、シーケンスに対してスパース性ベースのアーティファクト除去フィルタリングを実行し、制御を終了ブロック1099に受け渡す。
【0069】
別の実施形態においては、統計は、ノイズの分散とすることができ、この場合、a
iおよびb
iを信号送信するとよい。このような場合、機能ブロック1025は、例えばノイズ分散の統計に基づいて、決定され、選択されたフィルタ・パラメータを適応化させてもよく、これは、オプションとして機能ブロック1025に関して示されている。
【0070】
別の実施形態においては、各変換サイズのパラメートのセットが符号化器および復号器の双方に記憶される。各スライスについて、変換サイズを信号送信するだけでよい。従って、
図9および
図10は、パラメータ・テーブルがスケーリング・ファクタおよびオフセット・ペアを使用しない点において図
11および図
12とは異なる。
【0071】
図11を参照するに、ビデオ符号化器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号1100によって示されている。方法1100は、制御を機能ブロック1110に受け渡す開始ブロック1105を含む。機能ブロック1110は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック1115に受け渡す。一実施形態においては、パラメータ・テーブルにおける各エントリは、各変換サイズに対応する固定、および/または、所定のパラメータ値によって表される、さらに/または、対応する。一実施形態においては、フィルタ・パラメータは、例えば方法300を用いて決定される。機能ブロック1115は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、および、フラグを信号送信し、制御を終了ブロック1199に受け渡す。
【0072】
図12を参照するに、ビデオ復号器においてアーティファクト除去フィルタリングのためのフィルタ・パラメータの決定および選択を行う別の例示的な方法が概ね参照符号1200によって示されている。
【0073】
方法1200は、制御を機能ブロッ1210に受け渡す開始ブロック1205を含む。機能ブロック1210は、少なくとも1つの変換サイズについて、独自パラメータ・テーブルを記憶し、制御を機能ブロック1215に受け渡す。一実施形態においては、パラメータ・テーブル内の各エントリは、(1)各変換サイズに対応する固定された、および/または、所定のパラメータ値、さらに、(2)スケーリング・ファクタおよびオフセットによって表される、さらに/または、対応する。機能ブロック1215は、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベル(ただしピクチャがビデオ・シーケンスの一部である場合)のうちの1つ以上に関連する、各変換サイズ、および、フラグを受信、復号し、制御を機能ブロック1220に受け渡す。機能ブロック1220は、機能ブロック1215によって受信された各項目に基づいて、対応するサンプル、ブロック、領域、スライス、ピクチャ、またはシーケンスについて、フィルタ・パラメータを決定および選択し、制御を機能ブロック1225に受け渡す。機能ブロック1225は、決定および選択されたフィルタ・パラメータを適応化し、制御を機能ブロック1230に受け渡す。機能ブロック1230は、決定および選択されたフィルタ・パラメータを用いて、サンプル、ブロック、領域、スライス、ピクチャ、または、シーケンスに対してスパース性ベースのアーティファクト除去フィルタリングを実行し、制御を終了ブロック1299に受け渡す。
【0074】
1つ以上の実施形態においては、フラグを用いて、可変の変換サイズが現在のピクチャ/スライスに適応されるかどうかを示すことができる。
【0075】
上述の各方法を輝度および/または色度に適用できることが理解できよう。
【0076】
表1は、本発明の原理の実施形態に従った、例示的なピクチャおよびスライスのヘッダ・シンタックスを示している。
【表1】
【0077】
表1におけるシンタックス要素のうちの少なくとも幾つかのセマンティックスは、以下の通りである。
transform_size_adaptive_flag equal to 1(transform_size_adaptive_flagが1である)は、ピクチャに可変の変換サイズが使用されることを規定する。
transform_size_adaptive_flag equal to 0(transform_size_adaptive_flagが0である)は、ピクチャに可変の変換サイズが使用されないことを示す。
【0078】
transform_size_idxは、現在のスライスの変換ブロック・サイズを規定する。
【0079】
parameter_idx[j]は、現在の変換サイズおよびクラスjについてのパラメータ・インデックスを規定する。
【0080】
本発明の多くの付随する利点/特徴の幾つかについて説明する。これらの幾つかは既に述べた通りのものである。例えば1つの利点/特徴は、少なくともピクチャの少なくとも部分のピクチャ・データを符号化する符号化器を有する装置である。符号化器は、この部分に対してスパース性ベースのアーティファクト除去フィルタリングを実行するスパース性ベースのアーティファクト除去フィルタを含む。スパース性ベースのアーティファクト除去フィルタリングのための1つ以上のフィルタ・パラメータは、可変変換に応じて決定および選択される。
【0081】
さらに、別の利点/特徴は、上述したスパース性ベースのフィルタを含む符号化器を有する装置であって、ピクチャは、ビデオ・シーケンスの一部であり、1つ以上のフィルタ・パラメータは、サンプル・レベル、ブロック・レベル、領域レベル、スライス・レベル、ピクチャ・レベル、およびシーケンス・レベルのうちの少なくとも1つに関連する、この装置である。
【0082】
さらに、別の利点/特徴は、上述したスパース性ベースのフィルタを含む符号化器を有する装置であって、1つ以上のフィルタ・パラメータは、フィルタ・パラメータの決定および選択処理を実行することによって決定および選択される、この装置である。フィルタ・パラメータの決定および選択処理は、フィルタ・パラメータの適応化処理と組み合わされる。フィルタ・パラメータの適応化処理は、少なくとも量子化ノイズおよび符号化情報に基づいている。
【0083】
さらに、別の利点/特徴は、上述したスパース性ベースのフィルタを含む符号化器を有する装置であって、変換サイズおよびスパース性ベースのアーティファクト除去のための1つ以上のフィルタ・パラメータのうちの少なくとも幾つかが1つ以上のハイレベル・シンタックス要素を用いて信号送信される、この装置である。
【0084】
さらに、別の利点/特徴は、上述したスパース性ベースのフィルタを含む符号化器を有する装置であって、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である、この装置である。
【0085】
さらに、別の利点/特徴は、上述したような、スパース性ベースのフィルタを含む符号化器を有し、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である装置であって、フィルタ・パラメータ・テーブルが記憶され、可変変換の各々のための対応するフィルタ・パラメータは、パラメータ・テーブルと可変変換の各々との関数である、この装置である。
【0086】
さらに、別の利点/特徴は、上述したような、スパース性ベースのフィルタを含む符号化器を有し、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である装置であって、可変変換の各々のための対応するフィルタ・パラメータは、スケーリング・ファクタおよびオフセットのうちの少なくとも一方によって信号送信される、この装置である。
【0087】
さらに、別の利点/特徴は、上述したような、スパース性ベースのフィルタを含む符号化器を有し、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である装置であって、可変変換の各々のための対応するフィルタ・パラメータは、信号送信される前に適応化される、この装置である。
【0088】
さらに、別の利点/特徴は、上述したような、スパース性ベースのフィルタを含む符号化器を有し、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である装置であって、可変変換の各々のための対応するフィルタ・パラメータは、復号器に信号送信され、または、信号送信されずに適応化され、この適応化は、領域、領域を含むスライス、領域を含むピクチャ、および、領域を含むビデオ・シーケンスのうちの少なくとも1つの統計に基づく、この装置である。
【0089】
さらに、別の利点/特徴は、上述したような、スパース性ベースのフィルタを含む符号化器を有し、可変変換は、変換タイプ、変換サイズ、変換次元、および変換方向のうちの少なくとも1つに関して可変である装置であって、可変変換の各々のためのフィルタ・パラメータのセットが符号化器および復号器の双方に記憶され、可変変換のうちの対応する1つのインデックスのみが復号器に信号送信されるか、復号器で導出される、この装置である。
【0090】
本発明の原理のこれらの特徴およびその他の特徴は、関連する分野において通常の知識を有するものであれば、本明細書中の開示内容に基づいて、容易に解明することができるであろう。本発明の原理の開示内容は、ハードウエア、ソフトウエア、ファームウエア、特定用途向けプロセッサ、または、これらを組み合わせたものの形態で実施することができることが理解できよう。
【0091】
より好ましくは、本発明の原理の開示内容は、ハードウエアおよびソフトウエアを組み合わせて実施される。さらに、ソフトウエアは、プログラム・ストレージ・ユニットに上に現実的に実装されるアプリケーション・プログラムとして実施される。アプリケーション・プログラムは、適切なアーキテクチャからなるマシンにアップロードされ、このマシンによって実行されるようにしてもよい。好ましくは、このマシンは、1つ以上の中央処理装置(CPU)、ランダム・アクセス・メモリ(RAM)、入出力(I/O)インタフェースを有するコンピュータ・プラットフォーム上で実施される。また、コンピュータ・プラットフォームは、オペレーティング・システムおよびマイクロインストラクション・コードを含むようにしてもよい。本明細書中で開示される様々な処理および機能は、マイクロインストラクション・コードの一部を構成するものでもよいし、アプリケーション・プログラムの一部を構成するものであってもよいし、これらを組み合わせたものであってもよいし、CPUによって実行されるものであってもよい。さらに、追加的なデータ記憶装置や印刷機等、コンピュータ・プラットフォームに様々な他の周辺機器を結合するようにしてもよい。
【0092】
添付図面に示すシステムの構成要素および方法のステップの幾つかは、好ましくは、ソフトウエアの形態によって実施されるため、システムの構成要素または処理機能ブロック間の実際の結合は、本発明の原理をプログラムする方法によって異なる場合があることが理解できよう。本明細書の開示する内容に基づいて、関連する技術における通常の技術知識を有するものであれば、本発明の原理の実施形態または構成、さらに、類似した実施形態または構成を企図できるであろう。
【0093】
添付図面を参照して本明細書中で例示的な実施形態について説明したが、本発明はこれらの実施形態に厳格に限定されるものではなく、関連技術に関して通常の技術を有する者であれば、本発明の原理の範囲または精神を逸脱することなく、様々な変更、改変を施すことが可能であることが理解できるであろう。このような変更、改変は、全て、添付の請求の範囲に記載されたような本発明の原理の範囲に含まれるように意図されている。