(57)【要約】ビデオデータは，第１のフォーマットで受信されてもよい。ビデオデータは，複数のビデオフレームからなり，それぞれのフレームは，複数のブロックを含む。現在のビデオフレームのブロックは，第２のフォーマットに変換されてもよい。現在のビデオフレームのブロックは，別のビデオフレームの対応するブロックと比較されてもよい。現在のビデオフレームのブロックは，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，符号化されてもよい。
2006520552.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータの処理方法であって，
現在のビデオデータのブロックを第１のフォーマットで受信するステップと，
第２のフォーマットで記憶されたデータを用いて，前記現在のビデオデータのブロックを符号化するステップと，
新しいデータを前記第２のフォーマットで記憶するステップと，
符号化された前記ビデオデータを記憶するステップと，
を備えるビデオデータの処理方法。
【請求項２】
記憶されたデータが，以前のフレームに関する情報を含む請求項１に記載のビデオデータの処理方法。
【請求項３】
記憶されたデータが，以前のフレームからの画像データを含む請求項１に記載のビデオデータの処理方法。
【請求項４】
前記第１のフォーマットによる前記現在のビデオデータのブロックが，現在のフレームの一部分である請求項１に記載のビデオデータの処理方法。
【請求項５】
前記第２のフォーマットで記憶されたデータが，以前に符号化されたフレームの一部分である請求項１に記載のビデオデータの処理方法。
【請求項６】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項１に記載のビデオデータの処理方法。
【請求項７】
前記第２のフォーマットが，前記第１のフォーマットと比較して少ない色差情報を備える請求項６に記載のビデオデータの処理方法。
【請求項８】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項５に記載のビデオデータの処理方法。
【請求項９】
前記第１のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項４に記載のビデオデータの処理方法。
【請求項１０】
前記第１のフォーマット及び前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項４に記載のビデオデータの処理方法。
【請求項１１】
ビデオフレームのそれぞれのブロックが，画素が予め定義されたグループを備える請求項１に記載のビデオデータの処理方法。
【請求項１２】
現在のビデオフレームのブロックを符号化するステップが，前記現在のビデオフレームのブロックを圧縮するステップを備える請求項１に記載のビデオデータの処理方法。
【請求項１３】
現在のビデオフレームのブロックを符号化するステップが，前記現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較するステップを備える請求項１に記載のビデオデータの処理方法。
【請求項１４】
前記現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較するステップが，前記第２のフォーマットによる別のビデオフレームの対応するブロックを検索するステップに先行される請求項１３に記載のビデオデータの処理方法。
【請求項１５】
前記新しいデータを前記第２のフォーマットで記憶領域に転送するステップと，
次のビデオフレームの対応するブロックを符号化するために，前記新しいデータを記憶するステップと，
をさらに備える請求項１に記載のビデオデータの処理方法。
【請求項１６】
符号化されたビデオデータを第３のフォーマットでバッファに記憶するステップと，
ブロックの符号化を完了すると同時に，前記バッファに格納されたデータを前記記憶領域に転送するステップと，
をさらに備える請求項１５に記載のビデオデータの処理方法。
【請求項１７】
前記ビデオデータのブロック全部を符号化する前に，前記バッファが一杯になれば，前記ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するステップをさらに備える請求項１６に記載のビデオデータの処理方法。
【請求項１８】
現在のビデオフレームの符号化されたブロックを，無線通信リンクを介して転送するステップをさらに備える請求項１に記載のビデオデータの処理方法。
【請求項１９】
前記第２のフォーマットで記憶されたデータを用いて前記現在のビデオデータのブロックを符号化するステップが，データのブロックを前記第１のフォーマットから前記第２のフォーマットに変換するステップに先行される請求項１に記載のビデオデータの処理方法。
【請求項２０】
前記現在のビデオデータのブロックが，ビデオデータのマイクロブロックラインを備える請求項１に記載のビデオデータの処理方法。
【請求項２１】
通信装置であって，
現在のビデオデータのブロックを第１のフォーマットで受信し，第２のフォーマットで記憶されたデータを用いて現在のビデオデータのブロックを符号化し，新しいデータを第２のフォーマットで記憶し，そして，符号化されたビデオを記憶するように構成されたコントローラと，
符号化されたビデオデータを送信するように構成された送信機と，
を備える通信装置。
【請求項２２】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項２１に記載の通信装置。
【請求項２３】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項２２に記載の通信装置。
【請求項２４】
前記コントローラが，現在のビデオフレームのブロックを圧縮することによって，前記現在のビデオフレームのブロックを符号化する請求項２１に記載の通信装置。
【請求項２５】
ビデオデータを受信するバッファと，
符号化された前記ビデオデータを記憶するための記憶領域と，をさらに備え，
前記コントローラが，さらに，新しいデータを前記第２のフォーマットで前記バッファから前記記憶領域に転送し，そして，前記記憶領域からの前記第２のフォーマットによる新しいデータを用いて，次のビデオフレームの対応するブロックを符号化するように構成された，請求項２１に記載の通信装置。
【請求項２６】
ビデオデータのブロック全部を符号化する前に前記バッファが一杯になれば，前記コントローラが，前記ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するようにさらに構成された請求項２５に記載の通信装置。
【請求項２７】
ビデオデータを処理するためのコンピュータプログラムであって，
その中に含まれたコンピュータ可読プログラムコードを有するコンピュータ可読媒体を備え，コンピュータ可読プログラムコードが，
現在のビデオデータのブロックを第１のフォーマットで受信するように構成されたコンピュータ可読プログラムコードと，
第２のフォーマットで記憶されたデータを用いて前記現在のビデオデータのブロックを符号化するように構成されたコンピュータ可読プログラムコードと，
新しいデータを前記第２のフォーマットで記憶するように構成されたコンピュータ可読プログラムコードと，
符号化された前記ビデオデータを記憶するように構成されたコンピュータ可読プログラムコードと，
を備えるコンピュータプログラム。
【請求項２８】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項２７に記載のコンピュータプログラム。
【請求項２９】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項２８に記載のコンピュータプログラム。
【請求項３０】
現在のビデオフレームのブロックを符号化するためのコンピュータ可読プログラムコードが，前記現在のビデオフレームのブロックを圧縮するためのコンピュータ可読プログラムコードをさらに備える請求項２７に記載のコンピュータプログラム。
【請求項３１】
前記新しいデータを前記第２のフォーマットでバッファから記憶領域に転送するように構成されたコンピュータ可読プログラムコードと，
前記記憶領域に存在する前記第２のフォーマットによる新しいデータを用いて次のビデオフレームの対応するブロックを符号化するように構成されたコンピュータ可読プログラムコードと，
をさらに備える請求項２７に記載のコンピュータプログラム。
【請求項３２】
ビデオデータのブロック全部を符号化する前に前記バッファが一杯になれば，ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するように構成されたコンピュータ可読プログラムコードをさらに備える請求項３１に記載のコンピュータプログラム。
【請求項３３】
ビデオデータを処理するためのビデオデータ処理システムであって，
現在のビデオデータのブロックを第１のフォーマットで受信するための手段と，
第２のフォーマットで記憶されたデータを用いて前記現在のビデオデータのブロックを符号化するための手段と，
新しいデータを前記第２のフォーマットで記憶するための手段と，
符号化された前記ビデオデータを記憶するための手段と，
を備えるビデオデータ処理システム。
【請求項３４】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項３３に記載のビデオデータ処理システム。
【請求項３５】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項３４に記載のビデオデータ処理システム。
【請求項３６】
符号化するための手段が，現在のビデオフレームのブロックを圧縮するための手段をさらに備える請求項３３に記載のビデオデータ処理システム。
【請求項３７】
前記新しいデータを前記第２のフォーマットでバッファから記憶領域に転送するための手段と，
前記記憶領域に存在する前記第２のフォーマットによる前記新しいデータを用いて次のビデオフレームの対応するブロックを符号化するための手段と，
をさらに備える請求項３３に記載のビデオデータ処理システム。
【請求項３８】
ビデオデータのブロック全部を符号化する前に前記バッファが一杯になれば，ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するための手段をさらに備える請求項３３に記載のビデオデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，ビデオデータに関し，より詳細には，ビデオデータを符号化することに関する。
【背景技術】
【０００２】
ビデオデータの符号化／復号化処理，及び送信処理は，比較的に大きなメモリ資源を必要とすることがある。ビデオカメラからのビデオデータは，圧縮され，記憶又は送信のためのメモリをあまり必要としないフォーマットに符号化されることがある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら，システムによっては，単一ビデオフレームを処理するのに必要なメモリは，プロセッサにおいて利用できるメモリを超えることがある。例えば，無線電話機及びその他の小型のハンドヘルド通信装置といった電気通信機器は，動画を録画するためのビデオカメラ装置を含むことがある。しかしながら，これらの及びその他のビデオ装置は，ビデオデータを処理するための限られたメモリ資源を有することがある。
【課題を解決するための手段】
【０００４】
本発明の実施形態は，ビデオデータを処理するための方法，システム，及び／又は，コンピュータプログラムを提供してもよい。ビデオデータは，第１のフォーマットで受信されてもよい。ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含む。ビデオフレームの中の現在のビデオフレームのブロックは，第２のフォーマットに変換されてもよい。現在のビデオフレームのブロックは，別のビデオフレームの対応するブロックと比較されてもよい。現在のビデオフレームのブロックは，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，符号化されてもよい。
【０００５】
本発明のさらなる実施形態においては，現在のビデオフレームのブロックの変換は，現在のビデオフレームの全部を受信する前に実行されてもよい。ビデオフレームのそれぞれのブロックは，画素が予め定義されたグループを含んでもよい。実施形態によっては，第２のフォーマットは，第１のフォーマットよりも低い解像度を有してもよい。例えば，第２のフォーマットは，第１のフォーマットと比較して，少ない色差情報を有してもよい。第２のフォーマットは，インターリーブされた色差データ及び輝度データを含んでもよい。
【０００６】
実施形態によっては，現在のビデオフレームのブロックの符号化には，現在のビデオフレームのブロックを圧縮することを含んでもよい。現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較することは，第２のフォーマットによる別のビデオフレームの対応するブロックを検索することに先行されてもよい。現在のビデオフレームのブロックは，次のビデオフレームの対応するブロックと比較するために，第２のフォーマットで記憶されてもよい。
【０００７】
さらなる実施形態においては，ブロックの一部分の符号化されたビデオデータは，バッファに記憶されてもよく，バッファに格納されたデータは，ブロックの符号化を完了するのと同時に，記憶領域に転送されてもよい。ビデオデータのブロックの一部分は，ビデオデータのブロック全部を符号化する前にバッファが一杯になれば，バッファから記憶領域に転送されてもよい。またさらなる実施形態においては，現在のビデオフレームの符号化されたブロックは，無線通信リンクを介して送信されてもよい。
【０００８】
本発明の開示内容を考慮すれば，この分野に精通する者には明らかなように，本発明は，方法，システム，及び／又は，コンピュータプログラムとして実施されてもよい。
【発明を実施するための最良の形態】
【０００９】
ここで，以下において，本発明の実施形態が示される添付の図面を参照して，本発明をより詳細に説明する。しかしながら，本発明は，ここで説明される実施形態に限定されると解釈されるべきではない。むしろ，これらの実施形態は，この明細書が詳細かつ完全なものとなり，そして，この分野に精通する者に本発明の範囲を最大限に伝達するために提供される。構成要素が別の構成要素に「結合される」又は「接続される」と表現される場合，その構成要素は別の構成要素に直接に結合又は接続されてもよく，或いは介在する構成要素が存在してもよいと理解される。それとは対照的に，構成要素が別の構成要素に「直接に結合される」又は「直接に接続される」と表現される場合，介在する構成要素は存在しない。明細書全体を通して，同一の符号は，同一の構成要素を指示する。
【００１０】
本発明の実施形態による方法及び携帯端末のブロック図及び／又はフローチャートを参照して，本発明を以下に説明する。ブロック図及び／又はフローチャートのそれぞれのブロック，及び，ブロック図及び／又はフローチャートにおけるいくつかのブロックの組み合わせは，無線周波数のアナログ及び／又はディジタルハードウェア，及び／又は，コンピュータプログラムの命令によって実施されてもよいと理解される。これらのコンピュータプログラム命令は，例えば，携帯端末もしくは基地局において，汎用コンピュータ，専用コンピュータ，ディジタル信号プロセッサ，及び／又は，その他のプログラム可能データ処理装置のプロセッサに提供されてもよく，それによって，コンピュータ及び／又はその他のプログラム可能データ処理装置のプロセッサによって実行される命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施するための回路及び／又は手段をもたらす。
【００１１】
また，これらのコンピュータプログラムの命令は，特定の形で動作するように携帯端末に指示することのできるコンピュータ可読メモリに記憶されてもよく，それによって，コンピュータ可読メモリに記憶された命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施する命令を含む製品をもたらす。
【００１２】
また，コンピュータプログラムの命令は，コンピュータ又はその他のプログラム可能なデータ処理装置上にロードされ，コンピュータ又はその他のプログラム可能なデータ処理装置上において一連の動作ステップを実行し，コンピュータ実行プロセスをもたらしてもよく，その結果として，コンピュータ又はその他のプログラム可能データ処理装置上で実行される命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施するためのステップを提供する。また，別の実施形態においては，ブロックに記述された機能／動作は，フローチャートに記述される順序と異なる順序で発生してもよいことに注意されたい。例えば，連続して示される２つのブロックは，実際には，実質的に同時に実行されてもよく，或いは含まれる機能／動作に依存して，それらのブロックは，場合によっては，逆の順序で実行されてもよい。
【００１３】
ここで，図面を参照して，本発明の様々な実施形態を説明する。図１は，本発明の実施形態によるビデオデータを送信及び符号化するのに適した通信システム３０の例としての実施形態を示す。通信システム３０は，基地局２２を経由して１つ以上の携帯通信中継局（ＭＴＳＯ）２４を介して通信する無線電話機又はその他の携帯ハンドヘルド装置のような通信装置１２を含んでもよい。ＭＴＳＯ２４は，公衆交換電話網（ＰＴＳＮ）２０との通信を提供してもよい。
【００１４】
携帯端末のような通信装置１００の概略ブロック図が，図２に示される。通信装置１００は，トランシーバ１２５，及び，プロセッサ１４０と通信するメモリ１３０を含んでもよい。また，図２に示されるように，通信装置１００は，１つ以上のキーボード／キーパッド１０５，表示装置１１０，スピーカー１１５，及び／又は，マイク１２０を含んでもよい。また，通信装置１００は，ビデオデータをプロセッサ１４０及び／又はメモリ１３０に送信するカメラ１６０を含んでもよい。カメラ１６０は，通信装置１００の一部として提供されてもよく，或いは通信装置１００に結合された別の装置であってもよい。
【００１５】
通信装置１００は，ビデオデータを処理するために，以下に説明される動作を実行することができる。例えば，実施形態によっては，プロセッサ１４０は，データを第１のフォーマットから第２のフォーマットに変換するために，メモリ１３０からのビデオデータを処理してもよい。メモリ１３０は，第１のフォーマットによるビデオデータを含んでもよい。また，プロセッサ１４０は，ビデオデータを圧縮してもよい。例えば，ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，ビデオデータの複数のブロックを含む。プロセッサ１４０は，第１のフォーマットによるビデオデータをメモリ１３０から受信してもよい。プロセッサ１４０は，現在のビデオフレーム内に存在するビデオデータのブロックを第２のフォーマットに変換してもよい。そして，プロセッサ１４０は，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較してもよい。プロセッサ１４０は，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較したことに応じて，現在のビデオフレームのブロックを符号化してもよい。別のビデオフレームは，以前のビデオフレームであってもよい。
【００１６】
したがって，プロセッサ１４０は，ビデオデータをブロック単位で処理することができ，それぞれのブロックは，プロセッサ１４０内のメモリによって処理できるほど十分に小さい。実施形態によっては，すべての又はいくつかのビデオデータは，メモリ１３０に記憶され，共通バスを介してのダイレクトメモリアクセス（ＤＭＡ）によって，プロセッサ１４０によってアクセスされてもよい。ビデオデータは，外部メモリに記憶されてもよく，或いはプロセッサと同じデバイス上に存在する内部メモリに記憶されてもよい。ＤＭＡコントローラが，データフローを制御してもよく，それによって，必要とされるデータが，所定の間隔で，プロセッサへ及びプロセッサから送信されてもよい。
【００１７】
ビデオフレームは，ここでは，「現在の」ビデオフレーム，「以前の」ビデオフレーム，及び，「次の」ビデオフレームを意味する。「現在の」，「以前の」，及び，「以前の」は，フレームが符号化されるときのフレームの関係を意味し，必ずしも，メモリに記憶されたフレームの実際の時間情報又は実際の順序を意味するとは限らないことを理解すべきである。以前のフレームは，ビデオデータのフレームの順序において現在のフレームに先立つ１つのフレームであってもよいが，ビデオデータは，適切であればどのような順序で処理されてもよい。例えば，「以前の」ビデオフレームは，ビデオカメラによってフレームが記録された時間順序において現在のフレームに先立つ１つのフレーム又は複数のフレームであってもよい。
【００１８】
図２を参照すると，トランシーバ１２５は，送信機１５０及び受信機１４５を含んでもよく，送信機１５０及び受信機１４５は，それぞれ，アンテナ１６５を介して，出力無線周波数信号を基地局又は無線端末へ送信し，かつ，入力無線周波数信号を基地局又は無線端末から受信する。実施形態によっては，無線周波数信号は，符号化されたビデオデータを送信するのに使用されてもよい。図２では，アンテナ１６５は１つだけ示されるが，受信される信号の種類に基づいて，複数のアンテナ及び／又は様々な種類のアンテナが使用されてもよいことを理解すべきである。通信装置１００と基地局／携帯端末との間で送信される無線周波数信号は，トラフィック及び制御信号の両方（例えば，呼び出し信号／着信メッセージ）を備えてもよく，それらは，他の当事者又は相手先との通信を確立及び維持するのに使用され，アップリンク通信及び／又はダウンリンク通信を提供してもよく，ビデオデータの送信を含む。しかしながら，本発明は，そのような双方向通信システム又はネットワーク環境に限定されない。
【００１９】
ここで説明される通信システムのいくつかの構成要素は，一般的な携帯端末に含められてもよく，それらの機能のいくつかの側面は，一般的に，この分野に精通する者に知られている。さらに，ここで使用される場合，「携帯端末」という用語は，限定はしないが，マルチライン表示装置を備えるか又は備えない携帯電話，データ処理機能，ファクシミリ機能，及び，データ通信機能を携帯電話と組み合わせてもよいパーソナル移動通信システム（ＰＣＳ）端末，無線電話機，ページャー，インターネット／イントラネットアクセス，Ｗｅｂブラウザ，システム手帳，カレンダー，及び／又は，衛星利用測位システム（ＧＰＳ）受信機を含んでもよいパーソナル携帯情報端末（ＰＤＡ），及び／又は，一般的なラップトップ受信機及び／又はパームトップ受信機又は無線電話トランシーバを含むその他の家電製品を含んでもよいことを理解すべきである。また，携帯端末は，「広く普及したコンピュータ」装置を意味してもよい。
【００２０】
本発明は，通信装置１００のような通信装置又は通信システムとして実施されてもよいが，本発明は，そのような装置及び／又はシステムに限定されない。それどころか，本発明は，スタンドアロン装置を含めて，どのような，方法，送信機，通信装置，通信システム，又は，符号化されたビデオデータを使用するコンピュータプログラムとして実施されてもよい。
【００２１】
図３は，システム，方法，及び，コンピュータプログラムを説明する本発明による実施形態のブロック図である。図３に示される実施形態は，通信装置又はスタンドアロン装置として実施されてもよい。プロセッサモジュール２３８は，アドレス／データバス２４８を介して，メモリ２３６と通信する。プロセッサモジュール２３８は，例えば，ディジタル信号プロセッサを含む市販の又は特注のどのようなマイクロプロセッサを含んでもよい。また，プロセッサモジュール２３８は，限られた量のメモリを含んでもよい。メモリは，頻繁に使用されるプログラムコード又はデータを記憶するのに使用されてもよく，及び／又は，それは，ビデオ画像又はビデオ画像の一部分の一時的な記憶装置として使用されてもよい。メモリ２３６は，装置の機能を実施するのに使用されるソフトウェア及びデータを含むメモリ装置の階層全体を代表するものである。メモリ２３６は，限定はしないが，１つ以上のデバイス，すなわち，キャッシュ，ＲＯＭ，ＰＲＯＭ，ＥＰＲＯＭ，ＥＥＰＲＯＭ，フラッシュメモリ，ＳＲＡＭ，及び，ＤＲＡＭを含んでもよい。
【００２２】
図３に示されるように，メモリ２３６は，使用されるいくつかの種類のソフトウェア及び／又はデータ，すなわち，オペレーティングシステム２５２，アプリケーションプログラム２５４，入力／出力（Ｉ／Ｏ）装置ドライバ２５８，及び，データ２５６を含んでもよい。この分野に精通する者には明らかなように，オペレーティングシステム２５２は，携帯端末とともに使用するのに適切なものであれば，どのようなオペレーティングシステムであってもよく，例えば，カリフォルニア州アラメダのＷｉｎｄ  Ｒｉｖｅｒ社のＶｘＷｏｒｋｓ又はｐＳＯＳｙｓｔｅｍ，スウェーデンのストックホルムのＥｎｅａ  Ｄａｔａ社のＯＳＥ  Ｄｅｌｔａ，ＯＳＥｃｋ，又は，ＯＳＥ  Ｅｐｓｉｌｏｎ，ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）ＣＥ，Ｗｉｎｄｏｗｓ（登録商標）９５，Ｗｉｎｄｏｗｓ（登録商標）９８，Ｗｉｎｄｏｗｓ（登録商標）２０００，Ｗｉｎｄｏｗｓ（登録商標）ＮＴ，Ｗｉｎｄｏｗｓ（登録商標）ＸＰ，又はＵｎｉｘ（登録商標），Ｌｉｎｕｘ，Ｐａｌｍ  ＯＳといった独自仕様のオペレーティングシステム，及び／又は，特別に開発したオペレーティングシステムのようなものがある。オペレーティングシステムは，ＩＰベースの又はその他のネットワーク通信プロトコルコネクションをサポートするように構成されてもよい。Ｉ／Ｏ装置ドライバ２５８は，トランシーバ１２５（図２）及びメモリ２３６のいくつかのコンポーネントのような装置と通信するために，アプリケーションプログラム２５４によってオペレーティングシステム２５２を介してアクセスされるソフトウェアルーチンを含んでもよい。アプリケーションプログラム２５４は，様々な特徴を実行するプログラムの例として示されるものであり，本発明の実施形態による動作をサポートする少なくとも１つのアプリケーションを含んでもよい。データ２５６は，アプリケーションプログラム２５４，オペレーティングシステム２５２，Ｉ／Ｏ装置ドライバ２５８，及び，メモリ２３６に存在してもよいその他のソフトウェアプログラムによって使用される静的及び／又は動的なデータを表現する。
【００２３】
図３からさらにわかるように，アプリケーションプログラム２５４は，ビデオデータ符号化モジュール２６０を含んでもよい。ビデオデータ符号化モジュール２６０は，ビデオデータを処理するためのここで説明される動作を実行してもよい。図３に示されるように，メモリ２３６のデータ部分２５６は，ここで説明されるビデオ情報を記憶するビデオデータ２６２を含んでもよい。実施形態によっては，ビデオデータ符号化モジュール２６０は，プロセッサモジュール２３８の内部メモリの一部であってもよい。
【００２４】
例えば，ビデオデータ２６２は，メモリ２３６から送信され，そして，ビデオデータ符号化モジュール２６０によって受信されてもよい。ビデオデータ符号化モジュール２６０は，第１のフォーマットでビデオデータを受信してもよく，ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含んでいても良い。ビデオデータ符号化モジュール２６０は，ビデオフレームの中の現在のビデオフレームのブロックを第２のフォーマットに変換してもよく，そして，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較してもよい。ビデオデータ符号化モジュール２６０は，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，現在のビデオフレームのブロックを符号化してもよい。別のフレームは，以前のビデオフレームであってもよい。
【００２５】
ここでは図２においてアプリケーションプログラムであるビデオデータ符号化モジュール２６０を参照して，本発明を説明するが，この分野に精通する者には明らかなように，その他の構成が，使用され，それによって，本発明の教示から同様の利益を得てもよい。例えば，ビデオデータ符号化モジュール２６０は，プロセッサモジュール２３８，オペレーティングシステム２５２，Ｉ／Ｏ装置ドライバ２５８，又は，その他のそのような論理的な部分の中に組み込まれてもよい。したがって，本発明は，図３の構成に限定されると解釈されるべきではなく，ここで説明される動作を実行することのできるあらゆる構成を包含しようとするものである。さらに，プロセッサモジュール２３８を含む集積回路が，メモリ２３６のメモリ構成要素を含んでもよく，及び／又は，メモリ２３６を含む１つか又は複数の集積回路が，プロセッサモジュール２３８の機能を実行してもよい。
【００２６】
ビデオデータ符号化モジュール２６０は，ＭＰＥＧ−１，ＭＰＥＧ−２，ＭＰＥＧ−４，Ｈ．２６１，Ｈ．２６３，Ｎ．２６４，及び／又は，何らかのその他の独自仕様又は特別に開発したビデオ符号化規格に基づいてビデオデータを符号化するためのアルゴリズムを含んでもよい。また，ビデオデータ符号化モジュール２６０は，ビデオデータを復号化するためのアルゴリズムを含んでもよい。ＭＰＥＧ−４規格及びＨ．２６３規格のようなビデオ符号器は，ＹＣｂＣｒ  ４：２：０フォーマットで動作してもよい。このフォーマットにおいては，輝度成分（Ｙ）は，最大解像度で記憶され，色差成分（Ｃｂ（青色差）及びＣｒ（赤色差））は，水平方向及び垂直方向の両方における２つの係数によってサブサンプリングされる。図８に示されるように，ＹＣｂＣｒ  ４：２：０フォーマットは，すべての輝度画素のための１つの連続するメモリブロック及び２つの色差成分Ｃｂ及びＣｒのための２つの別個のメモリブロックとして記憶されてもよい。しかしながら，その代わりに，色差データ及び輝度データが１つの連続するメモリブロックに記憶されるインターリーブＹＣｂＣｒ  ４：２：０フォーマットが，使用されてもよい。インターリーブＹＣｂＣｒ  ４：２：０フォーマットの例が，図９に示される。それとは対照的に，ビデオカメラは，図１０に示されるように，ビデオデータをバイトインターリーブＹＣｂＣｒ  ４：２：２フォーマットで供給してもよい。ＹＣｂＣｒ  ４：２：２フォーマットは，色差成分Ｃｂ及びＣｒが垂直方向においてサブサンプリングされないので，ＹＣｂＣｒ  ４：２：０フォーマットと比較して２倍の量の色差データを有する。
【００２７】
図３に示されるように，データ２５６は，複数のビデオフレームからなるビデオデータ２６２を含んでもよく，それぞれのフレームは，複数のブロックのデータを含んでいてもよい。データの「ブロック」とは，画素が予め定義されたグループである。ビデオデータのブロックの１つの具体的な例は，マクロブロックである。例えば，それぞれのフレームは，１７６列及び１４４行の画素（１７６×１４４画素）を含んでもよい。データのブロックは，８×８画素であってもよく，マクロブロックは，輝度データの４つの８×８ブロックを含んでもよく，さらに，青色差（Ｃｂ）の１つ以上の８×８ブロック及び赤色差（Ｃｒ）の１つ以上の８×８ブロックを含んでもよい。いくつかのマクロブロックは，「マクロブロックライン」にグループ化されてもよい。１７６×１４４画素のフレームサイズは，例えば，９つのマクロブロックラインに分割されてもよく，それぞれのマクロブロックラインは，マクロブロックの１つの行を含む。しかしながら，様々なサイズのフレーム及び／又はブロックが使用されてもよい。本発明で使用される場合，ビデオデータの「ブロック」は，ブロック，マクロブロック，マクロブロックライン，又は，何らかの適切な画素グループであってもよい。
【００２８】
ＹＣｂＣｒ  ４：２：２フォーマットにおいては，データの１つのマクロブロックは，４つの輝度成分（Ｙ），２つの赤色差成分（Ｃｒ），及び，２つの青色差成分（Ｃｂ）を含んでもよい。ＹＣｂＣｒ  ４：４：０フォーマットにおいては，ビデオデータの１つのマクロブロックは，４つの輝度成分（Ｙ），１つの赤色差成分（Ｃｒ），及び，１つの青色差成分（Ｃｂ）を含んでもよい。
【００２９】
図４は，本発明の特定の実施形態によるビデオ処理システム４００のブロック図である。図４からわかるように，一般的にディジタルカメラ４５０は，ビデオデータを第１のフォーマットでメモリ４１０内のメモリブロック４１２に送信する。メモリ４１０は，プロセッサ４４０と通信し，そのプロセッサ４４０は，ビデオ符号器４２２を用いて，ビデオデータを符号化し，再構成された第２のフォーマットによるビデオデータを生成する。再構成されたビデオデータは，メモリ４１０内のメモリブロック４１６に送信される。ビデオ符号器４２２は，変換されたビデオデータを符号化及び圧縮するために，別のビデオフレームからの再構成ビデオデータを使用する。
【００３０】
より詳細には，カメラ４５０は，現在のフレームからデータのただ１つのブロック（すなわち，ｉ番目のマクロブロックライン）をメモリブロック４１２から第１のフォーマットでプロセッサ４４０の入力バッファ４２０に送信する。実施形態によっては，第１のフォーマットは，ＹＣｂＣｒ  ４：２：２フォーマットであってもよい。第２のフォーマットによる再構成ビデオデータの対応するブロックが，メモリブロック４１６から入力バッファ４３４に送信される。入力バッファ４３４内の再構成ビデオデータは，以前のフレームからの再構成データ（以前のｉ番目のマクロブロックライン（ブロック４２８））であってもよく，また，同じ以前のフレームからの隣接するブロック（以前の１−ｉ番目のマクロブロックライン（ブロック４２６），以前のｉ＋１番目のマクロブロックライン（ブロック４３０））を含んでもよい。実施形態によっては，入力バッファ４３４内の再構成ビデオデータは，第３のフォーマットで記憶されてもよい。実施形態によっては，ビデオデータのエッジ画素が，この分野に精通する者に知られている技術に基づいて，フレームにパディングされてもよい。「パディング」は，領域内のデータを領域外の画素に補填することによって提供されてもよく，より良好な動き予測を提供するのに使用されてもよい。
【００３１】
ビデオ符号器４２２は，入力バッファ４２０からのデータのマクロブロックを第２のフォーマットに変換する。実施形態によっては，ビデオ符号器４２２とは別のビデオ符号器が，入力バッファ４２０からのデータのマクロブロックを第２のフォーマットに変換するために提供されてもよい。第２のフォーマットは，図９に示されるＹＣｂＣｒ  ４：２：０フォーマットのようなインターリーブされたＹＣｂＣｒ  ４：２：０フォーマットであってもよい。インターリーブされたフォーマットは，ビデオデータをブロック単位で処理するのを容易にするかもしれない。なぜなら，色差データ及び輝度データは，図８に示されるインターリーブされていないＹＣｂＣｒ  ４：２：０フォーマットの場合のように別個のメモリブロックに記憶されるのではなく，メモリ４１０内にインターリーブされるからである。したがって，メモリ４１０とプロセッサ４４０との間でインターリーブされたデータを転送するのに，色差データ及び輝度データがインターリーブされていない場合に必要とされるよりも少ないメモリ読み込み動作しか必要とされないかもしれない。しかしながら，適切なものであればどのようなビデオデータのフォーマットでも，第１及び第２のフォーマットとして使用されてもよい。
【００３２】
実施形態によっては，第２のフォーマットは，第１のフォーマットよりも低い解像度を有してもよい。例えば，第２のフォーマットは，第１のフォーマットと比較すれば，少ない色差情報を有してもよい。現在のフレームからのビデオデータの第２のフォーマットによる再構成ブロックは，再構成ビデオブロックバッファ４３２から以前のフレームのメモリブロック４１６に転送され，次のビデオフレームを符号化する際に使用される。
【００３３】
ビデオ符号器４２２は，変換されたビデオデータを符号化する。ビデオ符号器４２２は，現在のフレームからのビデオブロック及び入力バッファ４３４内の以前のフレームの再構成ブロックを使用する。現在のフレームからのデータのブロックの符号化は，現在のビデオフレームのブロックを対応するビデオフレームと比較し，その比較に応じて，現在のビデオフレームのブロックを符号化することを含んでもよい。実施形態によっては，ビデオデータを圧縮するために，以前のフレームからのブロックと現在のフレームからのブロックとの差分だけが，符号化されてもよい。符号化技術の例は，例えば，２００２年９月１９日に出願され２００３年８月１４日に公開された発明の名称が“Ｍｅｔｈｏｄ  ａｎｄ  Ｄｅｖｉｃｅ  ｆｏｒ  Ｂｌｏｃｋ−Ｂａｓｅｄ  Ｃｏｎｄｉｔｉｏｎａｌ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ”である同時係属出願の米国特許出願公開第２００３／０１５２１４９号から知ることができ，その開示は，その全体がここに参照として本明細書に組み込まれる。
【００３４】
符号化されたビデオデータの一部分の圧縮されたビットストリームは，バッファ４２４に記憶され，メモリ４１０の外部ビットストリームバッファ４２４に転送されてもよい。実施形態によっては，現在のビデオフレームのブロックを第１のフォーマットから第２のフォーマットへの変換は，第１のフォーマットによる現在のビデオフレームの全部を受信する前に実行されてもよい。したがって，ビデオデータは，連続的に変換されてもよく，圧縮されたビットストリームによって使用されるメモリを減少させることができる。
【００３５】
さらに，ビデオデータのブロックは，ビットストリームバッファの記憶内容を「消去」するために，ビデオデータのブロックの符号化の完了と同時に，圧縮ビットストリームバッファ４２４から外部ビットストリームバッファ４１４に転送されてもよい。ビットストリームバッファの記憶内容を消去することは，プロセッサ４４０に必要とされるメモリを減少させることができる。実施形態によっては，データのブロック全部を符号化する前に，圧縮ビットストリームバッファ４２４が一杯になれば，ビデオデータのブロック全部を符号化する前に，ビデオデータのブロックの符号化された部分が，バッファ４２４から，外部ビットストリームバッファ４１４のような記憶領域に転送されてもよい。データのブロック全部の符号化前のデータ転送は，「イントラフレーム」，例えば，予測されないフレーム又は以前のフレームに関係のないフレームの符号化中に，より頻繁に発生してもよい。イントラフレームは，大量の符号化されたビデオデータを生成するかもしれない。平均フレームレートを維持するために，次のフレームは，イントラフレームの後に，レート制御機構によってスキップされてもよい。
【００３６】
本発明は，例えば，プロセッサ４４０の一部であるビデオ符号器４２２及びメモリ４１０の内部の，様々なメモリブロックを参照して説明されたが，この分野に精通する者には明らかなように，その他の構成が使用され，それによって，本発明の内容から同様の利益を得てもよい。例えば，メモリ４１０は，プロセッサ４４０の中に組み込まれてもよく，及び／又は，メモリ４１０及びプロセッサ４４０のその他の論理的な区画が，製作されてもよい。Ｓビデオコンバータ（図示しない）が提供され，ビデオを様々なフォーマットに変換してもよい。したがって，本発明は，図４の構成に限定されると解釈されるべきではなく，ここで説明される動作を実行することのできるあらゆる構成を包含しようとするものである。また，プロセッサ４４０を含む集積回路は，メモリ４１０のメモリ構成要素を含んでもよく，及び／又は，メモリ４１０を含む１つもしくは複数の集積回路は，プロセッサ４４０の機能を実行してもよい。
【００３７】
ここで，図５から図７を参照して，本発明の実施形態による動作を説明する。図５を参照すると，動作ブロック５００における現在のフレームからのビデオデータのブロックごとに，動作ブロック５１０において，ビデオデータが，符号器によって第１のフォーマットで受信される。動作ブロック５４０において，符号器は，ブロックを符号化する。符号器は，ビデオデータのブロックを第２のフォーマットに変換することによって，ブロックを符号化してもよい。第２のフォーマットによるビデオデータのブロックは，以前のフレームからのビデオデータの対応するブロック（同様に，第２のフォーマットによるビデオデータのブロック）と比較されてもよい。ビデオデータのブロックは，ビデオデータのブロックと以前のフレームのビデオデータの対応するブロックとの比較に基づいて符号化されてもよい。そして，動作ブロック５５０において，符号器は，ビデオデータの次のブロックに対して同じステップを実行する。
【００３８】
本発明の実施形態によるより詳細な動作が，図６に示される。動作ブロック６００に示したように，ビデオデータのブロックごとに処理が行われ，動作ブロック６１０において，現在のビデオデータブロックが，第１のフォーマットで受信される。動作ブロック６２０において，第２のフォーマットによる以前のビデオフレームの対応するブロックが検索される。動作ブロック６５０において，ビデオデータの現在のブロックが符号化される。例えば，ビデオデータの現在のブロックは，第２のフォーマットに変換されてもよい。第２のフォーマットは，第１のフォーマットと比較して，低い解像度，例えば少ない色差情報を有してもよい。例えば，上述したように，第１のフォーマットは，ＹＣｒＣｂ  ４：２：２フォーマットであってもよく，第２のフォーマットは，インターリーブされたＹＣｒＣｂ  ４：２：０フォーマットであってもよい。
【００３９】
第２のフォーマットによるビデオデータの現在のブロックは，以前のフレームの対応するブロック（第２のフォーマットによるブロック）と比較されてもよい。上述したように，以前のフレーム内に存在するビデオデータのブロックに隣接するビデオデータが，動作ブロック６５０における符号化ステップにおいて使用されてもよく，パディングデータを含む。パディングデータとは，例えば，領域内のデータから領域外の画素へ補填されたデータのことである。
【００４０】
動作ブロック６５０において，現在のブロックを以前のフレームの対応するブロックと比較したことに基づいて，現在のフレームからのデータのブロックが符号化され，バッファに転送される。動作ブロック６６０において，符号化の完了の前にバッファが一杯になれば，動作ブロック６７０において，ブロックの符号化された部分は，別の記憶領域に転送される。動作ブロック６８０において，現在のブロックの符号化が完了していなければ，動作ブロック６５０において，符号器は現在のブロックの符号化を続行する。動作ブロック６８０において，現在のフレームのブロックの符号化が完了していれば，動作ブロック６９０において，符号化されたブロックは，別のメモリブロックに記憶される。動作ブロック６９５において，符号器は，ビデオデータの次のブロックに対して上述した動作を反復してもよい。このように，ビデオデータの複数のフレームの複数のビデオデータブロックを比較的に小さい部分において処理することができ，ビデオデータを符号化するのに必要とされるメモリを減少させることができる。
【００４１】
図７に，符号化されたビデオデータを無線通信リンクを介して送信する動作を示す。動作ブロック７００に示したように，現在のフレームからのビデオデータのブロックごとに動作が行われ，動作ブロック７１０において，ビデオデータが，符号器によって受信される。動作ブロック７４０において，符号器は，ビデオデータのブロックを符号化する。例えば，符号器はビデオデータのブロックを第２のフォーマットに変換してもよい。ブロックは，以前のフレームからの対応するブロックと比較されてもよい。ブロックは，動作ブロック７４０において，現在のフレームのビデオデータのブロックと以前のフレームのビデオデータの対応するブロックとの比較に基づいて符号化される。動作ブロック７５０において，上述した動作が，複数のビデオフレーム内に存在するビデオデータの複数のブロックに対して反復される。ビデオデータが，符号化されれば，及び／又は，圧縮されれば，動作ブロック７６０において，ビデオデータは無線通信リンクを介して送信される。
【００４２】
本発明の実施形態によれば，ビデオデータを処理するための方法，システム，及び／又は，コンピュータプログラムが提供される。ビデオデータは，第１のフォーマットで受信されてもよい。ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含む。ビデオフレームの中の現在のビデオフレームのブロックは，第２のフォーマットに変換されてもよい。現在のビデオフレームのブロックは，別のビデオフレームの対応するブロックと比較されてもよい。現在のビデオフレームのブロックは，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，符号化されてもよい。
【００４３】
無線通信媒体装置を参照して，本発明を説明したが，本発明の実施形態は，同様に有線通信媒体において，或いはスタンドアロンビデオ装置において使用されてもよい。さらに，ビデオデータを送信する代わりに，符号化され，及び／又は圧縮されたビデオデータは，後で視聴するために記憶されてもよい。実施形態によっては，記憶されたビデオデータは符号化されてもよく，及び／又は圧縮されてもよい。
【００４４】
図面及び明細書において，本発明の実施形態が開示され，特定の用語が使用されたが，それらの用語はただ単に一般的及び説明的な意味で使用されたにすぎず，また本発明を限定しようとするものではなく，本発明の範囲は特許請求の範囲に記載される。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施形態による通信システムのブロック図である。
【図２】本発明の実施形態による携帯端末及び／又は基地局のブロック図である。
【図３】本発明の実施形態によるプロセッサ及びメモリのブロック図である。
【図４】本発明の実施形態によるシステムのブロック図である。
【図５】本発明の実施形態による動作を説明するフローチャートである。
【図６】本発明の実施形態による動作を説明するフローチャートである。
【図７】本発明の実施形態による動作を説明するフローチャートである。
【図８】本発明の実施形態による非インターリーブＹＣｂＣｒ  ４：２：０フォーマットビデオデータを示す図である。
【図９】本発明の実施形態によるインターリーブＹＣｂＣｒ  ４：２：０フォーマットビデオデータを示す図である。
【図１０】本発明の実施形態によるインターリーブＹＣｂＣｒ  ４：２：２フォーマットビデオデータを示す図である。
【図１】
2006520552.tif 000003
【図２】
2006520552.tif 000004
【図３】
2006520552.tif 000005
【図４】
2006520552.tif 000006
【図５】
2006520552.tif 000007
【図６】
2006520552.tif 000008
【図７】
2006520552.tif 000009
【図８】
2006520552.tif 000010
【図９】
2006520552.tif 000011
【図１０】
2006520552.tif 000012
【手続補正書】
【提出日】平成16年11月24日(2004.11.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータの処理方法であって，
現在のビデオデータのブロックを第１のフォーマットで受信するステップと，
第２のフォーマットで記憶されたデータを用いて，前記現在のビデオデータのブロックを符号化するステップと，
次のビデオフレームの対応するブロックを符号化するために，新しいデータを前記第２のフォーマットで記憶するステップと，
符号化されたビデオデータを第３のフォーマットでバッファに記憶するステップと，
前記新しいデータを前記第２のフォーマットで記憶領域に転送するステップと，
ブロックの符号化を完了するのと同時に，前記バッファに格納されたデータを前記記憶領域に転送するステップと，
を備えるビデオデータの処理方法。
【請求項２】
記憶されたデータが，以前のフレームに関する情報を含む請求項１に記載のビデオデータの処理方法。
【請求項３】
記憶されたデータが，以前のフレームからの画像データを含む請求項１に記載のビデオデータの処理方法。
【請求項４】
前記第１のフォーマットによる前記現在のビデオデータのブロックが，現在のフレームの一部分である請求項１に記載のビデオデータの処理方法。
【請求項５】
前記第２のフォーマットで記憶されたデータが，以前に符号化されたフレームの一部分である請求項１に記載のビデオデータの処理方法。
【請求項６】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項１に記載のビデオデータの処理方法。
【請求項７】
前記第２のフォーマットが，前記第１のフォーマットと比較して少ない色差情報を備える請求項６に記載のビデオデータの処理方法。
【請求項８】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項５に記載のビデオデータの処理方法。
【請求項９】
前記第１のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項４に記載のビデオデータの処理方法。
【請求項１０】
前記第１のフォーマット及び前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項４に記載のビデオデータの処理方法。
【請求項１１】
ビデオフレームのそれぞれのブロックが，画素が予め定義されたグループを備える請求項１に記載のビデオデータの処理方法。
【請求項１２】
現在のビデオフレームのブロックを符号化するステップが，前記現在のビデオフレームのブロックを圧縮するステップを備える請求項１に記載のビデオデータの処理方法。
【請求項１３】
現在のビデオフレームのブロックを符号化するステップが，前記現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較するステップを備える請求項１に記載のビデオデータの処理方法。
【請求項１４】
前記現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較するステップが，前記第２のフォーマットによる別のビデオフレームの対応するブロックを検索するステップに先行される請求項１３に記載のビデオデータの処理方法。
【請求項１５】
ビデオデータのブロック全部を符号化する前に，バッファが満杯になれば，ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するステップをさらに備える請求項１に記載のビデオデータの処理方法。
【請求項１６】
現在のビデオフレームの符号化されたブロックを，無線通信リンクを介して転送するステップをさらに備える請求項１に記載のビデオデータの処理方法。
【請求項１７】
前記第２のフォーマットで記憶されたデータを用いて現在のビデオデータのブロックを符号化するステップが，データのブロックを前記第１のフォーマットから前記第２のフォーマットに変換するステップに先行される請求項１に記載のビデオデータの処理方法。
【請求項１８】
現在のビデオデータのブロックが，ビデオデータのマイクロブロックラインを備える請求項１に記載のビデオデータの処理方法。
【請求項１９】
前記第１のフォーマットが，前記第２のフォーマットと同一である請求項１に記載のビデオデータの処理方法。
【請求項２０】
通信装置であって，
ビデオデータを受信するバッファと，
符号化されたビデオデータを記憶するための記憶領域と，
現在のビデオデータのブロックを第１のフォーマットで受信し，第２のフォーマットで記憶されたデータを用いて，前記現在のビデオデータのブロックを符号化し，次のビデオフレームの対応するブロックを符号化するために，新しいデータを前記第２のフォーマットで記憶し，符号化されたビデオデータを第３のフォーマットで前記バッファに記憶し，新しいデータを前記第２のフォーマットで前記記憶領域に転送し，そして，ブロックの符号化を完了すると同時に，前記バッファに格納されたデータを前記記憶領域に転送するように構成されたコントローラと，
符号化されたデータを送信するように構成された送信機と，
を備える通信装置。
【請求項２１】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項２０に記載の通信装置。
【請求項２２】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項２１に記載の通信装置。
【請求項２３】
前記コントローラが，現在のビデオフレームのブロックを圧縮することによって，前記現在のビデオフレームのブロックを符号化する請求項２２に記載の通信装置。
【請求項２４】
前記コントローラが，さらに，前記記憶領域からの前記第２のフォーマットによる前記新しいデータを用いて，次のビデオフレームの対応するブロックを符号化するように構成された請求項２０に記載の通信装置。
【請求項２５】
ビデオデータのブロック全部を符号化する前にバッファが満杯になれば，前記コントローラがビデオデータのブロックの一部分をバッファから記憶場所に転送するようにさらに構成された請求項２４に記載の通信装置。
【請求項２６】
前記第１のフォーマットが，前記第２のフォーマットと同一である請求項２５に記載の通信装置。
【請求項２７】
ビデオデータを処理するためのコンピュータプログラムであって，
その中に含まれたコンピュータ可読プログラムコードを有するコンピュータ可読媒体を備え，コンピュータ可読プログラムコードが，
現在のビデオデータのブロックを第１のフォーマットで受信するように構成されたコンピュータ可読プログラムコードと，
第２のフォーマットで記憶されたデータを用いて前記現在のビデオデータのブロックを符号化するように構成されたコンピュータ可読プログラムコードと，
次のビデオフレームの対応するブロックを符号化するために，新しいデータを前記第２のフォーマットで記憶するように構成されたコンピュータ可読プログラムコードと，
符号化されたビデオデータを第３のフォーマットでバッファに記憶するように構成されたコンピュータ可読プログラムコードと，
前記新しいデータを前記第２のフォーマットで記憶領域に転送するように構成されたコンピュータ可読プログラムコードと，
ブロックの符号化が完了すると同時に，前記バッファに格納されたデータを前記記憶領域に転送するように構成されたコンピュータ可読プログラムコードと，
を備えるコンピュータプログラム。
【請求項２８】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項２７に記載のコンピュータプログラム。
【請求項２９】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項２８に記載のコンピュータプログラム。
【請求項３０】
現在のビデオフレームのブロックを符号化するためのコンピュータ可読プログラムコードが，前記現在のビデオフレームのブロックを圧縮するためのコンピュータ可読プログラムコードをさらに備える請求項２７に記載のコンピュータプログラム。
【請求項３１】
前記記憶領域に存在する前記第２のフォーマットによる前記新しいデータを用いて，次のビデオフレームの対応するブロックを符号化するように構成されたコンピュータ可読プログラムコードをさらに備える請求項２７に記載のコンピュータプログラム。
【請求項３２】
ビデオデータのブロック全部を符号化する前に前記バッファが満杯になれば，ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するように構成されたコンピュータ可読プログラムコードをさらに備える請求項３１に記載のコンピュータプログラムト。
【請求項３３】
前記第１のフォーマットが，前記第２のフォーマットと同一である請求項３２に記載のコンピュータプログラム。
【請求項３４】
ビデオデータを処理するためのビデオデータ処理システムであって，
現在のビデオデータのブロックを第１のフォーマットで受信するための手段と，
第２のフォーマットで記憶されたデータを用いて前記現在のビデオデータのブロックを符号化するための手段と，
次のビデオフレームの対応するブロックを符号化するために，新しいデータを前記第２のフォーマットで記憶するための手段と，
符号化されたビデオデータを第３のフォーマットでバッファに記憶するための手段と，
前記新しいデータを前記第２のフォーマットで記憶領域に転送するための手段と，
ブロックの符号化が完了すると同時に，前記バッファに格納されたデータを前記記憶領域に転送するための手段と，
を備えるビデオデータ処理システム。
【請求項３５】
前記第２のフォーマットが，前記第１のフォーマットよりも低い解像度を有する請求項３４に記載のビデオデータ処理システム。
【請求項３６】
前記第２のフォーマットが，インターリーブされた色差データ及び輝度データを備える請求項３５に記載のビデオデータ処理システム。
【請求項３７】
符号化するための手段が，現在のビデオフレームのブロックを圧縮するための手段をさらに備える請求項３４に記載のビデオデータ処理システム。
【請求項３８】
前記記憶領域に存在する前記第２のフォーマットによる前記新しいデータを用いて，次のビデオフレームの対応するブロックを符号化するための手段をさらに備える請求項３４に記載のビデオデータ処理システム。
【請求項３９】
ビデオデータのブロック全部を符号化する前にバッファが満杯になれば，ビデオデータのブロックの一部分を前記バッファから前記記憶領域に転送するための手段をさらに備える請求項３４に記載のビデオデータ処理システム。
【請求項４０】
前記第１のフォーマットが，前記第２のフォーマットと同一である請求項３４に記載のビデオデータ処理システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，ビデオデータに関し，より詳細には，ビデオデータを符号化することに関する。
【背景技術】
【０００２】
ビデオデータの符号化／復号化処理，及び送信処理は，比較的に大きなメモリ資源を必要とすることがある。ビデオカメラからのビデオデータは，圧縮され，記憶又は送信のためのメモリをあまり必要としないフォーマットに符号化されることがある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら，システムによっては，単一ビデオフレームを処理するのに必要なメモリは，プロセッサにおいて利用できるメモリを超えることがある。例えば，無線電話機及びその他の小型のハンドヘルド通信装置といった電気通信機器は，動画を録画するためのビデオカメラ装置を含むことがある。しかしながら，これらの及びその他のビデオ装置は，ビデオデータを処理するための限られたメモリ資源を有することがある。
【課題を解決するための手段】
【０００４】
本発明の実施形態は，ビデオデータを処理するための方法，システム，及び／又は，コンピュータプログラムを提供してもよい。ビデオデータは，第１のフォーマットで受信されてもよい。ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含む。ビデオフレームの中の現在のビデオフレームのブロックは，第２のフォーマットに変換されてもよい。現在のビデオフレームのブロックは，別のビデオフレームの対応するブロックと比較されてもよい。現在のビデオフレームのブロックは，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，符号化されてもよい。
【０００５】
本発明のさらなる実施形態においては，現在のビデオフレームのブロックの変換は，現在のビデオフレームの全部を受信する前に実行されてもよい。ビデオフレームのそれぞれのブロックは，画素が予め定義されたグループを含んでもよい。実施形態によっては，第２のフォーマットは，第１のフォーマットよりも低い解像度を有してもよい。例えば，第２のフォーマットは，第１のフォーマットと比較して，少ない色差情報を有してもよい。第２のフォーマットは，インターリーブされた色差データ及び輝度データを含んでもよい。
【０００６】
実施形態によっては，現在のビデオフレームのブロックの符号化には，現在のビデオフレームのブロックを圧縮することを含んでもよい。現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較することは，第２のフォーマットによる別のビデオフレームの対応するブロックを検索することに先行されてもよい。現在のビデオフレームのブロックは，次のビデオフレームの対応するブロックと比較するために，第２のフォーマットで記憶されてもよい。
【０００７】
さらなる実施形態においては，ブロックの一部分の符号化されたビデオデータは，バッファに記憶されてもよく，バッファに格納されたデータは，ブロックの符号化を完了するのと同時に，記憶領域に転送されてもよい。ビデオデータのブロックの一部分は，ビデオデータのブロック全部を符号化する前にバッファが一杯になれば，バッファから記憶領域に転送されてもよい。またさらなる実施形態においては，現在のビデオフレームの符号化されたブロックは，無線通信リンクを介して送信されてもよい。
【０００８】
本発明の開示内容を考慮すれば，この分野に精通する者には明らかなように，本発明は，方法，システム，及び／又は，コンピュータプログラムとして実施されてもよい。
【発明を実施するための最良の形態】
【０００９】
ここで，以下において，本発明の実施形態が示される添付の図面を参照して，本発明をより詳細に説明する。しかしながら，本発明は，ここで説明される実施形態に限定されると解釈されるべきではない。むしろ，これらの実施形態は，この明細書が詳細かつ完全なものとなり，そして，この分野に精通する者に本発明の範囲を最大限に伝達するために提供される。構成要素が別の構成要素に「結合される」又は「接続される」と表現される場合，その構成要素は別の構成要素に直接に結合又は接続されてもよく，或いは介在する構成要素が存在してもよいと理解される。それとは対照的に，構成要素が別の構成要素に「直接に結合される」又は「直接に接続される」と表現される場合，介在する構成要素は存在しない。明細書全体を通して，同一の符号は，同一の構成要素を指示する。
【００１０】
本発明の実施形態による方法及び携帯端末のブロック図及び／又はフローチャートを参照して，本発明を以下に説明する。ブロック図及び／又はフローチャートのそれぞれのブロック，及び，ブロック図及び／又はフローチャートにおけるいくつかのブロックの組み合わせは，無線周波数のアナログ及び／又はディジタルハードウェア，及び／又は，コンピュータプログラムの命令によって実施されてもよいと理解される。これらのコンピュータプログラム命令は，例えば，携帯端末もしくは基地局において，汎用コンピュータ，専用コンピュータ，ディジタル信号プロセッサ，及び／又は，その他のプログラム可能データ処理装置のプロセッサに提供されてもよく，それによって，コンピュータ及び／又はその他のプログラム可能データ処理装置のプロセッサによって実行される命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施するための回路及び／又は手段をもたらす。
【００１１】
また，これらのコンピュータプログラムの命令は，特定の形で動作するように携帯端末に指示することのできるコンピュータ可読メモリに記憶されてもよく，それによって，コンピュータ可読メモリに記憶された命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施する命令を含む製品をもたらす。
【００１２】
また，コンピュータプログラムの命令は，コンピュータ又はその他のプログラム可能なデータ処理装置上にロードされ，コンピュータ又はその他のプログラム可能なデータ処理装置上において一連の動作ステップを実行し，コンピュータ実行プロセスをもたらしてもよく，その結果として，コンピュータ又はその他のプログラム可能データ処理装置上で実行される命令は，ブロック図及び／又はフローチャートの１つか又は複数のブロックに記述された機能／動作を実施するためのステップを提供する。また，別の実施形態においては，ブロックに記述された機能／動作は，フローチャートに記述される順序と異なる順序で発生してもよいことに注意されたい。例えば，連続して示される２つのブロックは，実際には，実質的に同時に実行されてもよく，或いは含まれる機能／動作に依存して，それらのブロックは，場合によっては，逆の順序で実行されてもよい。
【００１３】
ここで，図面を参照して，本発明の様々な実施形態を説明する。図１は，本発明の実施形態によるビデオデータを送信及び符号化するのに適した通信システム３０の例としての実施形態を示す。通信システム３０は，基地局２２を経由して１つ以上の携帯通信中継局（ＭＴＳＯ）２４を介して通信する無線電話機又はその他の携帯ハンドヘルド装置のような通信装置１２を含んでもよい。ＭＴＳＯ２４は，公衆交換電話網（ＰＴＳＮ）２０との通信を提供してもよい。
【００１４】
携帯端末のような通信装置１００の概略ブロック図が，図２に示される。通信装置１００は，トランシーバ１２５，及び，プロセッサ１４０と通信するメモリ１３０を含んでもよい。また，図２に示されるように，通信装置１００は，１つ以上のキーボード／キーパッド１０５，表示装置１１０，スピーカー１１５，及び／又は，マイク１２０を含んでもよい。また，通信装置１００は，ビデオデータをプロセッサ１４０及び／又はメモリ１３０に送信するカメラ１６０を含んでもよい。カメラ１６０は，通信装置１００の一部として提供されてもよく，或いは通信装置１００に結合された別の装置であってもよい。
【００１５】
通信装置１００は，ビデオデータを処理するために，以下に説明される動作を実行することができる。例えば，実施形態によっては，プロセッサ１４０は，データを第１のフォーマットから第２のフォーマットに変換するために，メモリ１３０からのビデオデータを処理してもよい。メモリ１３０は，第１のフォーマットによるビデオデータを含んでもよい。また，プロセッサ１４０は，ビデオデータを圧縮してもよい。例えば，ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，ビデオデータの複数のブロックを含む。プロセッサ１４０は，第１のフォーマットによるビデオデータをメモリ１３０から受信してもよい。プロセッサ１４０は，現在のビデオフレーム内に存在するビデオデータのブロックを第２のフォーマットに変換してもよい。そして，プロセッサ１４０は，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較してもよい。プロセッサ１４０は，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較したことに応じて，現在のビデオフレームのブロックを符号化してもよい。別のビデオフレームは，以前のビデオフレームであってもよい。
【００１６】
したがって，プロセッサ１４０は，ビデオデータをブロック単位で処理することができ，それぞれのブロックは，プロセッサ１４０内のメモリによって処理できるほど十分に小さい。実施形態によっては，すべての又はいくつかのビデオデータは，メモリ１３０に記憶され，共通バスを介してのダイレクトメモリアクセス（ＤＭＡ）によって，プロセッサ１４０によってアクセスされてもよい。ビデオデータは，外部メモリに記憶されてもよく，或いはプロセッサと同じデバイス上に存在する内部メモリに記憶されてもよい。ＤＭＡコントローラが，データフローを制御してもよく，それによって，必要とされるデータが，所定の間隔で，プロセッサへ及びプロセッサから送信されてもよい。
【００１７】
ビデオフレームは，ここでは，「現在の」ビデオフレーム，「以前の」ビデオフレーム，及び，「次の」ビデオフレームを意味する。「現在の」，「以前の」，及び，「以前の」は，フレームが符号化されるときのフレームの関係を意味し，必ずしも，メモリに記憶されたフレームの実際の時間情報又は実際の順序を意味するとは限らないことを理解すべきである。以前のフレームは，ビデオデータのフレームの順序において現在のフレームに先立つ１つのフレームであってもよいが，ビデオデータは，適切であればどのような順序で処理されてもよい。例えば，「以前の」ビデオフレームは，ビデオカメラによってフレームが記録された時間順序において現在のフレームに先立つ１つのフレーム又は複数のフレームであってもよい。
【００１８】
図２を参照すると，トランシーバ１２５は，送信機１５０及び受信機１４５を含んでもよく，送信機１５０及び受信機１４５は，それぞれ，アンテナ１６５を介して，出力無線周波数信号を基地局又は無線端末へ送信し，かつ，入力無線周波数信号を基地局又は無線端末から受信する。実施形態によっては，無線周波数信号は，符号化されたビデオデータを送信するのに使用されてもよい。図２では，アンテナ１６５は１つだけ示されるが，受信される信号の種類に基づいて，複数のアンテナ及び／又は様々な種類のアンテナが使用されてもよいことを理解すべきである。通信装置１００と基地局／携帯端末との間で送信される無線周波数信号は，トラフィック及び制御信号の両方（例えば，呼び出し信号／着信メッセージ）を備えてもよく，それらは，他の当事者又は相手先との通信を確立及び維持するのに使用され，アップリンク通信及び／又はダウンリンク通信を提供してもよく，ビデオデータの送信を含む。しかしながら，本発明は，そのような双方向通信システム又はネットワーク環境に限定されない。
【００１９】
ここで説明される通信システムのいくつかの構成要素は，一般的な携帯端末に含められてもよく，それらの機能のいくつかの側面は，一般的に，この分野に精通する者に知られている。さらに，ここで使用される場合，「携帯端末」という用語は，限定はしないが，マルチライン表示装置を備えるか又は備えない携帯電話，データ処理機能，ファクシミリ機能，及び，データ通信機能を携帯電話と組み合わせてもよいパーソナル移動通信システム（ＰＣＳ）端末，無線電話機，ページャー，インターネット／イントラネットアクセス，Ｗｅｂブラウザ，システム手帳，カレンダー，及び／又は，衛星利用測位システム（ＧＰＳ）受信機を含んでもよいパーソナル携帯情報端末（ＰＤＡ），及び／又は，一般的なラップトップ受信機及び／又はパームトップ受信機又は無線電話トランシーバを含むその他の家電製品を含んでもよいことを理解すべきである。また，携帯端末は，「広く普及したコンピュータ」装置を意味してもよい。
【００２０】
本発明は，通信装置１００のような通信装置又は通信システムとして実施されてもよいが，本発明は，そのような装置及び／又はシステムに限定されない。それどころか，本発明は，スタンドアロン装置を含めて，どのような，方法，送信機，通信装置，通信システム，又は，符号化されたビデオデータを使用するコンピュータプログラムとして実施されてもよい。
【００２１】
図３は，システム，方法，及び，コンピュータプログラムを説明する本発明による実施形態のブロック図である。図３に示される実施形態は，通信装置又はスタンドアロン装置として実施されてもよい。プロセッサモジュール２３８は，アドレス／データバス２４８を介して，メモリ２３６と通信する。プロセッサモジュール２３８は，例えば，ディジタル信号プロセッサを含む市販の又は特注のどのようなマイクロプロセッサを含んでもよい。また，プロセッサモジュール２３８は，限られた量のメモリを含んでもよい。メモリは，頻繁に使用されるプログラムコード又はデータを記憶するのに使用されてもよく，及び／又は，それは，ビデオ画像又はビデオ画像の一部分の一時的な記憶装置として使用されてもよい。メモリ２３６は，装置の機能を実施するのに使用されるソフトウェア及びデータを含むメモリ装置の階層全体を代表するものである。メモリ２３６は，限定はしないが，１つ以上のデバイス，すなわち，キャッシュ，ＲＯＭ，ＰＲＯＭ，ＥＰＲＯＭ，ＥＥＰＲＯＭ，フラッシュメモリ，ＳＲＡＭ，及び，ＤＲＡＭを含んでもよい。
【００２２】
図３に示されるように，メモリ２３６は，使用されるいくつかの種類のソフトウェア及び／又はデータ，すなわち，オペレーティングシステム２５２，アプリケーションプログラム２５４，入力／出力（Ｉ／Ｏ）装置ドライバ２５８，及び，データ２５６を含んでもよい。この分野に精通する者には明らかなように，オペレーティングシステム２５２は，携帯端末とともに使用するのに適切なものであれば，どのようなオペレーティングシステムであってもよく，例えば，カリフォルニア州アラメダのＷｉｎｄ  Ｒｉｖｅｒ社のＶｘＷｏｒｋｓ又はｐＳＯＳｙｓｔｅｍ，スウェーデンのストックホルムのＥｎｅａ  Ｄａｔａ社のＯＳＥ  Ｄｅｌｔａ，ＯＳＥｃｋ，又は，ＯＳＥ  Ｅｐｓｉｌｏｎ，ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）ＣＥ，Ｗｉｎｄｏｗｓ（登録商標）９５，Ｗｉｎｄｏｗｓ（登録商標）９８，Ｗｉｎｄｏｗｓ（登録商標）２０００，Ｗｉｎｄｏｗｓ（登録商標）ＮＴ，Ｗｉｎｄｏｗｓ（登録商標）ＸＰ，又はＵｎｉｘ（登録商標），Ｌｉｎｕｘ，Ｐａｌｍ  ＯＳといった独自仕様のオペレーティングシステム，及び／又は，特別に開発したオペレーティングシステムのようなものがある。オペレーティングシステムは，ＩＰベースの又はその他のネットワーク通信プロトコルコネクションをサポートするように構成されてもよい。Ｉ／Ｏ装置ドライバ２５８は，トランシーバ１２５（図２）及びメモリ２３６のいくつかのコンポーネントのような装置と通信するために，アプリケーションプログラム２５４によってオペレーティングシステム２５２を介してアクセスされるソフトウェアルーチンを含んでもよい。アプリケーションプログラム２５４は，様々な特徴を実行するプログラムの例として示されるものであり，本発明の実施形態による動作をサポートする少なくとも１つのアプリケーションを含んでもよい。データ２５６は，アプリケーションプログラム２５４，オペレーティングシステム２５２，Ｉ／Ｏ装置ドライバ２５８，及び，メモリ２３６に存在してもよいその他のソフトウェアプログラムによって使用される静的及び／又は動的なデータを表現する。
【００２３】
図３からさらにわかるように，アプリケーションプログラム２５４は，ビデオデータ符号化モジュール２６０を含んでもよい。ビデオデータ符号化モジュール２６０は，ビデオデータを処理するためのここで説明される動作を実行してもよい。図３に示されるように，メモリ２３６のデータ部分２５６は，ここで説明されるビデオ情報を記憶するビデオデータ２６２を含んでもよい。実施形態によっては，ビデオデータ符号化モジュール２６０は，プロセッサモジュール２３８の内部メモリの一部であってもよい。
【００２４】
例えば，ビデオデータ２６２は，メモリ２３６から送信され，そして，ビデオデータ符号化モジュール２６０によって受信されてもよい。ビデオデータ符号化モジュール２６０は，第１のフォーマットでビデオデータを受信してもよく，ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含んでいても良い。ビデオデータ符号化モジュール２６０は，ビデオフレームの中の現在のビデオフレームのブロックを第２のフォーマットに変換してもよく，そして，現在のビデオフレームのブロックを別のビデオフレームの対応するブロックと比較してもよい。ビデオデータ符号化モジュール２６０は，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，現在のビデオフレームのブロックを符号化してもよい。別のフレームは，以前のビデオフレームであってもよい。
【００２５】
ここでは図２においてアプリケーションプログラムであるビデオデータ符号化モジュール２６０を参照して，本発明を説明するが，この分野に精通する者には明らかなように，その他の構成が，使用され，それによって，本発明の教示から同様の利益を得てもよい。例えば，ビデオデータ符号化モジュール２６０は，プロセッサモジュール２３８，オペレーティングシステム２５２，Ｉ／Ｏ装置ドライバ２５８，又は，その他のそのような論理的な部分の中に組み込まれてもよい。したがって，本発明は，図３の構成に限定されると解釈されるべきではなく，ここで説明される動作を実行することのできるあらゆる構成を包含しようとするものである。さらに，プロセッサモジュール２３８を含む集積回路が，メモリ２３６のメモリ構成要素を含んでもよく，及び／又は，メモリ２３６を含む１つか又は複数の集積回路が，プロセッサモジュール２３８の機能を実行してもよい。
【００２６】
ビデオデータ符号化モジュール２６０は，ＭＰＥＧ−１，ＭＰＥＧ−２，ＭＰＥＧ−４，Ｈ．２６１，Ｈ．２６３，Ｈ．２６４，及び／又は，何らかのその他の独自仕様又は特別に開発したビデオ符号化規格に基づいてビデオデータを符号化するためのアルゴリズムを含んでもよい。また，ビデオデータ符号化モジュール２６０は，ビデオデータを復号化するためのアルゴリズムを含んでもよい。ＭＰＥＧ−４規格及びＨ．２６３規格のようなビデオ符号器は，ＹＣｂＣｒ  ４：２：０フォーマットで動作してもよい。このフォーマットにおいては，輝度成分（Ｙ）は，最大解像度で記憶され，色差成分（Ｃｂ（青色差）及びＣｒ（赤色差））は，水平方向及び垂直方向の両方における２つの係数によってサブサンプリングされる。図８に示されるように，ＹＣｂＣｒ  ４：２：０フォーマットは，すべての輝度画素のための１つの連続するメモリブロック及び２つの色差成分Ｃｂ及びＣｒのための２つの別個のメモリブロックとして記憶されてもよい。しかしながら，その代わりに，色差データ及び輝度データが１つの連続するメモリブロックに記憶されるインターリーブＹＣｂＣｒ  ４：２：０フォーマットが，使用されてもよい。インターリーブＹＣｂＣｒ  ４：２：０フォーマットの例が，図９に示される。それとは対照的に，ビデオカメラは，図１０に示されるように，ビデオデータをバイトインターリーブＹＣｂＣｒ  ４：２：２フォーマットで供給してもよい。ＹＣｂＣｒ  ４：２：２フォーマットは，色差成分Ｃｂ及びＣｒが垂直方向においてサブサンプリングされないので，ＹＣｂＣｒ  ４：２：０フォーマットと比較して２倍の量の色差データを有する。
【００２７】
図３に示されるように，データ２５６は，複数のビデオフレームからなるビデオデータ２６２を含んでもよく，それぞれのフレームは，複数のブロックのデータを含んでいてもよい。データの「ブロック」とは，画素が予め定義されたグループである。ビデオデータのブロックの１つの具体的な例は，マクロブロックである。例えば，それぞれのフレームは，１７６列及び１４４行の画素（１７６×１４４画素）を含んでもよい。データのブロックは，８×８画素であってもよく，マクロブロックは，輝度データの４つの８×８ブロックを含んでもよく，さらに，青色差（Ｃｂ）の１つ以上の８×８ブロック及び赤色差（Ｃｒ）の１つ以上の８×８ブロックを含んでもよい。いくつかのマクロブロックは，「マクロブロックライン」にグループ化されてもよい。１７６×１４４画素のフレームサイズは，例えば，９つのマクロブロックラインに分割されてもよく，それぞれのマクロブロックラインは，マクロブロックの１つの行を含む。しかしながら，様々なサイズのフレーム及び／又はブロックが使用されてもよい。本発明で使用される場合，ビデオデータの「ブロック」は，ブロック，マクロブロック，マクロブロックライン，又は，何らかの適切な画素グループであってもよい。
【００２８】
ＹＣｂＣｒ  ４：２：２フォーマットにおいては，データの１つのマクロブロックは，４つの輝度成分（Ｙ），２つの赤色差成分（Ｃｒ），及び，２つの青色差成分（Ｃｂ）を含んでもよい。ＹＣｂＣｒ  ４：４：０フォーマットにおいては，ビデオデータの１つのマクロブロックは，４つの輝度成分（Ｙ），１つの赤色差成分（Ｃｒ），及び，１つの青色差成分（Ｃｂ）を含んでもよい。
【００２９】
図４は，本発明の特定の実施形態によるビデオ処理システム４００のブロック図である。図４からわかるように，一般的にディジタルカメラ４５０は，ビデオデータを第１のフォーマットでメモリ４１０内のメモリブロック４１２に送信する。メモリ４１０は，プロセッサ４４０と通信し，そのプロセッサ４４０は，ビデオ符号器４２２を用いて，ビデオデータを符号化し，再構成された第２のフォーマットによるビデオデータを生成する。再構成されたビデオデータは，メモリ４１０内のメモリブロック４１６に送信される。ビデオ符号器４２２は，変換されたビデオデータを符号化及び圧縮するために，別のビデオフレームからの再構成ビデオデータを使用する。
【００３０】
より詳細には，カメラ４５０は，現在のフレームからデータのただ１つのブロック（すなわち，ｉ番目のマクロブロックライン）をメモリブロック４１２から第１のフォーマットでプロセッサ４４０の入力バッファ４２０に送信する。実施形態によっては，第１のフォーマットは，ＹＣｂＣｒ  ４：２：２フォーマットであってもよい。第２のフォーマットによる再構成ビデオデータの対応するブロックが，メモリブロック４１６から入力バッファ４３４に送信される。入力バッファ４３４内の再構成ビデオデータは，以前のフレームからの再構成データ（以前のｉ番目のマクロブロックライン（ブロック４２８））であってもよく，また，同じ以前のフレームからの隣接するブロック（以前の１−ｉ番目のマクロブロックライン（ブロック４２６），以前のｉ＋１番目のマクロブロックライン（ブロック４３０））を含んでもよい。実施形態によっては，入力バッファ４３４内の再構成ビデオデータは，第３のフォーマットで記憶されてもよい。実施形態によっては，ビデオデータのエッジ画素が，この分野に精通する者に知られている技術に基づいて，フレームにパディングされてもよい。「パディング」は，領域内のデータを領域外の画素に補填することによって提供されてもよく，より良好な動き予測を提供するのに使用されてもよい。
【００３１】
ビデオ符号器４２２は，入力バッファ４２０からのデータのマクロブロックを第２のフォーマットに変換する。実施形態によっては，ビデオ符号器４２２とは別のビデオ符号器が，入力バッファ４２０からのデータのマクロブロックを第２のフォーマットに変換するために提供されてもよい。第２のフォーマットは，図９に示されるＹＣｂＣｒ  ４：２：０フォーマットのようなインターリーブされたＹＣｂＣｒ  ４：２：０フォーマットであってもよい。インターリーブされたフォーマットは，ビデオデータをブロック単位で処理するのを容易にするかもしれない。なぜなら，色差データ及び輝度データは，図８に示されるインターリーブされていないＹＣｂＣｒ  ４：２：０フォーマットの場合のように別個のメモリブロックに記憶されるのではなく，メモリ４１０内にインターリーブされるからである。したがって，メモリ４１０とプロセッサ４４０との間でインターリーブされたデータを転送するのに，色差データ及び輝度データがインターリーブされていない場合に必要とされるよりも少ないメモリ読み込み動作しか必要とされないかもしれない。しかしながら，適切なものであればどのようなビデオデータのフォーマットでも，第１及び第２のフォーマットとして使用されてもよい。
【００３２】
実施形態によっては，第２のフォーマットは，第１のフォーマットよりも低い解像度を有してもよい。例えば，第２のフォーマットは，第１のフォーマットと比較すれば，少ない色差情報を有してもよい。現在のフレームからのビデオデータの第２のフォーマットによる再構成ブロックは，再構成ビデオブロックバッファ４３２から以前のフレームのメモリブロック４１６に転送され，次のビデオフレームを符号化する際に使用される。
【００３３】
ビデオ符号器４２２は，変換されたビデオデータを符号化する。ビデオ符号器４２２は，現在のフレームからのビデオブロック及び入力バッファ４３４内の以前のフレームの再構成ブロックを使用する。現在のフレームからのデータのブロックの符号化は，現在のビデオフレームのブロックを対応するビデオフレームと比較し，その比較に応じて，現在のビデオフレームのブロックを符号化することを含んでもよい。実施形態によっては，ビデオデータを圧縮するために，以前のフレームからのブロックと現在のフレームからのブロックとの差分だけが，符号化されてもよい。符号化技術の例は，例えば，２００２年９月１９日に出願され２００３年８月１４日に公開された発明の名称が“Ｍｅｔｈｏｄ  ａｎｄ  Ｄｅｖｉｃｅ  ｆｏｒ  Ｂｌｏｃｋ−Ｂａｓｅｄ  Ｃｏｎｄｉｔｉｏｎａｌ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ”である同時係属出願の米国特許出願公開第２００３／０１５２１４９号から知ることができ，その開示は，その全体がここに参照として本明細書に組み込まれる。
【００３４】
符号化されたビデオデータの一部分の圧縮されたビットストリームは，バッファ４２４に記憶され，メモリ４１０の外部ビットストリームバッファ４２４に転送されてもよい。実施形態によっては，現在のビデオフレームのブロックを第１のフォーマットから第２のフォーマットへの変換は，第１のフォーマットによる現在のビデオフレームの全部を受信する前に実行されてもよい。したがって，ビデオデータは，連続的に変換されてもよく，圧縮されたビットストリームによって使用されるメモリを減少させることができる。
【００３５】
さらに，ビデオデータのブロックは，ビットストリームバッファの記憶内容を「消去」するために，ビデオデータのブロックの符号化の完了と同時に，圧縮ビットストリームバッファ４２４から外部ビットストリームバッファ４１４に転送されてもよい。ビットストリームバッファの記憶内容を消去することは，プロセッサ４４０に必要とされるメモリを減少させることができる。実施形態によっては，データのブロック全部を符号化する前に，圧縮ビットストリームバッファ４２４が一杯になれば，ビデオデータのブロック全部を符号化する前に，ビデオデータのブロックの符号化された部分が，バッファ４２４から，外部ビットストリームバッファ４１４のような記憶領域に転送されてもよい。データのブロック全部の符号化前のデータ転送は，「イントラフレーム」，例えば，予測されないフレーム又は以前のフレームに関係のないフレームの符号化中に，より頻繁に発生してもよい。イントラフレームは，大量の符号化されたビデオデータを生成するかもしれない。平均フレームレートを維持するために，次のフレームは，イントラフレームの後に，レート制御機構によってスキップされてもよい。
【００３６】
本発明は，例えば，プロセッサ４４０の一部であるビデオ符号器４２２及びメモリ４１０の内部の，様々なメモリブロックを参照して説明されたが，この分野に精通する者には明らかなように，その他の構成が使用され，それによって，本発明の内容から同様の利益を得てもよい。例えば，メモリ４１０は，プロセッサ４４０の中に組み込まれてもよく，及び／又は，メモリ４１０及びプロセッサ４４０のその他の論理的な区画が，製作されてもよい。Ｓビデオコンバータ（図示しない）が提供され，ビデオを様々なフォーマットに変換してもよい。したがって，本発明は，図４の構成に限定されると解釈されるべきではなく，ここで説明される動作を実行することのできるあらゆる構成を包含しようとするものである。また，プロセッサ４４０を含む集積回路は，メモリ４１０のメモリ構成要素を含んでもよく，及び／又は，メモリ４１０を含む１つもしくは複数の集積回路は，プロセッサ４４０の機能を実行してもよい。
【００３７】
ここで，図５から図７を参照して，本発明の実施形態による動作を説明する。図５を参照すると，動作ブロック５００における現在のフレームからのビデオデータのブロックごとに，動作ブロック５１０において，ビデオデータが，符号器によって第１のフォーマットで受信される。動作ブロック５４０において，符号器は，ブロックを符号化する。符号器は，ビデオデータのブロックを第２のフォーマットに変換することによって，ブロックを符号化してもよい。第２のフォーマットによるビデオデータのブロックは，以前のフレームからのビデオデータの対応するブロック（同様に，第２のフォーマットによるビデオデータのブロック）と比較されてもよい。ビデオデータのブロックは，ビデオデータのブロックと以前のフレームのビデオデータの対応するブロックとの比較に基づいて符号化されてもよい。そして，動作ブロック５５０において，符号器は，ビデオデータの次のブロックに対して同じステップを実行する。
【００３８】
本発明の実施形態によるより詳細な動作が，図６に示される。動作ブロック６００に示したように，ビデオデータのブロックごとに処理が行われ，動作ブロック６１０において，現在のビデオデータブロックが，第１のフォーマットで受信される。動作ブロック６２０において，第２のフォーマットによる以前のビデオフレームの対応するブロックが検索される。動作ブロック６５０において，ビデオデータの現在のブロックが符号化される。例えば，ビデオデータの現在のブロックは，第２のフォーマットに変換されてもよい。第２のフォーマットは，第１のフォーマットと比較して，低い解像度，例えば少ない色差情報を有してもよい。例えば，上述したように，第１のフォーマットは，ＹＣｒＣｂ  ４：２：２フォーマットであってもよく，第２のフォーマットは，インターリーブされたＹＣｒＣｂ  ４：２：０フォーマットであってもよい。
【００３９】
第２のフォーマットによるビデオデータの現在のブロックは，以前のフレームの対応するブロック（第２のフォーマットによるブロック）と比較されてもよい。上述したように，以前のフレーム内に存在するビデオデータのブロックに隣接するビデオデータが，動作ブロック６５０における符号化ステップにおいて使用されてもよく，パディングデータを含む。パディングデータとは，例えば，領域内のデータから領域外の画素へ補填されたデータのことである。
【００４０】
動作ブロック６５０において，現在のブロックを以前のフレームの対応するブロックと比較したことに基づいて，現在のフレームからのデータのブロックが符号化され，バッファに転送される。動作ブロック６６０において，符号化の完了の前にバッファが一杯になれば，動作ブロック６７０において，ブロックの符号化された部分は，別の記憶領域に転送される。動作ブロック６８０において，現在のブロックの符号化が完了していなければ，動作ブロック６５０において，符号器は現在のブロックの符号化を続行する。動作ブロック６８０において，現在のフレームのブロックの符号化が完了していれば，動作ブロック６９０において，符号化されたブロックは，別のメモリブロックに記憶される。動作ブロック６９５において，符号器は，ビデオデータの次のブロックに対して上述した動作を反復してもよい。このように，ビデオデータの複数のフレームの複数のビデオデータブロックを比較的に小さい部分において処理することができ，ビデオデータを符号化するのに必要とされるメモリを減少させることができる。
【００４１】
図７に，符号化されたビデオデータを無線通信リンクを介して送信する動作を示す。動作ブロック７００に示したように，現在のフレームからのビデオデータのブロックごとに動作が行われ，動作ブロック７１０において，ビデオデータが，符号器によって受信される。動作ブロック７４０において，符号器は，ビデオデータのブロックを符号化する。例えば，符号器はビデオデータのブロックを第２のフォーマットに変換してもよい。ブロックは，以前のフレームからの対応するブロックと比較されてもよい。ブロックは，動作ブロック７４０において，現在のフレームのビデオデータのブロックと以前のフレームのビデオデータの対応するブロックとの比較に基づいて符号化される。動作ブロック７５０において，上述した動作が，複数のビデオフレーム内に存在するビデオデータの複数のブロックに対して反復される。ビデオデータが，符号化されれば，及び／又は，圧縮されれば，動作ブロック７６０において，ビデオデータは無線通信リンクを介して送信される。
【００４２】
本発明の実施形態によれば，ビデオデータを処理するための方法，システム，及び／又は，コンピュータプログラムが提供される。ビデオデータは，第１のフォーマットで受信されてもよい。ビデオデータは，複数のビデオフレームを含んでもよく，それぞれのフレームは，複数のブロックを含む。ビデオフレームの中の現在のビデオフレームのブロックは，第２のフォーマットに変換されてもよい。現在のビデオフレームのブロックは，別のビデオフレームの対応するブロックと比較されてもよい。現在のビデオフレームのブロックは，現在のビデオフレームのブロックを別のフレームの対応するブロックと比較したことに応じて，符号化されてもよい。
【００４３】
無線通信媒体装置を参照して，本発明を説明したが，本発明の実施形態は，同様に有線通信媒体において，或いはスタンドアロンビデオ装置において使用されてもよい。さらに，ビデオデータを送信する代わりに，符号化され，及び／又は圧縮されたビデオデータは，後で視聴するために記憶されてもよい。実施形態によっては，記憶されたビデオデータは符号化されてもよく，及び／又は圧縮されてもよい。
【００４４】
図面及び明細書において，本発明の実施形態が開示され，特定の用語が使用されたが，それらの用語はただ単に一般的及び説明的な意味で使用されたにすぎず，また本発明を限定しようとするものではなく，本発明の範囲は特許請求の範囲に記載される。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施形態による通信システムのブロック図である。
【図２】本発明の実施形態による携帯端末及び／又は基地局のブロック図である。
【図３】本発明の実施形態によるプロセッサ及びメモリのブロック図である。
【図４】本発明の実施形態によるシステムのブロック図である。
【図５】本発明の実施形態による動作を説明するフローチャートである。
【図６】本発明の実施形態による動作を説明するフローチャートである。
【図７】本発明の実施形態による動作を説明するフローチャートである。
【図８】本発明の実施形態による非インターリーブＹＣｂＣｒ  ４：２：０フォーマットビデオデータを示す図である。
【図９】本発明の実施形態によるインターリーブＹＣｂＣｒ  ４：２：０フォーマットビデオデータを示す図である。
【図１０】本発明の実施形態によるインターリーブＹＣｂＣｒ  ４：２：２フォーマットビデオデータを示す図である。
【国際調査報告】
2006520552.tif 000013
2006520552.tif 000014
2006520552.tif 000015
2006520552.tif 000016
2006520552.tif 000017
2006520552.tif 000018