(57)【特許請求の範囲】
【請求項１】
テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化するビデオエンコーダを備え、前記テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含み、残差更新方式の選択は、細分化情報、隣接ブロック符号化情報、局所的ピクチャコンテンツ統計のうちの少なくとも１つに基づき、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、装置。
【請求項２】
ビデオエンコーダにおける方法であって、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化するステップを含み、前記テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含み、残差更新方式の選択は、細分化情報、隣接ブロック符号化情報、局所的ピクチャコンテンツ統計のうちの少なくとも１つに基づき、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、前記方法。
【請求項３】
前記複数の残差更新方式の少なくとも一つは、レート歪コストに基づいて選択される、請求項２に記載の方法。
【請求項４】
前記複数の残差更新方式の各々は、ブロックを複数のサブブロックに細分化するステップを含み、前記複数の残差更新方式の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップを含み、前記複数の残差更新方式の他の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了に引き続き、前記複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップを含む、請求項２に記載の方法。
【請求項５】
前記複数の残差更新方式は、結果として生じるビットストリームで明示的に示される、請求項２に記載の方法。
【請求項６】
前記複数の残差更新方式の少なくとも一つは、ピクチャとしての同一のビデオシーケンスに対応する復号化されたピクチャ、少なくとも一つのブロックの量子化パラメータの値、ブロック内の少なくとも一つのサブブロック、ブロックに対する少なくとも一つの隣接ブロック、または少なくとも一つのサブブロック、ピクチャコンテンツ統計、細分化情報および少なくとも一つの隣接ブロックの符号化情報のうちの少なくとも１つに基づいて選択される、請求項２に記載の方法。
【請求項７】
テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを復号化する、ビデオデコーダを備えた装置であって、前記テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを備え、残差更新方式の選択は、細分化情報、隣接ブロック符号化情報、局所的ピクチャコンテンツ統計のうちの少なくとも１つに基づき、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、装置。
【請求項８】
テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを復号化するステップを含む、ビデオエンコーダにおける方法であって、前記テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含み、残差更新方式の選択は、細分化情報、隣接ブロック符号化情報、局所的ピクチャコンテンツ統計のうちの少なくとも１つに基づき、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、前記方法。
【請求項９】
前記複数の残差更新方式の各々は、ブロックを複数のサブブロックに細分化するステップを含み、前記複数の残差更新方式の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップを含み、前記複数の残差更新方式の他の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了に引き続き、前記複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップを含む、請求項８に記載の方法。
【請求項１０】
前記複数の残差更新方式の少なくとも一つは、ピクチャとしての同一のビデオシーケンスに対応する復号化されたピクチャ、少なくとも一つのブロックの量子化パラメータの値、ブロック内の少なくとも一つのサブブロック、ブロックに対する少なくとも一つの隣接ブロック、または少なくとも一つのサブブロック、ピクチャコンテンツ統計、細分化情報および少なくとも一つの隣接ブロックの符号化情報のうちの少なくとも１つに基づいて選択される、請求項８に記載の方法。
【請求項１１】
テンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するビデオエンコーダを備え、前記テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップとを含み、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、前記ブロックは各々の残差更新方式により符号化され、各々の残差はビットストリームに含まれており、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、装置。
【請求項１２】
ビデオエンコーダにおける方法であって、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するステップを含み、前記テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップと、を含み、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、前記ブロックは各々の残差更新方式により符号化され、各々の残差はビットストリームに含まれており、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、前記方法。
【請求項１３】
テンプレート・マッチング予測を利用して、ピクチャ内のブロックを復号化するビデオデコーダを備え、前記テンプレート・マッチング予測は、
ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップとを含み、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、前記ブロックは各々の残差更新方式により符号化され、各々の残差はビットストリームに含まれており、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、装置。
【請求項１４】
ビデオデコーダにおける方法であって、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを復号化するステップを含み、前記テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、前記複数のサブブロックから特定のサブブロックの残差に変換を適用するステップと、を含み、ブロックを予測するために、２つ以上の前記複数の残差更新方式が組合せ可能であり、前記複数の残差更新方式の各々は、互いに対して独立であり、前記複数の残差更新方式の少なくとも１つについて、後に予測されたブロックは、予測データを使用する代わりに再構成された画素をテンプレートとして利用し、前記ブロックは各々の残差更新方式により符号化され、各々の残差はビットストリームに含まれており、ブロックの最終予測は、少なくとも２つの前記複数の残差更新方式の出力の組合せである、前記方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、米国特許仮出願番号第６１／２６７，７１５号（２００９年１２月８日出願）の利益を主張し、当該出願は参照により、その内容は全体として本明細書に包含されている。
【０００２】
本発明の原理は、一般にビデオ符号化および復号化に関し、より詳細にはビデオ符号化および復号化のためのテンプレート・マッチング予測の適応型残差更新のための方法および装置に関する。
【背景技術】
【０００３】
テンプレート・マッチング予測（ＴＭＰ；Ｔｅｍｐｌａｔｅ  ｍａｔｃｈｉｎｇ  ｐｒｅｄｉｃｔｉｏｎ）は、動き／変位情報（動きベクトル、指標となる指数、変位ベクトル）の送信を回避することにより、インターおよびイントラ予測の双方につき、符号化性能を向上させることができる。しかし、ＴＭＰの利用により得られた予測は、標的ブロックとその隣接画素（すなわち、テンプレート）の相互関係に大いに依存している。よって、テンプレート・マッチングは通常、２×２などの比較的小さなブロックあるいは一画素までも処理単位として用いる。ブロックを基本とする多くのエンコーダ及びデコーダにおいては、基本ブロックサイズは、テンプレート・マッチングにより処理されるブロック単位より通常大きい変換のサイズにより、決定される。基本ブロックサイズは、テンプレート・マッチング予測のために、サブブロックに更に分割される。テンプレート・マッチングは、探索するのに使用されるテンプレートとして、隣接画素（たとえば上方または左側の隣）を利用するため、いくつかのサブブロックのテンプレートは、隣接サブブロックからいくつかの画素を含んでいる場合がある。しかし、基本ブロック全体が予測されると変換が適用されるに過ぎないため、残差は、基本ブロック全体が予測された後に、予測に追加され得るに過ぎない。よってテンプレートの一部は、残差を追加することによっては再構成されない、一部の予測データを含んでいる場合がある。テンプレート中の予測データを用いることは、サブブロック境界における起こりうるブロック性を回避することができるが、予測されたデータが再構成されたデータより情報損失が多い可能性があるため、かかる使用は低品質のマッチング結果を生じさせる場合がある。
【０００４】
基本的なテンプレート・マッチング予測は、ビデオ・ピクチャ中に多くの繰り返しパターンが存在する、という仮定に基づいている。これを考慮して、テンプレート・マッチングは、隣接画素をマッチングさせることにより、復号化されたビデオ・ピクチャ中に類似のパターンを探索する。後方予測特性により、テンプレート・マッチングは、動きベクトルまたは変位ベクトル等のオーバーヘッドの送信を回避することにより、符号化性能を向上させることができる。さらにテンプレート・マッチングは、インターおよびイントラ予測の双方において使用することができる。
【０００５】
インター予測におけるテンプレート・マッチング予測
インター予測におけるテンプレート・マッチング予測は、動きベクトルを送信することなく、標的画素を予測する一つの方法である。フレームの標的ブロックを考えると、ブロック中の標的画素は、最適画素の隣接画素が、標的画素の隣接画素と最も高い相関関係を有する、一組の基準サンプルから最適画素を検出することにより決定される。標的画素のこれらの隣接画素は、テンプレートとよばれる。先行技術では、テンプレートは通常、標的画素の再構成された周辺画素から採択される。図１を参照すると、インター予測についてのテンプレート・マッチング予測方式の一例は、参照番号１００により全体的に図示されている。テンプレート・マッチング予測方式１００は、探索領域１１１を有する再構成された参照フレーム１１０、探索領域１１１内の予測領域１１２、予測領域１１２に対する隣接領域１１３を伴っている。テンプレート・マッチング予測方式１００は更に、標的ブロック１５１、標的ブロック１５１に関するテンプレート１５２、再構成された領域１５３を有する現フレーム１５０を伴う。インター予測の場合、テンプレート・マッチングプロセスは、デコーダ側で動きベクトル探索として理解することができる。ここで、テンプレート・マッチングは、従来の動き補償技術に非常に類似して行われる。すなわち動きベクトルは、参照フレーム内の相応に変位されたテンプレート型領域につき、費用関数を算定することにより判断される。そしてテンプレートについての最良の動きベクトルは、標的領域を予測するのに利用される。再構成または少なくとも予測信号が既に存在する、画像のこれらの領域のみが、探索のためにアクセスされる。よってデコーダは、テンプレート・マッチング・プロセスを実行し、追加のサイド情報なしの標的領域を予測することができる。
【０００６】
テンプレート・マッチングは、動きベクトルを送信することなく、標的ブロック内の画素を予測することができる。テンプレート・マッチング予測の予測性能は、標的ブロックとそのテンプレートの相関関係が高い場合は、従来のブロック・マッチング方式の予測性能に匹敵することが予想される。従来技術においては、テンプレートは、標的画素の再構成された空間隣接画素から採択される。隣接画素は、標的画素と低い相関関係を有する場合もある。それ故に、テンプレート・マッチング予測の性能は、従来のブロック・マッチング方式よりも低い場合がある。
【０００７】
イントラ予測におけるテンプレート・マッチング予測
イントラ予測においては、予測が標的ブロックとはかけ離れた画素により生じ得るため、テンプレート・マッチングは、利用可能な非局所予測のアプローチの一つである。イントラ・テンプレート・マッチングにおいては、テンプレートの規定は、インター・テンプレート・マッチングにおけるテンプレートの規定画定に類似している。しかし、一つの相違は、探索領域が、現ピクチャの復号化された部分に限定されるという点である。図２を参照すると、イントラ予測についてのテンプレート・マッチング予測方式の一例は、参照番号２００により全体的に図示されている。テンプレート・マッチング予測方式２００は、ピクチャ２７７の復号化された部分２１０を伴っている。ピクチャ２７７の復号化された部分２１０は、探索領域２１１、探索領域２１１内の候補予測領域２１２、候補予測領域２１２に対する隣接領域２１３を有している。テンプレート・マッチング予測方式２００は更に、ピクチャ２７７の復号化されていない部分２２０を伴っている。ピクチャ２７７の復号化されていない部分２２０は、標的ブロック２２１、標的ブロック２２１に対するテンプレート２２２を有している。簡略化のために、以下の記述は、イントラ・テンプレート・マッチングに基づいている。しかし、インター・テンプレートの対応するものが直ちに拡張適用できることは、当該技術分野および関連する技術分野の当業者に理解される。
【０００８】
テンプレート・マッチングにおける残差更新方式
テンプレート・マッチングは、追加的なオーバーヘッドを回避可能であるため、映像中の比較的粒子的な領域に通常必要とされる、付随する追加的なオーバーヘッドを最小限に抑えることにより、当該領域を予測するという利点がある。テンプレート・マッチングの利点を活用するために、予測の過程における標的ブロックは、通常、基本的符号化ブロックより小さい。例えば、国際標準化機構／国際電気標準会議（ＩＳＯ／ＩＥＣ）動画専門グループ４（ＭＰＥＧ４；Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ４）のパート１０、高度動画像圧縮符号化（ＡＶＣ；Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）規格／国際電気通信連合電気通信セクタ（ＩＴＵ−Ｔ）Ｈ．２６４勧告（以下「ＭＰＥＧ４ＡＶＣ規格」という）においては、基本符号化ブロックサイズは、４×４または８×８である。一つの先行技術のアプローチでは、テンプレート・マッチングの標的ブロックのサイズは２×２として画定され、これは基本的符号化ブロック４×４のサイズの半分である。図３を参照すると、イントラ・テンプレート・マッチング予測のための細分化されたブロックの一例は、参照番号３００により全体的に示されている。イントラ・テンプレート・マッチング予測は、ピクチャ３７７の復号化された部分３１０を伴う。ピクチャ３７７の復号化された部分３１０は、探索領域３１１および探索領域３１１内の候補予測領域３１２、候補予測領域３１２に対する隣接領域３１３を有している。イントラ・テンプレート・マッチング予測は更に、ピクチャ３７７の復号化されていない部分３２０を伴っている。ピクチャ３７７の復号化されていない部分３２０は、標的ブロック３２１（図３の具体例では、イントラ・テンプレート・マッチング予測のための細分化されたブロックともいわれる）、および標的ブロック３２１に対するテンプレート３２２を有している。
【０００９】
変換サイズは通常、基本ブロックサイズ（ＭＰＥＧ４ＡＶＣ規格においては、４×４変換および８×８変換がある）と等しいため、これは、少なくとも基本ブロック全体が予測された後は、変換され、量子化され、更新された予測残差を受け取ることができるに過ぎないことを意味する。よって、より小さい標的ブロックサイズを有するテンプレート・マッチングにおいては、テンプレートは、先行する予測されたサブブロックから得られた何らかの予測データを含んでいてもよい。このアプローチを「方法１」と呼ぶ。
【００１０】
図４Ａ―Ｄを参照すると、（複数の）サブブロックおよびそれらのテンプレートの具体例は、参照番号４００により全体的に示されている。図４の具体例は、上記「方法１」に対応する。当該具体例では、基本ブロック４１０は、４つのサブブロックに分割され（各々、参照番号１、２、３、４により示されている）、各々のサブブロックは、テンプレート・マッチング予測の各標的ブロックである。図４Ａを参照すると、標的ブロック１のテンプレートは、参照番号４１１により示されており、（基本ブロックに適用されるような）テンプレート・マッチング予測の標的ブロックは、参照番号４１２により示され、基本ブロックサイズは、参照番号４１３により示されている。図４Ｂを参照すると、標的ブロック２のテンプレートは、参照番号４２１および４２２に表される領域により示されている。図４Ｃを参照すると、標的ブロック３のテンプレートは、参照番号４３１および４３２に表される領域により示されている。図４Ｄを参照すると、標的ブロック４のテンプレートは、参照番号４４１、４４２および４４３に表される領域により示されている。４つの標的ブロックの予測プロセスは、以下のステップを伴う。
（１）隣接画素を利用して、標的ブロック（例えば、標的ブロック１）について、テンプレートを生成する。
（２）マッチングを探索し、この標的ブロックについて予測を生じさせる。
（３）標的ブロックをその予測で更新する。
（４）標的ブロック２、３、４について、ステップ（１）〜（３）を繰り返す。
（５）基本ブロック全体の残差ブロックを取得する。
（６）残差ブロック全体を変換し、係数を量子化し、量子化された係数を逆変換する。
（７）予測ブロックおよび量子化された残差ブロックを追加することにより、再構成されたブロックを生成する。
（８）基本ブロックを終了する。
【００１１】
標的ブロック１は、ブロックの第１のサブブロックであるため、そのテンプレート中の画素は全て、再構成されたピクチャから取得される。しかし、標的ブロック２等の他の標的ブロックについては、そのテンプレートは、標的ブロック１からのいくつかの画素を有している必要がある。これに伴い、標的ブロック２を予測する際に、標的ブロック１が予測されたばかりであるが、再構成はされていない。なぜなら、４つの標的ブロックがステップ（６）で予測されるまでは、変換および量子化はされていないからである。よって、標的ブロック２のテンプレートについては、そのテンプレートの一部が、標的ブロック１の予測データから生じる。テンプレート・マッチングにより他の標的ブロック（すなわち、標的ブロック１以外の標的ブロック。上記で言及したように、標的ブロック１についてのテンプレート内の画素は全て、再構成されたピクチャから生じているからである）を予測する際にも、同様の問題がある。
【００１２】
先行する標的ブロックの予測データを、現在の標的ブロックのテンプレートに組み込むことにより、非常に円滑に基本ブロック全体の予測を行うことができる。更に、標的ブロックが全て完全に予測される場合、大きな変換（および付随する量子化）を適用する際に、大きな変換を利用することにより生じる利点を享受することができる。しかし、予測データをマッチングのためのテンプレートに組み込むことは、予測誤差を拡大し、予測を不良化させる。
【発明の概要】
【００１３】
先行技術の上記かつ他の欠点および不都合は、本発明の原理により対処されており、これはビデオ符号化のためのテンプレート・マッチング予測の適応型残差更新のための方法および装置を対象としている。
【００１４】
本発明の原理の一つの態様によると、一つの装置が提供されている。当該装置は、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化する、ビデオエンコーダを備えている。テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含んでいる。
【００１５】
本発明の原理の別の態様によると、ビデオエンコーダにおける一つの方法が提供されている。当該方法は、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化するステップを含んでいる。テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含んでいる。
【００１６】
本発明の原理の更に別の態様によると、一つの装置が提供されている。当該装置は、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを復号化する、ビデオデコーダを備えている。テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含んでいる。
【００１７】
本発明の原理の更に別の態様によると、ビデオデコーダにおける一つの方法が提供されている。当該方法は、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化するステップを含んでいる。テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを含んでいる。
【００１８】
本発明の原理の更に別の態様によると、一つの装置が提供されている。当該装置は、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するビデオエンコーダを備えている。テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップとを含んでいる。
【００１９】
本発明の原理の更に別の態様によると、ビデオエンコーダにおける一つの方法が提供されている。当該方法は、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するステップを含んでいる。テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップとを含んでいる。
【００２０】
本発明の原理の更に別の態様によると、一つの装置が提供されている。当該装置は、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを復号化するビデオデコーダを備えている。テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップとを含んでいる。
【００２１】
本発明の原理の更に別の態様によると、ビデオデコーダにおける一つの方法が提供されている。当該方法は、テンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するステップを含んでおり、テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップと、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックから特定のサブブロックの残差に変換を適用するステップとを含んでいる。
【００２２】
本発明の原理の上記および他の態様、特徴および利点は、添付図面に関連して解釈される例示的実施形態の以下の詳細な説明から明らかになる。
【図面の簡単な説明】
【００２３】
本発明の原理は、以下の例示的図面によりより良く理解できる。
【図１】インター予測のためのテンプレート・マッチング予測方式の一例を示す概略図である。
【図２】イントラ予測のためのテンプレート・マッチング予測方式の一例を示す概略図である。
【図３】イントラ・テンプレート・マッチング予測のための細分化されたブロックの一例を示す概略図である。
【図４】図４Ａ−図４Ｄはサブブロックおよびそのテンプレートの一例を一括して示す概略図である。
【図５】本発明の原理の実施形態に従い、本発明の原理を適用できる例示的ビデオエンコーダを示すブロック図である。
【図６】本発明の原理の実施形態に従い、本発明の原理を適用できる例示的ビデオデコーダを示すブロック図である。
【図７Ａ】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための例示的方法を示す流れ図である。
【図７Ｂ】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための例示的方法を示す流れ図である。
【図８】本発明の原理の実施形態に従い、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新のための例示的方法を示す流れ図である。
【図９】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための別の例示的方法を示す流れ図である。
【図１０】本発明の原理の実施形態に従い、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新のための別の例示的方法を示す流れ図である。
【図１１Ａ】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための更に別の例示的方法を示す流れ図である。
【図１１Ｂ】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための更に別の例示的方法を示す流れ図である。
【図１２】本発明の原理の実施形態に従い、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新のための更に別の例示的方法を示す流れ図である。
【図１３】本発明の原理の実施形態に従い、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新のための更に別の例示的方法を示す流れ図である。
【図１４】本発明の原理の実施形態に従い、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新のための更に別の例示的方法を示す流れ図である。
【発明を実施するための形態】
【００２４】
本発明の原理は、ビデオ符号化および復号化のためのテンプレート・マッチング予測の適応型残差更新のための方法および装置を対象としている。
【００２５】
本説明は、本発明の原理を記述している。よって当業者は、種々の構成配置を考案し、本明細書に明示的に記述されておらず、または図示されていない場合であっても、本発明の原理を採用してその趣旨および範囲に含めることが可能であることが理解される。
【００２６】
本明細書に列挙されたすべての具体例および条件付文言は、技術の進歩させるために発明者（ら）が提供する本発明の原理および概念を理解する際に、読み手を助けるという教育目的を有しており、特に列挙されたかかる具体例および条件に限定することがないものとして解釈されるべきである。
【００２７】
また、本発明の原理の原則、態様および実施形態を列挙する本明細書中のすべての記述、ならびにこれらの特定の具体例は、これらの構造的かつ機能的な均等物の双方を包含することを意図としている。また、かかる均等物は、現在知られており、かつ将来開発される均等物、すなわち構造に関わらず、同一の機能を発揮する開発されたいずれの構成要件も包含することを意図している。
【００２８】
よって、例えば、本明細書で提示されたブロック図は、本発明の原理を具体化する例示的回路の概念図を表現していることが、当業者により理解されるであろう。同様に、いずれのフローチャート、流れ図、状態遷移図、擬似コード等も、コンピュータまたはプロセッサが明示的に示されているか否かにかかわらず、コンピュータ読み取り可能媒体に十分に表現することができ、コンピュータまたはプロセッサによりそのように実行される種々のプロセスを表現することが理解されるであろう。
【００２９】
図面に示された種々の要素の機能は、専用ハードウェアならびに適切なソフトエアと関連してソフトウェアを実行できるハードウェアの使用を介して提供できる。プロセッサにより提供される場合、機能は単一の専用プロセッサにより提供されてもよいし、単一の共有プロセッサにより提供されてもよいし、一部を共有できる複数の個別のプロセッサにより提供されてもよい。また、「プロセッサ」または「コントローラ」の文言の明示的使用は、ソフトウェアを実行することができるハードウェアのみを言及するように解釈されるべきではなく、黙示的にディジタル信号プロセッサ（ＤＳＰ）ハードウェア、ソフトウェアを記憶する読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、不揮発性記憶装置を含むが、これに限定されない。
【００３０】
従来型および／またはカスタムの他のハードウェアが含まれてもよい。同様に、図示されたいずれのスイッチも概念的に過ぎない。その機能は、プログラムロジックの動作を介して、専用のロジックを介して、プログラム制御および専用のロジックの相互作用を介して、あるいは手動でも実行でき、特定の技術は、コンテキストからより詳細に理解されるように、実施者により選択可能である。
【００３１】
本明細書の請求項において、特定の機能を実行するための手段として表わされる任意の要素は、例えば、ａ）その機能を実行する複数の回路素子の組み合わせ、またはｂ）ファームウェア、マイクロコードなどを含む任意の形態のソフトウェアであって、その機能を実行する当該ソフトウェアを実行するための適切な回路と組み合わされたものなどを含め、当該機能を実行する任意の方法を含むことが意図されている。請求項によって定義される本発明の原理は、列挙される様々な手段によって提供される機能が、請求項によって提唱される手法で組み合わされ、かつ結合されるという事実に属する。したがって、これらの機能を提供することができるいずれの手段も、本明細書に示されているものと均等であるとみなされる。
【００３２】
明細書中の本発明の原理の「一つの実施形態」または「ある実施形態」並びにその他の変形に対する言及は、実施形態との関連で記載される特定の特徴、構造、特性等が、本発明の原理の少なくとも一つの実施形態に含まれることを意味している。よって、明細書全体を通して様々な箇所に現れている「一つの実施形態においては」または「ある実施形態においては」のフレーズの出現、並びに他のいずれの変形も、必ずしも全てが同一の実施形態に言及しているものではない。更に、実施形態および実装の語は、本明細書で互換可能に使用されることが理解されるべきである。
【００３３】
例えば、「Ａ／Ｂ」、「Ａおよび／またはＢ」、「ＡおよびＢの少なくとも一つ」という場合の以下の「／」、「および／または」、および「少なくとも一つの」のいずれかの使用は、最初に挙げたオプション（Ａ）のみの選択を含むか、２番目に列記されたオプション（Ｂ）のみの選択を含むか、双方のオプション（ＡおよびＢ）の選択を含むことを意図していると理解されるべきである。他の具体例としては、「Ａ，Ｂおよび／またはＣ」と「Ａ、Ｂ、Ｃのうち少なくとも一つ」の場合は、当該フレーズは、最初に挙げられたオプション（Ａ）のみの選択を含むか、第２番目に挙げられたオプション（Ｂ）のみの選択を含むか、第３番目に挙げられたオプション（Ｃ）のみの選択を含むか、第１および第２番目に挙げられたオプション（ＡおよびＢ）のみの選択を含むか、第１および第３番目に挙げられたオプション（ＡおよびＣ）のみの選択を含むか、第２および第３番目に挙げられたオプション（ＢおよびＣ）のみの選択を含むか、３つすべてのオプション（ＡおよびＢおよびＣ）の選択を含むことを意図している。上記は、当該技術分野および関連する技術分野の当業者に直ちに明らかなように、列挙された多くの項目についても拡張適用できる。
【００３４】
さらに本明細書で使用される際に、「ピクチャ」および「画像」の用語は、互換可能に使用され、静止画またはビデオシーケンスからのピクチャを指す。周知のように、ピクチャはフレームあるいはフィールドであってもよい。
【００３５】
さらに本明細書で使用される際に、「信号伝達」の用語は、対応するデコーダに何かを示すことを指す。例えば、エンコーダは、いずれの特定の残差更新方式がエンコーダ側で使用されたかをデコーダに知らせるために、１つ以上の残差更新方式を信号伝達することができる。このように、同一の残差更新方式が、エンコーダ側とデコーダ側の双方で使用できる。よって例えば、エンコーダは、特定の１つ以上の残差更新方式をデコーダに送信することができ、それによりデコーダは、同一の特定の１つ以上の残差更新方式を使用することができ、あるいはデコーダがすでに特定の１つ以上の残差更新方式並びに他の方式を備えている場合は、（送信することなく）信号伝達が利用され、デコーダがより大きな分類の残差更新方式から特定の１つ以上の残差更新方式を容易に知り、かつこれを選択できることを可能にしている。実際のいずれの残差更新方式の送信も回避することにより、ビットセービングを実現することができる。信号伝達は種々の態様で実現できることが理解されるべきである。例えば、対応するデコーダに情報を信号伝達するために、１つ以上のシンタックス要素、フラグ等を使用してもよい。
【００３６】
本明細書で使用される際に、「基本ブロック」の用語は、エンコーダおよびデコーダにおいて、既定の変換が適用されるブロックをいう。
【００３７】
記述および記載のために、ＭＰＥＧ４  ＡＶＣ規格に対する改良との関連において、ＭＰＥＧ４  ＡＶＣ規格を記載の基準として用い、ＭＰＥＧ４  ＡＶＣ規格に対する改良およびこの拡張を説明しつつ、実施例を本明細書に記載する。しかし、本発明の原理は、ＭＰＥＧ４  ＡＶＣ規格および／またはその拡張にのみ限定されるものではないことを理解すべきである。本明細書に与えられた本発明の原理の教示を前提とすると、本発明の原理は、他の規格の拡張に適用される場合、あるいは未だ開発されていない規格に適用される場合、および／またはこれに組み込まれる場合に等しく適用可能であり、少なくとも類似の効果を与えることを、当該技術分野および関連する技術分野の当業者に直ちに理解するであろう。本発明の原理は、規格に適合しないが、むしろ独自の規定に適合するビデオエンコーダおよびビデオデコーダにも適用されることが更に理解されるべきである。
【００３８】
図５を参照すると、本発明の原理が適用できる例示的ビデオエンコーダは、全体的に参照番号５００により示されている。ビデオエンコーダ５００は、コンバイナ５８５の非反転入力と信号通信する出力を備えたフレーム順序付けバッファ５１０を備えている。コンバイナ５８５の出力は、変換器および量子化器５２５の第１の入力と信号通信により接続されている。変換器および量子化器５２５の出力は、エントロピーコーダ５４５の第１の入力、ならびに逆変換器および逆量子化器５５０の第１の入力と信号通信により接続されている。エントロピーコーダ５４５の出力は、コンバイナ５９０の第１の非反転入力と信号通信により接続されている。コンバイナ５９０の出力は、出力バッファ５３５の第１の入力と信号通信により接続されている。
【００３９】
エンコーダコントローラ５０５の第１の出力は、フレーム順序付けバッファ５１０の第２の入力と、逆変換器および逆量子化器５５０の第２の入力と、ピクチャタイプ決定モジュール５１５の入力と、マクロブロック（ｍａｃｒｏｂｌｏｃｋ）タイプ（ＭＢタイプ）決定モジュール５２０の第１の入力と、イントラ予測モジュール５６０の第２の入力と、デブロッキングフィルタ５６５の第２の入力と、動き補償手段５７０の第１の入力と、動き予測手段５７５の第１の入力と、参照ピクチャバッファ５８０の第２の入力と信号通信により接続されている。
【００４０】
エンコーダコントローラ５０５の第２の出力は、付加拡張情報（ＳＥＩ）インサータ５３０の第１の入力と、変換器および量子化器５２５の第２の入力と、エントロピーコーダ５４５の第２の入力と、出力バッファ５３５の第２の入力と、シーケンスパラメータセット（ＳＰＳ）およびピクチャパラメータ（ＰＰＳ）インサータ５４０の入力と信号通信により接続されている。
【００４１】
付加拡張情報（ＳＥＩ）インサータ５３０の出力は、コンバイナ５９０の第２の非反転入力と信号通信により接続されている。
【００４２】
ピクチャタイプ決定モジュール５１５の第１の出力は、フレーム順序付けバッファ５１０の第３の入力と信号通信により接続されている。ピクチャタイプ決定モジュール５１５の第２の出力は、マクロブロック（ｍａｃｒｏｂｌｏｃｋ）タイプ（ＭＢタイプ）決定モジュール５２０の第２の入力と信号通信により接続されている。
【００４３】
シーケンスパラメータセット（ＳＰＳ）およびピクチャパラメータセット（ＰＰＳ）インサータ５４０の出力は、コンバイナ５９０の第３の非反転入力と信号通信により接続されている。
【００４４】
逆量子化器および逆変換器５５０の出力は、コンバイナ５１９の第１の非反転入力と信号通信により接続されている。コンバイナ５１９の出力は、イントラ予測モジュール５６０の第１の入力と、デブロッキングフィルタ５６５の第１の入力と信号通信により接続されている。デブロッキングフィルタ５６５の出力は、参照ピクチャバッファ５８０の第１の入力と信号通信により接続されている。参照ピクチャバッファ５８０の出力は、動き予測手段５７５の第２の入力および動き補償手段５７０の第３の入力と信号通信により接続されている。動き予測手段５７５の第１の出力は、動き補償手段５７０の第２の入力と信号通信により接続されている。動き予測手段５７５の第２の出力は、エントロピーコーダ５４５の第３の入力と信号通信により接続されている。
【００４５】
動き補償手段５７０の出力は、スイッチ５９７の第１の入力と信号通信により接続されている。イントラ予測モジュール５６０の出力は、スイッチ５９７の第２の入力と信号通信により接続されている。マクロブロックタイプ（ＭＢタイプ）決定モジュール５２０の出力は、スイッチ５９７の第３の入力と信号通信により接続されている。スイッチ５９７の第３の入力は、（制御入力、すなわち第３の入力と比較して）スイッチの「データ」入力が、動き補償手段５７０またはイントラ予測モジュール５６０により提供されるべきか否かを判断する。スイッチ５９７の出力は、コンバイナ５１９の第２の非反転入力およびコンバイナ５８５の反転入力と信号通信により接続されている。
【００４６】
フレーム順序付けバッファ５１０の第１の入力およびエンコーダコントローラ５０５の入力は、入力ピクチャを受信するためのエンコーダ５００の入力として利用可能である。また、付加拡張情報（ＳＥＩ）インサータ５３０の第２の入力は、メタデータを受信するためのエンコーダ５００の入力として利用可能である。出力バッファ５３５の出力は、ビットストリームを出力するためのエンコーダ５００の出力として利用可能である。
【００４７】
図６を参照すると、本発明の原理が適用可能な例示的ビデオデコーダが、参照番号６００により全体的に示されている。ビデオデコーダ６００は、エントロピーデコーダ６４５の第１の入力と信号通信により接続されている出力を備えた入力バッファ６１０を含んでいる。エントロピーデコーダ６４５の第１の出力は、逆変換器および逆量子化器６５０の第１の入力と信号通信により接続されている。逆変換器および逆量子化器６５０の出力は、コンバイナ６２５の第２の非反転入力と信号通信により接続されている。コンバイナ６２５の出力は、デブロッキングフィルタ６６５の第２の入力とイントラ予測モジュール６６０の第１の入力と信号通信により接続されている。デブロッキングフィルタ６６５の第２の出力は、参照ピクチャバッファ６８０の第１の入力と信号通信により接続されている。参照ピクチャバッファ６８０の出力は、動き補償手段６７０の第２の入力と信号通信により接続されている。
【００４８】
エントロピーデコーダ６４５の第２の出力は、動き補償手段６７０の第３の入力、デブロッキングフィルタ６６５の第１の入力およびイントラ予測手段６６０の第３の入力と信号通信により接続されている。エントロピーデコーダ６４５の第３の出力は、デコーダコントローラ６０５の出力と信号通信により接続されている。デコーダコントローラ６０５の第１の出力は、エントロピーデコーダ６４５の第２の入力と信号通信により接続されている。デコーダコントローラ６０５の第２の出力は、逆変換器および逆量子化器６５０の第２の入力と信号通信により接続されている。デコーダコントローラ６０５の第３の出力は、デブロッキングフィルタ６６５の第３の入力と信号通信により接続されている。デコーダコントローラ６０５の第４の出力は、イントラ予測モジュール６６０の第２の入力、動き補償手段６７０の第１の入力、参照ピクチャバッファ６８０の第２の入力と信号通信により接続されている。
【００４９】
動き補償手段６７０の出力は、スイッチ６９７の第１の入力と信号通信により接続されている。イントラ予測モジュール６６０の出力は、スイッチ６９７の第２の入力と信号通信により接続されている。スイッチ６９７の出力は、コンバイナ６２５の第１の非反転入力と信号通信により接続されている。
【００５０】
入力バッファ６１０の入力は、入力ビットストリームを受信するためのデコーダ６００の入力として利用可能である。デブロッキングフィルタ６６５の第１の出力は、出力ピクチャを出力するためのデコーダ６００の出力として利用可能である。
【００５１】
上記で言及したように、本発明の原理は、ビデオ符号化および復号化のためのテンプレート・マッチング予測の適応型残差更新のための方法および装置を対象としている。ある実施形態では、より小さなブロックレベルで残差を更新し、そして大きな変換および付随する量子化の効率性を犠牲にして、より良質の予測を提供することができる。符号化性能を向上しつつ、残差更新方式の利点を付与する他の実施形態では、特定の符号化ブロックにつき、最良の方式を選択するために、適応型切替手法を更に提案する。特に、符号化される現ブロックについてのテンプレート・マッチングにおける種々の残差更新方式から選択することを提案する。スイッチ状態の不確定性は、結果として生じるビットストリームで明示的に送信し、あるいは例えば、復号化されたピクチャ情報から非明示的に導くことができる。この適応型切替方式の目的は、種々の残差更新方式を利用することにより、テンプレート・マッチングについての予測と変換の最良のトレードオフを特定することにより、符号化効率を向上させることである。提案された技術は、イントラおよびインター予測の双方に適用できる。
【００５２】
ここで本発明の原理に従い、より小さい変換サイズを利用することにより、予測データを向上させる「方法２」と呼ばれる方法を開示し、かつ記述する。４つの標的ブロックの予測プロセスは、以下のステップを伴う。
（１）隣接画素を用いて、標的ブロックについて（および／または基本ブロックに対応する他のブロック内で）テンプレートを生成する。
（２）マッチングを探索し、この標的ブロックについて予測を生じさせる。
（３）標的ブロックをその予測で更新する。
（４）標的ブロックの残差を変換し、変換係数を取得し、係数を量子化し、量子化された係数を逆変換する。
（５）予測標的ブロックおよび量子化された残差標的ブロックを追加することにより、再構成された標的ブロックを生成する。
（６）標的ブロックをその再構成により更新する。
（７）標的ブロック２、３、４について、ステップ（１）〜（６）を繰り返す。
（８）基本ブロックを終了する。
【００５３】
変換がより小さなブロックに基づくと、隣接サブブロックは、より早期に再構成することができる。よって、後に予測された標的ブロックは、予測データを利用する代わりに、テンプレートとして再構成された画素を利用することができ、これにより予測性能が向上する。
【００５４】
適応型残差更新
第１の残差更新方式においては、（たとえばより大きな変換を利用することにより）変換においてより効率的な方式が利用されるが、予測が不良なものとなる場合があるが、一方で第２の残差更新方式は、（第１の方式よりも）良質な予測を提供できるが、大きな変換を利用することに伴う効率性を犠牲にする場合がある。本発明の原理によると、これらの２つの方式を、適応型残差更新構造に統合し、符号化効率を向上させるために、双方の方法の利点を活用することにより、予測精度と変換および量子化の効率性の間の良好なトレードオフを達成している。
【００５５】
種々の標的サイズおよび種々の利用可能な変換サイズにより、様々な残差更新方式を達成することができる。本発明の原理による最適な残差更新方式は、それらのすべての利点を活用することができ、それの不都合を適宜、回避することができる。
【００５６】
本発明の原理によると、（複数の）残差更新方式を統合するために、ある構造を構築する。この構造には、テンプレート・マッチングのための多くの種々の残差更新方式があってもよい。これらの方式の中での不確定性は、結果として生じるビットストリームで明示的に送信され、あるいは例えば、復号化されたピクチャに基づいて非明示的に導かれてもよい。記述および簡略化のために、選択する対象として利用できる２つの残差更新方式があると仮定するが、本発明の原理は、当該技術分野および関連する技術分野の当業者が直ちに、３つ以上の残差更新方式が関与するように拡張可能であることに注意されたい。
【００５７】
実施形態１：明示的切替方法
上記したように２つ以上の残差更新方式が存在する場合、当該方式の間の不確定性を解決する必要がある。本実施形態では、いずれの方式が選択されるかを示すために、例えばフラグまたはインディケータを利用することによる、明示的切替方法を提案する。エンコーダでは、たとえばレート歪コストを考慮して、全ての残差更新方式を評価し、最良の残差更新方式を選択し、対応するデコーダにフラグまたはインディケータを送信することができる。デコーダでは、ビットストリームからフラグまたはインディケータを読み取ることにより、不確定性を解決し、復号化する際に対応する方式を適用する。
【００５８】
図７を参照すると、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新の例示的方法は、参照番号７００により全体的に示されている。当該方法７００は、制御を機能ブロック７１０に渡す開始ブロック７０５を含んでいる。機能ブロック７１０は、ｍｉｎ＿ｒｄｃｏｓｔ＝ｍａｘ＿ｖａｌｕｅ，ｂｅｓｔ＿ｓｃｈｅｍｅ＝ｄｅｆａｕｌｔ＿ｖａｌｕｅ．ｋ＝０を設定することにより、テンプレート・マッチング予測について初期化を行い、制御をループ端ブロック７１５に渡す。ループ端ブロック７１５は、一つのブロックに関する全ての残差更新方式をループにかけることを開始し、制御をループ端ブロック７２０に渡す。ループ端ブロック７２０は、すべてのサブブロックをループにかけることを開始し、制御をループ端ブロック７２５に渡す。機能ブロック７２５はテンプレートを生成し、制御を機能ブロック７３０に渡す。機能ブロック７３０はテンプレート・マッチングを行い、制御を機能ブロック７３５に渡す。機能ブロック７３５は、標的ブロックを予測により更新し、制御を機能ブロック７４０に渡す。機能ブロック７４０は、現方式に従い、現標的ブロックにつき、変換、量子化、および再構成（残差の更新）を行うべきか否かを判断し、制御をループ端ブロック７４５に渡す。ループ端ブロック７４５は、全てのサブブロックをループにかけるのを終了し、制御を機能ブロック７５０に渡す。機能ブロック７５０は、現方式に従い、現ブロックにつき、変換、量子化、および再構成（残差の更新）を行うべきか否かを判断し、制御をループ端ブロック７５５に渡す。機能ブロック７５５は、機能ブロック７５０により得られた判断に対応するレート歪コストを算定し、制御を決定ブロック７６０に渡す。決定ブロック７６０は、ｒｄｃｏｓｔ＞＝ｍｉｎ＿ｒｄｃｏｓｔであるか否かを判断する。そうであれば、制御がループ端ブロック７６８に渡される。そうでない場合は、制御は機能ブロック７６５に渡される。機能ブロック７６５は、ｍｉｎ＿ｒｄｃｏｓｔおよびｂｅｓｔ＿ｓｃｈｅｍｅ＝ｋを設定し、制御を機能ブロック７６８に渡す。機能ブロック７６８は、ｋ＝ｋ＋１を設定し、制御をループ端ブロック７７０に渡す。ループ端ブロック７７０は、全ての残差更新方式をループにかけるのを終了し、制御を機能ブロック７７５に渡す。機能ブロック７７５は、ｂｅｓｔ＿ｓｃｈｅｍｅをテンプレート・マッチング予測の出力として選択し、ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｉｎｄをｂｅｓｔ＿ｓｃｈｅｍｅと共に設定し、制御を機能ブロック７８０に渡す。機能ブロック７８０は、すべてのシンタックス（ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｉｎｄを含む）および関連する係数情報を符号化し、制御を終了ブロック７９９に渡す。
【００５９】
図８を参照すると、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新の例示的方法が、参照番号８００により全体的に示されている。当該方法８００は、制御を機能ブロック８１０に渡す開始ブロック８０５を含んでいる。機能ブロック８１０は、入力ビットストリームを構文解析し、ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｉｎｄと共にｂｅｓｔ＿ｓｃｈｅｍｅと共に設定し、制御をループ端ブロック８１５に渡す。ループ端ブロック８１５は、すべてのサブブロックをループにかけるのを開始し、制御を機能ブロック８２０に渡す。機能ブロック８２０はテンプレートを生成し、制御を機能ブロック８２５に渡す。機能ブロック８２５はテンプレート・マッチングを行い、制御を機能ブロック８３０に渡す。機能ブロック８３０は、標的ブロックを予測により更新し、制御を機能ブロック８３５に渡す。機能ブロック８３５は、ｂｅｓｔ＿ｓｃｈｅｍｅに従い、現標的ブロックを再構成（残差を更新）するか否かを決定し、制御をループ端ブロック８４０に渡す。ループ端ブロック８４０は、すべてのサブブロックをループにかけるのを終了し、制御を機能ブロック８４５に渡す。機能ブロック８４５は、ｂｅｓｔ＿ｓｃｈｅｍｅに従い、現ブロックを再構成（残差を更新）するか否かを決定し、制御を終了８９９に渡す。
【００６０】
実施形態２：非明示的切替方法
明示的切替方法は、追加のサイド情報にかかるコストを支払うことにより、エンコーダにおいて最良の方式を常に選択することができ、これにより符号化性能を低下させる場合がある。上述のように、追加のサイド情報を送信する必要性を回避するために、種々の方式間の不確定性は、非明示的に導かれてもよい。細分化情報、隣接ブロック符号化情報（たとえば変換サイズ、係数、モードおよび／またはその他）、局所的ピクチャコンテンツ統計（たとえば、平均値、分散値および／またはその他）等を活用することができる。この非明示的切替方法は、明示的切替方法における追加的なオーバーヘッドを回避することができ、これにより緩変動コンテンツの場合に使用されることが好まれる場合がある。ビデオエンコーダにおける本実施形態を伴う方法は、以下の図９との関連で記載されており、ビデオデコーダにおける本実施形態を伴う方法は、以下の図１０との関連で記載されている。
【００６１】
実施形態３：量子化パラメータ依存の切替方法
特定のサブブロックに対して残差の更新が早期に行われるほど、（特定のサブブロックに関する）以下のサブブロックが良質な予測を得られる可能性が高くなる。またブロック全体の予測もより良質となる。ブロックが大きな量子化パラメータ（ＱＰ）の値により符号化される場合、かかる場合に残差は少ない量のデータを提供するに過ぎないため、入手可能な予測がより良質であることを好むようになる。他方、ブロックが比較的小さい量子化パラメータの値により符号化される場合は、残差は非常に重要になり、相当量の予測誤差を補償することができる。よって上記を考慮し、量子化パラメータ依存の切替方法を提供する。たとえば、上記の２つの方式のみを導入したことを考えると、量子化パラメータの値が大きい場合は、より良質の予測を入手するために、方法２を利用することができる。あるいは大きな変換を利用するという利点を維持するために、方法１を利用する。
【００６２】
以下の図９および１０は、本明細書に記載の実施形態２および３の双方に関連する。
【００６３】
ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新の別の例示的方法は、参照番号９００により全体的に示されている。当該方法９００は、制御を機能ブロック９１０に渡す開始ブロック９０５を含んでいる。機能ブロック９１０は、量子化パラメータ（ＱＰ）、細分化情報、隣接ブロック情報、復号化されたコンテンツ統計および／またはその他により、ｂｅｓｔ＿ｓｃｈｅｍｅを導き、制御をループ端ブロック９１５に渡す。ループ端ブロック９１５は、全てのサブブロックをループにかけ、制御を機能ブロック９２０に渡す。機能ブロック９２０はテンプレートを生成し、制御を機能ブロック９２５に渡す。機能ブロック９２５はテンプレート・マッチングを行い、制御を機能ブロック９３０に渡す。機能ブロック９３０は、標的ブロックを予測により更新し、制御を機能ブロック９３５に渡す。機能ブロック９３５は、ｂｅｓｔ＿ｓｃｈｅｍｅに従い、現標的ブロックにつき、変換、量子化、および再構成（残差の更新）を行うべきか否かを決定し、制御をループ端ブロック９４０に渡す。ループ端ブロック９４０は、全てのサブブロックをループにかけるのを終了し、制御を機能ブロック９４５に渡す。機能ブロック９４５は、現方式に従い、現ブロックにつき、変換、量子化、および再構成（残差の更新）を行うべきか否かを判断し、制御を機能ブロック９５０に渡す。機能ブロック９５０は、すべてのシンタックスおよび関連する係数情報を符号化し、制御を終了ブロック９９９に渡す。
【００６４】
図１０を参照すると、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新の他の例示的方法は、参照番号１０００により全体的に示されている。当該方法１０００は、制御を機能ブロック１０１０に渡す開始ブロック１００５を含んでいる。機能ブロック１０１０は、入力ビットストリームを構文解析し、制御を機能ブロック１０１５に渡す。機能ブロック１０１５は、量子化パラメータ（ＱＰ）、細分化情報、隣接ブロック情報、復号化されたコンテンツ統計および／またはその他により、ｂｅｓｔ＿ｓｃｈｅｍｅを導き、制御をループ端ブロック１０２０に渡す。ループ端ブロック１０２０は、全てのサブブロックをループにかけるのを開始し、制御を機能ブロック１０２５に渡す。機能ブロック１０２５はテンプレートを生成し、制御を機能ブロック１０３０に渡す。機能ブロック１０３０はテンプレート・マッチングを行い、制御を機能ブロック１０３５に渡す。機能ブロック１０３５は、標的ブロックを予測により更新し、制御を機能ブロック１０４０に渡す。機能ブロック１０４０は、ｂｅｓｔ＿ｓｃｈｅｍｅに従い、現標的ブロックにつき、再構成（残差の更新）を行うべきか否かを決定し、制御をループ端ブロック１０４５に渡す。ループ端ブロック１０４５は、全てのサブブロックをループにかけるのを終了し、制御を機能ブロック１０５０に渡す。機能ブロック１０５０は、ｂｅｓｔ＿ｓｃｈｅｍｅに従い、現ブロックにつき、再構成（残差の更新）を行うべきか否かを判断し、制御を終了ブロック１０９９に渡す。
【００６５】
表１は、本発明の原理の実施形態に従い、実施形態１、２、３の例示的スライス・ヘッダ・シンタックスを図示している。
【００６６】
【表１】
0005869493.tif 000002
【００６７】
表１の一部のシンタックス要素のセマンティクスは以下の通りである。
１に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、テンプレート・マッチングにおける複数の残差更新方式の使用を指定している。０に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、唯一の残差更新方式の使用を指定している。
１に等しいｕｓｅ＿ｅｘｐ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、明示的切替方法の使用を指定している。０に等しいｕｓｅ＿ｅｘｐ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、非明示的切替方法の使用を指定している。
１に等しいｕｓｅ＿ｑｐ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、量子化パラメータ依存の切替方法の使用を指定している。０に等しいｕｓｅ＿ｑｐ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、量子化パラメータ依存の切替方法を使用しないことを指定している。
ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｉｎｄは、現ブロックにより使用される対応する残差更新方式を示している。
【００６８】
実施形態４：多層構造の残差更新方法
本実施形態においては、新規の多層構造の残差更新方法が提案されている。特に、ここで提示された２つの方法のみが存在すると仮定して、基本ブロックは２回、符号化される。これにより、３つ以上の残差更新方法を伴う他の実施形態においては、基本ブロックは３回以上復号化されてもよいことが理解されるべきである。
【００６９】
それにもかかわらず、基本ブロックを２回、符号化するステップを伴う上記実施例においては、まずブロックは、比較的高い量子化パラメータの値を伴う方法２により符号化される。そして再構成されたヴァージョンの基本ブロックを得ることができる。第１段階では、ブロックは、比較的低い量子化パラメータの値を伴う方法１により符号化される。しかし第５段階では、テンプレートは、第１段階からの再構成されたブロック出力に基づいて生成することができる。最後に、結果として生じるビットストリームで双方のステップから残差を送信する。デコーダでは、類似のステップが実行される。一つの実装においては、実施形態４が以下のステップを含んでいる。
（１）比較的高い量子化パラメータの値を設定する。
（２）小さな変換サイズを使用して方法２により、基本ブロック全体を符号化する。
（３）方法２に基づき、再構成された基本ブロックを取得する。
（４）比較的低い量子化パラメータを設定する。
（５）大きな変換を利用して、方法１に基づき基本ブロックを符号化し、ここではテンプレート生成は、ステップ（３）から得られた再構成された基本ブロックに基づくことができる。
（６）ステップ（２）および（５）から残差係数を送信する。
（７）ブロックを終了する。
【００７０】
以下の図１１および１２におけるステップ（２）、ステップ（３）、ステップ（５）に対する言及は、実施形態４に関するステップの直前に列挙されたものと関連している。
【００７１】
図１１を参照すると、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新の更に別の例示的方法が、参照番号１１００により全体的に示されている。当該方法１１００は、制御を機能ブロック１１１０に渡す開始ブロック１１０５を含んでいる。機能ブロック１１１０は、２つの残差更新方式についてのデフォルト量子化パラメータの値、すなわちＱＰ１およびＱＰ２により、テンプレート・マッチング予測に対する初期化を行い、制御をループ端ブロック１１１５に渡す。ループ端ブロック１１１５は、すべてのサブブロックをループにかけることを開始し、制御を機能ブロック１１２０に渡す。機能ブロック１１２０はテンプレートを生成し、制御を機能ブロック１１２５に渡す。機能ブロック１１２５はテンプレート・マッチングを行い、制御を機能ブロック１１３０に渡す。機能ブロック１１３０は、標的ブロックを予測により更新し、制御を機能ブロック１１３５に渡す。機能ブロック１１３５は、ＱＰ１により、現標的ブロックにつき、変換、量子化、再構成（残差の更新）を行い、制御をループ端ブロック１１４０に渡す。ループ端ブロック１１４０は、全てのサブブロックをループにかけることを終了し、制御を機能ブロック１１４５に渡す。機能ブロック１１４５は、ステップ（２）に関する係数を格納し、制御をループ端ブロック１１５０に渡す。ループ端ブロック１１５０は、全てのサブブロックをループにかけることを開始し、制御を機能ブロック１１５５に渡す。機能ブロック１１５５は、復号化されたピクチャまたはステップ（３）から得られた再構成されたブロックに基づいてテンプレートを生成し、制御を機能ブロック１１６０に渡す。機能ブロック１１６０はテンプレート・マッチングを行い、制御を機能ブロック１１６５に渡す。機能ブロック１１６５は、標的ブロックを予測により更新し、制御をループ端ブロック１１７０に渡す。ループ端ブロック１１７０は、全てのサブブロックをループにかけるのを終了し、制御を機能ブロック１１７５に渡す。機能ブロック１１７５は、ＱＰ２により、現ブロックにつき、変換、量子化、再構成（残差の更新）を行い、制御を機能ブロック１１８０に渡す。機能ブロック１１８０は、ステップ（５）に関する係数を格納し、制御を機能ブロック１１８５に渡す。機能ブロック１１８５は、すべてのシンタックス、ステップ（２）および（５）の係数等を符号化し、制御を終了ブロック１１９９に渡す。
【００７２】
図１２を参照すると、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新の更に別の例示的方法が、参照番号１２００により全体的に示されている。当該方法１２００は、制御を機能ブロック１２１０に渡す開始ブロック１２０５を含んでいる。機能ブロック１２１０は、入力ビットストリームを構文解析し、制御をループ端ブロック１２１５に渡す。ループ端ブロック１２１５は、全てのサブブロックをループにかけることを開始し、制御を機能ブロック１２２０に渡す。機能ブロック１２２０は、テンプレートを生成し、制御を機能ブロック１２２５に渡す。機能ブロック１２２５はテンプレート・マッチングを行い、制御を機能ブロック１２３０に渡す。機能ブロック１２３０は、標的ブロックを予測により更新し、制御を機能ブロック１２３５に渡す。機能ブロック１２３５は、ステップ（２）の係数により、現標的ブロックに再構成（残差を更新）を行い、制御をループ端ブロック１２４０に渡す。ループ端ブロック１２４０は、すべてのサブブロックをループにかけるのを終了し、制御を機能ブロック１２４５に渡す。機能ブロック１２４５は、すべてのサブブロックをループにかけることを開始し、制御をループ端ブロック１２５０に渡す。機能ブロック１２５０は、復号化されたピクチャまたはステップ（３）から得られた再構成されたブロックに基づいてテンプレートを生成し、制御を機能ブロック１２５５に渡す。機能ブロック１２５５はテンプレート・マッチングを行い、制御を機能ブロック１２６０に渡す。機能ブロック１２６０は、標的ブロックを予測により更新し、制御を機能ブロック１２６５に渡す。ループ端ブロック１２６５は、すべてのサブブロックをループにかけるのを終了し、制御を機能ブロック１２７０に渡す。機能ブロック１２７０は、ステップ（５）の係数により、現ブロックに再構成（残差の更新）を行い、制御を終了ブロック１２９９に渡す。
【００７３】
シンタックス
表２は、本発明の原理の実施形態に従い、実施形態４の例示的スライス・ヘッダ・シンタックスを図示している。
【００７４】
【表２】
0005869493.tif 000003
【００７５】
表２の一部のシンタックス要素のセマンティクスは以下の通りである。
１に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、テンプレート・マッチングにおける複数の残差更新方式の使用を指定している。０に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄは、唯一の残差更新方式の使用を指定している。
１に等しいｕｓｅ＿ｍｕｌｔｉ＿ｌａｙｅｒ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、多層構造の残差更新方式の使用を指定している。０に等しいｕｓｅ＿ｍｕｌｔｉ＿ｌａｙｅｒ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、多層構造の残差更新方式の使用をしないことを指定している。
【００７６】
実施形態５：複数を組み合わせた残差更新方法
本実施形態においては、複数を組み合わせた新規の残差更新方法が提案されている。特に、ここで提示された２つの残差更新方法のみが存在すると仮定して、基本ブロックは２回、符号化される。これにより、３つ以上の方法を伴う他の実施形態においては、基本ブロックは3回以上復号化されてもよいことが理解されるべきである。
【００７７】
それにもかかわらず、基本ブロックを２回、符号化するステップを伴う上記実施例においては、まず、ブロックは方法２により符号化される。そして再構成されたヴァージョンの基本ブロックを得ることができる。そしてブロックは方法１により符号化される。最後に、再構成されたブロックを組み合わせて、最終的な再構成されたブロックを形成する。２つの方法における残差は、結果として生じるビットストリームで送信される。
デコーダでは、類似のステップが実行される。
【００７８】
図１３を参照すると、ビデオエンコーダにおけるテンプレート・マッチング予測の適応型残差更新の更に別の例示的方法が、参照番号１３００により全体的に示されている。当該方法１３００は、機能ブロック１３１０および機能ブロック１３１５に制御を渡す開始ブロック１３０５を含んでいる。機能ブロック１３１０および機能ブロック１３１５は、２つの独立した残差更新方式、すなわち方法１および方法２を各々利用して、テンプレート・マッチングおよび符号化を行い、２つの再構成されたヴァージョンの現ブロックを得る。そして機能ブロック１３１０および機能ブロック１３１５は、制御を機能ブロック１３２０に渡す。機能ブロック１３２０は、機能ブロック１３１０および機能ブロック１３１５から得た、２つの再構成されたヴァージョンを組み合わせ、現ブロックの最終の再構成されたブロックを形成し、制御を機能ブロック１３２５に渡す。機能ブロック１３２５は、すべてのシンタックスおよび双方の方法からの残差を符号化し、制御を終了ブロック１３３０に渡す。
【００７９】
図１４を参照すると、ビデオデコーダにおけるテンプレート・マッチング予測の適応型残差更新の更に別の例示的方法が、参照番号１４００により全体的に示されている。当該方法１４００は、機能ブロック１４１０に制御を渡す開始ブロック１４０５を含んでいる。機能ブロック１４１０は、ビットストリームを構文解析し、機能ブロック１４１５および機能ブロック１４２０に制御を渡す。機能ブロック１４１５および機能ブロック１４２０は、２つの独立した方法、すなわち方法１および方法２を各々利用して、テンプレート・マッチング予測および復号化を行い、２つの再構成されたヴァージョンの現ブロックを得る。そして機能ブロック１４１５および１４２０は、制御を機能ブロック１４２５に渡す。機能ブロック１４２５は、機能ブロック１４１５および機能ブロック１４２０から得た再構成されたブロックを組み合わせ、現ブロックの最終の再構成されたブロックを形成し、制御を終了ブロック１４３０に渡す。
【００８０】
シンタックス
表３は、本発明の原理の実施形態に従い、実施形態５の例示的スライス・ヘッダ・シンタックスを図示している。
【００８１】
【表３】
0005869493.tif 000004
【００８２】
表３の一部のシンタックス要素のセマンティクスは以下の通りである。
１に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、テンプレート・マッチングにおける複数の残差更新方式の使用を指定している。０に等しいｕｓｅ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、唯一の残差更新方式の使用を指定している。
１に等しいｕｓｅ＿ｃｏｍｂ＿ｍｕｌｔｉ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、複数を組み合わせた残差更新方法の使用を指定している。０に等しいｕｓｅ＿ｃｏｍｂ＿ｍｕｌｔｉ＿ｔｍｐ＿ｒｅｓ＿ｕｐｄ＿ｆｌａｇは、複数を組み合わせた残差更新方法の使用をしないことを指定している。
【００８３】
本発明の多くの付随する利点／特徴の幾つかに関する記載がなされており、その一部は上述されている。例えば、一つの利点／特徴は、装置が、テンプレート・マッチング予測を利用して、ピクチャ内の少なくとも一つのブロックについてピクチャデータを符号化する、ビデオエンコーダを備えており、テンプレート・マッチング予測は、ブロックを符号化する際に使用される複数の残差更新方式から選択するステップを備えているという点である。
【００８４】
他の利点／特徴は、装置は上述のようなビデオエンコーダを備えており、複数の残差更新方式の少なくとも一つは、レート歪コストに基づいて選択される、という点である。
【００８５】
更にもう一つの利点／特徴は、装置は上述のようなビデオエンコーダを備えており、複数の残差更新方式の各々は、ブロックを複数のサブブロックに細分化するステップと、複数の残差更新方式の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップを含み、複数の残差更新方式の他の一つは、特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理に引き続き、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップを含む、という点である。
【００８６】
更にもう一つの利点／特徴は、装置は上述のようなビデオエンコーダを備えており、複数の残差更新方式は、結果として生じるビットストリームで明示的に示される、という点である。
【００８７】
また他の利点／特徴は、装置は上述のようなビデオエンコーダを備えており、複数の残差更新方式の少なくとも一つは、ピクチャとしての同一のビデオシーケンスに対応する少なくとも一つの復号化されたピクチャ、少なくとも一つのブロックの量子化パラメータの値、ブロック内の少なくとも一つのサブブロック、ブロックに対する少なくとも一つの隣接ブロック、または少なくとも一つのサブブロック、ピクチャコンテンツ統計、細分化情報および少なくとも一つの隣接ブロックの符号化情報に基づいて選択される。
【００８８】
また他の利点／特徴は、装置は上述のようなビデオエンコーダを備えており、ブロックを予測するために、２つ以上の複数の残差更新方式が組合せ可能である、という，である。
【００８９】
また他の利点／特徴は、装置はビデオエンコーダを備えており、上述のように、ブロックを予測するために、２つ以上の複数の残差更新方式が組合せ可能であり、複数の残差更新方式の各々は、互いに対して独立であり、ブロックの最終予測は、少なくとも２つの複数の残差更新方式の出力の組合せである、という点である。
【００９０】
また他の利点／特徴は、装置はビデオエンコーダを備えており、上述のように、ブロックを予測するために、２つ以上の複数の残差更新方式が組合せ可能であり、複数の残差更新方式は互いに従属しており、複数の残差更新方式のうち特定の一つのものの一つの出力は、複数の残差更新方式の少なくとの一つの他の特定の一つのものの少なくとも一つの他の出力に従属している、という点である。
【００９１】
更に他の利点／特徴は、装置はテンプレート・マッチング予測を利用して、ピクチャ内のブロックを符号化するビデオエンコーダを備えており、テンプレート・マッチング予測は、ブロックを複数のサブブロックに細分化するステップ、および特定のサブブロックに関する予測を探索するステップに引き続き、テンプレート・マッチング予測に関するブロックの処理の完了以前に、複数のサブブロックのうち特定のサブブロックの残差に変換を適用するステップと、を含む、という点である。
【００９２】
本発明の原理の上記および他の特徴および利点は、本明細書に記載された教示に基づき、関連する技術分野の当業者により容易に確認できる。本発明の原理の教示は、様々な形態のハードウェア、ソフトウェア、ファームウェア、専用プロセッサまたはこれらの組合せにより実施できる。
【００９３】
最も好ましくは、本発明の原理の教示は、ハードウェアおよびソフトウェアの組合せとして実施される。さらにソフトウェアは、プログラム記憶装置上で実体的に具現化されるアプリケーションプログラムとして実施されてもよい。アプリケーションプログラムは、何らかの適切なアーキテクチャを有するマシンにアップロードされ、そのマシンによって実行されてもよい。好ましくは、マシンは１つ以上の中央処理装置（ＣＰＵ）、ランダムアクセスメモリ（ＲＡＭ）、および入力／出力（Ｉ／Ｏ）インターフェース等のハードウェアを有するコンピュータ・プラットフォーム上で実施される。コンピュータ・プラットフォームには、オペレーティングシステムおよびマイクロインストラクションコードを含んでいてもよい。本明細書に記載される種々の処理および機能は、マイクロインストラクションコードの一部、アプリケーションプログラムの一部、またはそのいずれの組合せであってもよく、ＣＰＵにより実行されるものであってもよい。また他の種々の周辺装置は、補助データ記憶装置および印刷装置等のコンピュータ・プラットフォームに接続されていてもよい。
【００９４】
添付図面に記載された構成システム要素および方法の一部は、ソフトウェアによって好適に実施されるため、システム構成要素間又はプロセス機能ブロック間の実際の接続は、本発明の原理がプログラミングされる態様によって異なる場合があることが理解されるべきである。本明細書に記載された教示を前提とすると、当業者は、本発明の原理のこれらおよび類似の実装または構造を予測することができるであろう。
【００９５】
例示的実施形態が添付の図面を参照して本明細書中で記載されてきたが、当然に、本発明の原理はこれらの厳密な実施形態に限られず、様々な変更及び改変が、本発明の原理の範囲及び趣旨から逸脱することなく、当該実施形態において当業者によって行われ得る。全てのこのような変更及び改変は、添付の特許請求の範囲に記載されている本発明の原理の範囲内に包含されることが意図される。
【図１】
0005869493.tif 000005
【図２】
0005869493.tif 000006
【図３】
0005869493.tif 000007
【図４】
0005869493.tif 000008
【図５】
0005869493.tif 000009
【図６】
0005869493.tif 000010
【図７Ａ】
0005869493.tif 000011
【図７Ｂ】
0005869493.tif 000012
【図８】
0005869493.tif 000013
【図９】
0005869493.tif 000014
【図１０】
0005869493.tif 000015
【図１１Ａ】
0005869493.tif 000016
【図１１Ｂ】
0005869493.tif 000017
【図１２】
0005869493.tif 000018
【図１３】
0005869493.tif 000019
【図１４】
0005869493.tif 000020