(57)【要約】  本明細書において、デジタルビデオイメージデータを低減する方法及び装置を開示する。一実施形態において、方法は、イメージデータの現在のフレームにおける１つ以上の領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較するステップと、１つ以上の領域のうちの一領域について、署名を比較した結果、一領域の署名がデータシンクにおいて利用可能な以前のフレームの対応領域の署名と合致しないと判定した場合、データシンクに一領域を送信するステップとを備える。
2016506139.tif 000002
【特許請求の範囲】
【請求項１】
イメージデータにおいて各々１つ以上の領域を含むフレームをデータシンクに提供する際、イメージデータソースによって使用され、
前記イメージデータの現在のフレームにおける１つ以上の領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較するステップと、
前記１つ以上の領域のうちの一領域について、前記署名を比較した結果、前記一領域の前記署名が前記データシンクにおいて利用可能な以前のフレームの対応領域の署名と合致しないと判定した場合、前記データシンクに前記一領域を送信するステップとを備える方法。
【請求項２】
前記署名には、チェックサムが含まれる請求項１に記載の方法。
【請求項３】
前記チェックサムは、ＣＲＣである請求項２に記載の方法。
【請求項４】
前記ＣＲＣは、３２ビットＣＲＣである請求項３に記載の方法。
【請求項５】
前記一領域の前記署名が、前記以前のフレームにおける前記対応領域の前記署名に合致する場合、前記一領域の代わりに代替データを送信するステップをさらに備える請求項１に記載の方法。
【請求項６】
一領域の前記代替データは、前記領域の全データが送信される場合に比して、結果として前記一領域について送信されるデータの量をより小さくする請求項５に記載の方法。
【請求項７】
前記代替データは、前記一領域のデータに比してより圧縮可能なデータを含む請求項６に記載の方法。
【請求項８】
前記代替データは、ソリッドカラーである請求項７に記載の方法。
【請求項９】
前記代替データは、前記一領域のデータに比してデータ量のより小さいデータを含む請求項６に記載の方法。
【請求項１０】
前記代替データは、前記一領域のデータのサブセットを含む請求項９に記載の方法。
【請求項１１】
前記１つ以上の領域のうちのいずれが変更されたか、又は変更されなかったかを示す情報を、前記データシンクに送信するステップをさらに備える請求項１に記載の方法。
【請求項１２】
前記１つ以上の領域には、左目フレームの第１領域及び右目フレームの第２領域が含まれ、
前記イメージデータの現在のフレームにおける１つ以上の領域の署名を１つ以上の以前のフレームにおける対応領域の署名と比較するステップは、変更が発生したか否かを判定するため、
前記第１領域の署名を以前の左目フレームにおける対応領域の署名と比較するステップと、
前記第２領域の署名を以前の右目フレームにおける対応領域の署名と比較するステップとを備え、
前記署名を比較した結果、前記一領域の前記署名が前記データシンクにおいて利用可能な以前のフレームの対応領域の署名と合致しないと判定した場合、前記データシンクに前記一領域を送信するステップは、
前記署名を比較した結果、前記第１領域の前記署名が前記データシンクにおいて利用可能な前記以前の左目フレームにおける前記対応領域の前記署名と合致しないと判定した場合、前記データシンクに前記第１領域を送信するステップと、
前記署名を比較した結果、前記第２領域の前記署名が前記データシンクにおいて利用可能な前記以前の右目フレームにおける前記対応領域の前記署名と合致しないと判定した場合、前記データシンクに前記第２領域を送信するステップとを備える請求項１に記載の方法。
【請求項１３】
前記１つ以上の領域には、前記現在のフレームの奇数領域及び偶数領域を備えたインタレース領域が含まれ、
前記イメージデータの現在のフレームにおける１つ以上の領域の署名を１つ以上の以前のフレームにおける対応領域の署名と比較するステップは、前記現在のフレームと前記以前のフレームとの間に変更が発生したか否かを判定するため、
奇数領域の署名を前記以前のフレームの対応奇数領域の署名と比較するステップと、
偶数領域の署名を前記以前のフレームにおける対応偶数領域の署名と比較するステップとを備え、
前記署名を比較した結果、前記一領域の前記署名が前記データシンクにおいて利用可能な以前のフレームにおける対応領域の署名と合致しないと判定した場合、前記データシンクに前記一領域を送信するステップは、
前記署名を比較した結果、前記奇数領域の前記署名が前記データシンクにおいて利用可能な前記以前のフレームにおける前記対応奇数領域の署名と合致しないと判定した場合、前記データシンクに前記奇数領域を送信するステップと、
前記署名を比較した結果、前記偶数領域の前記署名が前記データシンクにおいて利用可能な前記以前のフレームにおける前記対応偶数領域の署名と合致しないと判定した場合、前記データシンクに前記偶数領域を送信するステップとを備える請求項１に記載の方法。
【請求項１４】
上位集合領域を形成するため、前記１つ以上の領域の隣接領域に関する情報をグループ化するステップをさらに備える請求項１に記載の方法。
【請求項１５】
前記１つ以上の領域の少なくとも１つは、フレームの複数の画素列のスライスである請求項１に記載の方法。
【請求項１６】
前記スライスは、８列である請求項１５に記載の方法。
【請求項１７】
１つの領域は矩形である請求項１に記載の方法。
【請求項１８】
前記矩形は、８×８ピクセルである請求項１７に記載の方法。
【請求項１９】
前記１つ以上の領域は、１つのフレーム全体より構成される単一の領域からなる請求項１に記載の方法。
【請求項２０】
前記１つ以上の領域は各々、複数の構成要素を備え、前記署名は、前記複数の構成要素すべてより少ない構成要素に基づく請求項１に記載の方法。
【請求項２１】
前記複数の構成要素には、輝度要素及び彩度要素、又は色要素が含まれる請求項２０に記載の方法。
【請求項２２】
前記一領域の前記署名が前記以前のフレームにおける前記対応領域の前記署名と合致した場合、前記一領域の送信を妨げるステップをさらに備える請求項１に記載の方法。
【請求項２３】
前記データシンクが前記以前のフレームの前記対応領域を受信したという確認を前記データシンクから受信していない場合、前記署名を比較した結果、前記一領域の前記署名が前記データシンクにおいて利用可能な前記以前のフレームにおける前記対応領域の署名と合致しないと判定する請求項１に記載の方法。
【請求項２４】
署名が合致しない場合、送信帯域幅の一部を使用して前記１つ以上の領域のうちの他の領域と関連付けられた追加データを転送するステップをさらに備え、前記追加データは、合致する署名を有する前記１つ以上の領域の転送に使用されたであろう帯域幅を使用して転送される請求項１に記載の方法。
【請求項２５】
前記送信帯域幅は、予め決定される請求項２４に記載の方法。
【請求項２６】
前記追加データは、前記他の領域と関連付けられた、より微細なイメージデータを含む請求項２４に記載の方法。
【請求項２７】
１つの領域の画素データが粗いデータと微細なデータとに分割され、前記データシンクに前記一領域を転送すべきか否かを判定するため、前記粗いデータと関連付けられた第１の署名及び前記微細なデータと関連付けられた第２の署名を、前記以前のフレームにおける対応領域の粗いデータ及び微細なデータと関連付けられた署名と比較するステップをさらに備える請求項１に記載の方法。
【請求項２８】
前記一領域の全データを使用することなく、前記一領域の前記署名を生成するステップをさらに備える請求項１に記載の方法。
【請求項２９】
前記一領域の全データを使用することなく、前記一領域の前記署名を生成するステップは、最小有効ビットを除外した前記一領域のイメージデータに関数を適用するステップを備える請求項２８に記載の方法。
【請求項３０】
署名の比較に先立って、且つ、署名の比較に関わらず、前記データシンクにそのイメージデータを送信させるために前記一領域が指定された場合、前記データシンクに前記一領域を送信するステップをさらに備える請求項１に記載の方法。
【請求項３１】
周波数及び量のパラメータは、各領域が周期的に送信されることを保証するため、フレームにおける領域が署名の比較に関わらず送信されるように設定される請求項３０に記載の方法。
【請求項３２】
前記一領域が前記データシンクに送信されない場合、前記データソースの無線、前記データソースのＰＨＹ、及び前記データソースのエンコーダからなる群のうちの１つ以上を含む１つ以上のイメージデータソースリソースの電力消費を低減するステップをさらに備える請求項１に記載の方法。
【請求項３３】
前記一領域が前記データシンクに送信されるか否かを示す情報を送信するステップをさらに備える請求項１に記載の方法。
【請求項３４】
前記一領域を示す前記情報は、１つ以上の領域シリアル番号及び領域毎のマーカーからなる群より選択される１つを含む請求項３３に記載の方法。
【請求項３５】
イメージデータにおいて各々１つ以上の領域を有するフレームをデータシンクに提供する際、イメージデータソースによって提供されるイメージデータの量を低減し、
現在のフレームにおける１つ以上の領域を記憶するメモリと、
前記メモリに連結され、前記イメージデータの前記現在のフレームにおける前記１つ以上の領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較するよう動作可能な署名比較ロジックと、
前記メモリ及び前記署名比較ロジックと連結され、前記１つ以上の領域のうちの一領域について、前記署名比較ロジックが前記一領域の前記署名が前記データシンクにおいて利用可能な以前のフレームにおける対応領域の署名と合致しないと判定した場合、前記イメージデータの前記一領域を前記データシンクに送信させるよう動作可能なコントローラとを備える装置。
【請求項３６】
前記署名には、チェックサムが含まれる請求項３５に記載の装置。
【請求項３７】
前記チェックサムは、ＣＲＣである請求項３６に記載の装置。
【請求項３８】
前記コントローラは、前記一領域の前記署名が前記以前のフレームにおける前記対応領域の前記署名と合致する場合、前記一領域の代わりに代替データを送信させる請求項３５に記載の装置。
【請求項３９】
一領域の前記代替データは、前記領域の全データが送信される場合に比して、結果として前記一領域について送信されるデータの量をより小さくする請求項３８に記載の装置。
【請求項４０】
前記代替データは、前記一領域のデータに比してより圧縮可能なデータを含む請求項３９に記載の装置。
【請求項４１】
前記代替データは、ソリッドカラーである請求項４０に記載の装置。
【請求項４２】
前記代替データは、前記一領域のデータに比してデータ量のより小さいデータを含む請求項３９に記載の装置。
【請求項４３】
前記代替データは、前記一領域のデータのサブセットを含む請求項４２に記載の装置。
【請求項４４】
前記コントローラは、前記１つ以上の領域のうちのいずれが変更されたか、又は変更されなかったかを示す情報を、前記データシンクに送信させる請求項３５に記載の装置。
【請求項４５】
前記１つ以上の領域の少なくとも１つは、フレームの複数の画素列のスライスである請求項３５に記載の装置。
【請求項４６】
前記一領域は、１つのフレーム全体より構成される単一の領域からなる請求項３５に記載の装置。
【請求項４７】
前記１つ以上の領域は各々、複数の構成要素を備え、前記署名は、前記複数の構成要素すべてより少ない構成要素に基づく請求項３５に記載の装置。
【請求項４８】
前記複数の構成要素には、輝度要素及び彩度要素、又は色要素が含まれる請求項４７に記載の装置。
【請求項４９】
前記コントローラは、前記データシンクが前記以前のフレームの対応領域を受信したという確認を前記データシンクから受信した場合、前記一領域の送信を妨げる請求項３５に記載の装置。
【請求項５０】
前記一領域の全データを使用することなく、前記一領域の前記署名を生成する署名生成ロジックをさらに備える請求項３５に記載の装置。
【請求項５１】
前記署名生成ロジックは、最小有効ビットを除外した前記一領域のイメージデータに関数を適用することにより、前記一領域の全データを使用することなく、前記一領域の前記署名を生成する請求項５０に記載の装置。
【請求項５２】
前記コントローラは、署名の比較に先立って、且つ、署名の比較に関わらず、前記データシンクにそのイメージデータを送信させるために前記一領域が指定された場合、前記データシンクに前記一領域を送信する請求項３５に記載の装置。
【請求項５３】
前記コントローラは、前記一領域が送信されない場合、前記一領域を示す情報を前記データシンクに送信させ、前記一領域を示す前記情報は、１つ以上の領域シリアル番号及び領域毎のマーカーからなる群より選択される１つを含む請求項３５に記載の装置。
【請求項５４】
イメージデータソースによって実行されると、イメージデータにおいて各々１つ以上の領域を含んだフレームをデータシンクに提供する際の方法を前記イメージデータソースに実施させる指示を記憶した１つ以上の非一時的なコンピュータ可読記憶媒体を備え、前記方法は、
前記イメージデータの現在のフレームにおける１つ以上の領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較するステップと、
前記１つ以上の領域のうちの一領域について、前記署名を比較した結果、前記一領域の前記署名が前記データシンクにおいて利用可能な以前のフレームの対応領域の署名と合致しないと判定した場合、前記データシンクに前記一領域を送信するステップとを備える製品。
【発明の詳細な説明】
【技術分野】
【０００１】
［優先権］
本特許出願は、２０１２年１２月５日出願の対応仮出願シリアル番号６１／７３３，８１７号の「デジタルビデオイメージデータを低減する方法及び装置」の優先権を主張し、その開示内容全体を参照としてここに組み込む。
【０００２】
本発明の実施形態は、イメージデータ転送分野に係り、特に署名に基づく、イメージデータが変更なされたか否かに応じた、データソース及びデータシンク間で転送されるデジタルイメージデータの量の低減に係る。
【背景技術】
【０００３】
今日、ビデオデータは、２つのデバイス間で転送されることが多い。これらのデバイスは、データソース及びデータシンクと称されることが多い。ビデオデータは、イメージデータを含む一連のビデオフレームとして転送される。ビデオフレーム中のイメージ又はイメージの一部は、隣接又は連続のフレーム間では変わらないことが多い。ビデオのこの特性は、ビデオデータのビットストリームを圧縮するためにビデオコーデックで利用される。Ｈ．２６４等の既存のフレーム間圧縮方法では、画素毎に新たなフレームデータと比較し２つのフレーム間の差異を作成することができるように、以前のフレームをコーデック内に記憶しておくことが必要であった。その後、到来した全フレームを転送するのとは対照的に、この差異が圧縮され、転送される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
フレーム比較を実施するため、ソース側にフレームバッファが必要である。ビデオ解像度が高い場合、フレームバッファの要件は大きなビデオメモリを要求することとなり、ソースデバイスのコストの増加や、メモリにアクセスし、ビデオデータを比較するための電力消費量の増加という結果につながる。モバイルデバイスのためにビデオ送信機能を実装するソースデバイスは、コスト効率が高くなければならず、また、電力消費が非常に小さくなければならない。従ってモバイルデバイスは、フレームバッファを必要とし、且つ画素毎の比較動作を実施する必要がある際には、高いコスト効率を発揮することが困難である。
【課題を解決するための手段】
【０００５】
本明細書には、デジタルビデオイメージデータを低減する方法及び装置を開示する。一実施形態において、前記方法は、前記イメージデータの現在のフレームにおける１つ以上の領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較するステップと、前記１つ以上の領域のうちの一領域について、前記署名を比較した結果、前記一領域の署名が前記データシンクにおいて利用可能な以前のフレームの対応領域の署名と合致しないと判定した場合、前記データシンクに前記一領域を送信するステップとを備える。
【図面の簡単な説明】
【０００６】
本発明は、本発明の種々の実施形態についての以下の詳細な説明及び添付の図面から、より完全に理解されるであろう。しかしながら、これらは本発明を特定の実施形態に限定するものと解釈してはならず、説明及び理解のみを目的とするものである。
【０００７】
【図１】イメージデータ（例えば、ビデオフレーム）をデータシンクに送信するデータソースの一実施形態を示すブロック図である。
【図２】データソース及びデータシンク間で送信されるデジタルイメージデータの量を制御するプロセスの一実施形態を示すデータフロー図である。
【図３】一実施形態に係るデータソースと一実施形態に係るデータシンクを部分的に示している。
【図４Ａ】データソースによって実施されるデータ低減プロセスの一実施形態を示すデータフロー図である。
【図４Ｂ】データソースによって実施されるデータ低減プロセスを補完するためにデータシンクによって実施されるプロセスの一実施形態を示すデータフロー図である。
【図５】コンピュータシステムの一実施形態を示すブロック図である。
【発明を実施するための形態】
【０００８】
データソース及びデータシンク間において、ビデオデータのフレーム等のイメージデータを転送する際に使用する方法及び装置を説明する。一実施形態において、ビデオのフレームは各々、１つ以上の領域に分割され、データソースは、各領域をデータシンクに転送すべきか否かを判定する。データソースは、各領域について現在のフレームと以前のフレームの間で変更が加えられたか否かに基づき、判定を下す。ある領域が変更された場合、データソースは、その領域をデータシンクに送信する。領域が変更されなかった場合、データソースはその領域をデータシンクに送信しない。領域間で画素毎の比較を実施する代わりに、現在のフレームにおける領域を以前のフレームにおけるその対応領域と比較する目的で、データソースは、ある領域が変更されたか否かを判定するために比較する領域間の署名（例えば、チェックサム）のみを比較する。署名のみを比較するため、データソースはフレーム全体又は領域全体を記憶する必要がなく、領域の全画素の署名を記憶するのみでよい。これは通常、領域自体のデータより非常に小さい。後続のフレームについては、記憶された各領域の署名を対応領域の署名と比較し、互いに合致した場合、データソースはデータシンクに送信されるビデオストリームからその領域のビデオデータを省略してもよい。結果として得られたビデオストリームを、そのストリームを受信したデータシンクによって表示する必要がある場合、ビデオデータのうちの省略された領域は、ビデオ受信機フレームバッファにおいて以前のフレームから記憶されたビデオデータで置き換えられる。従って、データソース（又はビデオデータの送信機）にはフレームバッファが必要なくなる。
【０００９】
以下の説明において、本発明をより完全に説明するため、多数の詳細を記す。しかしながら当業者にとって、これらの具体的な詳細を伴うことなく、本発明が実践され得ることは明らかであろう。場合によっては、本発明を不明瞭にすることを避けるため、既知の構造及び装置は詳細に示さず、ブロック図の形式で示す。
【００１０】
以下の詳細な説明の一部は、コンピュータメモリ内のデータビットに対する動作のアルゴリズム及び象徴的表現の観点から説明する。これらアルゴリズムの記載及び表現は、データ処理分野の当業者が自らの作業を他の当業者に最も効果的に伝達するために使用する手段である。アルゴリズムは本明細書では、通常、所望の結果を導く、首尾一貫した一連のステップであると考えられる。このステップは、物理量の物理操作を必要とするものである。通常、この量は記憶、転送、結合、比較、及びその他の操作が可能な電気信号又は磁気信号の形態を採るが、必ずしもこれに限定されない。原則的に一般的な利用をするため、時としてこれらの信号をビット、値、要素、記号、文字、項、数字等として言及することが便利であると証明されている。
【００１１】
しかしながら、これらの用語及び類似の用語はすべて、適切な物理量と関連付けられなければならず、これらの量に付した単なる便宜上のラベルであることに留意しなければならない。特段の指摘がなければ、以下の議論より明らかであるように、説明全体を通じて「処理」、「演算」、「計算」、「判定」、「表示」等の用語を使用した議論は、コンピュータシステムのレジスタ及びメモリ内の物理（電子）量として表現されたデータを操作して、コンピュータシステムのメモリ、レジスタ、又はその他の情報記憶、送信、又は表示デバイス内の物理量として同様に表現される他のデータに変換する、コンピュータシステム又は同様の電子演算デバイスのアクション及びプロセスをいうことが理解される。
【００１２】
本発明はまた、本明細書に記載の動作を実施する装置に係る。この装置は、要求される目的のために特別に構築されてもよく、若しくは、コンピュータに記憶されたコンピュータプログラムによって選択的に駆動又は再構成される汎用コンピュータからなってもよい。このようなコンピュータプログラムは、フロッピー（登録商標）ディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスク等の任意の種類のディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光学カード、若しくは電子的指示を記憶するのに好適な任意の種類の媒体等を含むが、これに限定されないコンピュータ可読記憶媒体に記憶されてもよく、これらは各々、コンピュータシステムバスに連結される。
【００１３】
本明細書に示すアルゴリズム及び表示は、特定のコンピュータ又はその他の装置に本質的に関連するものでない。本明細書の教示に従って、種々の汎用システムをプログラムとともに使用してもよく、又は要求される方法ステップの実施にさらに特化した装置を構築することが便利であると証明してもよい。これら種々のシステムに対して要求される構造は、以下の説明により明らかとなるであろう。また本発明は、特定のプログラム言語を参照して記載するものでない。種々のプログラム言語を使用して本明細書に記載の本発明の教示を実装してもよいことが理解される。
【００１４】
機械可読媒体は、機械（例えば、コンピュータ）によって読み取り可能な形式で情報を記憶又は転送する任意の機構を備える。例えば、機械可読媒体には、リードオンリーメモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリデバイス等が含まれる。
【００１５】
ビデオデータを低減する装置及び方法を開示する。図１は、イメージデータ（例えば、ビデオフレーム）をデータシンクに送信するデータソースの一実施形態を示すブロック図である。データは、有線接続又は無線接続を介して送信されてもよく、データソース及びデータシンクの間のネットワークの使用を含んでもよく、含まなくてもよい。
【００１６】
図１を参照すると、データソース１００は、外部ソースからビデオフレーム１０１（又はその他のイメージデータ）を受信する。一実施形態において、データソース１００には、データソース１００によってデータシンクに提供されるビデオ又はその他のイメージデータを取得可能なデータ取得デバイス１０２（例えば、カメラ）が含まれる。
【００１７】
メモリ１０３は、ビデオフレームを受信すると、このビデオフレームをバッファに格納する。一実施形態において、ビデオの各フレームは複数の領域として記憶される。一実施形態において、コントローラ１１０は、領域作成モジュール１１０Ａを使用して、各フレームを複数の領域に分割する。一実施形態において、領域作成モジュール１１０Ａによって生成された領域は、再びメモリ内に記憶される。他の実施形態において、領域作成モジュール１１０Ａによって生成された領域は、署名生成比較モジュール１１０Ｂに送信される。領域作成モジュール１１０Ａはコントローラ１１０の一部（例えば、プロセッサ）でなくてもよいことに注意されたい。このような場合、一実施形態において、領域作成モジュール１１０Ａは、コントローラ１１０によって制御される。モジュールがソフトウェアである場合、コントローラ１１０はソフトウェアを実行するか、又はその実行を管理してもよい。
【００１８】
コントローラ１００の署名生成比較モジュール１１０Ｂは、メモリ１０３に記憶されているフレームの各領域に対して署名（例えば、チェックサム、ハッシュ等）を生成する。そのフレームがビデオフレームシーケンスの第１のフレームである場合、署名生成比較モジュール１１０Ｂは、署名記憶部１１１にその署名を記憶する。そのフレームがビデオフレームシーケンスの第１のフレームでない場合、署名生成比較モジュール１１０Ｂは、領域の署名を、署名記憶部１１１に記憶された署名、すなわち以前のフレームの同一領域の署名と比較する。これらの署名が合致しなかった場合、現在のフレームの領域が以前のフレームの対応領域とは異なること（例えば、現在のフレームにおける領域が以前のフレームにおける同領域から変更されていること）を示す。そして、署名生成比較モジュール１１０Ｂは、コントローラ１１０に対して示唆（例えば、信号）を与える。コントローラ１１０は、これに応じて、送信領域をデータシンクに出力させるようにメモリに信号を送信する。署名が合致しなかった場合、署名生成比較モジュール１１０Ｂはまた、次の潜在的に後続のビデオフレームにおける同一対応領域の署名との比較に使用するため、新たに生成した署名を署名記憶部１１１に記憶する。
【００１９】
署名が合致した場合、現在のフレームにおける領域が以前のフレームにおける対応領域と同一であること（例えば、現在のフレームの領域が以前のフレームにおける同領域から変更されていないこと）を示す。そして、署名生成比較モジュール１１０Ｂは、領域が変更されなかった旨の示唆（例えば、信号）をコントローラ１１０に提供する。コントローラ１１０は、これに応じて、送信領域をデータシンクに出力させるようにメモリに信号を送信しないことにより、効果的にデータシンクへの送信を抑える。場合によっては、署名が合致しても依然として送信が発生することがある。例えば、「参照」領域がシンクによって受信されていないことが分かっている場合、領域が送信される。
【００２０】
署名生成比較モジュール１１０Ｂはコントローラ１１０の一部でなくてもよいことに注意されたい。このような場合、署名生成比較モジュール１１０Ｂは、依然としてコントローラ１１０によって制御されてもよい。
【００２１】
一実施形態において、データシンクに送信されるフレームの領域は、エンコーダ１０４を使用して符号化され、フォーマッタ／パケタイザ１０５によりフォーマット及び／又はパケット化され、コントローラ１１０の制御の下、無線周波数（ＲＦ）無線及び／又はＰＨＹ１０６を使用してデータシンク及び／又はネットワーク（データシンクへの伝送のため）に送信される。一実施形態において、符号化及びフォーマット／パケット化は実施されず、領域のイメージデータがデータシンクに直接送信されることに注意されたい。
【００２２】
図２は、データソース及びデータシンク間で送信されるデジタルイメージデータの量を制御するプロセスの一実施形態を示すデータフロー図である。このプロセスは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用機械で実行されるもの）、又はこれら双方の組み合わせを含み得る処理ロジックによって実施される。一実施形態において、このプロセスは図１に示すデータソースによって実施される。
【００２３】
図２を参照すると、処理ロジックは、現在のフレームにおける１つ以上の領域の署名を生成する（処理ブロック２０１）。一実施形態において、署名は、領域のイメージデータに適用されるハッシュ関数の出力である。一実施形態において、署名はチェックサムを含む。一実施形態において、チェックサムはサイクリックリダンダンシーチェック（ＣＲＣ）（例えば、３２ビットのＣＲＣ）である。
【００２４】
一実施形態において、各領域（又は複数の領域のうちの少なくとも１つ）は、フレームの複数の連続画素列（例えば、２列、４列、８列、１６列等）からなるフレームの水平スライスである。一実施形態において、各領域（又は複数の領域のうちの少なくとも１つ）は、矩形である（例えば、８×８ピクセル）。一実施形態において、各領域は、１つのフレーム全体を成す。一実施形態において、各領域は複数の構成要素を含み、署名は、複数の構成要素すべてより少ない構成要素に基づくか、若しくは構成要素毎に複数の署名が存在する。一実施形態において、構成要素には、輝度要素及び／又は彩度要素が含まれる。このような場合、署名は、輝度要素のみに基づくか、若しくは彩度要素のみに基づいてもよい。その他の実施形態において、構成要素には色要素（例えば、ＲＧＢ要素等）が含まれる。このような場合、署名は、１つの色要素のみに基づいてもよく、若しくは色要素のすべてではないが複数の色要素に基づいてもよい。他の実施形態において、２つ以上の領域がまとめられ、当該まとめられた２つ以上の領域に対して１つの署名が生成（及び比較）されてもよい。
【００２５】
一実施形態において、処理ロジックは、１つの領域のすべてのデータを使用することなく、その領域の署名を生成する。例えば、一実施形態において、１つの領域の署名は、最小有効ビットを使用することなく生成される。
【００２６】
次に、処理ロジックは、イメージデータの現在のフレームにおける各領域の署名を、１つ以上の以前のフレームにおける対応領域の署名と比較する（処理ブロック２０２）。一実施形態において、処理ロジックは、フレームのすべての領域のサブセットのみの署名を比較する。一実施形態において、複数の領域には、左目フレームの領域及び右目フレームの領域が含まれ、変更がなされたか否かを判定するため、左目フレームの領域の署名を以前の左目フレームにおける対応領域と比較し、右目フレームの領域の署名を以前の右目フレームにおける対応領域の署名と比較する。一実施形態において、複数の領域には、現在のフレームの奇数領域と偶数領域を含むインタレース領域が含まれ、処理ロジックは、現在のフレームと、以前のフレームのイメージデータまたは以前の複数のフレームのイメージデータとの間に変更がなされたか否かを判定するため、奇数領域の署名を以前のフレームにおける対応奇数領域の署名と比較し、偶数領域の署名を以前のフレームにおける対応偶数領域の署名と比較する。一実施形態において、１つの領域の画素データは、粗いデータと微細なデータとに分割され、処理ロジックは、その１つの領域のデータシンクへの送信を妨げるべきか否かを判定するため、署名を比較する。つまり、現在のフレームにおける領域の粗いデータに関連付けられた署名及び現在のフレームにおける領域の微細なデータに関連付けられた署名を、以前のフレームにおける対応領域の粗いデータ及び微細なデータに関連付けられた署名と比較する。
【００２７】
処理ロジックは、その署名が、以前のフレームにおける対応領域の署名と合致しなかった場合、データシンクにイメージデータの領域を送信し（処理ブロック２０３）、その署名が以前のフレームにおける対応領域の署名と合致した場合、その領域の送信を妨げる（処理ブロック２０４）。一実施形態において、データシンクが以前のフレームの対応領域を受信した旨の確認をデータシンクから受け取った場合に限り、各領域の送信を妨げる。
【００２８】
一実施形態において、イメージデータをデータシンクに送信させるための署名の比較に先立って領域の位置が指定された場合、領域の送信を妨げない。このような場合、その領域のイメージデータをデータシンクに送信する。これは、データシンクに誤ったデータの使用を繰り返し伝えることを回避する手段として、データシンクが周期的に各領域のデータを受信することを保証するために使用されてもよい。
【００２９】
一実施形態において、このプロセスはさらに、いずれの領域が変更されたか、及び／又は、変更されなかったかを示す情報をデータシンクに送信する処理ロジックを備える（処理ブロック２０５）。一実施形態において、このプロセスはさらに、いずれの領域がデータシンクに送信されないかを示す情報を送信する処理ロジックを備える（処理ブロック２０６）。一実施形態において、データシンクに送信されない領域を示す情報は、データシンクに送信される領域シリアル番号のギャップから抽出される。他の実施形態において、データシンクに送信されない領域を示す情報は、領域毎のマーカーを含む。
【００３０】
一実施形態において、このプロセスはさらに、その署名が以前のフレームにおける対応領域の署名と合致する場合、領域の代わりに代替データを送信する処理ロジックを備える（処理ブロック２０７）。一実施形態において、代替データは、全黒色画素データ、全白色画素データ、全灰色画素データ、又は省略又は抑制されたものの、その領域の元のイメージデータに比してより圧縮可能な領域の代わりとなり得る他のデータを含む。これは、採用されている転送プロトコルにより、領域について何らかのデータを送信しなければならないような状況で有用となり得る。従って、領域を表現するためにデータの転送が必要な場合、そのデータは高度に圧縮可能であることが好ましい。一実施形態において、代替データは、元のデータより小さいデータである。一実施形態において、代替データは、データシンク側のフレームバッファのサイズが低減できるような、領域の部分画素データである。
【００３１】
イメージデータソースがデータのフレームをデータシンクに提供する一実施形態において、署名が合致し、フレームデータの一部が送信されなくてよいことを示した場合、情報を送信するために追加で利用可能な帯域幅が発生する。この情報は、同一のフレーム又はその他のフレームからの情報であり得る。このような場合、プロセスはさらに、複数の領域のうちの少なくとも１つについて関連付けられた追加のデータを転送するために、送信帯域幅の一部を使用する処理ロジックを備える（他の領域の各署名が以前のフレームにおける対応領域の署名と合致するため、その送信が妨げられる場合）（処理ブロック２０８）。この場合、追加データは、その領域の送信が妨げられなければその送信に使用されたであろう帯域幅を使用して転送される。一実施形態において、追加データは、１つ以上の領域に関連付けられた、より微細なイメージデータを含む。
【００３２】
一実施形態において、このプロセスはさらに、現在のフレームにおける領域の送信を妨げる場合、１つ以上のデータソースリソースの電力消費を低減する処理ロジックを備える（処理ブロック２０９）。一実施形態において、データソースリソースは、無線又はその一部（例えば、送信機）を備える。一実施形態において、データソースリソースは、データソースのＰＨＹを備える。他の実施形態において、データソースリソースは、ビデオエンコーダを備える。処理ロジックにより、複数の構成要素（例えば、エンコーダ及びＰＨＹ又はＲＦ無機）が同時にパワーダウンされてもよいことに注意されたい。処理ロジックは、構成要素のパワーダウン、若しくは、このような構成要素をスリープ状態やアイドル状態にすることを含むがこれに限定されない多数の既知の方法によって、電力消費を低減することができる。
【００３３】
図３は、一実施形態に係るデータソース及び一実施形態に係るデータシンクの一部を示している。データソースのこの部分は、図１に示すデータソースの部分であってもよい。図３を参照すると、ビデオフレームＮ−１及びビデオフレームＮが示されており、同一の塗りつぶしパターンを有する領域が同一の画素内容を示している。図示のとおり、ビデオフレームＮ−１及びビデオフレームＮの領域３及びＫ−１は異なる一方で、他は同一である。チェックサム演算モジュール３２０は、ビデオフレームＮ−１の領域１から領域Ｋまでの各々についてチェックサムを計算し、それらをメモリ内のチェックサムテーブル３１０に記憶する。ビデオフレームＮの領域がビデオソースによって受信されると、チェックサム演算モジュール３２１は、領域１から領域Ｋまでのチェックサムを計算する。ビデオフレームＮの領域１から領域Ｋまでのチェックサムは、比較器３２２により、チェックサムテーブル３１０に記憶された対応領域のチェックサムと比較される。
【００３４】
比較器３２２によりビデオフレームＮの領域に対するチェックサムがビデオフレームＮ−１における対応領域のチェックサムと同一である（例えば、ビデオフレームＮにおける領域２のチェックサムがビデオフレームＮ−１における領域２のチェックサムと同一である）と判定された場合、比較器３２２は、禁止領域ロジック３５０に、その領域のデータがデータシンクに転送されることを妨げる信号の送信を行うか、若しくはその示唆を提供する。本例において、領域１、領域２、領域４から領域Ｋ−２、及び領域Ｋは同一であるため、禁止領域ロジック３５０はこれらをデータシンクに転送することを妨げる。一方、禁止領域ロジック３５０は、領域３及び領域Ｋ−１のチェックサムがチェックサムテーブル３１０内の対応領域に対するチェックサムと合致しないと判定すると、禁止領域ロジック３５０にその結果を示す信号を送信する。禁止領域ロジック３５０は、この示唆に応じて、領域３及び領域Ｋ−１に対するイメージデータをデータシンクに対して出力可能にする。
【００３５】
出力される領域のイメージデータ、本例では領域３及び領域Ｋ−１のイメージデータであるが、これには、データシンクへの送信に先立って図１に示されるような追加の処理３４０（例えば、符号化、フォーマット化、パケット化等）が施されてもよいことに注意されたい。
【００３６】
データシンクにおいて、ビデオフレームＮが再構築される。一実施形態において、データシンクは、受信能力を備え、フレーム再構築に先立ってデータソースから受信したデータに対して追加処理３６０（パケット解除、復号化等）を施す。
【００３７】
本例において、フレーム再構築のため、データシンクは既にメモリ３３０に記憶されたビデオフレームＮ−１のイメージデータを有する。メモリ３３１においてビデオフレームＮを生成するため、データシンクは、データソースから領域３及び領域Ｋ−１を受信し、このデータを、メモリ３３０内に既に記憶されている領域１、領域２、領域４から領域Ｋ−２、及び領域Ｋのデータと結合する。一実施形態において、データシンクは、受信したパケットのヘッダに記憶された情報に基づき、データのいずれの領域をデータソースから受信しているかを判定することができる。データシンクは、このデータを使用して、ビデオフレームＮの再構築を完成させるため、メモリ３３０からどのデータが必要となるかを判定することができる。
【００３８】
またデータシンクは、イメージデータがビデオフレームＮ＋１及びその他の後続の受信ビデオフレームの再構築に使用されてもよいように、再構築されたビデオフレームＮの領域を記憶する。一実施形態において、再構築されたビデオフレームＮを記憶することは、ビデオフレームＮ−１とビデオフレームＮの間で変更された領域に対応して受信された領域（例えば、本例では領域３及び領域Ｋ−１）のイメージデータを、変更されていないビデオフレームＮ−１の他の領域を記憶しているメモリ内に記憶することにすぎない。例えば、ビデオフレームＮの領域３及び領域Ｋ−１に対するイメージデータが、メモリ３３０に記憶されたビデオフレームＮ−１の領域３及び領域Ｋ−１に対するイメージデータに取って代わる。
【００３９】
データソースにおいて、比較器３２２がビデオフレームＮの領域３及び領域Ｋ−１に対するチェックサムがビデオフレームＮ−１の対応領域３及び対応領域Ｋ−１のチェックサムと同一でない旨の判定をした後、ビデオフレームＮの領域３及び領域Ｋ−１に対するチェックサムがチェックサムテーブル３１０に記憶されることに注意されたい。その後、ビデオフレームＮ＋１に対するイメージデータがデータシンクに送信される際、チェックサムがデータソースにより生成され、チェックサムテーブル３１０に新たに追加されたビデオフレームＮの領域３から領域Ｋ−１のチェックサムとともにチェックサムテーブル３１０に依然として記憶されているビデオフレームＮ−１の領域１、領域２、領域４から領域Ｋ−２、及び領域Ｋのチェックサムと比較される。このプロセスは、チェックサムテーブル３１０に記憶されたチェックサムが、時間経過に合わせて、多数の異なるビデオフレームの領域のチェックサムを示すように処理された後続のビデオフレームに対して継続される。
【００４０】
前述の従来技術と比較すると、本明細書に記載の技術により、コスト効率及び電力効率の高い方法により、データソースとデータシンク間でイメージデータの転送を行うことができるようになる。
【００４１】
図４Ａは、データソースによって実施されるデータ低減プロセスの一実施形態を示すデータフロー図である。このプロセスは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用機械で駆動されるようなもの）、又はその双方の組み合わせを含み得る処理ロジックによって実施される。一実施形態において、このプロセスは、図１及び３に示すデータソースによって実施される。
【００４２】
図４Ａを参照すると、このプロセスは、処理ロジックによって各フレームを１つ以上の画素領域に分割することによって開始する（処理ブロック４０１）。次に、処理ロジックは、各領域に対するチェックサムを演算する（処理ブロック４０２）。一実施形態において、チェックサムは、元の領域のデータ量より小さい。一実施形態において、チェックサムのアルゴリズムは、結果として同一のチェックサムとなる他の任意の画素データが通常のビデオストリームに存在することがないように設計される。
【００４３】
その後、処理ロジックは、チェックサムを、チェックサムメモリに記憶された以前のフレームにおける対応領域のチェックサムと比較する（処理ブロック４０３）。対応領域は、データシンクによって受信されてデータシンクのビデオメモリに記憶された、以前の異なる多数のフレームの一部であり得ることに注意されたい。
【００４４】
ある領域のチェックサムが合致しない場合、処理ロジックは、次のフレームに使用するため、このフレームに対して生成されたチェックサムを記憶し、これらの領域に対するビデオフレームデータをデータシンクに転送する（処理ブロック４０４）。
【００４５】
ある領域と以前のフレームにおけるその対応領域のチェックサムが同一であった場合、処理ロジックは、送信対象からビデオフレームデータを省略又は抑制する（処理ブロック４０５）。このように、新たなフレームからの領域は、データシンクによって構築されるビデオデータから省略される。
【００４６】
その後、処理ロジックは、データシンクへ送信される任意の領域に追加の処理を施す（処理ブロック４０６）。追加の処理には、領域のイメージデータを圧縮すること、そのイメージデータを送信用にフォーマットすることが含まれてもよい。
【００４７】
追加の処理がある場合、それを行った後、処理ロジックは、以前のフレームの対応領域のチェックサムと合致しなかったチェックサムを有する領域（または複数の領域）を送信する（処理ブロック４０７）。
【００４８】
チェックサムを記憶し、元のフレームデータと比較することにより、結果としてコスト及び電力を著しく節約することとなる。ビデオデータの大部分は相当量の静的部分を含むことが多いため、本明細書に記載の技術により、このようなビデオに必要とされる送信帯域幅を大幅に低減することができるようになる。
【００４９】
データシンクは、データソースから受信したイメージデータの領域を使用して、ビデオフレームの再構築を実施する。図４Ｂは、データシンクによって実施されるデータ低減プロセスの一実施形態を示すデータフロー図である。このプロセスは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用機械において駆動されるようなもの）、又はその双方の組み合わせを含み得る処理ロジックによって実施される。一実施形態において、再構築動作は再帰的に実施される。
【００５０】
図４Ｂを参照すると、処理ロジックにより、受信側アルゴリズムに基づいて受信したビデオデータに演算（例えば、パケット解除、復号等）を実施することによって処理を開始する（処理ブロック４１１）。
【００５１】
次に、処理ロジックは、この領域のデータを再構築モジュールに引き渡し（処理ブロック４１２）、ビデオフレームの再構築にこの引き渡された領域のデータを使用する（また、この領域のデータを次のフレームでの繰り返し処理のためにビデオフレームバッファに記憶する）（処理ブロック４１３）。
【００５２】
処理ロジックは、この領域のデータが受信したビデオストリームから抜け落ちている場合、フレームバッファに記憶された以前のフレームからこの領域のデータを使用する（処理ブロック４１４）。一実施形態において、領域番号に基づいて（例えば、領域シーケンス番号のギャップにより）、この領域がないことを検出する。他の実施形態において、マーカー、ビデオ転送方式に応じた到着時間、又はその他の手段により、この領域がないことを検出する。
【００５３】
再び図３を参照すると、一実施形態において、禁止領域ロジック３５０は、チェックサムがチェックサムテーブルに記憶された対応領域のチェックサムと同一であったとしても、データシンクへの領域のイメージデータの送信を時として抑制又は禁止しないように制御される。これは、データシンクに記憶された各領域のイメージデータにおけるエラーがそのまま記憶され、所定回数を超えてビデオフレームの再構築に使用されないことを保証するために為されてもよい。シンクに記憶されたビデオデータの更新は、トリクルアップデートと称される。一実施形態において、各領域のデータは、所定フレーム数毎に、禁止領域ロジック３５０によってその送信が妨げられない（例えば、一実施形態において、１つの新たな領域は、すべての領域が無条件に送信されるまで、フレーム毎に無条件に送信される。その後、プロセスを繰り返す）。
【００５４】
一実施形態において、インタレースビデオフォーマットについては、構築方法におけるチェックサムテーブル及び再構築方法におけるビデオフレームバッファが、奇数フレーム及び偶数フレーム毎に重複される。
【００５５】
一実施形態において、データが無線チャンネル等の信頼性の低いチャンネルを通じて転送される場合、送信決定ロジックは、例えば確認フレームの受信等、参照領域の伝送に成功したか否かを追跡し、参照領域が伝送されなかった場合、署名（例えば、チェックサム）が以前のフレームの対応領域の署名と合致したか否かを問わず、後のエラーを回避するため、新たな領域が依然として送信される。
【００５６】
一実施形態において、ある領域のデータは、粗い部分及び微細な部分に分割され、個別のチェックサムが各々演算される。これら個別のチェックサムは、以前のフレームにおける対応領域の粗い部分及び微細な部分に対する署名と比較される。粗い部分及び微細な部分に分割することにより、帯域幅の制限されたチャンネルを通じて、また通常はこのようなデータを送る十分な帯域幅のないチャンネルを通じて、ビデオを送信することが可能になる。このような場合、粗い部分のみが最初に送信されるため、粗い画像が再構築される。本明細書に記載のロジックは、領域の粗い部分が次のフレームでも変更されない場合に微細な部分を送信することにより、フレームの再構築を完了させる。
【００５７】
他の実施形態において、チェックサムは、輝度要素、彩度要素、及び／又は、個々の色要素（例えば、赤色（Ｒ）、緑色（Ｇ）、及び青色（Ｂ）に対する個別のチェックサム）等、イメージデータの個々の構成要素について演算することができる。
【００５８】
本明細書に記載の技術はビデオフレームイメージの内容とは独立していることに注意されたい。従って、これらの技術は、モーションＪＰＥＧイメージ等の圧縮イメージに使用してもよい。
【００５９】
［コンピュータシステムの例］
図５は、本明細書に記載の動作のうち１つ以上を実施し得る一例としてのコンピュータシステムのブロック図である。一実施形態において、図５に示すコンピュータシステムを使用して、本明細書に記載のデータソース又はデータシンクのいずれかを実装してもよい。
【００６０】
図５を参照すると、コンピュータシステム５００は、一例としてのクライアントコンピュータシステム又はサーバコンピュータシステムを含み得る。コンピュータシステム５００は、情報を通信する通信機構又はバス５１１と、バス５１１に連結された、情報を処理するためのプロセッサ５１２とを備える。プロセッサ５１２には、例えば、Ｐｅｎｔｉｕｍ（登録商標）、ＰｏｗｅｒＰＣ（登録商標）、Ａｌｐｈａ（登録商標）等のマイクロプロセッサが含まれるが、これに限定されるものでない。
【００６１】
システム５００はさらに、情報及びプロセッサ５１２により実行される指示を記憶するためにバス５１１に連結された、ランダムアクセスメモリ（ＲＡＭ）又はその他の動的記憶装置５０４（メインメモリと称する）を備える。メインメモリ５０４はまた、プロセッサ５１２によって指示を実行する間、一時変数又はその他の中間情報を記憶するために使用されてもよい。
【００６２】
コンピュータシステム５００はまた、静的情報及びプロセッサ５１２への指示を記憶するためにバス５１１に連結された、リードオンリーメモリ（ＲＯＭ）及び／又はその他の静的記憶装置５０６と、磁気ディスク又は光ディスク及びその対応ディスクドライブ等のデータ記憶装置５０７とを備える。データ記憶装置５０７は、情報及び指示を記憶するためにバス５１１に連結される。
【００６３】
コンピュータシステム５００はさらに、情報をコンピュータユーザに表示するため、バス５１１に連結された、陰極線管（ＣＲＴ）又は液晶ディスプレイ（ＬＣＤ）等の表示装置５２１に連結されてもよい。プロセッサ５１２に情報及びコマンド選択を伝達するために、英数字キー及びその他のキーを含む英数字入力装置５２２もまたバス５１１に連結されてもよい。追加のユーザ入力装置として、プロセッサ５１２に方向情報及びコマンド選択を伝達し、ディスプレイ５２１上でのカーソルの動きを制御するため、バス５１１に連結された、マウス、トラックボール、トラックパッド、スタイラス、又はカーソル方向キー等のカーソルコントロール５２３が設けられる。
【００６４】
バス５１１に連結されてもよい他のデバイスとして、紙、フィルム、又は同様のタイプの媒体上に情報を記録するために使用され得るハードコピーデバイス５２４が設けられる。バス５１１に連結されてもよい他のデバイスとして、電話又はハンドヘルドパームデバイスと通信する有線／無線通信機能５２５が設けられる。
【００６５】
本発明において、システム５００の構成要素のうちの一部又はすべてと、関連のハードウェアとが使用されてもよいことに注意されたい。しかしながら、コンピュータシステムの他の構成にこれらデバイスの一部又はすべてが含まれてよいことを理解することができる。
【００６６】
当分野で通常の知識を有する当業者にとって、以上の説明を読むことにより、疑いなく、本発明について多数の変更及び修正が明らかとなるであろうが、説明及び図示した特定の実施形態は、いかなる意味においても限定を意図するものでないことを理解しなければならない。従って、種々の実施形態の参照は、請求範囲の限定を意図するものでなく、請求項では本発明にとって必須と思われる特徴のみを列挙するものである。
【図１】
2016506139.tif 000003
【図２】
2016506139.tif 000004
【図３】
2016506139.tif 000005
【図４Ａ】
2016506139.tif 000006
【図４Ｂ】
2016506139.tif 000007
【図５】
2016506139.tif 000008
【国際調査報告】
2016506139.tif 000009
2016506139.tif 000010