説明

画像処理プログラム、画像処理装置、画像処理システム、および画像処理方法

【課題】実世界画像に仮想世界画像を合成した画像を表示する際に、実世界画像に付加表示された仮想物体や文字等に対して新たな入力方法を用いて操作することができる画像処理プログラム、画像処理装置、画像処理システム、および画像処理方法を提供する。
【解決手段】実カメラによって撮像された撮像画像を繰り返し取得し、実空間における実カメラの位置および姿勢にしたがって決められる位置姿勢情報を繰り返し算出する。撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、音声入力デバイスに入力された音声の認識結果に基づいて、当該付加表示物の表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを設定する。そして、撮像画像における位置姿勢情報に応じた位置を基準として、設定された付加表示物を重畳して繰り返し生成した合成画像を表示装置に表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理プログラム、画像処理装置、画像処理システム、および画像処理方
法に関し、より特定的には、実世界画像に仮想世界画像を合成して表示する画像処理プロ
グラム、画像処理装置、画像処理システム、および画像処理方法に関する。
【背景技術】
【0002】
従来、コンピュータがつくり出す文字や仮想物体等の各種情報を、撮像された現実空間
に付加表示する技術である拡張現実(AR;Augmented Reality)の分
野において、現実空間およびコンピュータ間のインタラクティブなインターフェイスとし
て、仮想物体等を表示するための基準座標判別に関する研究が行われている。例えば、カ
メラによって撮像された画像におけるマーカの位置および姿勢に基づいて、実世界におけ
るマーカとカメラとの相対位置および相対姿勢を計算する方法が開示されている(例えば
、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】加藤博一、Mark Billinghurst、浅野浩一、橘啓八郎共著、「マーカ追跡に基づく拡張現実感システムとそのキャリブレーション」,日本バーチャルリアリティ学会論文誌、Vol4、No.4,1999年、p.606−616
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記非特許文献1に記載された方法は、カメラを移動させて視点を移動
させることによってのみ、撮像された現実空間内に付加表示される仮想物体等を動かすこ
とができる。したがって、ユーザは、上記仮想物体等を操作するようなことができない。
また、自らの視点と撮像画像の内容とを一致させるために、ユーザは、実世界を撮像する
撮像装置を把持するまたは身につけることが必要となる。そして、把持している撮像装置
や身につけた撮像装置に対してユーザの手指で入力操作することを考えた場合、物理的な
制限のために撮像しながら入力操作することが困難となる。そのため、拡張現実の分野で
用いられている従来の入力方法では、拡張現実とのインタラクティブ性も低く、また、入
力できる内容のバリエーションが乏しいため、興趣性や操作性に欠けていた。
【0005】
それ故に、本発明の目的は、実世界画像に仮想世界画像を合成した画像を表示する際に
、実世界画像に付加表示された仮想物体や文字等に対して新たな入力方法を用いて操作す
ることができる画像処理プログラム、画像処理装置、画像処理システム、および画像処理
方法を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特
許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈
されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合
には、特許請求の範囲の記載が優先する。
【0007】
本発明の画像処理プログラムの一構成例は、表示装置に画像を表示する画像処理装置の
コンピュータを、撮像画像取得手段、位置姿勢算出手段、音声データ取得手段、音声認識
手段、設定手段、画像生成手段、および表示制御手段として機能させる。撮像画像取得手
段は、実カメラによって撮像された撮像画像を繰り返し取得する。位置姿勢算出手段は、
実空間における実カメラの位置および姿勢にしたがって決められる位置姿勢情報を繰り返
し算出する。音声データ取得手段は、音声入力デバイスから音声信号を示す音声データを
取得する。音声認識手段は、音声入力デバイスに入力された音声を認識する。設定手段は
、撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、音声
認識手段の音声認識結果に基づいて、当該付加表示物の表示位置、姿勢、および表示態様
から成る群から選ばれた少なくとも1つを設定する。画像生成手段は、撮像画像における
位置姿勢情報に応じた位置を基準として、設定手段が設定した付加表示物を重畳して合成
画像を繰り返し生成する。表示制御手段は、合成画像を表示装置に繰り返し表示する。
【0008】
上記によれば、撮像画像に付加表示物を付加表示する際、付加表示物に対して音声で操
作することができ、実世界画像に付加表示された仮想物体や文字等に対して新たな入力方
法を用いて簡便性の高い操作を行うことができる。
【0009】
また、上記位置姿勢算出手段は、撮像画像に含まれる特定の撮像対象物または特徴点を
検出し、当該検出結果に基づいて当該撮像対象物または当該特徴点と実カメラとの間の相
対的な位置および姿勢を示す情報を位置姿勢情報として算出してもよい。
【0010】
上記によれば、実空間に配置された所定のマーカ等の撮像対象物や自然特徴点を用いる
ことによって、実空間における実カメラの位置や姿勢を正確に認識することができる。
【0011】
また、上記位置姿勢算出手段は、実空間における実カメラの地理的な位置および実カメ
ラの撮像方向の方位の少なくとも一方を用いて、位置姿勢情報を算出してもよい。
【0012】
上記によれば、GPS等による実カメラの地理的な位置および磁気センサ等による実カ
メラの撮像方向の方位の少なくとも一方を用いることによって、実空間における実カメラ
の位置や姿勢を正確に認識することができる。
【0013】
また、上記設定手段は、仮想オブジェクトを付加表示物として設定してもよい。また、
上記画像生成手段は、仮想カメラ設定手段、仮想オブジェクト配置手段、および仮想世界
画像生成手段を含んでいてもよい。仮想カメラ設定手段は、仮想世界において、位置姿勢
情報に基づいて仮想カメラの位置および姿勢を設定する。仮想オブジェクト配置手段は、
仮想世界に設定手段が設定した仮想オブジェクトを配置する。仮想世界画像生成手段は、
仮想カメラから見た仮想世界の画像を仮想世界画像として生成する。この場合、上記画像
生成手段は、撮像画像に仮想世界画像を重畳した画像を合成画像として生成してもよい。
【0014】
上記によれば、実空間における実カメラの位置および姿勢にしたがって決められる位置
姿勢情報に基づいて設定された仮想カメラから見た仮想世界内の仮想オブジェクトが仮想
世界画像として撮像画像に合成されるため、仮想オブジェクトがあたかも実世界に本当に
存在しているかのように見える画像を表示することができる。
【0015】
また、上記設定手段は、音声入力デバイスに入力された音声が第1の音声であると認識
され、かつ、位置姿勢情報が第1の条件を満たす場合に第1の動作に基づいて仮想オブジ
ェクトの表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを設定
し、音声入力デバイスに入力された音声が当該第1の音声であると認識され、かつ、位置
姿勢情報が当該第1の条件を満たさない場合に第2の動作に基づいて仮想オブジェクトの
表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを変更してもよ
い。
【0016】
上記によれば、同じ音声を入力したとしても、実空間における実カメラの位置および姿
勢によって仮想オブジェクトの動作が異なるため、さらに拡張現実とのインタラクティブ
性が高い操作が可能となる。
【0017】
また、上記位置姿勢算出手段は、撮像対象物と実カメラとの間の相対的な位置および姿
勢を示す情報を位置姿勢情報として算出してもよい。上記設定手段は、仮想オブジェクト
を付加表示物として設定してもよい。上記画像生成手段は、仮想カメラ設定手段、仮想オ
ブジェクト配置手段、および仮想世界画像生成手段を含んでいてもよい。仮想カメラ設定
手段は、位置姿勢情報に基づいて撮像対象物に対応する位置および方向を仮想世界内に設
定し、位置姿勢情報に基づいて当該仮想世界において当該撮像対象物に対応する位置およ
び方向を基準として仮想カメラの位置および姿勢を設定する。仮想オブジェクト配置手段
は、仮想世界に設定手段が設定した仮想オブジェクトを、撮像対象物に対応する位置を基
準として配置する。仮想世界画像生成手段は、仮想カメラから見た仮想世界の画像を仮想
世界画像として生成する。この場合、上記設定手段は、音声入力デバイスに入力された音
声が第1の音声であると認識された場合、仮想世界における撮像対象物に対応する方向を
基準として動作する第1の動作に基づいて仮想オブジェクトの表示位置、姿勢、および表
示態様から成る群から選ばれた少なくとも1つを設定し、音声入力デバイスに入力された
音声が第2の音声であると認識された場合、仮想世界における仮想カメラへの方向を基準
として動作する第2の動作に基づいて仮想オブジェクトの表示位置、姿勢、および表示態
様から成る群から選ばれた少なくとも1つを変更してもよい。上記画像生成手段は、撮像
画像に仮想世界画像を重畳した画像を合成画像として生成してもよい。
【0018】
上記によれば、異なる音声入力を行うことによって、仮想オブジェクトが実空間に配置
された所定のマーカ等の撮像対象物の方向を基準として動作する場合と、仮想オブジェク
トが仮想カメラの方向、すなわち実空間における実カメラの方向をあたかも基準としたよ
うな動作をする場合があるため、さらに拡張現実とのインタラクティブ性が高く興趣性に
富んだ操作が可能となる。
【0019】
また、上記設定手段は、音声入力デバイスに音声が入力されていない場合、または音声
認識手段が認識した音声が付加表示物を設定する対象ではない場合、付加表示物の表示位
置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを、予め定められた内
容に設定してもよい。
【0020】
上記によれば、ユーザが音声入力をしなくても付加表示物の表示位置、姿勢、および表
示態様が自動的に変化することがあり得るため、付加表示物自体が自由に行動しているか
のような画像が表示できる。
【0021】
また、上記画像処理プログラムは、撮影保存手段として、さらにコンピュータを機能さ
せてもよい。撮影保存手段は、ユーザによる撮影指示に応じて、画像生成手段が現時点で
生成している最新の合成画像を記憶手段に保存する。
【0022】
上記によれば、撮像画像に付加表示物を重畳させた状態で撮影した画像を保存できるた
め、当該状態を再表示することが可能となる。
【0023】
また、上記撮像画像取得手段は、第1の実カメラおよび当該第1の実カメラから所定の
距離離れた位置に設けられた第2の実カメラによってそれぞれ撮像された第1の撮像画像
および第2の撮像画像を繰り返し取得してもよい。上記位置姿勢算出手段は、実空間にお
ける第1の実カメラの位置および姿勢にしたがって決められる第1の位置姿勢情報および
実空間における第2の実カメラの位置および姿勢にしたがって決められる第2の位置姿勢
情報をそれぞれ繰り返し算出してもよい。上記画像生成手段は、第1の撮像画像における
第1の位置姿勢情報に応じた位置を基準として、設定手段が設定した付加表示物を重畳し
て第1の合成画像を繰り返し生成し、第2の撮像画像における第2の位置姿勢情報に応じ
た位置を基準として、設定手段が設定した付加表示物を重畳して第2の合成画像を繰り返
し生成してもよい。上記表示制御手段は、立体視可能な表示装置に第1の合成画像および
第2の合成画像を出力して、付加表示物を合成した撮像画像を繰り返し立体表示してもよ
い。
【0024】
上記によれば、立体視可能な表示装置に立体表示された撮像画像に付加表示物を付加表
示して表示することができる。
【0025】
また、上記音声認識手段は、音声入力デバイスに入力された音声を予め登録音声として
登録されている音声と少なくとも照合することによって、音声入力デバイスに入力された
音声が第1の音声であるか否かを判別し、音声入力デバイスに入力された音声波形のレベ
ルのみに基づいて、音声入力デバイスに入力された音声が第2の音声であるか否かを判別
してもよい。
【0026】
上記によれば、予め登録された登録音声と照合することによって話し言葉として発する
音声(言語)等を用いて操作したり、音声波形のレベルによって拍手の音等を用いて操作
したりすることができる。
【0027】
また、上記音声認識手段は、音声入力デバイスに入力された音声入力パターンから得ら
れる特徴パラメータ時系列に対する予め登録音声として登録されている特徴パラメータ時
系列の尤度に基づいて、音声入力デバイスに入力された音声が第1の音声であるか否かを
判別し、音声入力デバイスに入力された音声波形のレベルおよびスペクトル情報の少なく
とも一方のみに基づいて、音声入力デバイスに入力された音声が第3の音声であるか否か
を判別してもよい。
【0028】
上記によれば、入力された音声入力パターンから得られる特徴パラメータ時系列に対す
る予め登録されている特徴パラメータ時系列の尤度に基づいて音声認識することによって
、話し言葉として発する音声(言語)等を用いて操作したり、入力された音声波形のレベ
ルおよびスペクトル情報の少なくとも一方のみに基づいて音声認識することによって、拍
手の音、口笛の音、息の音等を用いて操作したりすることができる。
【0029】
また、上記画像処理プログラムは、音声登録手段として、さらにコンピュータを機能さ
せてもよい。音声登録手段は、付加表示物に対する指示に対応する音声をユーザに入力さ
せ、当該音声に応じた音声データを当該指示に対応する登録音声として記憶手段に登録す
る。この場合、上記音声認識手段は、音声登録手段が登録音声として登録した音声データ
を用いて、音声入力デバイスに入力された音声が第1の音声であるか否かを判別してもよ
い。上記設定手段は、音声認識手段が音声入力デバイスに入力された音声が第1の音声で
ある場合、当該第1の音声に対応して音声登録手段が予め登録した指示に基づいて、付加
表示物の表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを設定
してもよい。
【0030】
上記によれば、指示に対応する話し言葉として発する音声(言語)を予めユーザが音声
入力して音声データを登録することによって、音声認識の誤認識が防止されるとともに、
ユーザが好む言語を予め登録することも可能となる。
【0031】
また、上記設定手段は、位置姿勢情報が示す実カメラの地理的な位置および実カメラの
撮像方向の方位の少なくとも一方に基づいて、撮像画像に撮像されている被写体を推定し
、当該被写体に関する情報を示す文字を付加表示物として設定してもよい。上記画像生成
手段は、撮像画像における位置姿勢情報に応じた位置を基準として、設定手段が設定した
被写体に対応する文字を重畳して合成画像を繰り返し生成してもよい。上記設定手段は、
音声認識手段が音声認識した言語に一致する文字が付加表示物として設定されている場合
、当該文字が選択指示されたことを示す表示態様に変更して当該文字を設定してもよい。
上記画像生成手段は、言語に一致する文字を設定手段が変更した表示態様で撮像画像に重
畳して合成画像を生成してもよい。
【0032】
上記によれば、撮像装置で撮像されている撮像画像を表示装置に表示しながら、当該撮
像装置が撮像している場所や被写体(建物や看板等)に関連する複数の文字情報を付加情
報として当該撮像画像に重畳して表示される場合、音声によって文字情報を選択すること
ができるため、拡張現実とのインタラクティブ性および操作性が高い入力方法を提供する
ことができる。
【0033】
また、上記撮像画像取得手段は、画像処理装置を構成する筐体に内蔵される実カメラか
ら撮像画像を取得してもよい。上記音声データ取得手段は、筐体に内蔵される音声入力デ
バイスから音声データを取得してもよい。上記表示制御手段は、筐体に内蔵される表示装
置に合成画像を表示してもよい。
【0034】
上記によれば、同じ筐体内に画像処理装置、実カメラ、表示装置、および音声入力デバ
イスを内蔵することによって、あたかも表示装置を介して実空間を見ているかのような拡
張現実を実現することができるとともに、当該実空間内に音声を発して指示しているよう
な操作感や臨場感を与えることができる。
【0035】
また、本発明は、上記各手段を備える画像処理装置および画像処理システムや上記各手
段で行われる動作を含む画像処理方法の形態で実施されてもよい。
【発明の効果】
【0036】
本発明によれば、撮像画像に付加表示物を付加表示する際、付加表示物に対して音声で
操作することができ、実世界画像に付加表示された仮想物体や文字等に対して新たな入力
方法を用いて簡便性の高い操作を行うことができる。
【図面の簡単な説明】
【0037】
【図1】開いた状態におけるゲーム装置10の一例を示す正面図
【図2】開いた状態におけるゲーム装置10の一例を示す側面図
【図3A】閉じた状態におけるゲーム装置10の一例を示す左側面図
【図3B】閉じた状態におけるゲーム装置10の一例を示す正面図
【図3C】閉じた状態におけるゲーム装置10の一例を示す右側面図
【図3D】閉じた状態におけるゲーム装置10の一例を示す背面図
【図4】ゲーム装置10の内部構成の一例を示すブロック図
【図5】ユーザがゲーム装置10を両手で把持する様子の一例を示す図
【図6】外側撮像部23の撮像対象となるマーカMKの一例を示す図
【図7】ユーザがゲーム装置10に向かって音声を入力している様子の一例を概説する図解図
【図8】上側LCD22に表示される表示形態例を示す図
【図9】上側LCD22に表示される表示形態例を示す図
【図10】上側LCD22に表示される表示形態例を示す図
【図11】上側LCD22に表示される表示形態例を示す図
【図12】画像処理プログラムを実行することに応じて、メインメモリ32に記憶される各種データの一例を示す図
【図13】図12の音声動作対応テーブルデータDiの一例を示す図
【図14】画像処理プログラムを実行することによってゲーム装置10が画像処理する動作の一例を示すフローチャート
【図15】図14のステップ54で行われる音声認識処理の詳細な動作の一例を示すサブルーチン
【図16】図14のステップ55で行われる画像合成処理の詳細な前半の動作の一例を示すサブルーチン
【図17】図14のステップ55で行われる画像合成処理の詳細な後半の動作の一例を示すサブルーチン
【図18】仮想キャラクタCと左仮想カメラとの位置関係の一例を示す図
【図19】仮想キャラクタCと右仮想カメラとの位置関係の一例を示す図
【図20】左目用画像の生成方法の一例を示す図
【図21】文字情報が付加情報として撮像画像に重畳して表示される一例を示す図
【発明を実施するための形態】
【0038】
図面を参照して、本発明の一実施形態に係る画像処理プログラムを実行する画像処理装
置について説明する。本発明の画像処理プログラムは、任意のコンピュータシステムで実
行されることによって適用することができるが、画像処理装置の一例として携帯型のゲー
ム装置10を用い、ゲーム装置10で実行される画像処理プログラムを用いて説明する。
なお、図1〜図3Dは、ゲーム装置10の外観の一例を示す平面図である。ゲーム装置1
0は、一例として携帯型のゲーム装置であり、図1〜図3Dに示すように折り畳み可能に
構成されている。図1は、開いた状態(開状態)におけるゲーム装置10の一例を示す正
面図である。図2は、開状態におけるゲーム装置10の一例を示す右側面図である。図3
Aは、閉じた状態(閉状態)におけるゲーム装置10の一例を示す左側面図である。図3
Bは、閉状態におけるゲーム装置10の一例を示す正面図である。図3Cは、閉状態にお
けるゲーム装置10の一例を示す右側面図である。図3Dは、閉状態におけるゲーム装置
10の一例を示す背面図である。ゲーム装置10は、撮像部を内蔵しており、当該撮像部
によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存
したりすることが可能である。また、ゲーム装置10は、交換可能なメモリカード内に記
憶され、または、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であ
り、仮想空間に設定された仮想カメラから見た仮想空間画像等のコンピュータグラフィッ
クス処理により生成された画像を画面に表示することもできる。
【0039】
図1〜図3Dにおいて、ゲーム装置10は、下側ハウジング11および上側ハウジング
21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能
)に連結されている。図1の例では、下側ハウジング11および上側ハウジング21は、
それぞれ横長の長方形の板状で形成され、互いの長辺部分で回動可能に連結されている。
通常、ユーザは、開状態でゲーム装置10を使用する。そして、ユーザは、ゲーム装置1
0を使用しない場合には閉状態としてゲーム装置10を保管する。また、ゲーム装置10
は、上記閉状態および開状態のみでなく、下側ハウジング11と上側ハウジング21との
なす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力など
によってその開閉角度を維持することができる。つまり、上側ハウジング21を下側ハウ
ジング11に対して任意の角度で静止させることができる。
【0040】
図1および図2に示されるように、下側ハウジング11の上側長辺部分には、下側ハウ
ジング11の内側面(主面)11Bに対して垂直な方向に突起する突起部11Aが設けら
れる。また、上側ハウジング21の下側長辺部分には、上側ハウジング21の下側面から
当該下側面に垂直な方向に突起する突起部21Aが設けられる。下側ハウジング11の突
起部11Aと上側ハウジング21の突起部21Aとが連結されることにより、下側ハウジ
ング11と上側ハウジング21とが、折り畳み可能に接続される。
【0041】
下側ハウジング11には、下側LCD(Liquid Crystal Displa
y:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L(図1、図3
A〜図3D)、アナログスティック15、LED16A〜16B、挿入口17、および、
マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
【0042】
図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD1
2は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置さ
れる。下側LCD12は、下側ハウジング11の中央に配置される。下側LCD12は、
下側ハウジング11の内側面(主面)に設けられ、下側ハウジング11の内側面に設けら
れた開口部から下側LCD12の画面が露出する。そして、ゲーム装置10を使用しない
場合には上記閉状態としておくことによって、下側LCD12の画面が汚れたり傷ついた
りすることを防止することができる。下側LCD12の画素数は、一例として、256d
ot×192dot(横×縦)である。他の例として、下側LCD12の画素数は、32
0dot×240dot(横×縦)である。下側LCD12は、後述する上側LCD22
とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本
実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Lu
minescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用
してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することがで
きる。
【0043】
図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備え
ている。タッチパネル13は、下側LCD12の画面上を覆うように装着されている。な
お、本実施形態では、タッチパネル13は、例えば抵抗膜方式のタッチパネルが用いられ
る。ただし、タッチパネル13は、抵抗膜方式に限らず、例えば静電容量方式等、任意の
押圧式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として
、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしも
タッチパネル13の解像度と下側LCD12の解像度とが一致している必要はない。また
、下側ハウジング11の上側面には挿入口17(図1および図3Dに示す点線)が設けら
れている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチ
ペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペ
ン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対
する入力をすることも可能である。
【0044】
各操作ボタン14A〜14Lは、所定の入力を行うための入力装置である。図1に示さ
れるように、下側ハウジング11の内側面(主面)には、各操作ボタン14A〜14Lの
うち、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタ
ン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン1
4K、およびスタートボタン14Lが設けられる。十字ボタン14Aは、十字の形状を有
しており、上下左右の方向を指示するボタンを有している。ボタン14B、ボタン14C
、ボタン14D、およびボタン14Eは、十字状に配置される。ボタン14A〜14E、
セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lには、ゲー
ム装置10が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタ
ン14Aは選択操作等に用いられ、各操作ボタン14B〜14Eは例えば決定操作やキャ
ンセル操作等に用いられる。また、電源ボタン14Fは、ゲーム装置10の電源をオン/
オフするために用いられる。
【0045】
アナログスティック15は、方向を指示するデバイスであり、下側ハウジング11の内
側面の下側LCD12より左側領域の上部領域に設けられる。図1に示すように、十字ボ
タン14Aが下側LCD12より左側領域の下部領域に設けられ、アナログスティック1
5が十字ボタン14Aの上方に設けられる。また、アナログスティック15および十字ボ
タン14Aは、下側ハウジング11を把持した左手の親指で操作可能な位置に設計される
。また、アナログスティック15を上部領域に設けたことにより、下側ハウジング11を
把持する左手の親指が自然と位置するところにアナログスティック15が配され、十字ボ
タン14Aは、左手の親指を少し下にずらした位置に配される。アナログスティック15
は、そのキートップが、下側ハウジング11の内側面に平行にスライドするように構成さ
れている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機
能する。例えば、3次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置1
0によって実行される場合、アナログスティック15は、当該所定のオブジェクトを3次
元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオ
ブジェクトは、アナログスティック15のキートップがスライドした方向に移動される。
なお、アナログスティック15として、上下左右および斜め方向の任意の方向に所定量だ
け傾倒することでアナログ入力を可能としたものを用いてもよい。
【0046】
十字状に配置される、ボタン14B、ボタン14C、ボタン14D、およびボタン14
Eの4つのボタンは、下側ハウジング11を把持する右手の親指が自然と位置するところ
に配置される。また、これらの4つのボタンとアナログスティック15とは、下側LCD
12を挟んで、左右対称に配置される。これにより、ゲームプログラムによっては、例え
ば、左利きの人が、これらの4つのボタンを使用して方向指示入力をすることも可能であ
る。
【0047】
また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイ
クロフォン用孔18の下部には後述する音声入力装置としてのマイク(図4参照)が設け
られ、当該マイクがゲーム装置10の外部の音を検出する。
【0048】
図3Bおよび図3Dに示されるように、下側ハウジング11の上側面には、Lボタン1
4GおよびRボタン14Hが設けられている。Lボタン14Gは、下側ハウジング11の
上面の左端部に設けられ、Rボタン14Hは、下側ハウジング11の上面の右端部に設け
られる。後述のように、Lボタン14GおよびRボタン14Hは、撮像部のシャッターボ
タン(撮影指示ボタン)として機能する。また、図3Aに示されるように、下側ハウジン
グ11の左側面には、音量ボタン14Iが設けられる。音量ボタン14Iは、ゲーム装置
10が備えるスピーカの音量を調整するために用いられる。
【0049】
図3Aに示されるように、下側ハウジング11の左側面には開閉可能なカバー部11C
が設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモ
リ46とを電気的に接続するためのコネクタ(図示せず)が設けられる。データ保存用外
部メモリ46は、上記コネクタに着脱自在に装着される。データ保存用外部メモリ46は
、例えば、ゲーム装置10によって撮像された画像のデータを記憶(保存)するために用
いられる。なお、上記コネクタおよびそのカバー部11Cは、下側ハウジング11の右側
面に設けられてもよい。
【0050】
図3Dに示されるように、下側ハウジング11の上側面にはゲーム装置10とゲームプ
ログラムを記録した外部メモリ45を挿入するための挿入口11Dが設けられ、その挿入
口11Dの内部には、外部メモリ45と電気的に着脱自在に接続するためのコネクタ(図
示せず)が設けられる。外部メモリ45がゲーム装置10に接続されることにより、所定
のゲームプログラムが実行される。なお、上記コネクタおよび挿入口11Dは、下側ハウ
ジング11の他の側面(例えば、右側面等)に設けられてもよい。
【0051】
図1に示されるように、下側ハウジング11の下側面には、ゲーム装置10の電源のO
N/OFF状況をユーザに通知する第1LED16Aが設けられる。また、図3Cに示さ
れるように、下側ハウジング11の右側面には、ゲーム装置10の無線通信の確立状況を
ユーザに通知する第2LED16Bが設けられる。ゲーム装置10は、他の機器との間で
無線通信を行うことが可能であり、第2LED16Bは、他の機器との無線通信が確立し
ている場合に点灯する。ゲーム装置10は、例えば、IEEE802.11.b/gの規
格に準拠した方式により、無線LANに接続する機能を有する。下側ハウジング11の右
側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(図3
C参照)。
【0052】
なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電
式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介
して当該電池を充電することができる。
【0053】
上側ハウジング21には、上側LCD22、2つの外側撮像部23(外側左撮像部23
aおよび外側右撮像部23b)、内側撮像部24、3D調整スイッチ25、および3Dイ
ンジケータ26が設けられる。以下、これらの詳細について説明する。
【0054】
図1に示すように、上側LCD22は、上側ハウジング21に収納される。上側LCD
22は、横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配
置される。上側LCD22は、上側ハウジング21の中央に配置される。上側LCD22
の画面の面積は、一例として下側LCD12の画面の面積よりも大きく設定される。具体
的には、上側LCD22の画面は、下側LCD12の画面よりも横長に設定される。すな
わち、上側LCD22の画面のアスペクト比における横幅の割合は、下側LCD12の画
面のアスペクト比における横幅の割合よりも大きく設定される。
【0055】
上側LCD22の画面は、上側ハウジング21の内側面(主面)21Bに設けられ、上
側ハウジング21の内側面に設けられた開口部から上側LCD22の画面が露出する。ま
た、図2に示すように、上側ハウジング21の内側面は、透明なスクリーンカバー27に
よって覆われている。スクリーンカバー27は、上側LCD22の画面を保護するととも
に、上側LCD22と上側ハウジング21の内側面と一体的にさせ、これにより統一感を
持たせている。上側LCD22の画素数は、一例として640dot×200dot(横
×縦)である。他の例として、上側LCD22の画素数は、800dot×240dot
(横×縦)である。なお、本実施形態では、上側LCD22が液晶表示装置であるとした
が、例えばELを利用した表示装置などが利用されてもよい。また、上側LCD22とし
て、任意の解像度の表示装置を利用することができる。
【0056】
上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。上側L
CD22は、実質的に同一の表示領域を用いて左目用画像と右目用画像とを表示すること
が可能である。具体的には、上側LCD22は、左目用画像と右目用画像とが所定単位で
(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。一例として、上
側LCD22の画素数が800dot×240dotで構成される場合、横の800ピク
セルを左目用画像と右目用画像とに交互にそれぞれ400ピクセル割り当てることによっ
て立体視が可能となる。なお、上側LCD22は、左目用画像と右目用画像とが交互に表
示される方式の表示装置であってもよい。また、上側LCD22は、裸眼立体視可能な表
示装置である。この場合、上側LCD22は、横方向に交互に表示される左目用画像と右
目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパ
ララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、上側L
CD22は、パララックスバリア方式のものとする。上側LCD22は、右目用画像と左
目用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、上側
LCD22は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画
像をそれぞれ視認させることにより、ユーザにとって立体感のある立体画像(立体視可能
な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にす
ることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することがで
きる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち
、表示された同一の画像が右目にも左目にも見えるような表示モードである。)。このよ
うに、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的
に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装
置である。この表示モードの切り替えは、後述する3D調整スイッチ25によって行われ
る。
【0057】
外側撮像部23は、上側ハウジング21の外側面(上側LCD22が設けられた主面と
反対側の背面)21Dに設けられた2つの撮像部(外側左撮像部23aおよび外側右撮像
部23b)の総称である。外側左撮像部23aおよび外側右撮像部23bの撮像方向は、
いずれも外側面21Dの外向きの法線方向である。また、外側左撮像部23aおよび外側
右撮像部23bは、いずれも、上側LCD22の表示面(内側面)の法線方向と180度
反対の方向に設計される。すなわち、外側左撮像部23aの撮像方向および外側右撮像部
23bの撮像方向は、平行である。外側左撮像部23aと外側右撮像部23bとは、ゲー
ム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能で
ある。また、プログラムによっては、2つの外側撮像部(外側左撮像部23aおよび外側
右撮像部23b)のいずれか一方を単独で用いて、外側撮像部23を非ステレオカメラと
して使用することも可能である。また、プログラムによっては、2つの外側撮像部(外側
左撮像部23aおよび外側右撮像部23b)で撮像した画像を合成してまたは補完的に使
用することにより撮像範囲を広げた撮像を行うことも可能である。本実施形態では、外側
撮像部23は、外側左撮像部23aおよび外側右撮像部23bの2つの撮像部で構成され
る。外側左撮像部23aおよび外側右撮像部23bは、それぞれ所定の共通の解像度を有
する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズ
とを含む。レンズは、ズーム機構を有するものでもよい。
【0058】
図1の破線および図3Bの実線で示されるように、外側撮像部23を構成する外側左撮
像部23aおよび外側右撮像部23bは、上側LCD22の画面の横方向と平行に並べら
れて配置される。すなわち、2つの外側左撮像部23aおよび外側右撮像部23bを結ん
だ直線が上側LCD22の画面の横方向と平行になるように、外側左撮像部23aおよび
外側右撮像部23bが配置される。図1の破線23aおよび23bは、上側ハウジング2
1の内側面とは反対側の外側面に存在する外側左撮像部23aおよび外側右撮像部23b
をそれぞれ表している。図1に示すように、ユーザが上側LCD22の画面を正面から視
認した場合に、外側左撮像部23aは左側に外側右撮像部23bは右側にそれぞれ位置す
る。外側撮像部23をステレオカメラとして機能させるプログラムが実行されている場合
、外側左撮像部23aは、ユーザの左目で視認される左目用画像を撮像し、外側右撮像部
23bは、ユーザの右目で視認される右目用画像を撮像する。外側左撮像部23aおよび
外側右撮像部23bの間隔は、人間の両目の間隔程度に設定され、例えば、30mm〜7
0mmの範囲で設定されてもよい。なお、外側左撮像部23aおよび外側右撮像部23b
の間隔は、この範囲に限らない。
【0059】
なお、本実施例においては、外側左撮像部23aおよび外側右撮像部23bは、ハウジ
ングに固定されており、撮像方向を変更することはできない。
【0060】
外側左撮像部23aおよび外側右撮像部23bは、上側LCD22(上側ハウジング2
1)の左右方向に関して中央から対称となる位置にそれぞれ配置される。すなわち、外側
左撮像部23aおよび外側右撮像部23bは、上側LCD22を左右に2等分する線に対
して対称の位置にそれぞれ配置される。また、外側左撮像部23aおよび外側右撮像部2
3bは、上側ハウジング21を開いた状態において、上側ハウジング21の上部であって
、上側LCD22の画面の上端よりも上方の位置の裏側に配置される。すなわち、外側左
撮像部23aおよび外側右撮像部23bは、上側ハウジング21の外側面であって、上側
LCD22を外側面に投影した場合、投影した上側LCD22の画面の上端よりも上方に
配置される。
【0061】
このように、外側撮像部23の2つの撮像部(外側左撮像部23aおよび外側右撮像部
23b)が上側LCD22の左右方向に関して中央から対称の位置に配置されることによ
り、ユーザが上側LCD22を正視した場合に、外側撮像部23それぞれの撮像方向をユ
ーザの左右の目それぞれの視線方向と一致させることができる。また、外側撮像部23は
、上側LCD22の画面の上端より上方の裏側の位置に配置されるため、外側撮像部23
と上側LCD22とが上側ハウジング21の内部で干渉することがない。したがって、外
側撮像部23を上側LCD22の画面の裏側に配置する場合と比べて、上側ハウジング2
1を薄く構成することが可能となる。
【0062】
内側撮像部24は、上側ハウジング21の内側面(主面)21Bに設けられ、当該内側
面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部24は、所定の解像度
を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レ
ンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0063】
図1に示すように、内側撮像部24は、上側ハウジング21を開いた状態において、上
側ハウジング21の上部であって、上側LCD22の画面の上端よりも上方に配置され、
上側ハウジング21の左右方向に関して中央の位置(上側ハウジング21(上側LCD2
2の画面)を左右に2等分する線の線上)に配置される。具体的には、図1および図3B
に示されるように、内側撮像部24は、上側ハウジング21の内側面であって、外側左撮
像部23aおよび外側右撮像部23bの中間の裏側の位置に配置される。すなわち、上側
ハウジング21の外側面に設けられた外側左撮像部23aおよび外側右撮像部23bを上
側ハウジング21の内側面に投影した場合、当該投影した外側左撮像部23aおよび外側
右撮像部23bの中間に、内側撮像部24が設けられる。図3Bで示される破線24は、
上側ハウジング21の内側面に存在する内側撮像部24を表している。
【0064】
このように、内側撮像部24は、外側撮像部23とは反対方向を撮像する。内側撮像部
24は、上側ハウジング21の内側面であって、2つの外側撮像部23の中間位置となる
裏側に設けられる。これにより、ユーザが上側LCD22を正視した際、内側撮像部24
でユーザの顔を正面から撮像することができる。また、外側左撮像部23aおよび外側右
撮像部23bと内側撮像部24とが上側ハウジング21の内部で干渉することがないため
、上側ハウジング21を薄く構成することが可能となる。
【0065】
3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表
示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は
、上側LCD22に表示された立体視可能な画像(立体画像)の立体感を調整するために
用いられる。図1〜図3Dに示されるように、3D調整スイッチ25は、上側ハウジング
21の内側面および右側面の端部に設けられ、ユーザが上側LCD22を正視した場合に
、当該3D調整スイッチ25を視認できる位置に設けられる。3D調整スイッチ25は、
所定方向(例えば、上下方向)の任意の位置にスライド可能なスライダを有しており、当
該スライダの位置に応じて上側LCD22の表示モードが設定される。
【0066】
例えば、3D調整スイッチ25のスライダが最下点位置に配置されている場合、上側L
CD22が平面表示モードに設定され、上側LCD22の画面には平面画像が表示される
。なお、上側LCD22を立体表示モードのままとして、左目用画像と右目用画像とを同
一の画像とすることにより平面表示してもよい。一方、上記最下点位置より上側にスライ
ダが配置されている場合、上側LCD22は立体表示モードに設定される。この場合、上
側LCD22の画面には立体視可能な画像が表示される。ここで、スライダが上記最下点
位置より上側に配置されている場合、スライダの位置に応じて、立体画像の見え方が調整
される。具体的には、スライダの位置に応じて、右目用画像および左目用画像における横
方向の位置のずれ量が調整される。
【0067】
3Dインジケータ26は、上側LCD22が立体表示モードか否かを示す。例えば、3
Dインジケータ26は、LEDであり、上側LCD22の立体表示モードが有効の場合に
点灯する。図1に示されるように、3Dインジケータ26は、上側ハウジング21の内側
面に設けられ、上側LCD22の画面近傍に設けられる。このため、ユーザが上側LCD
22の画面を正視した場合、ユーザは3Dインジケータ26を視認しやすい。したがって
、ユーザは、上側LCD22の画面を視認している状態でも、上側LCD22の表示モー
ドを容易に認識することができる。
【0068】
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するス
ピーカ44からの音声がこのスピーカ孔21Eから出力される。
【0069】
次に、図4を参照して、ゲーム装置10の内部構成を説明する。なお、図4は、ゲーム
装置10の内部構成の一例を示すブロック図である。
【0070】
図4において、ゲーム装置10は、上述した各構成部に加えて、情報処理部31、メイ
ンメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外
部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル
通信モジュール37、リアルタイムクロック(RTC)38、加速度センサ39、角速度
センサ40、電源回路41、およびインターフェイス回路(I/F回路)42等の電子部
品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11
(または上側ハウジング21でもよい)内に収納される。
【0071】
情報処理部31は、所定のプログラムを実行するためのCPU(Central Pr
ocessing Unit)311、画像処理を行うGPU(Graphics Pr
ocessing Unit)312等を含む情報処理手段である。本実施形態では、所
定のプログラムがゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された
外部メモリ45やデータ保存用内部メモリ35)に記憶されている。情報処理部31のC
PU311は、当該所定のプログラムを実行することによって、後述する画像処理やゲー
ム処理を実行する。なお、情報処理部31のCPU311によって実行されるプログラム
は、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部31は
、VRAM(Video RAM)313を含む。情報処理部31のGPU312は、情
報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画す
る。そして、情報処理部31のGPU312は、VRAM313に描画された画像を上側
LCD22および/または下側LCD12に出力し、上側LCD22および/または下側
LCD12に当該画像が表示される。
【0072】
情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メ
モリI/F34、およびデータ保存用内部メモリ35が接続される。外部メモリI/F3
3は、外部メモリ45を着脱自在に接続するためのインターフェイスである。また、デー
タ保存用外部メモリI/F34は、データ保存用外部メモリ46を着脱自在に接続するた
めのインターフェイスである。
【0073】
メインメモリ32は、情報処理部31(CPU311)のワーク領域やバッファ領域と
して用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、画像処理やゲ
ーム処理で用いられる各種データを一時的に記憶したり、外部(外部メモリ45や他の機
器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメ
モリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
【0074】
外部メモリ45は、情報処理部31によって実行されるプログラムを記憶するための不
揮発性の記憶手段である。外部メモリ45は、例えば読み取り専用の半導体メモリで構成
される。外部メモリ45が外部メモリI/F33に接続されると、情報処理部31は外部
メモリ45に記憶されたプログラムを読み込むことができる。情報処理部31が読み込ん
だプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ4
6は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成さ
れ、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ46に
は、外側撮像部23で撮像された画像や他の機器で撮像された画像が記憶される。データ
保存用外部メモリ46がデータ保存用外部メモリI/F34に接続されると、情報処理部
31はデータ保存用外部メモリ46に記憶された画像を読み込み、上側LCD22および
/または下側LCD12に当該画像を表示することができる。
【0075】
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フ
ラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、デー
タ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウン
ロードされたデータやプログラムが格納される。
【0076】
無線通信モジュール36は、例えばIEEE802.11.b/gの規格に準拠した方
式により、無線LANに接続する機能を有する。また、ローカル通信モジュール37は、
所定の通信方式(例えば赤外線通信)により同種のゲーム装置との間で無線通信を行う機
能を有する。無線通信モジュール36およびローカル通信モジュール37は、情報処理部
31に接続される。情報処理部31は、無線通信モジュール36を用いてインターネット
を介して他の機器との間でデータを送受信したり、ローカル通信モジュール37を用いて
同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0077】
情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(本
実施形態では、xyz軸)方向に沿った直線方向の加速度(直線加速度)の大きさを検出
する。加速度センサ39は、例えば下側ハウジング11の内部に設けられる。加速度セン
サ39は、図1に示すように、下側ハウジング11の長辺方向をx軸、下側ハウジング1
1の短辺方向をy軸、下側ハウジング11の内側面(主面)に対して垂直な方向をz軸と
して、ゲーム装置10の各軸方向へ生じる直線加速度の大きさをそれぞれ検出する。なお
、加速度センサ39は、例えば静電容量式の加速度センサとするが、他の方式の加速度セ
ンサを用いるようにしてもよい。また、加速度センサ39は、1軸または2軸方向を検出
する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速
度を示すデータ(加速度データ)を受け取って、ゲーム装置10の姿勢や動きを算出する

【0078】
情報処理部31には、角速度センサ40が接続される。角速度センサ40は、ゲーム装
置10の3軸(本実施形態では、xyz軸)周りに生じる角速度をそれぞれ検出し、検出
した角速度を示すデータ(角速度データ)を情報処理部31へ出力する。角速度センサ4
0は、例えば下側ハウジング11の内部に設けられる。情報処理部31は、角速度センサ
40から出力された角速度データを受け取って、ゲーム装置10の姿勢や動きを算出する

【0079】
情報処理部31には、RTC38および電源回路41が接続される。RTC38は、時
間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計
時された時間に基づき現在時刻(日付)を計算する。電源回路41は、ゲーム装置10が
有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲ
ーム装置10の各部品に電力を供給する。
【0080】
情報処理部31には、I/F回路42が接続される。I/F回路42には、マイク43
、スピーカ44、およびタッチパネル13が接続される。具体的には、I/F回路42に
は、図示しないアンプを介してスピーカ44が接続される。マイク43は、ユーザの音声
を検知して音声信号をI/F回路42に出力する。アンプは、I/F回路42からの音声
信号を増幅し、音声をスピーカ44から出力させる。I/F回路42は、マイク43およ
びスピーカ44(アンプ)の制御を行う音声制御回路と、タッチパネル13の制御を行う
タッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD
/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネ
ル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを
生成して情報処理部31に出力する。タッチ位置データは、タッチパネル13の入力面に
おいて入力が行われた位置(タッチ位置)の座標を示す。なお、タッチパネル制御回路は
、タッチパネル13からの信号の読み込み、およびタッチ位置データの生成を所定時間に
1回の割合で行う。情報処理部31は、タッチ位置データを取得することにより、タッチ
パネル13に対して入力が行われたタッチ位置を知ることができる。
【0081】
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続
される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する
入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作
ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じ
た処理を実行する。
【0082】
下側LCD12および上側LCD22は、情報処理部31に接続される。下側LCD1
2および上側LCD22は、情報処理部31(GPU312)の指示にしたがって画像を
表示する。本実施形態では、情報処理部31は、例えば入力操作用の画像を下側LCD1
2に表示させ、外側撮像部23および内側撮像部24のいずれかから取得した画像を上側
LCD22に表示させる。すなわち、情報処理部31は、上側LCD22に外側撮像部2
3で撮像した右目用画像と左目用画像とを用いた立体画像(立体視可能な画像)を表示さ
せたり、内側撮像部24で撮像した平面画像を上側LCD22に表示させたり、上側LC
D22に外側撮像部23で撮像した右目用画像および左目用画像の一方を用いた平面画像
を表示させたりする。
【0083】
具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と
接続され、当該LCDコントローラに対して視差バリアのON/OFFを制御する。上側
LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格
納された(外側撮像部23で撮像された)右目用画像と左目用画像とが、上側LCD22
に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1
ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素
データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像
と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1
ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画
像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そし
て、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、
ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上
側LCD22の画面には立体視可能な画像が表示される。
【0084】
外側撮像部23および内側撮像部24は、情報処理部31に接続される。外側撮像部2
3および内側撮像部24は、情報処理部31の指示にしたがって画像を撮像し、撮像した
画像データを情報処理部31に出力する。本実施形態では、情報処理部31は、外側撮像
部23および内側撮像部24のいずれか一方に対して撮像指示を行い、撮像指示を受けた
撮像部が画像を撮像して画像データを情報処理部31に送る。具体的には、ユーザによる
タッチパネル13や操作ボタン14を用いた操作によって使用する撮像部が選択される。
そして、撮像部が選択されたことを情報処理部31(CPU311)が検知し、情報処理
部31が外側撮像部23または内側撮像部24に対して撮像指示を行う。
【0085】
3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、ス
ライダの位置に応じた電気信号を情報処理部31に送信する。
【0086】
3Dインジケータ26は、情報処理部31に接続される。情報処理部31は、3Dイン
ジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示
モードである場合、3Dインジケータ26を点灯させる。
【0087】
次に、図5〜図11を参照して、ゲーム装置10の使用状態および表示内容の一例を示
す。なお、図5は、ユーザがゲーム装置10を把持して操作する様子の一例を示す図であ
る。図6は、外側撮像部23の撮像対象となるマーカMKの一例を示す図である。図7は
、ユーザがゲーム装置10に向かって音声を入力している様子の一例を概説する図解図で
ある。図8〜図11は、上側LCD22に表示される表示形態例を示す図である。
【0088】
図5に示されるように、ユーザは、下側LCD12および上側LCD22がユーザの方
向を向く状態で、両手の掌と中指、薬指および小指とで下側ハウジング11の側面および
外側面(内側面の反対側の面)を把持する。このように把持することで、ユーザは、下側
ハウジング11を把持したまま、各操作ボタン14A〜14Eおよびアナログスティック
15に対する操作を親指で行い、Lボタン14GおよびRボタン14Hに対する操作を人
差し指で行うことができる。そして、図5に示した一例では、外側左撮像部23aおよび
外側右撮像部23bによってゲーム装置10の背面側の実世界を撮像した実世界画像が、
上側LCD22に立体視表示されている。
【0089】
本実施形態では、画像処理プログラムに基づいて、外側撮像部23(外側左撮像部23
a、外側右撮像部23b)によって現在撮像されている実世界の画像と、3次元の仮想空
間に存在する仮想オブジェクトの画像とを合成した合成画像が、上側LCD22の画面に
立体視可能に表示される。具体的には、外側撮像部23で撮影された2つの撮影画像は、
所定の視差を有するように上側LCD22に供給されて立体視表示される。上側LCD2
2の画面上では、外側撮像部23に相対的に近い被写体が相対的に手前に位置するように
ユーザに視認され、外側撮像部23から相対的に遠い被写体が相対的に遠くに位置するよ
うにユーザに視認される。
【0090】
図5は、外側撮像部23によってマーカMK(撮像対象となる実オブジェクト)が撮像
されているときに、上側LCD22の画面に表示される仮想オブジェクトである仮想キャ
ラクタC(立体画像)の一例を示している。図5に示すように、マーカMKは、一例とし
て矢印を含む正方形が描かれており、CPU311は、外側撮像部23から取得される撮
像画像に対して例えばパターンマッチング等の画像処理を行うことによって、当該撮像画
像にマーカMKが含まれているか否かを判定することができる。外側撮像部23によって
マーカMKが撮像されているときには、上側LCD22には、実世界画像としてマーカM
Kが立体視可能にマーカ画像MKiとして表示されるとともに、実世界画像に含まれるマ
ーカ画像MKiの表示位置に仮想キャラクタC(例えば、犬を模した仮想オブジェクト)
が立体視可能に合成表示される。なお、図5では、理解を容易にするために、上側LCD
22の画面から仮想キャラクタCをはみ出して図示しているが、実際には仮想キャラクタ
Cは画面内に表示される。後述の図7についても同様である。また、図5および図7等に
おいては、表示対象が飛び出ているように視認される様子を図示しているが、立体視可能
に表示する、と言った場合、必ずしも飛び出し方向に視認される場合のみでなく、画面よ
り奥側に、奥行きを持って表示される場合も含む。
【0091】
ここで、図6に示すように、マーカMKには、向き(前方向、右方向、上方向)が定義
されており、マーカMKの配置方向に基づいた姿勢で仮想キャラクタCを配置することが
できる。例えば、仮想キャラクタCの前方向がマーカ画像MKiの前方向と一致するよう
に、マーカ画像MKiの上に仮想キャラクタCを配置することが可能である。なお、以下
の説明では、マーカ画像MKiの前方向を「マーカの方向」と記載することがある。
【0092】
図7に示すように、ゲーム装置10に表示された仮想キャラクタCに動作指示する場合
、ユーザは、音声によって当該動作指示することが可能となっている。なお、ゲーム装置
10は、ユーザがゲーム装置10に入力する音声は、話し言葉として発する音(言語)の
他に、口笛の音、拍手の音、息の音等が考えられるが、本明細書で用いる「音声」は、こ
れらの音を総称しているものとする。
【0093】
ゲーム装置10にユーザの音声を判別させるためには、プレイヤは、マイク43(マイ
クロフォン用孔18)に向かって自身の音声を入力する。一方、ゲーム装置10は、I/
F回路42を介して、マイク43から入力された音声信号を示す音声データを取得し、当
該音声データを解析することによってマイク43から入力された音声を判別する。そして
、ゲーム装置10は、マイク43から入力された音声の判別結果に応じた処理を行い、当
該判別結果に応じて仮想キャラクタCを動作させる。一例として、ゲーム装置10は、マ
イク43から入力された音声が、仮想キャラクタCを立ち上がらせる動作を指示する言語
(例えば、「チンチン」)であると判別された場合、判別された音声に応じて仮想キャラ
クタCに立ち上がらせる動作を行わせて上側LCD22に表示する(図7の状態)。
【0094】
次に、図8〜図11を参照して、外側撮像部23によってマーカMKが撮像されている
ときに上側LCD22の画面に表示される仮想キャラクタCの他の一例について説明する

【0095】
図8において、仮想キャラクタCは、「通常状態」で表示されている。ここで、「通常
状態」は、ユーザからの動作指示に基づいた動作を行っていない場合に仮想キャラクタC
が行動している状態を示している。例えば、「通常状態」において、仮想キャラクタCは
、4つ足を地面(マーカ画像MKi上またはマーカ画像MKiと同一平面上)につけてい
る状態で静止するまたは4つ足で自由に動いて行動する。図8に示した一例では、仮想キ
ャラクタCが4つ足を地面につけて仮想キャラクタCの前方向がマーカ画像MKiの前方
向と一致する状態を「通常状態」として表示されている。
【0096】
図9では、仮想キャラクタCを座らせる動作を指示する言語(例えば、「おすわり」)
をゲーム装置10に入力した場合の動作を示している。図9に示すように、ゲーム装置1
0に仮想キャラクタCを座らせる動作を指示する音声が入力された場合、仮想キャラクタ
Cは、地面(マーカ画像MKi上またはマーカ画像MKiと同一平面上)に座る動作を開
始し、仮想キャラクタCの前方向をマーカ画像MKiの前方向と一致させて地面上に座る
。このように、仮想キャラクタCに芸の名称を示す言語(例えば、「おすわり」や「ふせ
」)をゲーム装置10に入力した場合、仮想キャラクタCの前方向をマーカ画像MKiの
前方向と一致させて仮想キャラクタCが当該言語に該当する芸をすることがある。また、
他の例として、仮想キャラクタCの名前を示す言語をゲーム装置10に入力した場合、仮
想キャラクタCの前方向をマーカ画像MKiの前方向と一致させて仮想キャラクタCが吠
えることがある。
【0097】
例えば、図10に示すように、ユーザがゲーム装置10を移動させることによって、撮
像されるマーカMKの位置および向きが変化する、すなわち上側LCD22の画面に表示
されるマーカ画像MKiの位置および向きが変化する場合を考える。この場合、撮像画像
の変化に追従するように、仮想キャラクタCの位置および向きが変化する。例えば、図9
のように仮想キャラクタCが座っている状態に対してマーカの方向が変化した場合、当該
変化に追従するように仮想キャラクタCの向きが変化して座っている状態を継続している
(図10の状態)。したがって、ユーザには仮想キャラクタCがあたかも実世界に本当に
存在しているかのように見える。
【0098】
一方、本実施形態では、仮想キャラクタCに与えられた音声による動作指示に応じて、
マーカの方向ではなく、画像を生成しているカメラ(すなわち、仮想キャラクタCが配置
された仮想世界画像を生成する仮想カメラ)の位置に基づいた姿勢で仮想キャラクタCが
動作することもできる。例えば、図11では、仮想キャラクタCを呼び寄せる動作を指示
する音声(例えば、口笛の音)をゲーム装置10に入力した場合の動作を示している。図
11に示すように、ゲーム装置10に仮想キャラクタCを呼び寄せる動作を指示する音声
が入力された場合、仮想キャラクタCは、4つ足状態になって仮想キャラクタCの前方向
が仮想カメラへの方向と一致するように動作する。すなわち、上記動作では、仮想キャラ
クタCが表示される向きがマーカ画像MKiの方向ではなく、仮想世界画像を生成する仮
想カメラの位置に基づいて決定される。なお、上述した説明では、仮想キャラクタCを呼
び寄せる動作を指示する音声の一例として口笛の音を用いたが、他の音声であってもかま
わない。例えば、仮想キャラクタCを呼び寄せる動作を指示する音声として拍手の音を設
定し、拍手の音が入力された場合に4つ足状態になって仮想キャラクタCの前方向が仮想
カメラへの方向と一致するように仮想キャラクタCが動作してもかまわない。この場合、
口笛の音が入力された場合に仮想キャラクタCの前方向が仮想カメラへの方向と一致する
ように仮想キャラクタCが遠吠えをする動作をしてもかまわない。
【0099】
また、本実施形態では、仮想キャラクタCに音声による動作指示を与えた場合、当該動
作指示を与えた時点において仮想キャラクタCが撮像(表示)されている方向によって、
仮想キャラクタCに与える動作指示が変化することがある。例えば、息の音をゲーム装置
10に入力した場合、当該入力が行われた時点で仮想キャラクタCが上側LCD22の表
示範囲内に存在し、かつ、仮想キャラクタCの前方向が仮想カメラの方向付近を向いてい
れば、仮想キャラクタCが息を吹きかけられたことによって嫌がるように動作する。その
一方で、息の音をゲーム装置10に入力した時点で仮想キャラクタCの前方向が仮想カメ
ラの方向付近を向いていなければ、仮想キャラクタCが上側LCD22の表示範囲内に存
在していても当該入力に応じた動作をすることなく、何の反応もしない。例えば、仮想キ
ャラクタCが息を吹きかけられたことによって嫌がるように動作は、「通常状態」で仮想
キャラクタCが表示されている場合に生じる動作である。この場合、仮想キャラクタCの
前方向がマーカ画像MKiの前方向と一致するような姿勢で表示されているため、当該動
作指示は、マーカの方向と仮想カメラの位置との関係が所定の位置関係になっている場合
に成立するものであると考えることもできる。
【0100】
このように、本実施形態においては、実カメラにより撮像されて上側LCD22に表示
された実世界画像内に、仮想オブジェクトが配置されて付加表示され、音声認識された音
声に基づいた指示に応じて当該仮想オブジェクトが動作する。したがって、AR(拡張現
実:Augmented Reality)を実現する上で、音声を現実空間とコンピュ
ータとの間のインターフェイスとして採用することで、入力の簡便性が向上し、入力内容
もバリエーションに富んだものになるため、現実空間とコンピュータとの間のインタラク
ティブ性は高まって興趣性および操作性が向上する。また、操作ボタン、キーボード、タ
ッチパネル、マウス、ジョイスティック、およびトラックボード等の従来の入力装置を用
いて操作する場合と比較して、音声入力による操作は、臨場感や操作の直感性を高めるこ
とができる。なお、上述した例では、実世界画像内に付加表示される仮想オブジェクトの
一例として仮想キャラクタCを用いたが、実世界画像内に付加表示されるものは他の仮想
物体や文字であってもよい。また、上述した例では、音声認識された音声に基づいた指示
に応じて、付加表示された仮想キャラクタCが動作するが、音声認識された音声に基づい
た指示に応じて、他の処理が行われてもかまわない。例えば、音声認識された音声に基づ
いた指示に応じて、実世界画像内に付加表示される仮想オブジェクトや文字等の改変をす
る処理、表示態様を変化させる処理、選択をする処理、出現/消去をする処理等、様々な
処理を行うことが考えられる。
【0101】
次に、図12〜図17を参照して、ゲーム装置10で実行される画像処理プログラムに
よる具体的な処理動作について説明する。なお、図12は、画像処理プログラムを実行す
ることに応じて、メインメモリ32に記憶される各種データの一例を示す図である。図1
3は、図12の音声動作対応テーブルデータDiの一例を示す図である。図14は、当該
画像処理プログラムを実行することによってゲーム装置10が画像処理する動作の一例を
示すフローチャートである。図15は、図14のステップ54で行われる音声認識処理の
詳細な動作の一例を示すサブルーチンである。図16は、図14のステップ55で行われ
る画像合成処理の詳細な前半の動作の一例を示すサブルーチンである。図17は、図14
のステップ55で行われる画像合成処理の詳細な後半の動作の一例を示すサブルーチンで
ある。なお、これらの処理を実行するためのプログラムは、ゲーム装置10に内蔵される
メモリ(例えば、データ保存用内部メモリ35)や外部メモリ45またはデータ保存用外
部メモリ46に含まれており、ゲーム装置10の電源がオンになったときに、内蔵メモリ
から、または外部メモリI/F33やデータ保存用外部メモリI/F34を介して外部メ
モリ45またはデータ保存用外部メモリ46からメインメモリ32に読み出されて、CP
U311によって実行される。
【0102】
図12において、メインメモリ32には、内蔵メモリ、外部メモリ45、またはデータ
保存用外部メモリ46から読み出されたプログラムや画像処理において生成される一時的
なデータが記憶される。図12において、メインメモリ32のデータ記憶領域には、左カ
メラ画像データDa、右カメラ画像データDb、音声波形データDc、操作入力データD
d、左カメラ画像認識結果データDe、右カメラ画像認識結果データDf、スペクトル情
報データDg、メルフィルタ出力情報データDh、音声動作対応テーブルデータDi、音
声登録データDj、拍手フラグデータDk、口笛フラグデータDl、息フラグデータDm
、登録音声フラグデータDn、通常状態フラグデータDo、左仮想世界画像データDp、
右仮想世界画像データDq、および仮想オブジェクトデータDr等が格納される。また、
メインメモリ32のプログラム記憶領域には、画像処理プログラムを構成する各種プログ
ラム群Paが記憶される。
【0103】
左カメラ画像データDaは、外側左撮像部23aによって撮像された最新の左目用のカ
メラ画像を示すデータである。右カメラ画像データDbは、外側右撮像部23bによって
撮像された最新の右目用のカメラ画像を示すデータである。なお、外側左撮像部23aお
よび外側右撮像部23bが撮像し、撮像されたカメラ画像を用いて左カメラ画像データD
aおよび右カメラ画像データDbをそれぞれ更新する周期は、ゲーム装置10が処理する
時間単位(例えば、1/60秒)と同じでもいいし、当該時間単位より短い時間でもかま
わない。ゲーム装置10が処理する周期より左カメラ画像データDaおよび右カメラ画像
データDbをそれぞれ更新する周期が短い場合、後述する処理とは独立して適宜左カメラ
画像データDaおよび右カメラ画像データDbをそれぞれ更新してもかまわない。この場
合、後述する撮像画像を取得するステップにおいて、左カメラ画像データDaおよび右カ
メラ画像データDbがそれぞれ示す最新のカメラ画像を常に用いて処理すればよい。
【0104】
音声波形データDcは、マイク43に入力された音声波形に対応する音声データである
。例えば、音声波形データDcは、マイク43に対するサンプリングレート毎(例えば、
ゲーム処理する時間単位(1フレーム;例えば、1/60秒)につき128サンプル)に
取得された音声データであり、ゲーム装置10がゲーム処理する時間単位毎に利用される
。なお、本実施形態においては、後述する音声認識処理に必要なフレーム分の履歴が音声
波形データDcの音声データとして格納されるため、当該フレーム分の音声データが音声
波形データDcとして格納されるように、FIFO方式で音声波形データDcの音声デー
タを更新するようにしてもよい。
【0105】
操作入力データDdは、ユーザがゲーム装置10を操作した操作情報を示すデータであ
る。例えば、操作入力データDdは、ユーザがゲーム装置10の操作ボタン14やアナロ
グスティック15等の操作子を操作したことを示すデータを含んでいる。操作ボタン14
やアナログスティック15からの操作データは、ゲーム装置10が処理する時間単位(例
えば、1/60秒)毎に取得され、当該取得に応じて操作入力データDdに格納されて更
新される。なお、後述する処理フローでは、操作入力データDdが処理周期である1フレ
ーム毎に更新される例を用いて説明するが、他の処理周期で更新されてもかまわない。例
えば、操作ボタン14やアナログスティック15等の操作子をユーザが操作したことを検
出する周期毎に操作入力データDdを更新し、当該更新された操作入力データDdを処理
周期毎に利用する態様でもかまわない。この場合、操作入力データDdを更新する周期と
、処理周期とが異なることになる。
【0106】
左カメラ画像認識結果データDeは、外側左撮像部23aによって撮像された左目用の
カメラ画像を用いて算出された、外側左撮像部23aとマーカMKとの位置関係に関する
データである。第1の例として、上記位置関係に関するデータは、外側左撮像部23aと
マーカMKとの相対的な位置関係を示すデータである。一例として、上記位置関係に関す
るデータは、マーカMKの位置を基準として実世界における外側左撮像部23aの位置お
よび/または姿勢を示すデータである。他の例として、上記位置関係に関するデータは、
外側左撮像部23aの位置および撮像方向を基準として実世界におけるマーカMKの位置
および/または姿勢を示すデータである。第2の例として、上記位置関係に関するデータ
は、外側左撮像部23aによって撮像されたカメラ画像におけるマーカ画像MKiの位置
および/または姿勢を認識することにより算出される行列を示すデータである。例えば、
上記行列は、マーカMKの位置および姿勢を基準として設定される座標系(マーカ座標系
)で表された座標を、外側左撮像部23aの位置および姿勢を基準として表された座標系
(外側左撮像部座標系)に変換する座標変換行列である。つまり、上記行列は、マーカM
Kの位置および姿勢に対する外側左撮像部23aの相対的な位置および姿勢の情報を含む
行列であり、より具体的には、マーカ座標系における外側左撮像部23aの位置および姿
勢の情報を含む行列である。
【0107】
右カメラ画像認識結果データDfは、外側右撮像部23bによって撮像された右目用の
カメラ画像を用いて算出された、外側右撮像部23bとマーカMKとの位置関係に関する
データである。第1の例として、上記位置関係に関するデータは、外側右撮像部23bと
マーカMKとの相対的な位置関係を示すデータである。一例として、上記位置関係に関す
るデータは、マーカMKの位置を基準として実世界における外側右撮像部23bの位置お
よび/または姿勢を示すデータである。他の例として、上記位置関係に関するデータは、
外側右撮像部23bの位置を基準として実世界におけるマーカMKの位置および/または
姿勢を示すデータである。第2の例として、上記位置関係に関するデータは、外側右撮像
部23bによって撮像されたカメラ画像におけるマーカ画像MKiの位置および/または
姿勢を認識することにより算出される行列を示すデータである。例えば、上記行列は、上
記マーカ座標系で表された座標を、外側右撮像部23bの位置および姿勢を基準として表
された座標系(外側右撮像部座標系)に変換する座標変換行列である。つまり、上記行列
は、マーカMKの位置および姿勢に対する外側右撮像部23bの相対的な位置および姿勢
の情報を含む行列であり、より具体的には、マーカ座標系における外側右撮像部23bの
位置および姿勢の情報を含む行列である。
【0108】
なお、本明細書において、マーカ座標系から外側左撮像部座標系または外側右撮像部座
標系への変換行列のことを「マーカ・カメラ変換行列」と呼ぶ。つまり、上述した行列は
、それぞれ「マーカ・カメラ変換行列」である。
【0109】
スペクトル情報データDgは、マイク43に入力された音声波形を示す音声波形情報を
短時間FFT(Fast Fourier Transform:高速フーリエ変換)分
析することによって得られるスペクトルを示すデータであり、後述する音声認識処理に必
要なフレーム分のデータが格納される。
【0110】
メルフィルタ出力情報データDhは、FFT分析によって得られたスペクトルをメルフ
ィルタバンク分析することによって得られる帯域フィルタバンクの出力を示すデータであ
り、後述する音声認識処理に必要なフレーム分のデータが格納される。
【0111】
音声動作対応テーブルデータDiは、音声認識結果に応じてそれぞれ動作指示される内
容が予め記述されたテーブルを示すデータである。図13に示すように、音声動作対応テ
ーブルデータDiは、音声認識結果に応じて、キャラクタの動作内容および当該動作の基
準がそれぞれ記述されている。例えば、予めまたは登録操作によって登録されている登録
音声1(例えば、「おすわり」)に音声認識結果が照合された場合、当該音声入力に応じ
てキャラクタがおすわり動作をマーカ基準で行うことが記述されている。また、音声認識
結果において拍手が入力されたと判定された場合、当該音声入力に応じてキャラクタが4
つ足でカメラの方に向く動作をカメラ基準で行うことが記述されている。また、音声認識
結果において口笛が入力されたと判定された場合、当該音声入力に応じてキャラクタがカ
メラの方に向いて遠吠えをする動作をカメラ基準で行うことが記述されている。ここで、
音声動作対応テーブルデータDiに記述されている登録音声は、後述するようにゲーム装
置10から音声入力が促されることに応じて、ユーザが前もって入力した音声言語を用い
てそれぞれ登録されてもいいし、当該画像処理プログラムがインストールされる時点で予
め登録されたものでもよい。また、音声動作対応テーブルデータDiに記述されている動
作基準は、上記マーカの方向を基準としたキャラクタの動作が「マーカ基準」と記述され
ており、仮想カメラの位置や方向を基準としたキャラクタの動作が「カメラ基準」と記述
されている。
【0112】
音声登録データDjは、ゲーム装置10から音声入力が促されることに応じて、ユーザ
が前もって入力して登録した音声(言語)を示すデータである。例えば、ユーザが音声を
登録する際には、キャラクタに与える動作指示に対応させた音声入力が促される。そして
、入力された音声を示すデータが、当該音声入力を促した動作指示に対応させて(例えば
、音声動作対応テーブルデータDiに記述されている登録音声番号にそれぞれ対応させて
)音声登録データDjに登録される。なお、音声登録データDjに登録される音声は、当
該画像処理プログラムがインストールされる時点で予め登録されたものでもよい。
【0113】
拍手フラグデータDkは、音声認識処理においてマイク43に入力された音声が拍手で
あると判定された場合にオンに設定される拍手フラグを示すデータである。口笛フラグデ
ータDlは、音声認識処理においてマイク43に入力された音声が口笛であると判定され
た場合にオンに設定される口笛フラグを示すデータである。息フラグデータDmは、音声
認識処理においてマイク43に入力された音声が息であると判定された場合にオンに設定
される息フラグを示すデータである。登録音声フラグデータDnは、音声認識処理におい
てマイク43に入力された音声が登録音声に照合されたと判定された場合にオンに設定さ
れる登録音声フラグを示すデータである。通常状態フラグデータDoは、仮想キャラクタ
Cが「通常状態」である場合にオンに設定される通常状態フラグを示すデータである。
【0114】
左仮想世界画像データDpは、仮想オブジェクトが配置された仮想空間を、左仮想カメ
ラから見た画像(左目用の仮想世界画像)を示すデータである。例えば、左仮想世界画像
データDpは、左仮想カメラから見た仮想オブジェクトが配置された仮想空間を透視投影
することによって得られる左目用の仮想世界画像を示すデータである。右仮想世界画像デ
ータDqは、仮想オブジェクトが配置された仮想空間を、右仮想カメラから見た画像(右
目用の仮想世界画像)を示すデータである。例えば、右仮想世界画像データDqは、右仮
想カメラから見た仮想オブジェクトが配置された仮想空間を透視投影することによって得
られる右目用の仮想世界画像を示すデータである。
【0115】
仮想オブジェクトデータDrは、前述の仮想オブジェクトに関連する情報であって、仮
想オブジェクトの形状を表す3Dモデルデータ(ポリゴンデータ)や、仮想オブジェクト
の模様を表すテクスチャデータや、仮想空間における仮想オブジェクトの位置や姿勢の情
報などを含む。
【0116】
次に、図14を参照して、情報処理部31の動作について説明する。まず、ゲーム装置
10の電源(電源ボタン14F)がONされると、CPU311によってブートプログラ
ム(図示せず)が実行され、これにより内蔵メモリまたは外部メモリ45やデータ保存用
外部メモリ46に格納されているプログラムがメインメモリ32にロードされる。そして
、当該ロードされたプログラムが情報処理部31(CPU311)で実行されることによ
って、図14に示すステップ(図14〜図17では「S」と略称する)が実行される。な
お、図14〜図17においては、本発明に直接関連しない処理についての記載を省略する
。また、本実施形態では、図14〜図17のフローチャートの全てのステップの処理をC
PU311が実行するものとして説明するが、図14〜図17のフローチャートの一部の
ステップの処理を、CPU311以外のプロセッサや専用回路が実行するようにしてもよ
い。
【0117】
図14において、CPU311は、画像処理における初期設定を行い(ステップ51)
、次のステップに処理を進める。例えば、CPU311は、上記ステップ51において、
当該画像処理で用いられる各パラメータを初期化する。なお、CPU311は、音声認識
フラグ(拍手フラグ、口笛フラグ、息フラグ、登録音声フラグ)については全てオフに初
期化し、通常状態フラグについてはオンに初期化する。
【0118】
次に、CPU311は、外側撮像部23から出力される両方のカメラ画像(すなわち左
目用のカメラ画像および右目用のカメラ画像)を示す撮像画像データ、マイク43に入力
された音声波形に対応する音声データ、およびユーザが操作ボタン14やアナログスティ
ック15等の操作子を操作した操作情報を示す操作入力データを取得し(ステップ52)
、次のステップに処理を進める。例えば、CPU311は、取得した左目用のカメラ画像
を示す撮像画像データを用いて、左カメラ画像データDaを更新する。CPU311は、
取得した右目用のカメラ画像を示す撮像画像データを用いて、右カメラ画像データDbを
更新する。CPU311は、取得した音声データを用いて、音声波形データDcを更新す
る。そして、CPU311は、取得した操作入力データを用いて、操作入力データDdを
更新する。
【0119】
次に、CPU311は、左右両方のカメラ画像を示す撮像画像データをそれぞれ用いて
撮影画像認識処理を行い(ステップ53)、次のステップに処理を進める。以下、上記ス
テップ53で行う撮影画像認識処理の一例について説明する。
【0120】
上述したように、上側ハウジング21において、外側左撮像部23aと外側右撮像部2
3bは、一定の間隔だけ離れている。したがって、外側左撮像部23aと外側右撮像部2
3bによって同時にマーカMKを撮像した場合、外側左撮像部23aによって撮像された
左カメラ画像におけるマーカMKの位置および姿勢と、外側右撮像部23bによって撮像
された右カメラ画像におけるマーカMKの位置および姿勢との間には、視差によるズレが
生じる。そして、上記撮影画像認識処理においては、外側左撮像部23aおよび外側右撮
像部23bとマーカMKとの位置関係が算出される。
【0121】
例えば、CPU311は、パターンマッチング手法等によって左右両方のカメラ画像に
マーカMKが含まれているか否かを判断し、当該カメラ画像にマーカMK(マーカ画像M
Ki)が含まれている場合には、当該カメラ画像におけるマーカMKの位置および姿勢に
基づいて、外側左撮像部23aとマーカMKとの位置関係および外側右撮像部23bとマ
ーカMKとの位置関係を算出する。一例として、CPU311は、左目用のカメラ画像に
おけるマーカ画像MKiの位置および/または姿勢を認識することによって、左目用のマ
ーカ・カメラ変換行列を算出して、左カメラ画像認識結果データDeを更新する。また、
CPU311は、右目用のカメラ画像におけるマーカ画像MKiの位置および/または姿
勢を認識することによって、右目用のマーカ・カメラ変換行列を算出して、右カメラ画像
認識結果データDfを更新する。
【0122】
なお、左目用のマーカ・カメラ変換行列は、左カメラ画像におけるマーカMKの位置お
よび姿勢に基づいて計算される外側左撮像部23aの位置および姿勢を反映した行列であ
る。より正確には、マーカ座標系(実世界におけるマーカMKの位置を原点とし、マーカ
MKの縦方向(Z軸方向)、横方向(X軸方向)、法線方向(Y軸方向)の各方向を各軸
とする座標系)で表された座標を、左カメラ画像におけるマーカ画像MKiの位置および
姿勢に基づいて計算された外側左撮像部23aの位置および姿勢を基準とした外側左撮像
部座標系で表される座標へと変換するための座標変換行列である。
【0123】
また、右目用のマーカ・カメラ変換行列は、右カメラ画像におけるマーカMKの位置お
よび姿勢に基づいて計算される外側右撮像部23bの位置および姿勢を反映した行列であ
る。より正確には、マーカ座標系で表された座標を、右カメラ画像におけるマーカ画像M
Kiの位置および姿勢に基づいて計算された外側右撮像部23bの位置および姿勢を基準
とした外側右撮像部座標系で表される座標へと変換するための座標変換行列である。
【0124】
ここで、ARでは、マーカ座標系を外側左撮像部座標系に変換する左目用のマーカ・カ
メラ変換行列を左仮想カメラのビュー行列に指定し、マーカ座標系を外側右撮像部座標系
に変換する右目用のマーカ・カメラ変換行列を右仮想カメラのビュー行列に指定すること
により、実世界画像(左カメラ画像および右カメラ画像)にCG画像(左仮想世界画像お
よび右仮想世界画像)をそれぞれ合成することができる。
【0125】
なお、上記ステップ53において、左カメラ画像および右カメラ画像の少なくとも一方
からマーカ画像MKiが認識されなかった場合には、左目用のマーカ・カメラ変換行列お
よび/または右目用のマーカ・カメラ変換行列としてヌル値が左カメラ画像認識結果デー
タDeおよび/または右カメラ画像認識結果データDfに格納され、これによって、左カ
メラ画像または右カメラ画像におけるマーカMKの認識に失敗したことが記録される。
【0126】
なお、マーカ認識精度に誤差が全く無く、かつゲーム装置10に対する外側左撮像部2
3aおよび外側右撮像部23bの取り付け精度に誤差が全く無いと仮定する。この場合、
右カメラ画像の画像認識結果から計算される右仮想カメラの位置は、左カメラ画像の画像
認識結果から計算される左仮想カメラの位置を、左仮想カメラ座標系の横方向(例えば、
X軸方向)に沿って一定距離だけずらした位置となる。つまり、右カメラ画像の画像認識
結果から計算される右仮想カメラの姿勢と、左カメラ画像の画像認識結果から計算される
左仮想カメラの姿勢とは、同じとなる(すなわち、左仮想カメラ座標系のX軸,Y軸,Z
軸が、右仮想カメラ座標系のX軸,Y軸,Z軸とそれぞれ平行となる)。したがって、一
方のカメラ画像(例えば、左カメラ画像)の画像認識結果から計算される一方の仮想カメ
ラ(例えば、左仮想カメラ)の位置および姿勢に基づいて、他方の仮想カメラ(例えば、
右仮想カメラ)の位置および姿勢を決定して、他方のマーカ・カメラ変換行列を算出して
もよい。この場合、他方のカメラ画像(例えば、右カメラ画像)に対する画像認識処理が
不要となる。
【0127】
次に、CPU311は、音声認識処理を行って(ステップ54)、次のステップに処理
を進める。以下、図15を参照して、上記ステップ54で行う音声認識処理について説明
する。
【0128】
図15において、CPU311は、マイク43に入力された音声波形からスペクトル情
報を算出し(ステップ61)、次のステップに処理を進める。例えば、CPU311は、
音声波形データDcに格納されている音声波形情報を、短時間FFT分析することによっ
てスペクトルを算出し、当該スペクトルを用いてスペクトル情報データDgを更新する。
【0129】
次に、CPU311は、上記ステップ61で算出されたスペクトルからメルフィルタ出
力情報を算出し(ステップ62)、次のステップに処理を進める。例えば、CPU311
は、スペクトル情報データDgに格納されているスペクトルを、メルフィルタバンク分析
することによって帯域フィルタバンクの出力を算出し、当該出力を示すデータを用いてメ
ルフィルタ出力情報データDhを更新する。
【0130】
次に、CPU311は、拍手判定処理を行って(ステップ63)、次のステップに処理
を進める。例えば、CPU311は、音声波形データDcに格納されている音声波形情報
を用いて、マイク43に拍手の音が入力されたか否かを判定する。一例として、CPU3
11は、音声波形データDcに格納されている最新の1フレーム分の音声波形において、
振幅レベルの最大値を取得し、当該最大値の履歴を所定期間分(例えば、9フレーム分)
記憶しておく。そして、CPU311は、上記最大値の履歴において上記所定期間の中間
時点に相当する最大値(例えば、9フレーム分の最大値の履歴のうち、5フレーム目の最
大値)が所定の閾値α以上であり、かつ、当該最大値の前後となる履歴(例えば、前後2
フレーム分の履歴)に相当する最大値の値が全て所定の閾値β以下であり、かつ、上記最
大値の履歴の平均値が所定の閾値γ以下である場合、入力された音声が拍手であると判定
する。このように、上記ステップ63における拍手判定処理の一例では、マイク43に入
力された音声波形を示す情報のみを参照して、相対的に短い期間において振幅が突出した
音声波形が得られた場合に、拍手の音であると判定している。
【0131】
次に、CPU311は、上記ステップ63における拍手判定処理において、拍手の音が
入力されたと判定されたか否かを判断する(ステップ64)。そして、CPU311は、
拍手の音が入力されたと判定された場合、拍手フラグをオンに設定して拍手フラグデータ
Dkを更新し(ステップ65)、次のステップ66に処理を進める。一方、CPU311
は、拍手の音が入力されていないと判定された場合、そのまま次のステップ66に処理を
進める。
【0132】
ステップ66において、CPU311は、口笛判定処理を行って、次のステップに処理
を進める。例えば、CPU311は、スペクトル情報データDgに格納されているスペク
トルを用いて、マイク43に口笛の音が入力されたか否かを判定する。一例として、CP
U311は、スペクトル情報データDgに格納されている最新の1フレーム分のスペクト
ルデータを対数変換してデシベルデータに変換する。次に、CPU311は、最新の1フ
レーム分の周波数領域(例えば、横軸周波数、縦軸デシベル)において、スペクトルが基
準デシベル値δ以上となる回数が1回であり、かつ、低域部分のデシベル値の平均値が基
準値ε未満である場合、口笛イベントが発生したとカウントする。そして、CPU311
は、上記口笛イベントにおける直前の所定フレーム分の履歴において、当該口笛イベント
のカウント数合計が閾値ζ以上であれば、入力された音声が口笛であると判定する。この
ように、上記ステップ66における口笛判定処理の一例では、マイク43に入力された音
声波形から得られたスペクトル情報のみを参照して、口笛の音を判定している。
【0133】
次に、CPU311は、上記ステップ66における口笛判定処理において、口笛の音が
入力されたと判定されたか否かを判断する(ステップ67)。そして、CPU311は、
口笛の音が入力されたと判定された場合、口笛フラグをオンに設定して口笛フラグデータ
Dlを更新し(ステップ68)、次のステップ69に処理を進める。一方、CPU311
は、口笛の音が入力されていないと判定された場合、そのまま次のステップ69に処理を
進める。
【0134】
ステップ69において、CPU311は、息判定処理を行って、次のステップに処理を
進める。例えば、CPU311は、音声波形データDcに格納されている音声波形情報と
、メルフィルタ出力情報データDhに格納されている帯域フィルタバンクの出力とを用い
て、マイク43に息の音が入力されたか否かを判定する。一例として、CPU311は、
音声波形データDcに格納されている音声波形の振幅平均値および振幅最大値がそれぞれ
所定の範囲内にあるか否かを判定する。また、CPU311は、上記音声波形のゼロクロ
ス(音声波形の振幅がプラスからマイナスおよびマイナスからプラスへ変化するときに0
レベルと交差する点)の個数が所定の閾値η以下であるか否かを判定する。さらに、CP
Uは、メルフィルタ出力情報データDhに格納されている帯域フィルタバンクの出力に対
して、低域部分を除いた平均値が所定の閾値θ以上か否かを判定する。そして、CPU3
11は、上記全ての判定がいずれも肯定判定の場合、入力された音声が息であると判定す
る。このように、上記ステップ69における息判定処理の一例では、マイク43に入力さ
れた音声波形およびメルフィルタ出力情報を参照して、息の音を判定している。
【0135】
次に、CPU311は、上記ステップ69における息判定処理において、息の音が入力
されたと判定されたか否かを判断する(ステップ70)。そして、CPU311は、息の
音が入力されたと判定された場合、息フラグをオンに設定して息フラグデータDmを更新
し(ステップ71)、次のステップ72に処理を進める。一方、CPU311は、息の音
が入力されていないと判定された場合、そのまま次のステップ72に処理を進める。
【0136】
ステップ72において、CPU311は、音声照合処理を行って、次のステップに処理
を進める。CPU311は、マイク43に入力された音声入力パターンから得られる特徴
パラメータ時系列における予め登録されている特徴パラメータ時系列に対する尤度を求め
、当該尤度が最大であり、かつ、所定の閾値以上となるモデルの登録音声を照合結果とす
る。例えば、CPU311は、音声波形データDcに格納されている音声波形情報と、メ
ルフィルタ出力情報データDhに格納されている帯域フィルタバンクの出力とを用いて、
マイク43に入力された音声と照合可能な登録音声があるか否かを判定する。一例として
、CPU311は、音声波形データDcに格納されている音声波形情報と、メルフィルタ
出力情報データDhに格納されている帯域フィルタバンクの出力とを用いて、マイク43
に音声が入力されている区間(音声区間)を検出する。具体的には、CPU311は、帯
域フィルタバンクの出力から得られるスペクトルの形状に基づいて、マイク43に音声の
入力が開始された時点を検出し、音声波形のレベルに基づいてマイク43に音声の入力が
終了した時点を検出し、これらの時点の間を音声区間とする。なお、過去の音声波形の履
歴を遡って当該音声波形のレベルを確認することによって、音声入力開始時点を決定して
もかまわない。次に、CPU311は、検出された音声区間中に得られた帯域フィルタバ
ンクの出力に対して、三角窓で時間軸の正規化およびレベルの正規化を行い、動的計画法
を用いて、音声登録データDjに登録されている登録音声のデータ(登録データ)との間
の距離を算出する。そして、CPU311は、算出された距離が所定の閾値ι以内であっ
た場合に、当該距離が算出された登録データに入力音声が照合されたと判断する。このよ
うに、上記ステップ69における息判定処理の一例では、マイク43に入力された音声波
形およびメルフィルタ出力情報を参照して、登録音声との照合処理を行っている。
【0137】
次に、CPU311は、上記ステップ72における音声照合処理において、入力音声が
登録音声に照合されたと判定されたか否かを判断する(ステップ73)。そして、CPU
311は、入力音声が登録音声に照合されたと判定された場合、登録音声フラグをオンに
設定して登録音声フラグデータDnを更新し(ステップ74)、当該サブルーチンによる
処理を終了する。一方、CPU311は、入力音声が登録音声に照合されていないと判定
された場合、そのまま当該サブルーチンによる処理を終了する。
【0138】
図14に戻り、上記ステップ54における音声認識処理の後、CPU311は、画像合
成処理を行って(ステップ55)、次のステップに処理を進める。以下、図16を参照し
て、上記ステップ55で行う画像合成処理について説明する。
【0139】
図16において、CPU311は、通常状態フラグデータDoが示す通常状態フラグが
オンであるか否かを判断する(ステップ81)。そして、CPU311は、通常状態フラ
グがオンである場合、次のステップ82に処理を進める。一方、CPU311は、通常状
態フラグがオフである場合、次のステップ92に処理を進める。
【0140】
ステップ82において、CPU311は、登録音声フラグデータDnが示す登録音声フ
ラグがオンであるか否かを判断する。そして、CPU311は、登録音声フラグがオンで
ある場合、次のステップ83に処理を進める。一方、CPU311は、登録音声フラグが
オフである場合、次のステップ84に処理を進める。
【0141】
ステップ83において、CPU311は、音声入力が照合された登録音声に基づいて、
仮想キャラクタCに当該登録音声に対応する動作を開始させ、次のステップ95に処理を
進める。例えば、CPU311は、音声動作対応テーブルデータDiを参照して、音声入
力が照合された登録音声に対応するキャラクタ動作および動作基準を抽出し、抽出された
キャラクタ動作および動作基準に基づいて、仮想キャラクタCの動作を開始する。
【0142】
一方、ステップ84において、CPU311は、拍手フラグデータDkが示す拍手フラ
グがオンであるか否かを判断する。そして、CPU311は、拍手フラグがオンである場
合、次のステップ85に処理を進める。一方、CPU311は、拍手フラグがオフである
場合、次のステップ86に処理を進める。
【0143】
ステップ85において、CPU311は、仮想キャラクタCに拍手の音が入力されたこ
とに対応する動作を開始させ、次のステップ95に処理を進める。例えば、CPU311
は、音声動作対応テーブルデータDiを参照して、拍手の音が認識されたことに対応する
キャラクタ動作および動作基準を抽出し、抽出されたキャラクタ動作および動作基準に基
づいて、仮想キャラクタCの動作を開始する。
【0144】
一方、ステップ86において、CPU311は、口笛フラグデータDlが示す口笛フラ
グがオンであるか否かを判断する。そして、CPU311は、口笛フラグがオンである場
合、次のステップ87に処理を進める。一方、CPU311は、口笛フラグがオフである
場合、次のステップ88に処理を進める。
【0145】
ステップ87において、CPU311は、仮想キャラクタCに口笛の音が入力されたこ
とに対応する動作を開始させ、次のステップ95に処理を進める。例えば、CPU311
は、音声動作対応テーブルデータDiを参照して、口笛の音が認識されたことに対応する
キャラクタ動作および動作基準を抽出し、抽出されたキャラクタ動作および動作基準に基
づいて、仮想キャラクタCの動作を開始する。
【0146】
一方、ステップ88において、CPU311は、息フラグデータDmが示す息フラグが
オンであるか否かを判断する。そして、CPU311は、息フラグがオンである場合、次
のステップ89に処理を進める。一方、CPU311は、息フラグがオフである場合、次
のステップ91に処理を進める。
【0147】
ステップ89において、CPU311は、仮想キャラクタCが表示されている方向が所
定の範囲内か否かを判断する。上述したように、息の音をゲーム装置10に入力した場合
、当該入力が行われた時点で仮想キャラクタCが上側LCD22の表示範囲内に存在し、
かつ、仮想キャラクタCの前方向が仮想カメラの方向付近を向いている場合に、当該入力
に応じた動作指示が有効となる。例えば、CPU311は、仮想キャラクタCの位置が上
側LCD22の表示範囲内にあり(すなわち、仮想キャラクタCの配置位置が左仮想カメ
ラの視体積内および/または右仮想カメラの視体積内にある)、かつ、仮想キャラクタC
の前方向を基準とした所定範囲内に左仮想カメラおよび/または右仮想カメラが配置され
ている場合に、上記ステップ89において肯定判定する。そして、CPU311は、上記
ステップ89において肯定判定された場合、次のステップ90に処理を進める。一方、C
PU311は、上記ステップ89において否定判定された場合、次のステップ91に処理
を進める。
【0148】
ステップ90において、CPU311は、仮想キャラクタCに息の音が入力されたこと
に対応する動作を開始させ、次のステップ95に処理を進める。例えば、CPU311は
、音声動作対応テーブルデータDiを参照して、息の音が認識されたことに対応するキャ
ラクタ動作および動作基準を抽出し、抽出されたキャラクタ動作および動作基準に基づい
て、仮想キャラクタCの動作を開始する。
【0149】
一方、ステップ91において、CPU311は、仮想キャラクタCに現時点と同じ通常
状態での行動を継続させ、次のステップ101(図17参照)に処理を進める。
【0150】
音声認識された入力に応じた動作を開始する処理(ステップ83、ステップ85、ステ
ップ87、およびステップ90)の後、CPU311は、通常状態フラグデータDoが示
す通常状態フラグをオフに更新して(ステップ95)、次のステップ101に処理を進め
る。
【0151】
上記ステップ81において、通常状態フラグがオフであると判断された場合、CPU3
11は、仮想キャラクタCに現時点で行われている動作を継続させ(ステップ92)、次
のステップに処理を進める。ここで、後述により明らかとなるが、通常状態フラグは、音
声認識された入力に応じた動作を開始した時点でオフに設定され、当該動作を終了した時
点でオンに設定される。つまり、当該画像処理においては、仮想キャラクタCが音声認識
された入力に応じた動作を行っている間に別の音声認識が行われたとしても、当該動作が
優先して行われることになる。
【0152】
次に、CPU311は、音声認識された入力に応じた仮想キャラクタCの動作が終了し
たか否かを判断する(ステップ93)。そして、CPU311は、音声認識された入力に
応じた仮想キャラクタCの動作が終了した場合、通常状態フラグデータDoが示す通常状
態フラグをオンに更新して(ステップ94)、次のステップ101に処理を進める。一方
、CPU311は、音声認識された入力に応じた仮想キャラクタCの動作が継続している
場合、そのまま次のステップ101に処理を進める。
【0153】
図17に進み、ステップ101において、CPU311は、仮想世界画像を生成して、
次のステップに処理を進める。例えば、CPU311は、図18および図19に示すよう
に、マーカ座標系(マーカ画像MKiの位置を原点とし、マーカ画像MKiの縦方向(Z
軸方向)、横方向(X軸方向)、法線方向(Y軸方向)の各方向を各軸とする座標系)で
定義される仮想空間に仮想キャラクタCを配置して、必要に応じて仮想キャラクタCの大
きさを変化させ、仮想キャラクタCに上記ステップ81〜ステップ95で設定された動作
を行わせる。例えば、仮想キャラクタCにマーカ座標系の原点の周りを歩くような移動を
させると、マーカ画像MKiの周りを歩くような表示が行われる。なお、仮想キャラクタ
Cの移動制御は、マーカ座標系の原点と一致、または当該原点付近で、かつ、マーカ画像
MKiを含む平面を基準とした方向(例えば、マーカ座標系におけるXZ平面に沿った方
向を基準とするY軸方向において所定範囲内の位置)に、仮想キャラクタCの位置座標を
変更することにより実現される。
【0154】
なお、上記ステップ101の処理では、マーカ座標系における鉛直方向(Y軸負方向)
が仮想空間の鉛直方向と定義して、仮想キャラクタCを仮想空間に配置する。そして、現
在仮想キャラクタCが行っている動作に動作基準(例えば、マーカ基準やカメラ基準:図
13参照)が設定されている場合、当該動作基準に基づいて、仮想キャラクタCの方向を
設定する。例えば、動作基準がマーカ基準に設定されている動作の場合、仮想キャラクタ
Cの前方向がマーカの方向(例えば、マーカ画像MKiの前方向)に相当するマーカ座標
系の縦正方向(Z軸正方向)と一致、または当該マーカの方向から所定の範囲内となるよ
うに、仮想空間における仮想キャラクタCの姿勢を制御する。また、動作基準がカメラ基
準に設定されている動作の場合、仮想キャラクタCの前方向が左仮想カメラの位置と右仮
想カメラの位置との中間点を通る方向と一致、または当該中間点から所定の範囲内を通る
ように、仮想空間における仮想キャラクタCの姿勢を制御する。なお、マーカ座標系で定
義された仮想空間における左仮想カメラの位置および右仮想カメラの位置は、上記ステッ
プ53で算出されている左目用のマーカ・カメラ変換行列および右目用のマーカ・カメラ
変換行列を用いて算出することができる。
【0155】
そして、図18に示すように、CPU311は、左仮想カメラから見た仮想空間を左目
用の仮想世界画像として生成し、左仮想世界画像データDpを更新する。例えば、CPU
311は、左カメラ画像認識結果データDeが示す左目用のマーカ・カメラ変換行列を左
仮想カメラのビュー行列に指定することによって、マーカ座標系で表現されたCGモデル
(仮想キャラクタC)を、実世界に当該CGモデルが存在する場合に上側LCD22に表
示される場所(例えば、左カメラ画像におけるマーカ画像MKi上)と同じ位置に表示す
ることができる。つまり、上側LCD22に表示される左目用の表示画像において、マー
カ座標系で定義された仮想空間に配置された仮想オブジェクトを、実世界のマーカMKに
関連して存在しているように表示することができる。
【0156】
また、図19に示すように、CPU311は、右仮想カメラから見た仮想空間を右目用
の仮想世界画像として生成し、右仮想世界画像データDqを更新する。例えば、CPU3
11は、右カメラ画像認識結果データDfが示す右目用のマーカ・カメラ変換行列を右仮
想カメラのビュー行列に指定することによって、マーカ座標系で表現されたCGモデル(
仮想キャラクタC)を、実世界に当該CGモデルが存在する場合に上側LCD22に表示
される場所(例えば、右カメラ画像におけるマーカ画像MKi上)と同じ位置に表示する
ことができる。つまり、上側LCD22に表示される右目用の表示画像において、マーカ
座標系で定義された仮想空間に配置された仮想オブジェクトを、実世界のマーカMKに関
連して存在しているように表示することができる。
【0157】
次に、CPU311は、合成処理を行い(ステップ102)、次のステップに処理を進
める。例えば、CPU311は、実世界画像と仮想空間画像とを合成した表示画像を生成
し、当該表示画像を上側LCD22に表示する。
【0158】
具体的には、CPU311は、左カメラ画像データDaが示す左目用のカメラ画像を、
上側LCD22へ供給すべき左目用画像を一時的に記憶するためのVRAM313内の所
定の記憶領域(以下、左フレームバッファと称す)に描画する。そして、CPU311は
、左仮想世界画像データDnが示す左目用の仮想世界画像(すなわち、左仮想カメラから
見た仮想空間の画像)を左フレームバッファに上書きする(典型的には、CPU311か
らの指示にしたがってGPU312によって描画される)。これによって、図20に示す
ように、左フレームバッファに描画された左目用のカメラ画像(左実世界画像)に左目用
の仮想世界画像が合成される。左フレームバッファに描画された画像は、所定のタイミン
グで左目用画像として上側LCD22へ供給されて、上側LCD22に表示されることに
なる。なお、上記左目用の仮想世界画像においては、仮想空間の背景は透明であり、その
ため、左実世界画像に左目用の仮想世界画像を合成することで、実世界画像上に仮想キャ
ラクタCが存在するような画像が生成される。
【0159】
一方、CPU311は、右カメラ画像データDbが示す右目用のカメラ画像を、上側L
CD22へ供給すべき右目用画像を一時的に記憶するためのVRAM313内の所定の記
憶領域(以下、右フレームバッファと称す)に描画する。そして、CPU311は、右仮
想世界画像データDqが示す右目用の仮想世界画像(すなわち、右仮想カメラから見た仮
想空間の画像)を右フレームバッファに上書きする。これによって、右フレームバッファ
に描画された右目用のカメラ画像(右実世界画像)に右目用の仮想世界画像が合成される
。右フレームバッファに描画された画像は、所定のタイミングで右目用画像として上側L
CD22へ供給されて、上側LCD22に表示されることになる。なお、上記右目用の仮
想世界画像においても、仮想空間の背景は透明であり、そのため、右実世界画像に右目用
の仮想世界画像を合成することで、実世界画像上に仮想キャラクタCが存在するような画
像が生成される。
【0160】
次に、CPU311は、音声認識フラグを全てオフに設定し(ステップ103)、当該
サブルーチンによる処理を終了する。例えば、CPU311は、音声認識フラグ(拍手フ
ラグ、口笛フラグ、息フラグ、登録音声フラグ)を全てオフに設定して、拍手フラグデー
タDk、口笛フラグデータDl、息フラグデータDm、および登録音声フラグデータDn
をそれぞれ更新する。
【0161】
図14に戻り、上記ステップ55における画像合成処理の後、CPU311は、現時点
が撮影のタイミングか否かを判断する(ステップ56)。一例として、CPU311は、
操作入力データDdに格納されている操作入力が撮影操作を示す場合、現時点が撮影のタ
イミングであると判断する。他の例として、CPU311は、一定時間が経過すると自動
的に撮影されるセルフタイマ操作を示す操作入力データを上記ステップ52において取得
してから、当該一定時間が経過した場合、現時点が撮影のタイミングであると判断する。
そして、CPU311は、現時点が撮影のタイミングである場合、次のステップ57に処
理を進める。一方、CPU311は、現時点が撮影のタイミングでない場合、次のステッ
プ58に処理を進める。なお、上記ステップ56で判断される撮影操作は、ユーザの音声
入力によって行われてもかまわない。この場合、CPU311は、音声波形データDcが
示す音声波形を音声認識することによって、ユーザによる撮影指示があったか否かを判断
する。
【0162】
ステップ57において、CPU311は、上記ステップ102で合成処理された画像を
保存し、次のステップ58に処理を進める。例えば、CPU311は、上記ステップ10
2で合成処理された左目用画像を示す画像データおよび右目用画像を示す画像データを、
データ保存用内部メモリ35やデータ保存用外部メモリ46に記憶させる。
【0163】
ステップ58において、CPU311は、当該画像処理を終了するか否かを判断する。
画像処理を終了する条件としては、例えば、画像処理を自動的に終了する条件が満たされ
たことや、画像処理を行っているゲームがゲームオーバとなる条件が満たされたことや、
ユーザが画像処理を終了する操作を行ったこと等がある。CPU311は、画像処理を終
了しない場合、上記ステップ52に戻って処理を繰り返す。一方、CPU311は、画像
処理を終了する場合、当該フローチャートによる処理を終了する。
【0164】
このように、上述した実施形態に係る画像処理では、カメラ画像に仮想キャラクタCを
付加表示する際、仮想キャラクタCに対して音声で操作することができ、実世界画像に付
加表示された仮想物体に対して新たな入力方法を用いて操作することができる。
【0165】
なお、上述した説明では、実世界に配置されたマーカMKを撮像対象とし、当該マーカ
MKが撮像されてマーカ画像MKiとして表示されている場合にマーカ画像MKi上付近
に仮想キャラクタCを付加表示している。これは、実世界と撮像装置(外側撮像部23)
との相対的な位置関係や撮像装置の姿勢を認識し、当該認識結果に基づいて仮想物体や文
字等を付加表示する位置を設定するためにマーカMKが用いられている。しかしながら、
本発明は、マーカMKを用いなくても実現することができる。
【0166】
例えば、実世界と撮像装置との相対的な位置関係は、当該撮像装置が撮像する撮像画像
内の特徴点(例えば、被写体のエッジや輪郭)を認識し、当該撮像画像内の水平面等を検
出する撮像画像内の特徴を検出し、GPSや各種センサによって撮像装置の実世界内の位
置や姿勢を取得すれば、上述した同様の画像処理が可能となる。具体的には、撮像画像内
の特徴点とその特徴量を抽出する際に用いられるアルゴリズム(例えば、SIFT(Sc
ale−invariant feature transform))等を用いること
によって、マーカMKを用いなくても撮像画像内の特徴を検出することが可能となる。
【0167】
例えば、図21に示すように、撮像装置で撮像されているリアルタイムの撮像画像を表
示装置に表示しながら、当該撮像装置が撮像している場所や被写体(建物や看板等)に関
連する情報(例えば、文字情報やアイコン)を付加情報として当該撮像画像に重畳して表
示される場合でも、本発明を適用することができる。この表示技術は、撮像装置(ゲーム
装置10)に内蔵されたGPSを用いて現在位置を特定し、内蔵された磁気センサ(電子
コンパス等)によって撮像方向を認識する。そして、特定された位置および撮像方向に対
応する付加情報が撮像画像に重畳して表示される。この場合、撮像画像に対する画像認識
は不要となるが、広範囲に人工的なランドマークを配置して撮像画像に対する画像認識に
よって抽出された当該ランドマークの位置をさらに用いて、撮像装置の位置や姿勢を推定
する方式もある。また、撮像画像を撮像したカメラの位置および姿勢を、撮像画像上の2
次元特徴点(エッジや輪郭等)と自然特徴点の3次元位置とを対応付けることによって推
定する方式もある。
【0168】
このように、マーカMKを用いなくても実世界における撮像装置の位置や姿勢を取得す
ることは可能であり、これらの技術を用いれば本発明は、マーカMKを用いなくても実現
することが可能である。例えば、図21に示すように、4つの建物(Aデパート、Bビル
、Cビル、およびD銀行)が被写体として外側撮像部23によって撮像され、撮像された
撮像画像が上側LCD22に表示されている。そして、表示されている4つの建物には、
それぞれの建物名称を示す文字情報が付加情報として重畳して表示されており、これらの
付加情報の1つを選択することによって、選択された建物のさらに詳細な情報を表示する
ことができる。このような状況において、本発明では、上記付加情報の1つを選択する操
作を音声で行うことによって、音声で選択された建物のさらに詳細な情報を表示すること
ができる。具体的には、ユーザが「Aデパート」を話し言葉として発する音(言語)をゲ
ーム装置10に入力した場合、ゲーム装置10では音声入力された「Aデパート」を音声
認識し、当該音声認識結果によって選択された文字情報(付加情報)の表示態様を変化さ
せる。例えば、音声入力によって選択された文字情報の色、フォント、文字サイズ、文字
太さ、文字飾り、文字表示位置等の表示態様を変化させて、複数の文字情報と区別して表
示することによって、ユーザに選択された文字情報を報知することができる。そして、ゲ
ーム装置10は、選択された文字情報が付与された被写体に関するさらに詳細な情報を、
上側LCD22に表示する。このように、マーカMKを用いずに実世界における撮像装置
の位置や姿勢を取得しながら、仮想オブジェクトとして文字が付加表示されている状況に
おいても、音声入力によって当該文字を選択する操作を行うことができる。そして、実世
界画像を撮像しながら、従来の入力方法で当該実世界画像に重畳されて表示された複数の
選択肢から選択する操作は煩わしい操作となるが、当該撮像装置(ゲーム装置10)を把
持しているユーザの手指を用いない音声入力で選択することによって操作性を飛躍的に向
上させることができる。
【0169】
また、上述した説明では、上側LCD22に、裸眼で立体視可能な画像(立体画像)が
上側LCD22に表示される例を用いたが、外側撮像部23および内側撮像部24のいず
れかから取得した実世界の平面画像(上述した立体視可能な画像とは反対の意味での平面
視の画像)を上側LCD22に表示してもよい。
【0170】
また、上記実施形態では、上側LCD22がパララックスバリア方式の液晶表示装置で
あるとして、視差バリアのON/OFFを制御することにより、立体表示と平面表示とを
切り替えることができる。他の実施形態では、例えば、上側LCD22としてレンチキュ
ラー方式の液晶表示装置を用いて、立体画像および平面画像を表示可能としてもよい。レ
ンチキュラー方式の場合でも、外側撮像部23で撮像した2つの画像を縦方向に短冊状に
分割して交互に配置することで画像が立体表示される。また、レンチキュラー方式の場合
でも、内側撮像部24で撮像した1つの画像をユーザの左右の目に視認させることによっ
て、当該画像を平面表示させることができる。すなわち、レンチキュラー方式の液晶表示
装置であっても、同じ画像を縦方向に短冊状に分割し、これら分割した画像を交互に配置
することにより、ユーザの左右の目に同じ画像を視認させることができる。これにより、
内側撮像部24で撮像された画像を平面画像として表示することが可能である。
【0171】
また、上述した説明では、上側LCD22を裸眼立体視可能な表示装置として説明した
が、上側LCD22が他の方式で立体視可能に構成されてもかまわない。例えば、偏光フ
ィルタ方式、時分割方式、アナグリフ方式等の方式で、上側LCD22を立体視可能に構
成してもかまわない。
【0172】
また、上述した実施形態では、2画面分の液晶表示部の一例として、物理的に分離され
た下側LCD12および上側LCD22を互いに上下に配置した場合(上下2画面の場合
)を説明した。しかしながら、本発明は、単一の表示画面(例えば、上側LCD22のみ
)を有する装置または単一の表示装置に表示する画像を画像処理する装置でも実現するこ
とができる。また、2画面分の表示画面の構成は、他の構成でもかまわない。例えば、下
側ハウジング11の一方主面に下側LCD12および上側LCD22を左右に配置しても
かまわない。また、下側LCD12と横幅が同じで縦の長さが2倍のサイズからなる縦長
サイズのLCD(すなわち、物理的には1つで、表示サイズが縦に2画面分あるLCD)
を下側ハウジング11の一方主面に配設して、2つの画像(例えば、撮像画像と操作説明
画面を示す画像等)を上下に表示(すなわち上下の境界部分無しに隣接して表示)するよ
うに構成してもよい。また、下側LCD12と縦幅が同じで横の長さが2倍のサイズから
なる横長サイズのLCDを下側ハウジング11の一方主面に配設して、横方向に2つの画
像を左右に表示(すなわち左右の境界部分無しに隣接して表示)するように構成してもよ
い。すなわち、物理的に1つの画面を2つに分割して使用することにより2つの画像を表
示してもかまわない。また、物理的に1つの画面を2つに分割して使用することにより上
記2つの画像を表示する場合、当該画面全面にタッチパネル13を配設してもかまわない

【0173】
また、上述した実施例では、ゲーム装置10にタッチパネル13が一体的に設けられて
いるが、ゲーム装置とタッチパネルとを別体にして構成しても、本発明を実現できること
は言うまでもない。また、上側LCD22の上面にタッチパネル13を設けて上側LCD
22に下側LCD12に表示していた表示画像を表示し、下側LCD12に上側LCD2
2に表示していた表示画像を表示してもよい。また、本発明を実現する場合に、タッチパ
ネル13が設けられていなくもかまわない。
【0174】
また、上記実施例では、携帯型のゲーム装置10を用いて説明したが、据置型のゲーム
装置や一般的なパーソナルコンピュータ等の情報処理装置で本発明の画像処理プログラム
を実行して、本発明を実現してもかまわない。また、他の実施形態では、ゲーム装置に限
らず任意の携帯型電子機器、例えば、PDA(Personal Digital As
sistant)や携帯電話、パーソナルコンピュータ、カメラ等であってもよい。
【0175】
また、上述した説明では画像処理をゲーム装置10で行う例を用いたが、上記画像処理
における処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲー
ム装置10が他の装置(例えば、サーバや他のゲーム装置)と通信可能に構成されている
場合、上記画像処理における処理ステップは、ゲーム装置10および当該他の装置が協働
することによって実行してもよい。一例として、他の装置において、実世界画像および仮
想キャラクタCを設定する処理が行われ、ゲーム装置10が実世界画像および仮想キャラ
クタCに関するデータを取得して、ステップ54〜ステップ68の処理を行うことが考え
られる。このように、上記画像における処理ステップの少なくとも一部を他の装置で行う
ことによって、上述した画像処理と同様の処理が可能となる。上述した画像処理は、少な
くとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッ
サまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施
形態においては、ゲーム装置10の情報処理部31が所定のプログラムを実行することに
よって、上述したフローチャートによる処理が行われたが、ゲーム装置10が備える専用
回路によって上記処理の一部または全部が行われてもよい。
【0176】
また、上述したゲーム装置10の形状や、それに設けられている各種操作ボタン14、
アナログスティック15、タッチパネル13の形状、数、および設置位置等は、単なる一
例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うま
でもない。また、上述した画像処理で用いられる処理順序、設定値、判定に用いられる値
等は、単なる一例に過ぎず他の順序や値であっても、本発明を実現できることは言うまで
もない。
【0177】
また、上記画像処理プログラム(ゲームプログラム)は、外部メモリ45やデータ保存
用外部メモリ46等の外部記憶媒体を通じてゲーム装置10に供給されるだけでなく、有
線または無線の通信回線を通じてゲーム装置10に供給されてもよい。また、上記プログ
ラムは、ゲーム装置10内部の不揮発性記憶装置に予め記録されていてもよい。なお、上
記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD−ROM、
DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハ
ードディスク、光磁気ディスク、磁気テープなどでもよい。また、上記プログラムを記憶
する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。
【0178】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示
に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく
種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲
によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発
明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を
実施することができることが理解される。また、本明細書において使用される用語は、特
に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきで
ある。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語およ
び技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を
有する。矛盾する場合、本明細書(定義を含めて)が優先する。
【産業上の利用可能性】
【0179】
本発明に係る画像処理プログラム、画像処理装置、画像処理システム、および画像処理
方法は、実世界画像に仮想世界画像を合成した画像を表示する際に、実世界画像に付加表
示された仮想物体や文字等に対して新たな入力方法を用いて操作することができ、各種画
像を表示装置に表示する処理等を行う画像処理プログラム、画像処理装置、画像処理シス
テム、および画像処理方法等として有用である。
【符号の説明】
【0180】
10…ゲーム装置
11…下側ハウジング
12…下側LCD
13…タッチパネル
14…操作ボタン
15…アナログスティック
16…LED
17…挿入口
18…マイクロフォン用孔
19…無線スイッチ
21…上側ハウジング
22…上側LCD
23…外側撮像部
23a…外側左撮像部
23b…外側右撮像部
24…内側撮像部
25…3D調整スイッチ
26…3Dインジケータ
27…スクリーンカバー
28…タッチペン
31…情報処理部
311…CPU
312…GPU
313…VRAM
32…メインメモリ
33…外部メモリI/F
34…データ保存用外部メモリI/F
35…データ保存用内部メモリ
36…無線通信モジュール
37…ローカル通信モジュール
38…RTC
39…加速度センサ
40…角速度センサ
41…電源回路
42…I/F回路
43…マイク
44…スピーカ
45…外部メモリ
46…データ保存用外部メモリ

【特許請求の範囲】
【請求項1】
表示装置に画像を表示する画像処理装置のコンピュータを、
実カメラによって撮像された撮像画像を繰り返し取得する撮像画像取得手段、
実空間における前記実カメラの位置および姿勢にしたがって決められる位置姿勢情報を
繰り返し算出する位置姿勢算出手段、
音声入力デバイスから音声信号を示す音声データを取得する音声データ取得手段、
前記音声入力デバイスに入力された音声を認識する音声認識手段、
前記撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、
前記音声認識手段の音声認識結果に基づいて、当該付加表示物の表示位置、姿勢、および
表示態様から成る群から選ばれた少なくとも1つを設定する設定手段、
前記撮像画像における前記位置姿勢情報に応じた位置を基準として、前記設定手段が設
定した付加表示物を重畳して合成画像を繰り返し生成する画像生成手段、および
前記合成画像を前記表示装置に繰り返し表示する表示制御手段として機能させる、画像
処理プログラム。
【請求項2】
前記位置姿勢算出手段は、前記撮像画像に含まれる特定の撮像対象物または特徴点を検
出し、当該検出結果に基づいて当該撮像対象物または当該特徴点と前記実カメラとの間の
相対的な位置および姿勢を示す情報を前記位置姿勢情報として算出する、請求項1に記載
の画像処理プログラム。
【請求項3】
前記位置姿勢算出手段は、実空間における前記実カメラの地理的な位置および前記実カ
メラの撮像方向の方位の少なくとも一方を用いて、前記位置姿勢情報を算出する、請求項
1記載の画像処理プログラム。
【請求項4】
前記設定手段は、仮想オブジェクトを前記付加表示物として設定し、
前記画像生成手段は、
仮想世界において、前記位置姿勢情報に基づいて仮想カメラの位置および姿勢を設定
する仮想カメラ設定手段と、
前記仮想世界に前記設定手段が設定した仮想オブジェクトを配置する仮想オブジェク
ト配置手段と、
前記仮想カメラから見た仮想世界の画像を仮想世界画像として生成する仮想世界画像
生成手段とを含み、
前記画像生成手段は、前記撮像画像に前記仮想世界画像を重畳した画像を前記合成画像
として生成する、請求項1乃至3の何れか1つに記載の画像処理プログラム。
【請求項5】
前記設定手段は、前記音声入力デバイスに入力された音声が第1の音声であると認識さ
れ、かつ、前記位置姿勢情報が第1の条件を満たす場合に第1の動作に基づいて前記仮想
オブジェクトの表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つ
を設定し、前記音声入力デバイスに入力された音声が当該第1の音声であると認識され、
かつ、前記位置姿勢情報が当該第1の条件を満たさない場合に第2の動作に基づいて前記
仮想オブジェクトの表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも
1つを変更する、請求項4に記載の画像処理プログラム。
【請求項6】
前記位置姿勢算出手段は、前記撮像対象物と前記実カメラとの間の相対的な位置および
姿勢を示す情報を前記位置姿勢情報として算出し、
前記設定手段は、仮想オブジェクトを前記付加表示物として設定し、
前記画像生成手段は、
前記位置姿勢情報に基づいて前記撮像対象物に対応する位置および方向を仮想世界内
に設定し、前記位置姿勢情報に基づいて当該仮想世界において当該撮像対象物に対応する
位置および方向を基準として仮想カメラの位置および姿勢を設定する仮想カメラ設定手段
と、
前記仮想世界に前記設定手段が設定した仮想オブジェクトを、前記撮像対象物に対応
する位置を基準として配置する仮想オブジェクト配置手段と、
前記仮想カメラから見た仮想世界の画像を仮想世界画像として生成する仮想世界画像
生成手段とを含み、
前記設定手段は、前記音声入力デバイスに入力された音声が第1の音声であると認識さ
れた場合、前記仮想世界における前記撮像対象物に対応する方向を基準として動作する第
1の動作に基づいて前記仮想オブジェクトの表示位置、姿勢、および表示態様から成る群
から選ばれた少なくとも1つを設定し、前記音声入力デバイスに入力された音声が第2の
音声であると認識された場合、前記仮想世界における前記仮想カメラへの方向を基準とし
て動作する第2の動作に基づいて前記仮想オブジェクトの表示位置、姿勢、および表示態
様から成る群から選ばれた少なくとも1つを変更し、
前記画像生成手段は、前記撮像画像に前記仮想世界画像を重畳した画像を前記合成画像
として生成する、請求項2に記載の画像処理プログラム。
【請求項7】
前記設定手段は、前記音声入力デバイスに音声が入力されていない場合、または前記音
声認識手段が認識した音声が前記付加表示物を設定する対象ではない場合、前記付加表示
物の表示位置、姿勢、および表示態様から成る群から選ばれた少なくとも1つを、予め定
められた内容に設定する、請求項1乃至6の何れか1つに記載の画像処理プログラム。
【請求項8】
ユーザによる撮影指示に応じて、前記画像生成手段が現時点で生成している最新の合成
画像を記憶手段に保存する撮影保存手段として、さらに前記コンピュータを機能させる、
請求項1乃至7の何れか1つに記載の画像処理プログラム。
【請求項9】
前記撮像画像取得手段は、第1の実カメラおよび当該第1の実カメラから所定の距離離
れた位置に設けられた第2の実カメラによってそれぞれ撮像された第1の撮像画像および
第2の撮像画像を繰り返し取得し、
前記位置姿勢算出手段は、実空間における前記第1の実カメラの位置および姿勢にした
がって決められる第1の位置姿勢情報および実空間における前記第2の実カメラの位置お
よび姿勢にしたがって決められる第2の位置姿勢情報をそれぞれ繰り返し算出し、
前記画像生成手段は、前記第1の撮像画像における前記第1の位置姿勢情報に応じた位
置を基準として、前記設定手段が設定した付加表示物を重畳して第1の合成画像を繰り返
し生成し、前記第2の撮像画像における前記第2の位置姿勢情報に応じた位置を基準とし
て、前記設定手段が設定した付加表示物を重畳して第2の合成画像を繰り返し生成し、
前記表示制御手段は、立体視可能な表示装置に前記第1の合成画像および前記第2の合
成画像を出力して、前記付加表示物を合成した撮像画像を繰り返し立体表示する、請求項
1乃至8の何れか1つに記載の画像処理プログラム。
【請求項10】
前記音声認識手段は、前記音声入力デバイスに入力された音声を予め登録音声として登
録されている音声と少なくとも照合することによって、前記音声入力デバイスに入力され
た音声が第1の音声であるか否かを判別し、前記音声入力デバイスに入力された音声波形
のレベルのみに基づいて、前記音声入力デバイスに入力された音声が第2の音声であるか
否かを判別する、請求項1乃至4の何れか1つに記載の画像処理プログラム。
【請求項11】
前記音声認識手段は、前記音声入力デバイスに入力された音声入力パターンから得られ
る特徴パラメータ時系列に対する予め登録音声として登録されている特徴パラメータ時系
列の尤度に基づいて、前記音声入力デバイスに入力された音声が第1の音声であるか否か
を判別し、前記音声入力デバイスに入力された音声波形のレベルおよびスペクトル情報の
少なくとも一方のみに基づいて、前記音声入力デバイスに入力された音声が第3の音声で
あるか否かを判別する、請求項1乃至4の何れか1つに記載の画像処理プログラム。
【請求項12】
前記付加表示物に対する指示に対応する音声をユーザに入力させ、当該音声に応じた音
声データを当該指示に対応する前記登録音声として記憶手段に登録する音声登録手段とし
て、さらに前記コンピュータを機能させ、
前記音声認識手段は、前記音声登録手段が前記登録音声として登録した音声データを用
いて、前記音声入力デバイスに入力された音声が前記第1の音声であるか否かを判別する

前記設定手段は、前記音声認識手段が前記音声入力デバイスに入力された音声が前記第
1の音声である場合、当該第1の音声に対応して前記音声登録手段が予め登録した前記指
示に基づいて、前記付加表示物の表示位置、姿勢、および表示態様から成る群から選ばれ
た少なくとも1つを設定する、請求項10または11に記載の画像処理プログラム。
【請求項13】
前記設定手段は、前記位置姿勢情報が示す前記実カメラの地理的な位置および前記実カ
メラの撮像方向の方位の少なくとも一方に基づいて、前記撮像画像に撮像されている被写
体を推定し、当該被写体に関する情報を示す文字を前記付加表示物として設定し、
前記画像生成手段は、前記撮像画像における前記位置姿勢情報に応じた位置を基準とし
て、前記設定手段が設定した被写体に対応する文字を重畳して前記合成画像を繰り返し生
成し、
前記設定手段は、前記音声認識手段が音声認識した言語に一致する文字が前記付加表示
物として設定されている場合、当該文字が選択指示されたことを示す表示態様に変更して
当該文字を設定し、
前記画像生成手段は、前記言語に一致する文字を前記設定手段が変更した表示態様で前
記撮像画像に重畳して前記合成画像を生成する、請求項3に記載の画像処理プログラム。
【請求項14】
前記撮像画像取得手段は、前記画像処理装置を構成する筐体に内蔵される前記実カメラ
から前記撮像画像を取得し、
前記音声データ取得手段は、前記筐体に内蔵される前記音声入力デバイスから前記音声
データを取得し、
前記表示制御手段は、前記筐体に内蔵される前記表示装置に前記合成画像を表示する、
請求項1乃至13の何れか1つに記載の画像処理プログラム。
【請求項15】
表示装置に画像を表示する画像処理装置であって、
実カメラによって撮像された撮像画像を繰り返し取得する撮像画像取得手段と、
実空間における前記実カメラの位置および姿勢にしたがって決められる位置姿勢情報を
繰り返し算出する位置姿勢算出手段と、
音声入力デバイスから音声信号を示す音声データを取得する音声データ取得手段と、
前記音声入力デバイスに入力された音声を認識する音声認識手段と、
前記撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、
前記音声認識手段の音声認識結果に基づいて、当該付加表示物の表示位置、姿勢、および
表示態様から成る群から選ばれた少なくとも1つを設定する設定手段と、
前記撮像画像における前記位置姿勢情報に応じた位置を基準として、前記設定手段が設
定した付加表示物を重畳して合成画像を繰り返し生成する画像生成手段と、
前記合成画像を前記表示装置に繰り返し表示する表示制御手段とを備える、画像処理装
置。
【請求項16】
前記画像処理装置は、当該画像処理装置を内蔵する少なくとも1つの筐体に前記実カメ
ラ、前記表示装置、および前記音声入力デバイスを内蔵する、請求項15に記載の画像処
理装置。
【請求項17】
複数の装置が通信可能に構成され、表示装置に画像を表示する画像処理システムであっ
て、
実カメラによって撮像された撮像画像を繰り返し取得する撮像画像取得手段と、
実空間における前記実カメラの位置および姿勢にしたがって決められる位置姿勢情報を
繰り返し算出する位置姿勢算出手段と、
音声入力デバイスから音声信号を示す音声データを取得する音声データ取得手段と、
前記音声入力デバイスに入力された音声を認識する音声認識手段と、
前記撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、
前記音声認識手段の音声認識結果に基づいて、当該付加表示物の表示位置、姿勢、および
表示態様から成る群から選ばれた少なくとも1つを設定する設定手段と、
前記撮像画像における前記位置姿勢情報に応じた位置を基準として、前記設定手段が設
定した付加表示物を重畳して合成画像を繰り返し生成する画像生成手段と、
前記合成画像を前記表示装置に繰り返し表示する表示制御手段とを備える、画像処理シ
ステム。
【請求項18】
表示装置に画像を表示させる画像処理が可能な少なくとも1つの情報処理装置により構
成される画像処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働
により実行される画像処理方法であって、
実カメラによって撮像された撮像画像を繰り返し取得する撮像画像取得ステップと、
実空間における前記実カメラの位置および姿勢にしたがって決められる位置姿勢情報を
繰り返し算出する位置姿勢算出ステップと、
音声入力デバイスから音声信号を示す音声データを取得する音声データ取得ステップと

前記音声入力デバイスに入力された音声を認識する音声認識ステップと、
前記撮像画像に付加表示する仮想オブジェクトまたは文字を付加表示物として設定し、
前記音声認識ステップにおける音声認識結果に基づいて、当該付加表示物の表示位置、姿
勢、および表示態様から成る群から選ばれた少なくとも1つを設定する設定ステップと、
前記撮像画像における前記位置姿勢情報に応じた位置を基準として、前記設定ステップ
において設定した付加表示物を重畳して合成画像を繰り返し生成する画像生成ステップと

前記合成画像を前記表示装置に繰り返し表示する表示制御ステップとを含む、画像処理
方法。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2012−94101(P2012−94101A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2011−7852(P2011−7852)
【出願日】平成23年1月18日(2011.1.18)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】