携帯情報処理装置、携帯情報処理方法及び携帯情報処理プログラム
【課題】画像を用いて情報処理を行う携帯可能な携帯情報処理装置における操作性をより一層向上させる。
【解決手段】基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。
対象物撮影手段は、前記対象物の状態を撮影する。比較手段は、前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する。
【解決手段】基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。
対象物撮影手段は、前記対象物の状態を撮影する。比較手段は、前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像を用いて情報処理を行う携帯可能な携帯情報処理装置、携帯情報処理方法及び携帯情報処理プログラムに関する。
【背景技術】
【0002】
近年、撮影した画像を用いて対象物又はその変化を認識する技術の検討が進められている。これに関連する技術として、例えば、特許文献1には、被検出物の位置に関わらず正確な動作検出が可能であり、被検出物の適用範囲が広い動作検出装置が開示されている。具体的には、まず、画像データに基づいて移動ベクトルの大きさが所定値よりも大きい領域を、移動ベクトルが連続しているベクトル領域として抽出する。そして、ベクトル領域に対応する移動ベクトルに基づいて、被写体の動きの状態に対応する動きパターンを検出する。さらに、検出された動きパターンと、登録パターン格納部に格納された複数の登録パターンのそれぞれとを比較し、動きパターンに最も近い登録パターンを抽出する。
【0003】
また例えば、特許文献2には、監視カメラの撮像方向が変わっても、基準ライン及び特徴点の輝度の変化量差分から、短時間のうちに監視カメラの撮像位置が変わったことを検知して監視者に異常を知らせる監視カメラシステムが開示されている。この監視カメラシステムは、操作者の操作に応じて少なくとも1つの基準画素を選択すると、当該基準画素の位置情報を記憶するとともに、撮像手段により撮像された画像のうち当該基準画素とされた各画素の輝度を記憶する。そして、撮像手段により新たな画像が撮像されると、撮像された当該画像より基準画素の位置情報に対応する画素を抽出し、抽出された当該抽出画素と基準画素について対応する画素毎の輝度差を求める。両者の輝度差が所定値以上得られた場合には、撮像手段の撮像方向が変化したと判断する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−024835号公報
【特許文献2】特開2001−359086号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、このような従来の技術では、撮影した画像を用いて対象物又はその変化を認識することはできるが、携帯電話等の携帯情報処理装置による情報処理を制御するために画像を用いることは行われていない。特に、携帯情報処理装置及びその通信サービスの発達により、ゲーム等の情報処理そのものは容易に行えるようになっているものの、一般的に携帯情報処理装置は、筐体が小さく、キーの数は制限されている。そのため、実行する情報処理によってはユーザーインタフェースとしての入力が困難である。
本発明は、このような従来の技術が有する問題点に着目してなされたもので、画像を用いて情報処理を行う携帯可能な携帯情報処理装置における操作性をより一層向上させることを目的としている。
【課題を解決するための手段】
【0006】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
[1] 画像を用いて情報処理を行う携帯可能な携帯情報処理装置である。この携帯情報処理装置は、基準状態撮影手段と、対象物撮影手段と、比較手段と、制御手段とを有することを特徴とする。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて情報処理を制御する。
【0007】
[2] なお、この携帯情報処理装置は、対象物撮影手段によって撮影が行われたときの携帯情報処理装置の状態を検知する状態検知手段をさらに有することが好ましい。その場合、比較手段は、状態検知手段によって検知された状態に基づいて、対象物撮影手段によって撮影された画像を修正する。
【0008】
[3] また、制御手段は、対象物撮影手段によって対象物が撮影されていない場合は、過去に撮影された対象物に対する比較手段によって生成された比較情報に基づいて、情報処理を制御することが好ましい。
【0009】
[4] さらに、この携帯情報処理装置は、基準状態撮影手段によって撮影された基準画像又は対象物撮影手段によって撮影された画像を情報処理装置へ送信する送信手段と、情報処理装置から基準画像と画像との比較情報を受信する受信手段をさらに有することが好ましい。その場合、制御手段は、受信手段によって受信された比較情報に基づいて、情報処理を制御する。
【0010】
[5] 画像を用いて情報処理を行う携帯可能な携帯情報処理装置が行う携帯情報処理方法である。この携帯情報処理装置は、基準状態撮影手段と、対象物撮影手段と、比較手段と、制御手段とを有する。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて、情報処理を制御する。
【0011】
[6] コンピュータを内蔵する携帯可能な携帯情報処理装置に、画像を用いた情報処理を行わせることができる携帯情報処理プログラムである。コンピュータを以下のように機能させる。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて、情報処理を制御する。
【発明の効果】
【0012】
本発明にかかる携帯情報処理装置、携帯情報処理方法及び携帯情報処理プログラムによれば、画像を用いて情報処理を行う携帯可能な携帯情報処理装置であって、対象物の状態を撮影し、対象物の基準状態の画像との比較によって、情報処理を制御することができるようになる。そして、その携帯情報処理装置における操作性をより一層向上させる。
【図面の簡単な説明】
【0013】
【図1】本実施の形態の構成例についての概念的なモジュール構成図である。
【図2】携帯情報処理装置による準備段階の処理例を示すフローチャートである。
【図3】基準画像の例を示す説明図である。
【図4】携帯情報処理装置によるゲーム処理例を示すフローチャートである。
【図5】対象画像の例を示す説明図である。
【図6】傾いている対象画像の例を示す説明図である。
【図7】対象物が対象画像内に十分に撮影されていない場合の例を示す説明図である。
【図8】第2の実施の形態を実現する場合のシステム構成例を示す説明図である。
【図9】画像処理サーバーによるゲーム処理例を示すフローチャートである。
【図10】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0014】
<第1の実施の形態>
以下、図面に基づき本発明を実現するにあたっての好適な実施の形態の例を説明する。
図1は、本実施の形態(第1の実施の形態、第2の実施の形態)の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、本実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。「所定」という用語は、予め定められたの意の他に、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じての意を含めて用いる。
【0015】
以下、携帯情報処理装置として、携帯電話を主に例示して説明する。また、携帯情報処理装置が行う情報処理としてゲームを主に例示して説明する。
【0016】
本実施の形態である携帯情報処理装置100は、携帯情報処理装置が内蔵しているカメラを用いて、情報処理を制御するための情報を入力しようとするものであって、図1に示すように、カメラ110、センサ115、通信モジュール120、ディスプレイ125、入力モジュール130、処理モジュール150を有している。処理モジュール150は、制御モジュール155、メモリ160、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175を有している。なお、本実施の形態では、請求項に記載の基準状態撮影手段と対象物撮影手段としてカメラ110を、比較手段として比較モジュール170を、制御手段として制御モジュール155を、状態検知手段としてセンサ115を、送信手段と受信手段として通信モジュール120を、それぞれ一例として示している。
【0017】
カメラ110、センサ115、通信モジュール120、ディスプレイ125、入力モジュール130、メモリ160、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175は、それぞれ制御モジュール155と接続されており、制御モジュール155によって制御される。
【0018】
カメラ110は、携帯情報処理装置100に内蔵されているカメラであり、利用者の操作に応じて、対象物の複数の基準状態を撮影して基準画像を得て、その基準画像を制御モジュール155に渡す。また、対象物の状態を撮影して対象画像を得て、その対象画像を制御モジュール155に渡す。基準画像とは、情報処理モジュール175を制御するにあたって必要な制御値の最大値又は最小値を生成するためのものであり、その最大値又は最小値の制御値を入力する場合の対象物の状態を撮影したものである。情報処理モジュール175が情報処理を行うにあたって事前に必要なものである。対象画像とは、情報処理モジュール175を制御するにあたって必要な制御値を生成するためのものであり、情報処理モジュール175が情報処理を行っている最中に制御値を入力する場合に、対象物の状態を撮影したものである。また、対象物としては、限定するものではないが、利用者が操作しやすいものであり、カメラ110によって撮影しやすいものである。特に、全体は1色であり、背景とは異なる色であるとよい。例えば、利用者の足(靴)等が該当する。なお、カメラ110のレンズは、携帯情報処理装置100本体内のどこにあってもよいが、ディスプレイ201で対象物の状態画像を確認しながら撮影するためにディスプレイ201の裏側にあるのが適している。
【0019】
センサ115は、携帯情報処理装置100に内蔵されており、カメラ110によって撮影が行われたときの携帯情報処理装置100の状態を検知する。例えば、具体的には、加速度センサ、地磁気センサ、角速度センサ等があり、特にカメラ110の傾きを検知できるものであればよい。また、その検知のタイミングは、カメラ110が撮影を行った時であり、このタイミングは制御モジュール155によって制御される。
【0020】
通信モジュール120は、他の装置との通信を行う。具体的には、アンテナ、通信制御回路等が該当する。特に、カメラ110によって撮影された基準画像又は対象画像を画像処理サーバー850へ送信する。そして、画像処理サーバー850から基準画像と対象画像との比較情報を受信する。
ディスプレイ125は、携帯情報処理装置100に備え付けられており、具体的には、液晶画面、表示制御回路等が該当する。カメラ110によって撮影された画像、情報処理モジュール175による処理結果等を制御モジュール155の制御によって表示する。
入力モジュール130は、携帯情報処理装置100に備え付けられており、利用者の操作を入力し、その操作情報を制御モジュール155へ渡す。例えば、具体的には、キー、ディスプレイ125と一体となったタッチパネル等が該当し、シャッターボタンとしての機能を有するもの等がある。
【0021】
メモリ160は、カメラ110によって撮影された画像、その画像に対して特徴抽出モジュール165が抽出した特徴値、比較モジュール170によって生成された比較情報、情報処理モジュール175の処理に必要な引数等を記憶する。
特徴抽出モジュール165は、カメラ110によって撮影された画像の特徴を抽出する。抽出する特徴として、例えば、具体的には、対象物の面積、画像内の対象物の分布、対象物の中心線の傾き、対象物の形状等がある。これらの抽出は、既存の画像処理を用いて行う。
【0022】
比較モジュール170は、携帯情報処理装置100によって撮影された対象画像と基準画像を比較して比較情報を生成する。また、比較モジュール170は、センサ115によって検知された状態に基づいて、カメラ110によって撮影された対象画像(ここでは、対象画像内にある対象物の特徴値を含む)を修正するようにしてもよい。さらに、比較モジュール170は、比較する対象として、画像内の対象物の色情報を少なくとも比較する。このほかに、対象物の面積、画像内の対象物の分布、対象物の中心線の傾き、対象物の形状等を比較してもよい。これらを用いる場合であって、対象物の色情報を優先(最初に比較する、比較情報を生成する際に最大値の重みを付す等)して比較する。また、画像間の比較には、特徴抽出モジュール165によって抽出された特徴値を用いる。比較情報としては、基準画像との類似度、対象物の傾き等がある。なお、対象物の傾きとは、第1の基準画像内の対象物の傾き(A1)、第2の基準画像内の対象物の傾き(A2)、対象画像内の対象物の傾き(A3)によって算出されるものであり、A1とA2によって構成される角度において、A3がいずれに傾いているかを示す値である。より具体的には、|A3−A1|/|A2−A1|によって算出する。
【0023】
情報処理モジュール175は、情報処理を行う。ここでの情報処理としては、特に限定するものではないが、ゲーム等が該当する。例えば、対象物を変化させることによって、ゲーム内のキャラクターを動作させる。
【0024】
制御モジュール155は、各モジュール(カメラ110等を含む)を制御する。特に、比較モジュール170によって生成された比較情報に基づいて、情報処理モジュール175を制御する。また、制御モジュール155は、カメラ110によって対象物が撮影されていない場合は、過去に撮影された対象物に対する比較モジュール170によって生成された比較情報に基づいて、情報処理モジュール175を制御するようにしてもよい。また、制御モジュール155は、通信モジュール120によって受信された比較情報に基づいて、情報処理モジュール175を制御するようにしてもよい。なお、比較モジュール170が生成する比較情報は、情報処理モジュール175にとっては制御情報となる。
【0025】
図2は、携帯情報処理装置100による準備段階の処理例を示すフローチャートである。情報処理モジュール175による本格的な処理を行う前に行われる処理である。
ステップS202では、カメラ110が、第1の基準画像を撮影する。例えば、第1の基準画像とは、図3(a)に例示した基準画像a300である。これは、右方向に傾けた対象物310である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターを最高速で前進させる指示を示すものである。また、対象物310を明確にするために、利用者の操作に応じて、対象物310を選択させるようにしてもよい。
ステップS204では、制御モジュール155が、メモリ160に第1の基準画像を記憶させる。
【0026】
ステップS206では、カメラ110が、第2の基準画像を撮影する。例えば、第2の基準画像とは、図3(b)に例示した基準画像b350である。これは、左方向に傾けた対象物360である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターを最高速で後進させる指示を示すものである。また、対象物360を明確にするために、利用者の操作に応じて、対象物360を選択させるようにしてもよい。
ステップS208では、制御モジュール155が、メモリ160に第2の基準画像を記憶させる。
【0027】
ステップS210では、特徴抽出モジュール165が、基準画像内の対象物の特徴を抽出する。ここでは、例えば、抽出する特徴として、対象物310(360)の中心線の角度とする。つまり、足(靴)の角度に応じて、前進、後進、その速度を指示できるものである。
【0028】
ステップS212では、特徴抽出モジュール165が、メモリ160に特徴値を記憶させる。例えば、基準画像特徴テーブルを記憶する。基準画像特徴テーブルは、列方向に色情報欄、面積欄、分布欄、中心線の傾き欄、形状欄等を有しており、行方向に第1の基準画像欄、第2の基準画像欄を有している。つまり、各基準画像の特徴値を記憶する。なお、基準画像特徴テーブルは必要な特徴値だけを記憶するようにしてもよい。
色情報とは撮影した対象物310(360)のRGBの画素値であり、面積とは対象物310(360)の画素数であり、分布とは対象物310(360)の中心(重心)等の基準画像a300(基準画像b350)内における座標であり、中心線の傾きとは対象物310(360)の中心線の傾き角度であり、形状とは対象物310(360)の形状を表す特徴値(例えば、中心から最遠の点までを半径とした円を描き、その円内で占める対象物310(360)の割合、つまり円らしさを示す特徴値)である。
【0029】
図4は、携帯情報処理装置100によるゲーム処理例を示すフローチャートである。
ステップS402では、入力モジュール130に対する利用者の操作に応じて、制御モジュール155が情報処理モジュール175にゲームを開始させる。
ステップS404では、カメラ110が、対象画像を撮影する。例えば、対象画像とは、図5に例示した対象画像500である。これは、やや右方向に傾けた対象物510である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターをやや高速で前進させる指示を示すものである。また、対象物510を明確にするために、利用者の操作に応じて、対象物510を選択させるようにしてもよい。
【0030】
ステップS406では、センサ115が、携帯情報処理装置100の状態を検知する。つまり、ステップS404での撮影時の携帯情報処理装置100の状態(傾き等)を検知する。
ステップS408では、画像の特徴を抽出する。図2に例示したフローチャート内のステップS210と同等の処理を行うものである。特徴抽出の結果を対象画像特徴テーブルに記憶する。対象画像特徴テーブルは、列方向に色情報欄、面積欄、分布欄、中心線の傾き欄、形状欄等を有しており、行方向に対象画像欄を有している。つまり、基準画像における基準画像特徴テーブルと同等のものである。なお、対象物は複数あってもよい。
【0031】
ステップS410では、制御モジュール155が、ステップS408による処理の結果、対象画像内に対象物があるか否かを判断する。ある場合はステップS412へ進み、それ以外の場合はステップS418へ進む。つまり、基準画像a300(基準画像b350)内の対象物310(360)に類似するものが、撮影した対象画像内にあるか否かを判断するものであり、具体的には、例えば、基準画像内の対象物の色情報の面積と今回撮影した対象画像内の対象物の色情報の面積が所定の範囲内にあるか否かによって判断する。図7は、対象物710が対象画像700内に十分に撮影されていない場合の例を示す説明図である。対象画像700内には対象物710が撮影されているが、その面積が十分ではないため、対象物は撮影されていないと判断される。
【0032】
ステップS412では、比較モジュール170が、ステップS406で検知された値に基づいて、対象物の特徴値を修正する。例えば、ステップS406で携帯情報処理装置100が傾いていることを検知した場合、撮影した対象画像も傾いているので、対象物の特徴値(例えば、中心線の傾き)を修正するものである。
図6は、傾いている対象画像の例を示す説明図である。対象画像600は、携帯情報処理装置100を左方向に傾けて対象物610を撮影したものである(図6では、垂直線620が左方向に傾いている)。したがって、中心線の傾きを右方向に戻すように(垂直線620を本来の垂直に戻すように)修正する。なお、図6の例では、この修正が行われないと、低速で前進させる指示として解釈してしまうが、傾きの修正を行って、やや高速で前進させる指示であると解釈できるようになる。例えば、携帯情報処理装置100全体をハンドルのように用いるゲームにおいて、このような場合が発生し、そのような場合においても、対象物によって正確な指示を行うことができるようになる。
【0033】
ステップS414では、比較モジュール170が、基準画像の特徴値と比較して、比較情報(制御値)であるゲーム入力値へ変換する。つまり、対象画像における対象物の特徴値を記憶している対象画像特徴テーブル内の値(ここでは中心線の傾き)と基準画像における対象物の特徴値を記憶している基準画像特徴テーブルの値とを比較し、対象画像における対象物は、基準画像a又は基準画像bにおける対象物とどれだけ類似しているかを算出する。図6の例では、基準画像aにおける対象物と類似しており、その類似度は角度差(この場合、値が小さいほど類似していることを示す)である。
【0034】
ステップS416では、制御モジュール155が、メモリ160にゲーム入力値を記憶させる。対象物を検出できなかった場合に対応するためである。次にステップS420へ進む。
ステップS418では、制御モジュール155が、メモリ160から以前のゲーム入力値を抽出する。つまり、ステップS416で記憶されたゲーム入力値を抽出する。
ステップS420では、制御モジュール155が、情報処理モジュール175にゲーム入力値を入力する。ゲーム入力値として、図5、図6の例では、キャラクターをやや高速で前進させる指示を入力する。
【0035】
<第2の実施の形態>
前述した第1の実施の形態は、携帯情報処理装置100をスタンドアローンとして利用した場合の処理例であったが、クライアント・サーバ型として利用することも可能である。
図8は、第2の実施の形態を実現する場合のシステム構成例を示す説明図である。携帯電話800と画像処理サーバー850は、無線又は有線の通信ネットワーク890を介して接続されている。携帯電話800、画像処理サーバー850は、それぞれ複数あってもよい。ただし、後述する準備段階の処理、ゲーム処理は、一対の携帯電話800と画像処理サーバー850の間で行われる。
携帯電話800は、図1の例に示した携帯情報処理装置100の具体例である。
画像処理サーバー850は、主に図1の例に示す特徴抽出モジュール165、比較モジュール170の処理を行うものであり、携帯電話800から画像を受け取り、その画像の特徴を抽出し、比較情報を生成して、携帯電話800へ送信する。つまり、携帯電話800では性能面から困難な処理を行うものである。
【0036】
次に、図8に例示したシステム構成における処理例を説明する。
まず、携帯電話800による準備段階の処理例を説明する。
(1)図2に例示したフローチャートのステップS202からステップS208までの処理を行う。
(2)通信モジュール120が、メモリ160内の第1の基準画像と第2の基準画像を、画像処理サーバー850へ送信する。
【0037】
次に、画像処理サーバー850による準備段階の処理例を説明する。
(1)携帯電話800から送信されてきた第1の基準画像と第2の基準画像を受信する。
(2)基準画像内の対象物の特徴を抽出する。図2に例示したフローチャートのステップS210の処理に対応する。
(3)送信してきた携帯電話番号(なお、「携帯電話番号」とは、携帯電話を一意に特定する固有の識別番号であり、その携帯電話を一意に特定するものであれば、その他のコードであってもよい。以下、同じ意味で用いる。)に対応させて特徴値を記憶する。つまり、1つの画像処理サーバー850に対して、複数の携帯電話800から送信されてきた場合に対応するものである。具体的には、基準画像特徴テーブルに携帯電話番号の欄を設ければよい。
【0038】
次に、携帯電話800によるゲーム処理例を説明する。
(1)図4に例示したフローチャートのステップS402からステップS406までの処理を行う。
(2)通信モジュール120が、撮影した画像とセンサ検知の値を、画像処理サーバー850へ送信する。
(3)通信モジュール120が、画像処理サーバー850からゲーム入力値を受信する。
(4)制御モジュール155が、情報処理モジュール175にゲーム入力値を入力する。図4に例示したフローチャートのステップS420の処理に対応する。
【0039】
図9は、画像処理サーバー850によるゲーム処理例を示すフローチャートである。
ステップS902では、携帯電話800から送信されてきた対象画像とセンサ検知の値を受信する。
ステップS904からステップS914までの処理は、図4に例示したフローチャートのステップS408からステップS418までの処理に対応する。ただし、ステップS910、ステップS912、ステップS914の処理は、送信してきた携帯電話800の携帯電話番号に対応させた処理を行う。
【0040】
つまり、ステップS910では、送信してきた携帯電話番号に対応した基準画像の特徴値と比較して、ゲーム入力値へ変換する。つまり、今回送信してきた携帯電話800に対応した基準画像内の対象物の特徴値と比較するものである。具体的には、基準画像特徴テーブルから今回送信してきた携帯電話800の携帯電話番号に対応する特徴値を抽出して、比較するものである。
また、ステップS912では、送信してきた携帯電話番号に対応させてゲーム入力値を記憶する。その携帯電話800から次回送信されてきた対象画像の対象物を検出できなかった場合に対応するためである。
また、ステップS914では、送信してきた携帯電話番号に対応する以前のゲーム入力値を抽出する。つまり、ステップS912で記憶されたゲーム入力値を抽出する。
ステップS916では、ゲーム入力値を携帯電話800へ送信する。
【0041】
なお、本実施の形態としてのプログラムが実行される携帯電話800、画像処理サーバー850のハードウェア構成は、図10に示すように、一般的なコンピュータである。制御モジュール155、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175等のプログラムを実行するCPU1010と、そのプログラムやデータを記憶するRAM1030と、本コンピュータを起動するためのプログラム等が格納されているROM1020と、補助記憶装置であるHD1040(携帯電話800ではなくてもよい)と、キー、マウス等から操作者の操作によってデータを入力又はCRTや液晶ディスプレイ等にデータを出力して操作者とのインタフェースとなるUI/F1050と、CD−R、メモリカード等のリムーバブルメディアに対して読み書きするリムーバブルメディアリーダーライター1060と、通信ネットワークと接続するための通信回線I/F1070、そして、それらをつないでデータのやりとりをするためのバス1080により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【0042】
前記実施の形態においては、携帯情報処理装置100(第2の実施の形態では携帯電話800)が行う情報処理としてゲームを示したが、ブラウザの操作等であってもよい。もちろん、対象物としては足(靴)以外のもの(例えば、操作している手とは逆の手、壁に貼り付けた複数種類の図形(対象物)が描かれたポスター等)であってもよい。また、比較する特徴として、中心線の傾き以外に、その面積、画像内の位置(分布)等であってもよい。
また、携帯情報処理装置として、携帯電話を主に例示して説明したが、第1の実施の形態は、携帯可能で撮影装置を備えている情報処理装置であれば通信可能でなくてもよい(もちろん、通信可能であってもよい)。例えば、ゲーム機、PDA(Personal Digital Assistant)、電子辞書、携帯ナビゲーション機等であってもよい。第2の実施の形態は、通信可能な前記ゲーム機等の他、PHS(Personal Handy phone System)等であってもよい。
【0043】
また、前述の準備段階の処理例の説明では、対象物の特徴値を修正することを行っていないが、準備段階の処理においても、センサ115によって検知された携帯情報処理装置100の状態に基づいて、基準画像内の対象物の特徴値を修正するようにしてもよい。
なお、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
前記実施の形態においては、基準画像として、最大値又は最小値の制御値を入力する場合の対象物の状態を撮影した画像を例示したが、その中間に相当する画像(例えば、ニュートラル値を示す対象物の状態を撮影した画像等)であってもよい。つまり、基準画像は3枚以上としてもよい。そして、その中間に相当する画像があれば、制御値を入力する際に精度を向上させることができるという効果がある。
【0044】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
【符号の説明】
【0045】
100…携帯情報処理装置
110…カメラ
115…センサ
120…通信モジュール
125…ディスプレイ
130…入力モジュール
150…処理モジュール
155…制御モジュール
160…メモリ
165…特徴抽出モジュール
170…比較モジュール
175…情報処理モジュール
800…携帯電話
850…画像処理サーバー
890…通信ネットワーク
【技術分野】
【0001】
本発明は、画像を用いて情報処理を行う携帯可能な携帯情報処理装置、携帯情報処理方法及び携帯情報処理プログラムに関する。
【背景技術】
【0002】
近年、撮影した画像を用いて対象物又はその変化を認識する技術の検討が進められている。これに関連する技術として、例えば、特許文献1には、被検出物の位置に関わらず正確な動作検出が可能であり、被検出物の適用範囲が広い動作検出装置が開示されている。具体的には、まず、画像データに基づいて移動ベクトルの大きさが所定値よりも大きい領域を、移動ベクトルが連続しているベクトル領域として抽出する。そして、ベクトル領域に対応する移動ベクトルに基づいて、被写体の動きの状態に対応する動きパターンを検出する。さらに、検出された動きパターンと、登録パターン格納部に格納された複数の登録パターンのそれぞれとを比較し、動きパターンに最も近い登録パターンを抽出する。
【0003】
また例えば、特許文献2には、監視カメラの撮像方向が変わっても、基準ライン及び特徴点の輝度の変化量差分から、短時間のうちに監視カメラの撮像位置が変わったことを検知して監視者に異常を知らせる監視カメラシステムが開示されている。この監視カメラシステムは、操作者の操作に応じて少なくとも1つの基準画素を選択すると、当該基準画素の位置情報を記憶するとともに、撮像手段により撮像された画像のうち当該基準画素とされた各画素の輝度を記憶する。そして、撮像手段により新たな画像が撮像されると、撮像された当該画像より基準画素の位置情報に対応する画素を抽出し、抽出された当該抽出画素と基準画素について対応する画素毎の輝度差を求める。両者の輝度差が所定値以上得られた場合には、撮像手段の撮像方向が変化したと判断する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−024835号公報
【特許文献2】特開2001−359086号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、このような従来の技術では、撮影した画像を用いて対象物又はその変化を認識することはできるが、携帯電話等の携帯情報処理装置による情報処理を制御するために画像を用いることは行われていない。特に、携帯情報処理装置及びその通信サービスの発達により、ゲーム等の情報処理そのものは容易に行えるようになっているものの、一般的に携帯情報処理装置は、筐体が小さく、キーの数は制限されている。そのため、実行する情報処理によってはユーザーインタフェースとしての入力が困難である。
本発明は、このような従来の技術が有する問題点に着目してなされたもので、画像を用いて情報処理を行う携帯可能な携帯情報処理装置における操作性をより一層向上させることを目的としている。
【課題を解決するための手段】
【0006】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
[1] 画像を用いて情報処理を行う携帯可能な携帯情報処理装置である。この携帯情報処理装置は、基準状態撮影手段と、対象物撮影手段と、比較手段と、制御手段とを有することを特徴とする。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて情報処理を制御する。
【0007】
[2] なお、この携帯情報処理装置は、対象物撮影手段によって撮影が行われたときの携帯情報処理装置の状態を検知する状態検知手段をさらに有することが好ましい。その場合、比較手段は、状態検知手段によって検知された状態に基づいて、対象物撮影手段によって撮影された画像を修正する。
【0008】
[3] また、制御手段は、対象物撮影手段によって対象物が撮影されていない場合は、過去に撮影された対象物に対する比較手段によって生成された比較情報に基づいて、情報処理を制御することが好ましい。
【0009】
[4] さらに、この携帯情報処理装置は、基準状態撮影手段によって撮影された基準画像又は対象物撮影手段によって撮影された画像を情報処理装置へ送信する送信手段と、情報処理装置から基準画像と画像との比較情報を受信する受信手段をさらに有することが好ましい。その場合、制御手段は、受信手段によって受信された比較情報に基づいて、情報処理を制御する。
【0010】
[5] 画像を用いて情報処理を行う携帯可能な携帯情報処理装置が行う携帯情報処理方法である。この携帯情報処理装置は、基準状態撮影手段と、対象物撮影手段と、比較手段と、制御手段とを有する。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて、情報処理を制御する。
【0011】
[6] コンピュータを内蔵する携帯可能な携帯情報処理装置に、画像を用いた情報処理を行わせることができる携帯情報処理プログラムである。コンピュータを以下のように機能させる。基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得る。対象物撮影手段は、対象物の状態を撮影する。比較手段は、対象物撮影手段によって撮影された画像と、基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する。制御手段は、比較手段によって生成された比較情報に基づいて、情報処理を制御する。
【発明の効果】
【0012】
本発明にかかる携帯情報処理装置、携帯情報処理方法及び携帯情報処理プログラムによれば、画像を用いて情報処理を行う携帯可能な携帯情報処理装置であって、対象物の状態を撮影し、対象物の基準状態の画像との比較によって、情報処理を制御することができるようになる。そして、その携帯情報処理装置における操作性をより一層向上させる。
【図面の簡単な説明】
【0013】
【図1】本実施の形態の構成例についての概念的なモジュール構成図である。
【図2】携帯情報処理装置による準備段階の処理例を示すフローチャートである。
【図3】基準画像の例を示す説明図である。
【図4】携帯情報処理装置によるゲーム処理例を示すフローチャートである。
【図5】対象画像の例を示す説明図である。
【図6】傾いている対象画像の例を示す説明図である。
【図7】対象物が対象画像内に十分に撮影されていない場合の例を示す説明図である。
【図8】第2の実施の形態を実現する場合のシステム構成例を示す説明図である。
【図9】画像処理サーバーによるゲーム処理例を示すフローチャートである。
【図10】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0014】
<第1の実施の形態>
以下、図面に基づき本発明を実現するにあたっての好適な実施の形態の例を説明する。
図1は、本実施の形態(第1の実施の形態、第2の実施の形態)の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、本実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。「所定」という用語は、予め定められたの意の他に、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じての意を含めて用いる。
【0015】
以下、携帯情報処理装置として、携帯電話を主に例示して説明する。また、携帯情報処理装置が行う情報処理としてゲームを主に例示して説明する。
【0016】
本実施の形態である携帯情報処理装置100は、携帯情報処理装置が内蔵しているカメラを用いて、情報処理を制御するための情報を入力しようとするものであって、図1に示すように、カメラ110、センサ115、通信モジュール120、ディスプレイ125、入力モジュール130、処理モジュール150を有している。処理モジュール150は、制御モジュール155、メモリ160、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175を有している。なお、本実施の形態では、請求項に記載の基準状態撮影手段と対象物撮影手段としてカメラ110を、比較手段として比較モジュール170を、制御手段として制御モジュール155を、状態検知手段としてセンサ115を、送信手段と受信手段として通信モジュール120を、それぞれ一例として示している。
【0017】
カメラ110、センサ115、通信モジュール120、ディスプレイ125、入力モジュール130、メモリ160、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175は、それぞれ制御モジュール155と接続されており、制御モジュール155によって制御される。
【0018】
カメラ110は、携帯情報処理装置100に内蔵されているカメラであり、利用者の操作に応じて、対象物の複数の基準状態を撮影して基準画像を得て、その基準画像を制御モジュール155に渡す。また、対象物の状態を撮影して対象画像を得て、その対象画像を制御モジュール155に渡す。基準画像とは、情報処理モジュール175を制御するにあたって必要な制御値の最大値又は最小値を生成するためのものであり、その最大値又は最小値の制御値を入力する場合の対象物の状態を撮影したものである。情報処理モジュール175が情報処理を行うにあたって事前に必要なものである。対象画像とは、情報処理モジュール175を制御するにあたって必要な制御値を生成するためのものであり、情報処理モジュール175が情報処理を行っている最中に制御値を入力する場合に、対象物の状態を撮影したものである。また、対象物としては、限定するものではないが、利用者が操作しやすいものであり、カメラ110によって撮影しやすいものである。特に、全体は1色であり、背景とは異なる色であるとよい。例えば、利用者の足(靴)等が該当する。なお、カメラ110のレンズは、携帯情報処理装置100本体内のどこにあってもよいが、ディスプレイ201で対象物の状態画像を確認しながら撮影するためにディスプレイ201の裏側にあるのが適している。
【0019】
センサ115は、携帯情報処理装置100に内蔵されており、カメラ110によって撮影が行われたときの携帯情報処理装置100の状態を検知する。例えば、具体的には、加速度センサ、地磁気センサ、角速度センサ等があり、特にカメラ110の傾きを検知できるものであればよい。また、その検知のタイミングは、カメラ110が撮影を行った時であり、このタイミングは制御モジュール155によって制御される。
【0020】
通信モジュール120は、他の装置との通信を行う。具体的には、アンテナ、通信制御回路等が該当する。特に、カメラ110によって撮影された基準画像又は対象画像を画像処理サーバー850へ送信する。そして、画像処理サーバー850から基準画像と対象画像との比較情報を受信する。
ディスプレイ125は、携帯情報処理装置100に備え付けられており、具体的には、液晶画面、表示制御回路等が該当する。カメラ110によって撮影された画像、情報処理モジュール175による処理結果等を制御モジュール155の制御によって表示する。
入力モジュール130は、携帯情報処理装置100に備え付けられており、利用者の操作を入力し、その操作情報を制御モジュール155へ渡す。例えば、具体的には、キー、ディスプレイ125と一体となったタッチパネル等が該当し、シャッターボタンとしての機能を有するもの等がある。
【0021】
メモリ160は、カメラ110によって撮影された画像、その画像に対して特徴抽出モジュール165が抽出した特徴値、比較モジュール170によって生成された比較情報、情報処理モジュール175の処理に必要な引数等を記憶する。
特徴抽出モジュール165は、カメラ110によって撮影された画像の特徴を抽出する。抽出する特徴として、例えば、具体的には、対象物の面積、画像内の対象物の分布、対象物の中心線の傾き、対象物の形状等がある。これらの抽出は、既存の画像処理を用いて行う。
【0022】
比較モジュール170は、携帯情報処理装置100によって撮影された対象画像と基準画像を比較して比較情報を生成する。また、比較モジュール170は、センサ115によって検知された状態に基づいて、カメラ110によって撮影された対象画像(ここでは、対象画像内にある対象物の特徴値を含む)を修正するようにしてもよい。さらに、比較モジュール170は、比較する対象として、画像内の対象物の色情報を少なくとも比較する。このほかに、対象物の面積、画像内の対象物の分布、対象物の中心線の傾き、対象物の形状等を比較してもよい。これらを用いる場合であって、対象物の色情報を優先(最初に比較する、比較情報を生成する際に最大値の重みを付す等)して比較する。また、画像間の比較には、特徴抽出モジュール165によって抽出された特徴値を用いる。比較情報としては、基準画像との類似度、対象物の傾き等がある。なお、対象物の傾きとは、第1の基準画像内の対象物の傾き(A1)、第2の基準画像内の対象物の傾き(A2)、対象画像内の対象物の傾き(A3)によって算出されるものであり、A1とA2によって構成される角度において、A3がいずれに傾いているかを示す値である。より具体的には、|A3−A1|/|A2−A1|によって算出する。
【0023】
情報処理モジュール175は、情報処理を行う。ここでの情報処理としては、特に限定するものではないが、ゲーム等が該当する。例えば、対象物を変化させることによって、ゲーム内のキャラクターを動作させる。
【0024】
制御モジュール155は、各モジュール(カメラ110等を含む)を制御する。特に、比較モジュール170によって生成された比較情報に基づいて、情報処理モジュール175を制御する。また、制御モジュール155は、カメラ110によって対象物が撮影されていない場合は、過去に撮影された対象物に対する比較モジュール170によって生成された比較情報に基づいて、情報処理モジュール175を制御するようにしてもよい。また、制御モジュール155は、通信モジュール120によって受信された比較情報に基づいて、情報処理モジュール175を制御するようにしてもよい。なお、比較モジュール170が生成する比較情報は、情報処理モジュール175にとっては制御情報となる。
【0025】
図2は、携帯情報処理装置100による準備段階の処理例を示すフローチャートである。情報処理モジュール175による本格的な処理を行う前に行われる処理である。
ステップS202では、カメラ110が、第1の基準画像を撮影する。例えば、第1の基準画像とは、図3(a)に例示した基準画像a300である。これは、右方向に傾けた対象物310である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターを最高速で前進させる指示を示すものである。また、対象物310を明確にするために、利用者の操作に応じて、対象物310を選択させるようにしてもよい。
ステップS204では、制御モジュール155が、メモリ160に第1の基準画像を記憶させる。
【0026】
ステップS206では、カメラ110が、第2の基準画像を撮影する。例えば、第2の基準画像とは、図3(b)に例示した基準画像b350である。これは、左方向に傾けた対象物360である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターを最高速で後進させる指示を示すものである。また、対象物360を明確にするために、利用者の操作に応じて、対象物360を選択させるようにしてもよい。
ステップS208では、制御モジュール155が、メモリ160に第2の基準画像を記憶させる。
【0027】
ステップS210では、特徴抽出モジュール165が、基準画像内の対象物の特徴を抽出する。ここでは、例えば、抽出する特徴として、対象物310(360)の中心線の角度とする。つまり、足(靴)の角度に応じて、前進、後進、その速度を指示できるものである。
【0028】
ステップS212では、特徴抽出モジュール165が、メモリ160に特徴値を記憶させる。例えば、基準画像特徴テーブルを記憶する。基準画像特徴テーブルは、列方向に色情報欄、面積欄、分布欄、中心線の傾き欄、形状欄等を有しており、行方向に第1の基準画像欄、第2の基準画像欄を有している。つまり、各基準画像の特徴値を記憶する。なお、基準画像特徴テーブルは必要な特徴値だけを記憶するようにしてもよい。
色情報とは撮影した対象物310(360)のRGBの画素値であり、面積とは対象物310(360)の画素数であり、分布とは対象物310(360)の中心(重心)等の基準画像a300(基準画像b350)内における座標であり、中心線の傾きとは対象物310(360)の中心線の傾き角度であり、形状とは対象物310(360)の形状を表す特徴値(例えば、中心から最遠の点までを半径とした円を描き、その円内で占める対象物310(360)の割合、つまり円らしさを示す特徴値)である。
【0029】
図4は、携帯情報処理装置100によるゲーム処理例を示すフローチャートである。
ステップS402では、入力モジュール130に対する利用者の操作に応じて、制御モジュール155が情報処理モジュール175にゲームを開始させる。
ステップS404では、カメラ110が、対象画像を撮影する。例えば、対象画像とは、図5に例示した対象画像500である。これは、やや右方向に傾けた対象物510である足(靴)を撮影したものであり、例えば、情報処理モジュール175が行うゲームにおいてキャラクターをやや高速で前進させる指示を示すものである。また、対象物510を明確にするために、利用者の操作に応じて、対象物510を選択させるようにしてもよい。
【0030】
ステップS406では、センサ115が、携帯情報処理装置100の状態を検知する。つまり、ステップS404での撮影時の携帯情報処理装置100の状態(傾き等)を検知する。
ステップS408では、画像の特徴を抽出する。図2に例示したフローチャート内のステップS210と同等の処理を行うものである。特徴抽出の結果を対象画像特徴テーブルに記憶する。対象画像特徴テーブルは、列方向に色情報欄、面積欄、分布欄、中心線の傾き欄、形状欄等を有しており、行方向に対象画像欄を有している。つまり、基準画像における基準画像特徴テーブルと同等のものである。なお、対象物は複数あってもよい。
【0031】
ステップS410では、制御モジュール155が、ステップS408による処理の結果、対象画像内に対象物があるか否かを判断する。ある場合はステップS412へ進み、それ以外の場合はステップS418へ進む。つまり、基準画像a300(基準画像b350)内の対象物310(360)に類似するものが、撮影した対象画像内にあるか否かを判断するものであり、具体的には、例えば、基準画像内の対象物の色情報の面積と今回撮影した対象画像内の対象物の色情報の面積が所定の範囲内にあるか否かによって判断する。図7は、対象物710が対象画像700内に十分に撮影されていない場合の例を示す説明図である。対象画像700内には対象物710が撮影されているが、その面積が十分ではないため、対象物は撮影されていないと判断される。
【0032】
ステップS412では、比較モジュール170が、ステップS406で検知された値に基づいて、対象物の特徴値を修正する。例えば、ステップS406で携帯情報処理装置100が傾いていることを検知した場合、撮影した対象画像も傾いているので、対象物の特徴値(例えば、中心線の傾き)を修正するものである。
図6は、傾いている対象画像の例を示す説明図である。対象画像600は、携帯情報処理装置100を左方向に傾けて対象物610を撮影したものである(図6では、垂直線620が左方向に傾いている)。したがって、中心線の傾きを右方向に戻すように(垂直線620を本来の垂直に戻すように)修正する。なお、図6の例では、この修正が行われないと、低速で前進させる指示として解釈してしまうが、傾きの修正を行って、やや高速で前進させる指示であると解釈できるようになる。例えば、携帯情報処理装置100全体をハンドルのように用いるゲームにおいて、このような場合が発生し、そのような場合においても、対象物によって正確な指示を行うことができるようになる。
【0033】
ステップS414では、比較モジュール170が、基準画像の特徴値と比較して、比較情報(制御値)であるゲーム入力値へ変換する。つまり、対象画像における対象物の特徴値を記憶している対象画像特徴テーブル内の値(ここでは中心線の傾き)と基準画像における対象物の特徴値を記憶している基準画像特徴テーブルの値とを比較し、対象画像における対象物は、基準画像a又は基準画像bにおける対象物とどれだけ類似しているかを算出する。図6の例では、基準画像aにおける対象物と類似しており、その類似度は角度差(この場合、値が小さいほど類似していることを示す)である。
【0034】
ステップS416では、制御モジュール155が、メモリ160にゲーム入力値を記憶させる。対象物を検出できなかった場合に対応するためである。次にステップS420へ進む。
ステップS418では、制御モジュール155が、メモリ160から以前のゲーム入力値を抽出する。つまり、ステップS416で記憶されたゲーム入力値を抽出する。
ステップS420では、制御モジュール155が、情報処理モジュール175にゲーム入力値を入力する。ゲーム入力値として、図5、図6の例では、キャラクターをやや高速で前進させる指示を入力する。
【0035】
<第2の実施の形態>
前述した第1の実施の形態は、携帯情報処理装置100をスタンドアローンとして利用した場合の処理例であったが、クライアント・サーバ型として利用することも可能である。
図8は、第2の実施の形態を実現する場合のシステム構成例を示す説明図である。携帯電話800と画像処理サーバー850は、無線又は有線の通信ネットワーク890を介して接続されている。携帯電話800、画像処理サーバー850は、それぞれ複数あってもよい。ただし、後述する準備段階の処理、ゲーム処理は、一対の携帯電話800と画像処理サーバー850の間で行われる。
携帯電話800は、図1の例に示した携帯情報処理装置100の具体例である。
画像処理サーバー850は、主に図1の例に示す特徴抽出モジュール165、比較モジュール170の処理を行うものであり、携帯電話800から画像を受け取り、その画像の特徴を抽出し、比較情報を生成して、携帯電話800へ送信する。つまり、携帯電話800では性能面から困難な処理を行うものである。
【0036】
次に、図8に例示したシステム構成における処理例を説明する。
まず、携帯電話800による準備段階の処理例を説明する。
(1)図2に例示したフローチャートのステップS202からステップS208までの処理を行う。
(2)通信モジュール120が、メモリ160内の第1の基準画像と第2の基準画像を、画像処理サーバー850へ送信する。
【0037】
次に、画像処理サーバー850による準備段階の処理例を説明する。
(1)携帯電話800から送信されてきた第1の基準画像と第2の基準画像を受信する。
(2)基準画像内の対象物の特徴を抽出する。図2に例示したフローチャートのステップS210の処理に対応する。
(3)送信してきた携帯電話番号(なお、「携帯電話番号」とは、携帯電話を一意に特定する固有の識別番号であり、その携帯電話を一意に特定するものであれば、その他のコードであってもよい。以下、同じ意味で用いる。)に対応させて特徴値を記憶する。つまり、1つの画像処理サーバー850に対して、複数の携帯電話800から送信されてきた場合に対応するものである。具体的には、基準画像特徴テーブルに携帯電話番号の欄を設ければよい。
【0038】
次に、携帯電話800によるゲーム処理例を説明する。
(1)図4に例示したフローチャートのステップS402からステップS406までの処理を行う。
(2)通信モジュール120が、撮影した画像とセンサ検知の値を、画像処理サーバー850へ送信する。
(3)通信モジュール120が、画像処理サーバー850からゲーム入力値を受信する。
(4)制御モジュール155が、情報処理モジュール175にゲーム入力値を入力する。図4に例示したフローチャートのステップS420の処理に対応する。
【0039】
図9は、画像処理サーバー850によるゲーム処理例を示すフローチャートである。
ステップS902では、携帯電話800から送信されてきた対象画像とセンサ検知の値を受信する。
ステップS904からステップS914までの処理は、図4に例示したフローチャートのステップS408からステップS418までの処理に対応する。ただし、ステップS910、ステップS912、ステップS914の処理は、送信してきた携帯電話800の携帯電話番号に対応させた処理を行う。
【0040】
つまり、ステップS910では、送信してきた携帯電話番号に対応した基準画像の特徴値と比較して、ゲーム入力値へ変換する。つまり、今回送信してきた携帯電話800に対応した基準画像内の対象物の特徴値と比較するものである。具体的には、基準画像特徴テーブルから今回送信してきた携帯電話800の携帯電話番号に対応する特徴値を抽出して、比較するものである。
また、ステップS912では、送信してきた携帯電話番号に対応させてゲーム入力値を記憶する。その携帯電話800から次回送信されてきた対象画像の対象物を検出できなかった場合に対応するためである。
また、ステップS914では、送信してきた携帯電話番号に対応する以前のゲーム入力値を抽出する。つまり、ステップS912で記憶されたゲーム入力値を抽出する。
ステップS916では、ゲーム入力値を携帯電話800へ送信する。
【0041】
なお、本実施の形態としてのプログラムが実行される携帯電話800、画像処理サーバー850のハードウェア構成は、図10に示すように、一般的なコンピュータである。制御モジュール155、特徴抽出モジュール165、比較モジュール170、情報処理モジュール175等のプログラムを実行するCPU1010と、そのプログラムやデータを記憶するRAM1030と、本コンピュータを起動するためのプログラム等が格納されているROM1020と、補助記憶装置であるHD1040(携帯電話800ではなくてもよい)と、キー、マウス等から操作者の操作によってデータを入力又はCRTや液晶ディスプレイ等にデータを出力して操作者とのインタフェースとなるUI/F1050と、CD−R、メモリカード等のリムーバブルメディアに対して読み書きするリムーバブルメディアリーダーライター1060と、通信ネットワークと接続するための通信回線I/F1070、そして、それらをつないでデータのやりとりをするためのバス1080により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【0042】
前記実施の形態においては、携帯情報処理装置100(第2の実施の形態では携帯電話800)が行う情報処理としてゲームを示したが、ブラウザの操作等であってもよい。もちろん、対象物としては足(靴)以外のもの(例えば、操作している手とは逆の手、壁に貼り付けた複数種類の図形(対象物)が描かれたポスター等)であってもよい。また、比較する特徴として、中心線の傾き以外に、その面積、画像内の位置(分布)等であってもよい。
また、携帯情報処理装置として、携帯電話を主に例示して説明したが、第1の実施の形態は、携帯可能で撮影装置を備えている情報処理装置であれば通信可能でなくてもよい(もちろん、通信可能であってもよい)。例えば、ゲーム機、PDA(Personal Digital Assistant)、電子辞書、携帯ナビゲーション機等であってもよい。第2の実施の形態は、通信可能な前記ゲーム機等の他、PHS(Personal Handy phone System)等であってもよい。
【0043】
また、前述の準備段階の処理例の説明では、対象物の特徴値を修正することを行っていないが、準備段階の処理においても、センサ115によって検知された携帯情報処理装置100の状態に基づいて、基準画像内の対象物の特徴値を修正するようにしてもよい。
なお、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
前記実施の形態においては、基準画像として、最大値又は最小値の制御値を入力する場合の対象物の状態を撮影した画像を例示したが、その中間に相当する画像(例えば、ニュートラル値を示す対象物の状態を撮影した画像等)であってもよい。つまり、基準画像は3枚以上としてもよい。そして、その中間に相当する画像があれば、制御値を入力する際に精度を向上させることができるという効果がある。
【0044】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
【符号の説明】
【0045】
100…携帯情報処理装置
110…カメラ
115…センサ
120…通信モジュール
125…ディスプレイ
130…入力モジュール
150…処理モジュール
155…制御モジュール
160…メモリ
165…特徴抽出モジュール
170…比較モジュール
175…情報処理モジュール
800…携帯電話
850…画像処理サーバー
890…通信ネットワーク
【特許請求の範囲】
【請求項1】
画像を用いて情報処理を行う携帯可能な携帯情報処理装置であって、
対象物の複数の基準状態を撮影して基準画像を得る基準状態撮影手段と、
前記対象物の状態を撮影する対象物撮影手段と、
前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する比較手段と、
前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する制御手段
を具備することを特徴とする携帯情報処理装置。
【請求項2】
前記対象物撮影手段によって撮影が行われたときの前記携帯情報処理装置の状態を検知する状態検知手段
をさらに具備し、
前記比較手段は、前記状態検知手段によって検知された状態に基づいて、前記対象物撮影手段によって撮影された画像を修正する
ことを特徴とする請求項1に記載の携帯情報処理装置。
【請求項3】
前記制御手段は、前記対象物撮影手段によって前記対象物が撮影されていない場合は、過去に撮影された対象物に対する前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする請求項1又は2に記載の携帯情報処理装置。
【請求項4】
前記基準状態撮影手段によって撮影された基準画像又は前記対象物撮影手段によって撮影された画像を情報処理装置へ送信する送信手段と、
前記情報処理装置から前記基準画像と前記画像との比較情報を受信する受信手段
をさらに具備し、
前記制御手段は、前記受信手段によって受信された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする請求項1から3のいずれか一項に記載の携帯情報処理装置。
【請求項5】
画像を用いて情報処理を行う携帯可能な携帯情報処理装置が行う携帯情報処理方法であって、
基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得て、
対象物撮影手段は、前記対象物の状態を撮影し、
比較手段は、前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成し、
制御手段は、前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする携帯情報処理方法。
【請求項6】
コンピュータを内蔵する携帯可能な携帯情報処理装置に、画像を用いた情報処理を行わせることができる携帯情報処理プログラムであって、
前記コンピュータを、
対象物の複数の基準状態を撮影して基準画像を得る基準状態撮影手段と、
前記対象物の状態を撮影する対象物撮影手段と、
前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する比較手段と、
前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する制御手段
として機能させることを特徴とする携帯情報処理プログラム。
【請求項1】
画像を用いて情報処理を行う携帯可能な携帯情報処理装置であって、
対象物の複数の基準状態を撮影して基準画像を得る基準状態撮影手段と、
前記対象物の状態を撮影する対象物撮影手段と、
前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する比較手段と、
前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する制御手段
を具備することを特徴とする携帯情報処理装置。
【請求項2】
前記対象物撮影手段によって撮影が行われたときの前記携帯情報処理装置の状態を検知する状態検知手段
をさらに具備し、
前記比較手段は、前記状態検知手段によって検知された状態に基づいて、前記対象物撮影手段によって撮影された画像を修正する
ことを特徴とする請求項1に記載の携帯情報処理装置。
【請求項3】
前記制御手段は、前記対象物撮影手段によって前記対象物が撮影されていない場合は、過去に撮影された対象物に対する前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする請求項1又は2に記載の携帯情報処理装置。
【請求項4】
前記基準状態撮影手段によって撮影された基準画像又は前記対象物撮影手段によって撮影された画像を情報処理装置へ送信する送信手段と、
前記情報処理装置から前記基準画像と前記画像との比較情報を受信する受信手段
をさらに具備し、
前記制御手段は、前記受信手段によって受信された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする請求項1から3のいずれか一項に記載の携帯情報処理装置。
【請求項5】
画像を用いて情報処理を行う携帯可能な携帯情報処理装置が行う携帯情報処理方法であって、
基準状態撮影手段は、対象物の複数の基準状態を撮影して基準画像を得て、
対象物撮影手段は、前記対象物の状態を撮影し、
比較手段は、前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成し、
制御手段は、前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する
ことを特徴とする携帯情報処理方法。
【請求項6】
コンピュータを内蔵する携帯可能な携帯情報処理装置に、画像を用いた情報処理を行わせることができる携帯情報処理プログラムであって、
前記コンピュータを、
対象物の複数の基準状態を撮影して基準画像を得る基準状態撮影手段と、
前記対象物の状態を撮影する対象物撮影手段と、
前記対象物撮影手段によって撮影された画像と、前記基準状態撮影手段によって撮影された基準画像を比較して比較情報を生成する比較手段と、
前記比較手段によって生成された比較情報に基づいて、前記情報処理を制御する制御手段
として機能させることを特徴とする携帯情報処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2011−29881(P2011−29881A)
【公開日】平成23年2月10日(2011.2.10)
【国際特許分類】
【出願番号】特願2009−172874(P2009−172874)
【出願日】平成21年7月24日(2009.7.24)
【出願人】(501440684)ソフトバンクモバイル株式会社 (654)
【Fターム(参考)】
【公開日】平成23年2月10日(2011.2.10)
【国際特許分類】
【出願日】平成21年7月24日(2009.7.24)
【出願人】(501440684)ソフトバンクモバイル株式会社 (654)
【Fターム(参考)】
[ Back to top ]