(57)【要約】【課題】  動き補償圧縮アルゴリズムを効率的な方法で実行することが可能な圧縮方法及び圧縮アルゴリズムを使用するデジタル画像デバイスを提供する。【解決手段】  ビデオフレームを取り込む画像サブシステム（４０１）と、該デバイスの移動を検出する動きセンサ（４０５）と、動き補償圧縮アルゴリズムに従って前記画像サブシステムからのビデオフレームを符号化する符号化論理回路（４０３）であって、前記動きセンサからの情報を使用してフレーム間探索エリアを変位させることにより動きベクトルを求める、符号化論理回路と、を備えるデジタル画像デバイスとする。【選択図】          図４
2005287031.tif 000002
【特許請求の範囲】
【請求項１】
デジタル画像デバイスであって、
ビデオフレームを取り込む画像サブシステム（４０１）と、
該デバイスの移動を検出する動きセンサ（４０５）と、
動き補償圧縮アルゴリズムに従って前記画像サブシステムからのビデオフレームを符号化する符号化論理回路（４０３）であって、前記動きセンサからの情報を使用してフレーム間探索エリアを変位させることにより動きベクトルを求める、符号化論理回路と、
を備えるデジタル画像デバイス。
【請求項２】
前記動きセンサは角度の変化を示す情報を生成する、請求項１に記載のデジタル画像デバイス。
【請求項３】
前記動きセンサは直線的な変位を示す情報を生成する、請求項１に記載のデジタル画像デバイス。
【請求項４】
画像取り込みデバイスに関連して使用されるビデオ画像を圧縮する方法であって、
少なくとも第１のビデオフレームおよび第２のビデオフレームを受け取る（７０１）こと、
少なくとも１つの動きセンサから前記デバイスの移動に関係した動き情報を受け取る（７０２）こと、
前記第２のフレーム内で基準ピクセルブロックを選択する（７０３）こと、
前記第１のフレーム内で探索エリアを選択する（７０４）ことであって、該探索エリアが、前記動き情報を使用して、前記選択した基準ブロックによって画定された位置から変位される、前記第１のフレーム内で探索エリアを選択すること、および
前記第２のフレーム内の前記基準ピクセルブロックを前記第１のフレームの前記探索エリア内のピクセルと比較することによって、フレーム間動きベクトルを求める（７０５）こと、
を含む、ビデオ画像を圧縮する方法。
【請求項５】
前記動き情報から、前記第２のフレームの前記基準ブロックの位置に関連した前記第１のフレームの位置で開始する変位ベクトルを求め、前記探索エリアを前記選択することは、前記変位ベクトルを使用して前記探索エリアの位置を特定する、請求項４に記載のビデオ画像を圧縮する方法。
【請求項６】
前記動きセンサはジャイロスコープセンサである、請求項４に記載のビデオ画像を圧縮する方法。
【請求項７】
前記ジャイロスコープセンサを使用して角度変位を示す情報を受信する機能の小角度近似を使用することによって変位ベクトルを計算すること、
をさらに含む請求項６に記載のビデオ画像を圧縮する方法。
【請求項８】
前記動きセンサは加速度センサである、請求項４に記載のビデオ画像を圧縮する方法。
【請求項９】
前記加速度センサは、前記画像取り込みデバイス内に配置されて、画像取り込み平面内の軸に沿った前記デバイスの加速度に比例する信号電圧を供給する、請求項８に記載のビデオ画像を圧縮する方法。
【請求項１０】
複数の加速度センサは前記動き情報を生成し、前記画像取り込みデバイスの角度の変化を示す少なくとも１つの差分信号を供給する、請求項４に記載のビデオ画像を圧縮する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮方法および圧縮アルゴリズムを使用するデジタル画像デバイスに関する。
【背景技術】
【０００２】
ビデオ圧縮アルゴリズムは、通常、フレーム内の冗長性の活用等のさまざまなメカニズムを使用して、ビデオフレームを効率的に符号化する。フレーム内の冗長性は、単一のビデオフレーム内の空間的に隣接したピクセル間の相互関係を指す。フレーム内の冗長性を利用するために、いくつかの既知の圧縮アルゴリズムは、画像データの単一のビデオフレームを複数のブロックに分割し、適切な数学的変換（例えば、離散コサイン変換（ＤＣＴ））を各ブロックに対して実行する。次に、変換領域における画像データのダイナミックレンジを制限するために、量子化が実行される。量子化後、多数の周波数係数が、一般に、ブロック内およびブロック間で繰り返される。変換および量子化が行われた画像データは、次に、連長符号化、ブロック終了コード、および可変長符号化方式（例えば、ハフマン符号化）を使用して比較的効率的に符号化することができる。
【０００３】
また、ビデオ圧縮アルゴリズムは、通常、フレーム間の冗長性も活用する。フレーム間の冗長性は、複数のフレームに関連した対応するピクセルエレメント間の時間的な相互関係を指す。例えば、ビデオデータが３０Ｈｚまたはそれよりも高いレートでサンプリングされると、連続したフレーム間の画像データの変化量は比較的少ない。ビデオ圧縮アルゴリズムでは、２つまたは３つ以上のフレーム間の差分を示す差分信号または誤差信号を生成することができる。多くのフレームでは、差分信号の大部分が「０」によって表され、それによって、フレームの対応するピクセルエレメント間の差がないことが示される。フレーム内符号化と同様の方法で、連長符号化、ブロック終了コード、および可変長符号化方式を使用して、差分信号を効率的に符号化することができる。
【０００４】
ピクセルごとの直接的な比較が実行されて、差分信号が生成されると、連続したフレーム間におけるビデオデータ内のオブジェクトの移動が、差分信号の冗長量を削減する。「動き補償」は、フレーム間のオブジェクトの移動にかかわらず差分信号の冗長性を維持するのに使用されるアルゴリズム技法を指す。
【０００５】
例えば、ムービングピクチャエキスパートグループ（ＭＰＥＧ）ビデオ圧縮標準規格は、ピクセルの重なり合わない「ブロック」または「マクロブロック」に各フレームを分割することによって動き補償を実行する。マクロブロック（ＭＢ）は、ブロックの２×２マトリクスである。各ブロックまたはＭＢごとに動きベクトルが求められる。特定のブロックまたはＭＢの動きベクトルは、その特定のブロックまたはＭＢに関係した差分信号の部分を生成したピクセルを定義する。例えば、オブジェクトが、第１のフレームと第２のフレームとの間で多くのピクセル数分「下」に移動したとする。そのオブジェクトを含む複数のブロックに対して、そのピクセル移動量を符号化する動きベクトルが求められる。次に、第２のフレームにおけるそのオブジェクトのブロックのピクセルを、求められた動きベクトルによって相対的に「上」にシフトされた第１のフレームのピクセルと比較することによって、第１のフレームと第２のフレームとの間の差分信号が最小化される。
【発明の開示】
【課題を解決するための手段】
【０００６】
一実施の形態では、デジタル画像デバイスは、ビデオフレームを取り込む画像サブシステムと、当該デバイスの移動を検出する動きセンサと、動き補償圧縮アルゴリズムに従って画像サブシステムからのビデオフレームを符号化する符号化論理回路であって、動きセンサからの情報を使用してフレーム間探索エリアを変位させることにより動きベクトルを求める、符号化論理回路と、を備える。
【０００７】
別の実施の形態では、画像取り込みデバイスに関連して使用されるビデオ画像を圧縮する方法は、少なくとも第１のビデオフレームおよび第２のビデオフレームを受け取ること、少なくとも１つの動きセンサからデバイスの移動に関係した動き情報を受け取ること、第２のフレーム内で基準ピクセルブロックを選択すること、第１のフレーム内で探索エリアを選択することであって、当該探索エリアが、動き情報を使用して、選択した基準ブロックによって画定された位置から変位される、第１のフレーム内で探索エリアを選択すること、および第２のフレーム内の基準ピクセルブロックを第１のフレームの探索エリア内のピクセルと比較することによって、フレーム間動きベクトルを求めること、を含む。
【０００８】
別の実施の形態では、システムは、ビデオ画像を生成する手段と、当該システムの動きを検出する手段と、動き補償圧縮アルゴリズムに従ってビデオ画像を符号化する手段であって、動きベクトルの計算中に、検出する手段から受け取った情報に応じて探索エリアを変位させる、符号化する手段と、を備える。
【発明を実施するための最良の形態】
【０００９】
動き補償圧縮アルゴリズムに従って一連のビデオフレームを符号化している間、デジタルビデオデバイスは、通常、「内部符号化（intracoded）」フレームをその時々で符号化する。内部符号化フレームは、その後、他のフレームを参照することなく復号できるフレームである。基本的に、内部符号化フレームは、スタンドアロンの静止画像である。内部符号化フレーム間では、「相互符号化（intercoded）」フレーム（ＭＰＥＧ標準規格によると、「予測された」および「双方向」フレームと呼ばれる）が符号化される。相互符号化フレームは、その後、１つまたは数個の内部符号化フレームおよび／または他の相互符号化フレーム、１つまたは数個の差分信号、ならびに関連した動きベクトルから復号または復元される。
【００１０】
次に図面を参照して、図１Ａは、相互符号化フレームとして符号化されるフレーム１００を示している。図１Ｂのフレーム１５０は、内部符号化フレームであり、この内部符号化フレームから、動きベクトルおよび差分情報を使用してフレーム１００を復元することができる。フレーム１００および１５０は、説明のために５１２×５１２ピクセルのフレームであると仮定する。符号化プロセスの間、フレーム１００を複数の「マクロブロック」に分割することができる。明確にするために、図１Ａには、マクロブロック１０１のみを示している。
【００１１】
マクロブロック１０１は、高さが１６ピクセルで幅が１６ピクセルを有するものとして示されている。また、マクロブロック１０１の左上のピクセルはピクセル位置（２５６，２５６）に位置し、マクロブロック１０１の右下のピクセルはピクセル位置（２７１，２７１）に位置する。マクロブロック１０１に関連した動きベクトルを求めるために、オブジェクトは、フレーム間で１６ピクセル分「上」または「下」に移動でき、また、フレーム間で１６ピクセル分「左」または「右」にも移動できるものと仮定する。探索エリア１５１は、この仮定を使用して画定される。具体的には、探索エリア１５１の左上のピクセルはピクセル位置（２４０，２４０）に位置し、右下のピクセルはピクセル位置（２８７，２８７）に位置する。
【００１２】
マクロブロック１０１の動きベクトルを求めるために、マクロブロック１０１と、探索エリア１５１内の可能な連続した各１６×１６ピクセル群との間で、比較が行われる。この比較には、差分誤差メトリックの合計を使用することができる。例えば、マクロブロック１０１と群１５２（ピクセル位置（２６９，２４５）に位置する）との差分の合計は、以下の方程式によって与えられる。
【００１３】
【数１】
2005287031.tif 000003
（方程式１）
【００１４】
ここで、ｆ（）はフレーム１００のピクセル値を表し、ｆ´（）はフレーム１５０のピクセル値を表す。
【００１５】
最も低い誤差メトリックを示すピクセル群を使用して、動きベクトルが定義される。群１５２が最も低い誤差メトリックを示すと仮定すると、動きベクトルは（−１３，１１）によって与えられる。マクロブロック１０１は、次に、動きベクトル（−１３，１１）と、Ｄ（ｘ，ｙ）＝ｆ（２５６＋ｘ，２５６＋ｙ）−ｆ´（２６９＋ｘ，２４５＋ｙ）によって与えられる差分信号Ｄ（ｘ，ｙ）とを使用して符号化される。ここで、ｘ，ｙ＝０，１，２…１５である。
【００１６】
オブジェクトが各軸に沿って１６ピクセル分移動できるという仮定のために、探索エリア１５１は比較的大きくなる。具体的には、探索エリア１５１を使用して単一の動きベクトルを求めるのに、方程式１に上掲したような１０２４回のマクロブロックの比較が行われる。さらに、５１２×５１２ピクセルのサイズのフレーム１００の各マクロブロックの動きベクトルを求めるには、１，０４８，５７６回のマクロブロックの比較が必要とされる。このように、動き補償圧縮アルゴリズムに従って動きベクトルを求めることは、かなり計算集中的なものとなる。フレーム間でのオブジェクトの可能な移動に関する仮定は、探索エリアを限定するように制限することができ、それによって、計算回数を削減することができる。しかしながら、オブジェクトの移動に関する仮定をみだりに制限すると、オブジェクトがあまりにも頻繁に不正確になる可能性があり、圧縮性能の低減をもたらす可能性がある。
【００１７】
本発明のいくつかの代表的な実施の形態によって、ビデオ圧縮アルゴリズムは、感知できるほどに圧縮性能を低減することなく、ブロック比較用に比較的小さな探索エリアを使用することができる。ビデオフレームを取り込むのに使用される画像デバイスの物理的な平行移動および／または向きの変化を検出する動きセンサを使用することによって、比較プロセス用のマクロブロックに対して探索エリアを選択的に変位させることができる。この変位は検出された動きに関係しているので、比較的小さな探索エリアが使用される場合であっても、最適な動きベクトルを特定する確率は増大する。
【００１８】
図２Ａおよび図２Ｂは、一代表的な実施の形態による探索エリアの変位を示している。図２Ａは、フレーム２５０を使用して相互符号化されるフレーム２００を示している。フレーム２００はブロック２０１を含み、ブロック２０１の第１ピクセルはピクセル位置（Ｘ，Ｙ）に位置する。オブジェクトは、フレーム間でＸ方向に「Ｗ」ピクセル分移動でき、Ｙ方向に「Ｈ」ピクセル分移動できるものと仮定する。一実施の形態によると、見積もられたピクセル変位（ΔＸ，ΔＹ）が、１つまたは数個の動きセンサから受け取った情報に基づいて計算される。この見積もられたピクセル変位は、ビデオデバイスの移動が原因のビデオフレームの変化に関係している。ビデオデバイスの移動が起こらなかった場合（ΔＸ＝０およびΔＹ＝０）、その第１ピクセルがピクセル位置（Ｘ−Ｗ，Ｙ−Ｈ）に位置する、フレーム２５０の探索エリア２５１が選択される。移動が検出されると、見積もられたピクセル変位によって相殺されるフレーム２５０の探索エリア２５２が選択される。具体的には、探索エリア２５２の第１ピクセルは、ピクセル位置（Ｘ−Ｗ−ΔＸ，Ｙ−Ｈ−ΔＹ）に位置する。
【００１９】
図３は、一代表的な実施の形態によるデジタルビデオデバイスによってビデオデータを処理する方法を示している。ステップ３０１において、ビデオフレームが受け取られ、フレーム内技法に従って符号化される。ステップ３０２において、別のビデオフレームが受け取られる。
【００２０】
ステップ３０３において、現在のビデオフレームの取り込みと前のビデオフレームの取り込みとの間の合間に、デジタルビデオデバイスの動きセンサから、デジタルビデオデバイスの動き（例えば、平行移動および／または角度方向の変化）を示す動き情報が取得される。代表的な実施の形態によると、さまざまなタイプの動きセンサを使用することができる。一代表的な実施の形態では、デジタルビデオデバイスの角度の回転を示す情報を提供するのに、ジャイロスコープセンサを使用することができる。これに加えてまたはこれに代えて、画像サブシステムによって画定された平面内の軸に沿った物理的な平行移動を示す情報を提供するのに、マイクロ加速度センサを使用することができる。さらに、マイクロ加速度センサ対を適切に配置して、デジタルビデオデバイスの回転を示す差分信号を生成することもできる。
【００２１】
ステップ３０４において、動きセンサからの信号がデジタル化されて、適切な論理回路に提供され、ピクセル動き見積もりが生成される。具体的には、この論理回路は、デジタルビデオデバイスの移動の結果生じる「ΔＸ」および「ΔＹ」のピクセル変位を計算する。この論理回路の実施の形態は、デバイスの画像サブシステムと、デバイス用に選択された動きセンサ（または複数の動きセンサ）との実施の形態に依存する。例えば、デバイスの角度方向の変化を検出するセンサが選択されると、「小角度」近似を使用することができる。すなわち、デバイスのサンプリングレートが比較的高いので、２つの連続フレーム間の角度方向の変化は比較的小さいと仮定することができる。したがって、ピクセルの平行移動は、検出された角度方向の変化の適切な倍数であると見積もることができる。同様に、ビデオデバイスの横方向の平行移動を検出するセンサでは、ピクセル平行移動は、物理位置の検出された変化の倍数として見積もることができる。
【００２２】
ステップ３０５において、ステップ３０２で受け取ったビデオフレームからのブロックが選択されて、圧縮アルゴリズムの動きベクトルを求める部分が開始される。このブロックの第１ピクセルは位置（Ｘ，Ｙ）に位置する。ステップ３０６において、前のビデオフレームの探索エリアが、選択されたブロックおよび見積もられたピクセル平行移動を使用して画定される。具体的には、探索エリアは、ステップ３０５で選択されたブロックに対して、見積もられたピクセル平行移動分だけ変位される。例えば、圧縮アルゴリズム用に比較的小さな探索エリア（例えば、２４×２４ピクセルの探索エリア）を選択することができる。前のビデオフレームの探索エリアの第１ピクセルを（Ｘ−４−ΔＸ，Ｙ−４−ΔＹ）に配置することができる。
【００２３】
ステップ３０７において、適切なブロック比較方式に従って、動きベクトルが、画定された探索エリアを使用して、選択されたブロックに対して求められる。探索エリアの変位は、デバイスの検出された動きに関係するので、比較的小さな探索エリアが使用される場合であっても、最適な動きベクトルを求める確率は増大する。具体的には、ビデオデバイスの移動の結果生じるビデオフレームの変化は、探索エリアの変位を通じて対処される。
【００２４】
ステップ３０８において、動きベクトルによって規定されるように、ブロックと前のビデオフレームの各ピクセルとの間の差分信号が求められる。ステップ３０９において、適切な動き補償圧縮アルゴリズムに従い、動きベクトルおよび差分信号を使用してブロックが符号化される。
【００２５】
ステップ３１０において、現在のビデオフレーム内で符号化されるブロックがさらにあるかどうかを判断する論理比較が行われる。さらにある場合には、プロセスフローはステップ３０５に戻る。ない場合には、プロセスフローはステップ３１１に進む。
【００２６】
ステップ３１１において、所定の個数の相互符号化フレームが符号化されたかどうかを判断する論理比較が行われる。所定の個数の相互符号化フレームが符号化されていない場合には、プロセスフローはステップ３０２に進み、ビデオフレームの相互符号化を続ける。所定の個数が相互符号化された場合には、プロセスフローはステップ３０１に戻り、フレーム内技法に従って次のフレームを符号化する。具体的には、内部符号化フレームをビデオストリームに周期的に散在させることが使用されて、圧縮アルゴリズムに関連した符号化雑音の量が削減される。
【００２７】
図４は、一代表的な実施の形態によるデジタルビデオデバイス４００を示している。デバイス４００は、既知の画像回路機構（例えば、電荷結合素子（ＣＣＤ）アレイ、アナログ／デジタル変換器等）を使用して実施できる画像サブシステム４０１を含む。画像サブシステム４０１は、取り込まれたビデオフレームのデジタルデータを生成し、メモリ４０２への記憶用にそのデジタルデータを通信する。また、デバイス４００は、動きセンサ（または複数の動きセンサ）４０５も含む。動きセンサ（または複数の動きセンサ）は、ジャイロスコープ、加速度センサ（または複数の加速度センサ）等を使用して実施することができる。
【００２８】
符号化論理回路４０３は、代表的な実施の形態による動き補償圧縮アルゴリズムに従ってビデオフレームを圧縮する。具体的には、一実施の形態では、符号化論理回路４０３は、動きセンサ（または複数の動きセンサ）４０５からの情報を使用して探索エリアの変位を実行するブロック比較論理回路４０４を含む。符号化論理回路４０３は、一例として図３に示すフローチャートを使用して実施することができる。さらに、符号化論理回路４０３は、特定用途向け集積回路（ＡＳＩＣ）を使用するか、または、プロセッサおよび実行可能コードを使用して実施することもできる。実行可能コードは、読み出し専用メモリ（ＲＯＭ）等の任意の適切なコンピュータ可読媒体に記憶することができる。圧縮アルゴリズムの計算特性が削減されるので、複雑度の小さいＡＳＩＣまたはプロセッサを使用することができ、したがって、デバイス４００の費用を削減することができる。符号化されたビデオデータは、不揮発性メモリ４０６に記憶することができ、かつ／または、ビデオインタフェース４０７を使用して別のデバイスに提供することができる。
【００２９】
図５は、加速度センサ対５０１が使用される一代表的な実施の形態によるデジタルビデオデバイス５００を示している。加速度センサ５０１−１および５０１−２は、デバイス５００の単一の「壁」の対向する端部に配置される。加速度センサ５０１−１および５０１−２によって、これら加速度センサを含むデカルト平面の法線の軸に沿ったデバイス５００の平行移動を検出することが可能になる。さらに、加速度センサ５０１−１および５０１−２は加算器５０２−１に接続される。加算器５０２−１は、加速度センサ５０１−１からの信号を、加速度センサ５０１−２からの信号を反転したものと合計し、差分信号を生成する。この差分信号によって、角度方向の変化の検出が可能になる。同様に、加速度センサ５０１−３および５０１−４は、デバイス５００の別の壁に配置される。加速度センサ５０１−３および５０１−４は、それぞれ、加算器５０２−２に接続されて、別の差分信号を生成する。第３の組の加速度センサ（図示せず）も同様に実施でき、それによって、デバイス５００の平行移動およびデバイス５００の角度方向の変化を３つの軸に関して検出することが可能になる。
【００３０】
図６は、一代表的な実施の形態によるフローチャートを示している。ステップ６０１において、ビデオ画像が画像デバイスによって生成される。ステップ６０２において、画像デバイスの動きが検出される。ステップ６０３において、ビデオ画像が動き補償圧縮アルゴリズムに従って符号化される。この動き補償圧縮アルゴリズムでは、符号化が、動きベクトルの計算中に、検出から受け取った情報に応じて探索エリアを変位させる。
【００３１】
図７は、一代表的な実施の形態による画像取り込みデバイスに関連して使用される、ビデオ画像を圧縮する別のフローチャートを示している。ステップ７０１において、少なくとも第１のビデオフレームおよび第２のビデオフレームが受け取られる。ステップ７０２において、デバイスの移動に関係した動き情報が、少なくとも１つの動きセンサから受け取られる。ステップ７０３において、基準ピクセルブロックが第２のフレーム内で選択される。ステップ７０４において、探索エリアが第１のフレーム内で選択される。第１のフレームにおいて、探索エリアは、動き情報を使用して、選択された基準ブロックにより画定された位置から変位される。ステップ７０５において、第２のフレーム内の基準ピクセルブロックを、第１のフレームの探索エリア内のピクセルと比較することによって、フレーム間動きベクトルが求められる。
【００３２】
いくつかの代表的な実施の形態によって、動き補償圧縮アルゴリズムを効率的な方法で実行することが可能になる。具体的には、デバイス移動の結果生じるビデオフレーム間の変化が、動きセンサおよび適切な論理回路を通じて対処されるので、比較的小さな探索エリアを使用してブロック比較を行うことができる。さらに、ビデオデバイスの複雑度を代表的な実施の形態によって削減することができる。
【図面の簡単な説明】
【００３３】
【図１Ａ】動き補償圧縮アルゴリズムに従って符号化されるフレームを示す図である。
【図１Ｂ】動き補償圧縮アルゴリズムに従って符号化されるフレームを示す図である。
【図２Ａ】一代表的な実施の形態による動き補償圧縮アルゴリズムに従って符号化されるフレームを示す図である。
【図２Ｂ】一代表的な実施の形態による動き補償圧縮アルゴリズムに従って符号化されるフレームを示す図である。
【図３】一代表的な実施の形態による、ビデオデータを処理するフローチャートである。
【図４】一代表的な実施の形態によるビデオデバイスを示す図である。
【図５】一代表的な実施の形態による別のビデオデバイスを示す図である。
【図６】一代表的な実施の形態によるフローチャートである。
【図７】一代表的な実施の形態による別のフローチャートである。
【図１Ａ】
2005287031.tif 000004
【図１Ｂ】
2005287031.tif 000005
【図２Ａ】
2005287031.tif 000006
【図２Ｂ】
2005287031.tif 000007
【図３】
2005287031.tif 000008
【図４】
2005287031.tif 000009
【図５】
2005287031.tif 000010
【図６】
2005287031.tif 000011
【図７】
2005287031.tif 000012