(57)【要約】    【課題】  より変化に富んだゲームを楽しむことができるようにするものである。    【解決手段】  所定の部位を正確に追尾することができるようにするために、入力された画像から低解像度の全体の画像５１を取り込み、その中から頭部を中心とした中解像度の画像５２を抽出する。中解像度の頭部を中心とした画像５２を抽出することができたとき、さらに高解像度の両眼部を中心とした画像５３を抽出する。【選択図】図５
2004195243.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像から所定の部位の画像を抽出する第１の抽出手段と、
前記第１の抽出手段により抽出された前記所定の部位の一部を、より高解像度の画像として抽出する第２の抽出手段と、
前記第２の抽出手段が、前記第１の抽出手段により抽出された画像から前記所定の部位の画像を連続的に抽出できるように、前記所定の部位の画像を追尾する追尾手段とを備えることを特徴とする、画像処理装置。
【請求項２】
前記入力された画像を、左右が反転した像として表示させる表示制御手段を、さらに備えることを特徴とする、請求項１に記載の画像処理装置。
【請求項３】
前記入力された画像とは異なる所定の画像を表示させるとともに、その画像を、前記第２の抽出手段により抽出された画像に対応して変化させる表示制御手段を、さらに備えることを特徴とする、請求項１に記載の画像処理装置。
【請求項４】
前記入力された画像とは異なる所定の画像に対し第二の抽出手段により抽出された画像の位置抽出を補正する手段を有することを特徴とする、請求項３に記載の画像処理装置。
【請求項５】
前記入力された画像とは異なる所定の画像に対し第２の抽出手段により抽出された画像の表情抽出を補正する手段を有することを特徴とする、請求項３に記載の画像処理装置。
【請求項６】
前記表示制御手段が表示させる、前記入力された画像とは異なる所定の画像は、仮想現実空間上の画像であることを特徴とする、請求の模範３に記載の画像処理装置。
【請求項７】
前記入力された画像は、ビデオカメラから出力された画像である
ことを特徴とする、請求項１に記載の画像処理装置。
【請求項８】
前記第１の抽出手段が、入力された画像から抽出する前記所定の部位は、前記ビデオカメラが撮像したユーザの目または口であることを特徴とする、請求項５に記載の画像処理装置。
【請求項９】
前記第１の抽出手段は、ピラミッドフィルタ処理にて前記入力された画像から所定の部位の画像を抽出する処理を行うことを特徴とする、請求項１に記載の画像処理装置。
【請求項１０】
前記第１の抽出手段は、フレーム間差分処理にて前記入力された画像から所定の部位の画像を抽出する処理を行うことを特徴とする、請求項１に記載の画像処理装置。
【請求項１１】
入力された画像から所定の部位の画像を抽出する第１の抽出ステップと、
前記第１の抽出ステップで抽出された前記所定の部位の一部を、より高解像度の画像として抽出する第２の抽出ステップと、
前記第２の抽出ステップで、前記第１の抽出ステップで抽出された画像から前記所定の部位の画像を連続的に抽出できるように、前記所定の部位の画像を追尾する追尾テップとを含むとを特徴とする、画像処理方法。
【請求項１２】
入力された画像から所定の部位の画像を抽出する第１の抽出ステップと、
前記第１の抽出ステップで抽出された前記所定の部位の一部を、より高解像度の画像として抽出する第２の抽出ステップと、
前記第２の抽出ステップで、前記第１の抽出ステップで抽出された画像から前記所定の部位の画像を連続的に抽出できるように、前記所定の部位の画像を追尾する追尾ステッブとを含む処理を画像処理装置に実行させるプログラムを提供することを特徴とする、提供媒体。
【請求項１３】
前記プログラムは、磁気ディスク、ＣＤ−ＲＯＭ、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体にて提供することを特徴とする、請求項１２に記載の提供媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、並びに提供媒体に関し、特に、所定の画像の変化を連続して抽出し、追尾することができるようにした画像処理装置および方法、並びに提供媒体に関する。
【背景技術】
【０００２】
最近、コンピユータエンタテインメント装置が普及し、各家庭においてゲームを楽しむとができるようになってきた。このコンピュータエンタテインメント装置においては、通常、ボタンあるいはジョイスティックなどをユーザが操作することで、ゲームの対象（キャラクタ）を、任意の方向に、任意の速度で移動させるようになされている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このように、従来の装置においては、ボタンあるいはジョイスティックなどを操作することで、各種の指令が入力されるようになされているので、ボタンやジョイスティックなどの操作テクニックをゲームに反映させることができるに過ぎず、より変化に富んだゲームを楽しむことができないという課題があった。
【課題を解決するための手段】
【０００４】
本発明はこのような状況に鑑みてなされたものであり、より変化に富んだゲームを楽しむことができるようにするものである。
【０００５】
本発明の画像処理装置は、入力された画像から所定の部位の画像を抽出する第１の抽出手段と、第１の抽出手段により抽出された所定の部位の一部を、より高解像度の画像として抽出する第２の抽出手段と、第２の抽出手段が、第１の抽出手段により抽出された画像から所定の部位の画像を連続的に抽出できるように、所定の部位の画像を追尾する追尾手段とを備えることを特徴とする。
【０００６】
本発明の画像処理方法は、入力された画像から所定の部位の画像を抽出する第１の抽出ステップと、第１の抽出ステップで抽出された所定の部位の一部を、より高解像度の画像として抽出する第２の抽出ステップと、第２の抽出ステップで、第１の抽出ステップで抽出された画像から所定の部位の画像を連続的に抽出できるように、所定の部位の画像を追尾する追尾ステップとを含むことを特徴とする。
【０００７】
本発明の提供媒体は、入力された画像から所定の部位の画像を抽出する第１の抽出ステップと、第１の抽出ステップで抽出された所定の部位の一部を、より高解像度の画像として抽出する第２の抽出ステップと、第２の抽出ステップで、第１の抽出ステップで抽出された画像から所定の部位の画像を連続的に抽出できるように、所定の部位の画像を追尾する追尾ステップとを含む処理を画像処理装置に実行させるプログラムを提供することを特徴とする。
【０００８】
本発明の画像処理装置、画像処理方法、および提供媒体においては、入力された画像から所定の部位の画像が連続的に追尾できるように、より高解像度の画像が抽出される。
【発明を実施するための最良の形態】
【０００９】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態（但し一例）を付加して本発明の特徴を記述すると、次のようになる。但し勿論この記載は、各手段を記載したものに限定することを意味するもではない。
【００１０】
画像処理装置は、入力された画像から所定の部位の画像を抽出する第１の抽出手段（例えば、第４図のステップＳ３２）と、第１の抽出手段により抽出された所定の部位の一部を、より高解像度の画像として抽出する第２の抽出手段（例えば、第４図のステップＳ３５）と、第２の抽出手段が、第１の抽出手段により抽出された画像から所定の部位の画像を連続的に抽出できるように、所定の部位の画像を追尾する追尾手段（例えば、第４図のステップＳ３６）とを備えること特徴とする。
【００１１】
また、画像処理装置は、入力された画像を、左右が反転した像として表示させる表示制御手段（例えば、第３図のステップＳ２）をさらに備えることを特徴とする。
【００１２】
さらに、画像処理装置は、入力された画像とは異なる所定の画像を表示させるとともに、その画像を、第２の抽出手段により抽出された画像に対応して変化させる表示制御手段（例えば、第３図のステップＳ９）をさらに備えることを特徴とする。
【００１３】
第１図は、本発明を適用した画像処理システムの構成例を表すブロック図である。同図に示すように、このシステムにおいては、画像処理装置１−１乃至１‐３が、インターネット２を介して、サーバ３に接続されている。画像処理装置１‐１乃至１−３（以下、これらを個々に区別する必要がない場合、単に画像処理装置１と称する。他の装置についても同様である）は、自分自身の仮想現実空間上のユーザの仮面画像の現在位置とともに、ユーザの仮面画像の表情を含むデータを、インターネット２を介して、サーバ３に送出する。サーバ３は、各画像処理装置１に対して、そこから供給された仮想現実空間内の位置の近傍に位置するユーザの仮面画像の画像データを、インターネット２を介して供給するようになされている。
【００１４】
第２図は、画像処理装置１−１の構成例を表すブロック図である。図示は省略するが、画像処理装置１−２，１−３も、画像処理装置１‐１と同様に構成されている。
【００１５】
メインCPU３１には、バス３４を介して、メインメモリ３２と画像処理チップ３３が接続されている。メインCPU３１は、描画コマンドを生成し、画像処理チップ３３の動作を制御する。メインメモリ３２には、メインCPU３１が各種の処理を実行する上において必要なプログラムやデータなどが適宜記憶される。
【００１６】
画像処理チップ３３のレンダリングエンジン４１は、メインCPU３１から供給
される描画コマンドに対応して、メモリインターフェース４２を介して、画像メモリ４３に所定の画像データを描画する動作を実行する。メモリインターフェース４２とレンダリングエンジン４１の間には、バス４５が接続されており、メモリインターフェース４２と画像メモリ４３の間には、バス４６が接続されている
。バス４６は、例えば１２８ビットのビット幅を有し、レンダリングエンジン４１は、画像メモリ４３に対して、高速に描画処理を実行することができるようになされている。レンダリングエンジン４１は、例えば、NTSC方式、PAL方式などの３２０×２４０画素の画像データ、あるいは、６４０×４８０画素の画像データを、リアルタイムに（１／３０秒乃至１／６０秒）の間に、十数回乃至数十回以上描画する能力を有している。
【００１７】
画像処理チップ３３はまた、プログラマブルCRTコントローラ（PCRTC）４４を有しており、このPCRTC４４は、ビデオカメラ３５より入力された画像データの位置、大きさ、解像度などをリアルタイムに制御する機能を有している。PCRTC４４は、ビデオカメラ３５より入力された画像データを、メモリインターフェース４２を介して、画像メモリ４ ３のテクスチャエリアに書き込む。また、PCRTC４４は、画像メモリ４３の描画エリアに描画された画像データをメモリインターフェース４２を介して読み取り、これをCRT３６に出力し、表示させるようになされている。画像メモリ４３は、同一のエリアに、テクスチャエリアと描画エリアが指定できるユニファイドメモリ構造のものとされている。
【００１８】
音声処理チップ３７は、マイクロホン３８から入力された音声データを処理し、通信部４０からインターネット２を介して、他の画像処理装置１に出力するようになされている。また、音声処理チップ３７は、通信部４０を介して、他の画像処理装置１から供給された音声データを処理し、スピー力３９に出力するようになされている。通信部４０は、インターネット２を介して、他の画像処理装置１またはサーバ３との間でデータを授受するようになされている。入力部３０は、ユーザが各種の指令を入力するとき操作される。
【００１９】
レンダリングエンジン４１は、メインCPU３１からのブレンディングモード設定関数Set-Mode（MODE）により指定されたモードに対応して、画像メモリ４３の描画エリア上のデスティネーシヨンの画素値ＤＦ（Ｘ，Ｙ）とテクスチャエリアの画素値ＳＰ（Ｘ，Ｙ）との間で、ブレンディング処理を行わせる。
【００２０】
レンダリングエンジン４１が実行するブレンディングモードには、モード０乃至モード３が存在し、各モードにおいては、次のようなブレンディングが実行される。
MODE０：  ＳＰ（Ｘ，Ｙ）
MODEｌ：  ＤＰ（Ｘ，Ｙ）＋ＳＰ（Ｘ，Ｙ）
MODE２：  ＤＰ（Ｘ，Ｙ）−ＳＰ（Ｘ，Ｙ）
MODE３：（１−αSP（Ｘ，Ｙ））＊ＤＰ（Ｘ，Ｙ）十αSP（Ｘ，Ｙ）＊ＳＰ（Ｘ，Ｙ）
なお、αSP（Ｘ，Ｙ）は、ソースの画素値のα値を表している。
【００２１】
すなわち、モード０においては、ソースの画素値が、そのままデステイネーションに描画され、モード１においては、ソースの画素値が、デステイネーシヨンの画素値に加算して描画され、モード２においては、デスティネーションの画素値からソースの画素値を減算して描画が行われる。また、モード３においては、ソースのα値に対応する重み付けを行って、ソースの画素値とデスティネーションの画素値が合成される。
【００２２】
画像メモリ４３の描画エリアに描画された画像データは、メモリインターフェース４２を介して、PCRTC４４に読み出され、そこからCRT３６に出力され、表示される。
【００２３】
次に、第３図のフローチャートを参照して、その動作について説明する。最初に、ステップＳ１において、アクティブ画像取得処理が実行される。このアクティブ画像取得処理の一部の詳細は、第４図のフローチャートに示されている。
【００２４】
すなわち、最初にステップＳ３１において、PCRTC４４は、ビデオカメラ３５から入力された画像から全画面の低解像度の画像データを取り込み、これをメモリインターフェース４２を介して、画像メモリ４３に供給し、記憶させる。これにより、第５図に示すように、画像メモリ４３の画像エリア５０上に処理画像５１が記憶される。
【００２５】
次に、ステッブＳ３２に進み、メインCPU３１はPCRTC４４を制御し、ステップＳ３１で入力された画像から被写体（ユーザ）の頭部の部分を抽出する処理を実行する。すなわち、第５図に示すように、処理画像５１から頭部の部分の画像５２を抽出する。ステップＳ３３においては、メインCPU３１は、ステップＳ３１で取り込んだ画像から頭部の部分を抽出することができたか否かを判定し、できていない場合には、ステップＳ３１に戻り、それ以降の処理を繰り返し実行する。
【００２６】
ステップＳ３３において、頭部の部分を抽出することができたと判定された場合、ステップＳ３４に進み、メインCPU３１は、PCRTC４４を制御し、ステップＳ３２で抽出した頭部を中心にした領域を中解像度で取り込ませる。すなわち、第５図に示すように、ステップＳ３１で取り込まれた低解像度の処理画像５１から、頭部を中心とした中解像度の画像５２を取り込み、画像メモリ４３の画像工リアに記憶させる。
【００２７】
次に、ステップＳ３５において、メインCPU３１は、ステップＳ３４で取り込まれた中解像度の頭部を中心とした画像から、両眼部の画像を抽出する処理を実行する。すなわち、第５図の頭部を中心とした中解像度の画像５２から、両眼部の部分を抽出する処理を実行する。ステップＳ３６において、両眼部の部分を抽出することができたか否かを判定し、抽出することができなかった場合には、ステップＳ３１に戻り、それ以降の処理が繰り返し実行される。
【００２８】
ステップＳ３６において、両眼部を抽出することができたと判定された場合、メインCPU３１は、PCRTC４４を制御し、ステップＳ３７に進み、両眼部を中心にした領域を高解像度で取り込む処理を実行させる。すなわち、第５図に示す頭部を中心とした中解像度の画像５２から、両眼部を中心とした高解像度の画像５３を取り込ませ、画像エリア５０上に記憶させる。
【００２９】
次に、ステップＳ３８において、メインCPU３１は、ステップＳ３７で取り込んだ高解像度の画像５３から両眼部を抽出し、その位置を計測する処理を実行する。ステップＳ３９においては、両眼部を抽出することができたか否かを判定し、できていない場合には、ステップＳ３４に戻り、それ以降の処理が繰り返し実行される。ステップＳ３９において、両眼部を抽出することができたと判定された場合には、ステップＳ３７に戻り、それ以降の処理が繰り返し実行される。
【００３０】
以上のようにして、より高解像度の画像で所定の部位を抽出するようにし、所定の部位を抽出することができなかった場合、より低解像度の処理ステップに戻って、それ以降の処理を繰り返し実行することで、ユーザが、ビデオカメラ３５に対して相対的に移動した場合においても、その両眼部を自動的に確実に追尾し、画像として取り込むことができる。
【００３１】
第３図のステップＳ１において、以上のような第４図に示した処理を含む処理を実行して、被写体の両眼部を自動的に追尾し、被写体の画像（顔の画像）が得られると、ステップＳ２において、メインCPU３１は、レンダリングエンジン４１を制御して、左右反転画像を生成させ、これをCRT３６に出力し、表示させる。すなわち、レンダリングエンジン４１は、メインCPU３１からの指令に対応して、ステップＳ１で取り込まれたユーザの顔の画像を、その左右を反転した画像に（鏡面画像に）変換する。この左右を反転した画像が、PCRTC４４を介して、CRT３６に出力され、第６図に示すように表示される。このとき、メインCPU３１は、第６図に示すように、レンダリングエンジン４１を制御し、ステップＳ３５，Ｓ３７，Ｓ３８で抽出した両眼部の抽出領域に、線Ｐ１を重畳表示させ、ユーザが認識できるようにする。
【００３２】
ステップＳ３５，Ｓ３７，Ｓ３８において、口についても抽出した場合には、第６図に示すように、口の抽出領域の周りに線Ｐ２が表示される。
【００３３】
このように、線Ｐ１，Ｐ２を表示するようにすると、ユーザは、この線Ｐ１，Ｐ２で囲まれた領域を抽出して、追尾動作が行われていることを認識することができる。
【００３４】
次に、ステッブＳ３に進み、ユーザは、CRT３６の表示画像を見て、自分自身の位置あるいはビデオカメラ３５の位置を相対的に位置調整する必要があるか否かを判定し、位置調整する必要があると判定した場合、ステップＳ４に進み、ビデオカメラ３５の位置あるいは自分自身の位置を適宜調整する。その後、ステップＳ１に戻り、それ以降の処理が繰り返し実行される。
【００３５】
ステップＳ３において、ビデオカメラ３５または自分自身の位置を調整する必要がないと判定した場合、ステップＳ５に進み、メインCPU３１は、顔の特徴を抽出するための動作指示を行う。すなわち、メインCPU３１は、音声処理チップ３７を制御し、スピー力３９からユーザに対して、首振り、まばたき（ウインク）、口の開閉動作など、所定の動作をするようにユーザに指示する。もちろん、この指示は、レンダリングエンジン４１を制御し、画像メモリ４３に所定のメッセージを描画し、この描画したメッセージを、PCRTC４４を介して、CRT３６に出力、表示させることで行うようにしてもよい。
【００３６】
次に、ステップＳ６に進み、メインCPU３１は、ステップＳ５における動作指示に対応して、ユーザの行う動作の変化を画像の変化として抽出し、顔の特徴領域を抽出する。すなわち、例えば、まばたき（ウインク）を指令した後、取り込まれた画像に変化が生じた部分を目として認識する。また、口の開閉を指令した後、変化した画像の領域を口の部分として認識する。
【００３７】
次に、ステップＳ７に進み、メインCPU３１は、仮面のＣＧ画像を生成し、これをレンダリングエンジン４１を制御し、ユーザの顔の画像の表示位置に重畳して描画させる。この画像が、PCRTC４４を介して、CRT３６に出力されると、CRT３６には、例えば第７図に示すように、ユーザの画像の顔の部分が仮面に置き換えられた画像が表示される。
【００３８】
次に、ステップＳ８に進み、メインCPU３１は、ステップＳ６で抽出した顔の特徴領域（例えば、目、口、眉など）を動かすことをユーザに指示するメッセージを、スピーカ３９またはCRT３６から出力する。すなわち、例えば、ユーザに対して、ウィンクしたり、口を開閉したり、眉を上げ下げしたりすることを要求する。ユーザが、この要求に対応して、ウインクしたり、口を開閉したり、眉を上げ下げすると、その画像がビデオカメラ３５を介して取り込まれる。メインCPU３１は、動作指示に対応して変化した領域を、その指示に対応する領域の変化としてステップＳ９において検出し、その検出結果に対応して、ステップＳ７で表示した仮面の対応する部位を変化させる。すなわち、まばたき（ウインク）の動作指示に対応してユーザがまばたき（ウインク）を行い、これを検出したとき、メインCPU３１は、仮面の目をまばたき（ウインク）させる。同様に、ユーザが、口を開閉したり、眉を上げ下げしたとき、それに対応して、仮面の口を開閉させ仮面の眉を上げ下げさせる。
【００３９】
次に、ステッブＳ１０において、ユーザは、位置が正しく抽出されているか否かを判定する。例えば、ウインクの動作指示に対応してウインクしたにも関わらず、仮面の目がウインクしない場合には、ユーザは、入力部３０の所定のキーを操作して、位置抽出が正しく行われていないことをメインCPU３１に通知する。このとき、ステップＳ１１において、メインCPU３１は、補正指示を出力する。すなわち、ユーザに対して、静止するように指示するとともに、誤判定の要因となっていると思われる背景の動くものを除去したり、照明などを変更させたりするメッセージを出力する。使用者は、このメッセージに対応して、自分の背後において動くものがある場合には、それを除去したり、照明を変更したりする。さらに、メインCPU３１は、例えば第８図に示すように、頭にはちまきをすることを指示したり、帽子をかぶることを指示する。ユーザがこの指示に対応して、はちまきをしたり、帽子をかぶると、そこを基準として頭部を検出することが可能となる。このため、この場合には、ステップＳ１に戻り、それ以降の処理が繰り返し実行される。
【００４０】
ステップＳ１０において、位置が正しく抽出されていると判定された場合、ステップＳ１２に進み、表情が正しく抽出されているか否かが判定される。すなわち、ユーザは、例えば、ステップＳ８における動作指示に対応して頬を動かしたにも関わらず、ステップＳ９で表示されている仮面の頬が変化しない場合には、入力部３０を操作して、表情抽出処理が成功していないことをメインCPU３１に通知する。メインCPU３１は、このとき、ステップＳ１３において、補正指示を出力する。例えば、メインCPU３１は、ユーザに対して、頬の部分にメイキャップしたり、マーキングを施すことを指示する。ユーザが、この指示に対応して、頬にメイキャッブしたり、マーキングすれば、第９図に示すような画像が取り込まれることになるので、メインCPU３１は、そのメイキャップやマーキングを基準として、頬を正しく抽出することができる。このため、この場合においても、ステップＳ１３からステップＳ１に戻り、それ以降の処理が繰り返し実行される。
【００４１】
ステップＳ１２において、表情が正しく抽出することができたと判定された場合、第１０図に示すように、ユーザの顔の変化に対応して表情が変化する仮面を有するユーザの画像が得られたことになる。そこで、この場合、ステップＳ１４に進み、パーティイベント処理が実行される。このパーティイベント処理の詳細は、第１１図に示されている。
【００４２】
最初に、ステップＳ５１において、メインCPU３１は、ステップＳ９で生成した仮面を有するユーザの画像を、仮想現実空間のユーザの仮面画像の画像として生成し、レンダリングエンジン４１を制御して、これを画像メモリ４３に描画させる。次に、ステップＳ５２において、メインCPU３１は、ユーザの仮面画像の画像データを画像メモリ４３から読み出し、これを通信部４０に供給させる。そして、メインCPU３１は、さらに通信部４０を制御し、その画像データを、インターネット２を介して、サーバ３に送信させる。また、このとき、メインCPU３１は、入力部３０からの操作に対応して、サーバ３が提供する仮想現実空間内におけるユーザの仮面画像の位置に対応する位置データも同時に送信させる。
【００４３】
さらに、ステップＳ５３において、メインCPU３１は、音声処理チップ３７を制御し、マイクロホン３８から入力されたユーザの音声データを、通信部４０からインターネット２を介して、サーバ３に送信させる。
【００４４】
サーバ３は、インターネット２を介して、例えば画像処理装置１‐１から、対応するユーザの仮面画像の画像データ、仮想現実空間における位置データ、並びに音声データが入力されたとき、それらのデータを、その位置の近傍に位置するユーザの仮面画像が対応する画像処理装置１（例えば、画像処理装鷹１一２と画像処理装置１一３）に供給する。同様に、画像処理装置１一２，１‐３から、そのユーザの仮面画像の画像データ、位置データ、および音声データが、インターネット２を介して伝送されてきたとき、サーバ３は、このデータを、インターネット２を介して、画像処理装置１一１に出力する。
【００４５】
画像処理装置１一１のメインCPU３１は、このように他の画像処理装置１‐２，１‐３から、ユーザの仮面画像の画像データ、その位置データ、並びに音声データが伝送されてきことき、ステップＳ５４で、これを受信する。そして、メインCPU３１は、レンダリングエンジン４１を制御し、画像メモリ４３に、仮想現実空間の画像上の対応する位置に、対応するユーザの仮面画像の画像を描画させる。そして、この描画された画像データがPCRTC４４により読み出され、CRT３６に出力され、表示される。また、メインCPU３１は、伝送されてきた音声データを音声処理チップ３７に出力し、音声処理させた後、スピー力３９から出力させる。
【００４６】
以上のようにして、例えば第１２図に示すように、ユーザＡの使用する画像処理装置１一１のCRT３６‐１には、他のユーザ（第１２図の表示例の場合、ユーザＢとユーザＤ）のユーザの仮面画像６１‐２，６１‐４が表示される。また、ユーザＢの画像処理装置１一２のCRT３６‐２には、ユーザＡのユーザの仮面画像６１一１とユーザＣのユーザの仮面画像６１−３が表示される。ユーザＡがしゃべると、これがマイクロホン３８により取り込まれ、例えばユーザＢの画像処理装置１‐２のスピー力３９から放音される。また、このとき、ユーザＡの画像がビデオカメラ３５一１で取り込まれるので、ユーザＡのユーザの仮面画像６１一１の口が、ユーザＡの口に対応して変化する。同様に、ユーザＢが表情を変えると、これがそのビデオカメラ３５‐２により取り込まれ、ユーザＢのユーザの仮面画像６１一２の表情が変化する。
【００４７】
以上のような処理は、ステップＳ５５において終了が指示されるまで繰り返し実行される。
【００４８】
なお、以上においては、サーバ３を介して、多数のユーザの仮面画像と仮想現実空間において仮想パーティを楽しむようにしたが、第１３図に示すように、ユーザＡとユーザＢの間で１対１の仮想パーティを楽しむようにすることも可能である。
【００４９】
第４図のステッブＳ３２における処理において頭部を抽出する場合、例えば髪の毛の色を基準にして頭部を抽出するようにすることができる。この場合、ピラミッドフィルタ処理を利用することができる。ピラミッドフィルタ処理を行うと、各画素値の平均値が演算されるので、その平均値が髪の毛の色の画素値と近似している領域を髪の毛の領域として抽出するようにすることができる。
【００５０】
次に、ピラミッドフィルタ処理について説明する。このピラミッドフィルタ処理においては、第１４図に示すように、処理画像の相互に隣接する４個の画素値の平均値を求め、その画素を４個の画素の中心に配置する処理が繰り返される。すなわち、バイリニア補間により、近傍４点の平均画素値を演算する処理を実行すると、ｎ×ｎ個（ｎは２のべき乗の値）の処理画像から、（ｎ／２）×（ｎ／２）の画像データが得られる。この処理を繰り返し実行すると、最終的には、ピラミッドの頂点の１画素のデータは、ピラミッドの底面の全画素の平均値を表す画素データとなる。
【００５１】
このようなピラミッドフィルタ処理を実行する場合、メインCPU３１は、レンダリングエンジン４１に対して、次のような描画コマンドを出力する。
int L;／ ＊ソースエリアの一辺の長さ＊／
int offset；
L=2N＾；／＊初期画像の一辺の長さ＊／
offset=0；
while (L>1)[
Set Texture Base(0, offset);/＊テクスチャエリアのベースポイント設定＊／
offset += L;
Set Drawing Base(0, offset);／＊描画エリアのベースポイント設定＊／
Flat Texture Rectangle (0,0, L/2,0, L/2,L/2, 0,L/2, 0.5,0.5, L+0.5,
0.5, L+0.5, L+0.5, 0.5, L+0.5, 1.0):
L=L/2;
｝
この描画コマンドをフローチャートに表すと、第１５図に示すようになる。最初に、ステップＳ６１において、変数offsetに０が初期設定される。次にステップＳ６２において、テクチャエリア５１のベースポイントを（０，offset）に設定する処理が実行される。すなわち、第１６図に示すように、ベースポイントＴ（０，０）が設定される。次に、ステップＳ６３に進み、変数offsetがＬだけインクリメントされる。そして、ステップＳ６４において、描画エリア５２のベースポイントに（０，offset）が設定される。いまの場合、第１６図に示すように、ベースポイントＤ（０，Ｌ）が設定される。
【００５２】
次に、ステップＳ６５において、ソース（テクスチャエリア）の４角形（０．５，０．５，Ｌ＋０．５，０．５，Ｌ十０．５，Ｌ＋０．５，０．５，Ｌ＋０．５）の画素値に１を乗算して、デステイネーションの４角形（０，０，Ｌ／２，０，Ｌ／２，Ｌ／２，０，Ｌ／２）に加算して描画する処理が実行される。すなわち、これにより、図１４に示す最も下の（ピラミッドの底面の）処理画像から、１つ上の階層の処理画像が得られたことになる。
【００５３】
次に、ステッブＳ６６に進み、変数Ｌが現在の値の１／２とされる。ステップＳ６７において、変数Ｌが１より大きいか否かが判定され、変数Ｌが１より大きい場合には、ステップＳ６２に戻り、それ以降め処理が繰り返し実行される。すなわち、これにより、第２番目の階層から、さらに第３番目の階層の画像データが得られることになる。
【００５４】
以下、同様の処理が繰り返し実行され、ステツプＳ６７において、変数Ｌが１より大きくないと判定された場合（変数Ｌが１に等しいと判定された場合）、ピラミッドフィルタ処理が終了される。
【００５５】
また、図３のステップＳ５における動作指示に対応して、ステップＳ６で顔の特徴領域を抽出する場合、動作指示に対応して変化した領域（動いた部分）をフレーム間差分処理を行うことで抽出することができる。
【００５６】
次に、フレーム間差分処理について説明する。このフレーム間差分処理においては、第１７図に示すように、時刻ｔにおけるフレームの画像と、時刻ｔ十１におけるフレームの画像の差が演算される。これにより、動きのある画像のエリアを抽出することができる。
【００５７】
すなわち、この場合、メインCPU３１は、レンダリングエンジン４１に対して、第１８図のフローチャートに示すような処理を実行させる。最初にステップＳ８１において、レンダリングエンジン４１は、メインCPU３１からの指令に対応して、ブレンディングモードとしてモード２を設定する。次に、ステップＳ８２において、レンダリングエンジン４１は、ビデオカメラ３５より入力された画像データのうち、時間的に後のフレームの画像データをデスティネーションの画像とし、時間的に前のフレームの画像データをソース画像データとする。そして、ステップＳ８３において、レンダリングエンジン４１は、デスティネーションの４角形の画素値から、ソースの４角形の画素値を減算して描画する処理を実行する。デスティネーションエリアのフレームの画素データとソースエリアのフレームの画素データは、静止画領域においては、その値は実質的に等しい値となる。その結果、ステップＳ８３における処理を実行すると、その画素データの値は、ほぼ０となる。
【００５８】
これに対して、動きのある領域の画素データの値は、デスティネーシヨンにおける場合とソースにおける場合とで異なる値となる。従って、ステップＳ８３における処理の結果得られる画像データの値は、０以外の所定の大きさを有する値となる。そこで、フレーム間差分の画像データの各画素データの値の大きさから、動き領域と静止画領域とを区分することができる。
【００５９】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものとする。
【００６０】
なお、上記したような処理を行うコンピュータプログラムをユーザに提供する提供媒体としては、磁気ディスク、CD-ROM、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体を利用することができる。
【００６１】
このように、本発明の画像処理装置、画像処理方法、および提供媒体によれば、一旦抽出された画像を、さらにより高解像度の画像として抽出するようにしたので、所定の部位を正確に追尾することが可能となる。
【図面の簡単な説明】
【００６２】
【図１】第１図は、本発明を適用した画像処理システムの構成例を示すブロック図である。
【図２】第２図は、第１図の画像処理装置の構成例を示すブロック図である。
【図３】第３図は、第２図の画像処理装置の表情データ取得処理を説明するフローチャートである。
【図４】第４図は、第３図のステップＳ１におけるアクティブ画像取得処理を説明するフローチャートである。
【図５】第５図は、第４図のアクティプ画像取得処理を説明する図である。
【図６】第６図は、第３図のステップＳ２における表示例を示す図である。
【図７】第７図は、第３図のステップＳ７における表示例を示す図である。
【図８】第８図は、第３図のステップＳ１１における処理例を説明する図である。
【図９】第９図は、第３図のステップＳ１３における処理例を説明する図である。
【図１０】第１０図は、第３図のステップＳ１４における処理例を説明する図である。
【図１１】第１１図は、第３図のステップＳ１４におけるパーティイベント処理を説明するフローチャートである。
【図１２】第１２図は、パーティイベント処理を説明する図である。
【図１３】第１３図は、パーティイベント処理の他の例を説明する図である。
【図１４】第１４図は、ピラミッドフィルタ処理を説明する図である。
【図１５】第１５図は、ピラミッドフィルタ処理を説明するフローチャートである。
【図１６】第１６図は、第１５図のステップＳ６２，Ｓ６４の処理を説明する図である。
【図１７】第１７図は、フレーム間差分処理を説明する図である。
【図１８】第１８図は、フレーム間差分処理を説明するフローチャートである。
【図１】
2004195243.tif 000003
【図２】
2004195243.tif 000004
【図３】
2004195243.tif 000005
【図４】
2004195243.tif 000006
【図５】
2004195243.tif 000007
【図６】
2004195243.tif 000008
【図７】
2004195243.tif 000009
【図８】
2004195243.tif 000010
【図９】
2004195243.tif 000011
【図１０】
2004195243.tif 000012
【図１１】
2004195243.tif 000013
【図１２】
2004195243.tif 000014
【図１３】
2004195243.tif 000015
【図１４】
2004195243.tif 000016
【図１５】
2004195243.tif 000017
【図１６】
2004195243.tif 000018
【図１７】
2004195243.tif 000019
【図１８】
2004195243.tif 000020