以下、発明を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(2値化肌画像から抽出された基準となる位置に基づき決定された抽出用領域から、特徴点を抽出する場合の一例)
2.第2の実施の形態(2値化肌画像上の肌領域に対応する領域をすべて含む抽出用領域から、特徴点を抽出する場合の一例)
3.変形例
第1の実施の形態>
[情報処理システム1の構成例]
図1は、第1の実施の形態である情報処理システム1の構成例を示している。
この情報処理システム1は、ユーザの手を用いたジェスチャ(又はポスチャ)に応じて所定の処理を実行するものであり、発光装置21、カメラ22、及び画像処理装置23により構成される。
すなわち、例えば、情報処理システム1に対して所定の処理を実行させるため、ユーザは、カメラ22のレンズ面の前で自身の手を移動させる。
このとき、情報処理システム1では、例えば、ユーザの中指の先端部分が移動した軌跡を位置情報(後述する特徴点)として認識し、認識した位置情報に応じて、図示せぬ表示装置に表示させたポインタを移動させる処理等を実行する。
発光装置21は、波長λ1の光(例えば、870[nm]の近赤外線)を照射(発光)するLED21a1及びLED21a2、並びに波長λ1とは異なる波長λ2の光(例えば、950[nm]の近赤外線)を照射するLED21b1及びLED21b2により構成される。
なお、以下の説明において、LED21a1及びLED21a2をそれぞれ区別する必要がない場合には、単にLED21aというとともに、LED21b1及びLED21b2をそれぞれ区別する必要がない場合には、単にLED21bという。
発光装置21は、画像処理装置23からの制御にしたがって、LED21aとLED21bとを、例えば交互に発光させる。
LED21aとLED21bは、波長λ1及びλ2に対する反射率が同一である被写体(例えば、反射率100[%]の鏡面等)に対して、波長λ1又はλ2のいずれの光を照射した場合にも、カメラ22の撮像により得られる撮像画像の対応する画素どうしの輝度値が同一となるように、例えば交互に発光する。
また、LED21aにおける波長λ1と、LED21bにおける波長λ2の組合せは、例えば、波長λ1の光を人間の肌に照射したときの反射率が、波長λ2の光を人間の肌に照射したときの反射率よりも大きく、人間の肌以外のものに照射したときの反射率は殆ど変わらない組合せである。すなわち、この組合せは、人間の肌に対する分光反射特性に基づいて決定される。
次に、図2は、人間の肌に対する分光反射特性を示している。
なお、この分光反射特性は、人間の肌の色の違い(人種の違い)や状態(日焼け等)等に拘らず、一般性があるものである。
図2において、横軸は、人間の肌に照射される照射光の波長を示しており、縦軸は、人間の肌に照射された照射光の反射率を示している。
人間の肌に照射された照射光の反射率は、800[nm]付近をピークとして、900[nm]付近から急激に減少し、1000[nm]付近を極小値として再び上昇することが知られている。
具体的には、例えば、図2に示されるように、人間の肌に対して、870[nm]の光を照射して得られる反射光の反射率は約63[%]であり、950[nm]の光を照射して得られる反射光の反射率は約50[%]である。
これは、人間の肌について特有のものであり、人間の肌以外の物体(例えば、頭髪や衣服等)では、800乃至1000[nm]付近において、反射率の変化は緩やかとなっていることが多い。
第1の実施の形態では、上述した分光反射特性において、波長λ1及びλ2の組合せとして、例えば、波長λ1を870[nm]とし、波長λ2を950[nm]とする組合せが採用されている。この組合せは、人間の肌に対する反射率の差が比較的大きくなる組合せであって、人間の肌以外の部分に対する反射率の差が比較的小さくなる組合せである。
図1に戻り、カメラ22は、ユーザ等の被写体の撮像に用いるレンズを有しており、そのレンズの前面は、可視光を遮断する可視光カットフィルタ22aにより覆われている。
このため、日光、或いは蛍光灯等の不可視光成分を除けば、カメラ22は、発光装置21によって被写体に照射される不可視光の反射光のみを受光し、その結果得られる撮像画像を、画像処理装置23に供給することになる。
すなわち、例えば、カメラ22は、LED21aによって被写体に照射される不可視光である波長λ1の光の反射光のみを受光し、その結果得られる第1の撮像画像を、画像処理装置23に供給する。
また、カメラ22は、LED21bによって被写体に照射される不可視光である波長λ2の光の反射光のみを受光し、その結果得られる第2の撮像画像を、画像処理装置23に供給する。
画像処理装置23は、発光装置21及びカメラ22を制御する。
また、画像処理装置23は、カメラ22からの第1及び第2の撮像画像に基づいて、第1及び第2の撮像画像の一方として、例えば第1の撮像画像から、所定の処理を行なうために用いる特徴点を抽出する。そして、画像処理装置23は、抽出した特徴点に基づく所定の処理を行なう。
具体的には、例えば、画像処理装置23は、第1の撮像画像から、ユーザの中指の先端部分を特徴点として抽出し、図示せぬ表示装置を制御して、その表示装置の画面上の、抽出した特徴点に対応する位置にポインタを移動させる処理等を実行する。
[画像処理装置23の構成例]
次に、図3は、画像処理装置23の構成例を示している。
この画像処理装置23は、制御部41、2値化肌画像生成部42、基準抽出部43、マスク画像生成部44、マスク処理部45、及び特徴点抽出部46により構成される。
制御部41は、発光装置21を制御し、発光装置21のLED21a及びLED21bを交互に発光させる。また、制御部41は、カメラ22を制御し、カメラ22による被写体の撮像を行わせる。
さらに、制御部41は、2値化肌画像生成部42、基準抽出部43、マスク画像生成部44、マスク処理部45、及び特徴点抽出部46を制御する。また、制御部41は、特徴点抽出部46からの特徴点に基づく処理を行なう。
2値化肌画像生成部42には、カメラ22から第1及び第2の撮像画像が供給される。2値化肌画像生成部42は、カメラ22からの第1及び第2の撮像画像に基づいて、肌領域(例えば、画素値1により表される)と、肌領域以外の領域を表す非肌領域(例えば、画素値0により表される)とにより構成される2値化肌画像を生成する。
次に、図4は、2値化肌画像生成部42が行なう処理を示している。
2値化肌画像生成部42には、カメラ22から、肌領域61a及び非肌領域61b(肌領域61a以外の領域)により構成される第1の撮像画像61、並びに、肌領域62a及び非肌領域62b(肌領域62a以外の領域)により構成される第2の撮像画像62が供給される。
2値化肌画像生成部42は、カメラ22から供給される第1の撮像画像61、及び第2の撮像画像62に対して、LPF(low pass filter)を用いた平滑化を行う。そして、2値化肌画像生成部42は、平滑化後の第1の撮像画像61、平滑化後の第2の撮像画像62の対応する画素の輝度値どうしの差分絶対値を算出し、その差分絶対値を画素値とする差分画像63を生成する。
2値化肌画像生成部42は、生成した差分画像63に対して、差分画像63を構成する画素値のうち、所定の閾値以上の画素値を1とし、所定の閾値未満の画素値を0とする2値化を行う。
なお、差分画像63における肌領域63aは、肌領域61aと肌領域62aとが重複する領域であって、肌領域61aと肌領域62aとの差分絶対値を画素値とする画素により構成されているため、肌領域63aを構成する画素の画素値は比較的大きな値となっている。
また、差分画像63における非肌領域63bは、非肌領域61bと非肌領域62bとの差分絶対値を画素値とする画素により構成されているため、非肌領域63bを構成する画素の画素値は比較的小さな値となっている。
したがって、差分画像63は、2値化肌画像生成部42により行われる2値化により、肌領域63aを構成する画素の画素値が1とされた肌領域64a、及び非肌領域63bを構成する画素の画素値が0とされた非肌領域64bにより構成される2値化肌画像64に変換される。すなわち、例えば、2値化肌画像生成部42は、2値化により、画素値が1とされた領域を肌領域64aとして検出し、画素値が0とされた領域を非肌領域64bとして検出するようにして、検出した肌領域64a及び非肌領域64bにより構成される2値化肌画像64を生成する。
そして、2値化肌画像生成部42は、その2値化により得られる2値化肌画像64を、基準抽出部43に供給する。
図3に戻り、基準抽出部43は、2値化肌画像生成部42から供給される2値化肌画像64から、例えば、ユーザの中指の先端部分が存在する位置を抽出する。
そして、基準抽出部43は、抽出した位置(を表す情報)を、第1の撮像画像上の全領域のうち、特徴点を抽出する際の抽出用領域を決定するために用いる基準として、マスク画像生成部44に供給する。
なお、基準抽出部43は、2値化肌画像生成部42からの2値化肌画像64から、ユーザの中指の先端部分が存在する位置を抽出しているが、この位置は、ユーザの中指の先端部分が存在する位置を表す精度が低い大まかな位置であるため、特徴点としてではなく、基準として用いるようにしている。
すなわち、例えば、カメラ22において、被写体の移動による、第1及び第2の撮像画像間の動き差分の影響、LED21aやLED21bによる照射むら、及び外光等の影響により、正確な2値化肌画像64が得られない(本来、肌領域とされるべきところが、非肌領域となっている等)ことが生じ得る。
このため、2値化肌画像64から、ユーザの中指の先端部分が存在する位置として、大まかな位置を抽出することはできるものの、正確な位置を抽出することは非常に困難である。
したがって、基準抽出部43は、上述したように、2値化肌画像から抽出した位置を、特徴点ではなく基準としている。
次に、図5は、基準抽出部43が行なう処理を示している。
図5には、X軸及びY軸により定義されるXY座標軸上に、2値化肌画像64を配置した場合の一例を示している。
なお、図5において、2値化肌画像64を構成する画素のうち、最も左下に存在する画素を、XY座標軸上の原点(0,0)に配置するようにしている。
基準抽出部43は、例えば、図5に示されるように、肌領域64a(黒色で示す)を構成する画素をそれぞれ表す複数の座標(x,y)のうち、yが最大値ymaxとなるときの座標(x,ymax)を、基準81として抽出し、マスク画像生成部44に供給する。
なお、基準抽出部43は、座標(x,ymax)が複数存在する場合には、複数の座標(x,ymax)のうち、xが最大値xmaxとなるときの座標(xmax,ymax)を、基準81として抽出し、マスク画像生成部44に供給する。
ここで、基準抽出部43は、複数の座標(x,y)のうちの座標(x,ymax)を、基準81として抽出するようにしたが、基準81の抽出方法はこれに限定されない。
図3に戻り、マスク画像生成部44は、基準抽出部43からの基準81に基づいて、抽出用領域を決定する。そして、マスク画像生成部44は、第1の撮像画像上の全領域のうち、決定した抽出用領域を指定するマスク画像を生成する。
次に、図6は、マスク画像生成部44が生成するマスク画像の一例を示している。
マスク画像生成部44は、例えば図6Aに示されるように、基準抽出部43からの基準81に基づいて、基準81を含む楕円状の領域101aを、抽出用領域に決定し、決定された抽出用領域を指定するマスク画像を生成する。
また、マスク画像生成部44は、例えば図6Bに示されるように、基準抽出部43からの基準81に基づいて、基準81を含む矩形状の領域101bを、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
なお、マスク画像生成部44は、図6Aに示される楕円状の領域101aや、図6Bに示される矩形状の領域101bの他、基準81に基づいて、三角形や五角形等の任意の大きさ及び形状を有する領域を、抽出用領域に決定するようにしてもよい。
さらに、マスク画像生成部44は、例えば図6Cに示されるように、基準抽出部43からの基準81に基づいて、X軸方向(図中、水平方向)に存在する複数の水平ラインにより構成される領域101cを、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
すなわち、例えば、マスク画像生成部44は、図6Cに示されるように、基準抽出部43からの基準81から、Y軸の正方向に所定の距離だけ離れた位置と、Y軸の負方向に所定の距離だけ離れた位置との間に存在する複数の水平ラインにより構成される領域101cを、抽出用領域に決定してマスク画像を生成する。
なお、マスク画像生成部44は、図6Cに示されるマスク画像の他、基準抽出部43からの基準81からY軸の正方向(又は負方向)に存在する複数の水平ラインにより構成される領域を、抽出用領域に決定してマスク画像を生成することができる。
さらに、マスク画像生成部44は、基準抽出部43からの基準81が、2値化肌画像上の全領域のうち、上半分の領域から抽出されたものである場合には、上半分の領域を抽出用領域に決定し、下半分の領域から抽出されたものである場合には、下半分の領域を抽出用領域に決定するようにしてもよい。
マスク画像生成部44は、生成したマスク画像を、マスク処理部45に供給する。
なお、マスク画像生成部44は、基準抽出部43からの基準81に基づいて、抽出用領域としての領域101cを決定する場合、楕円状の領域101aや矩形状の領域101b等を抽出用領域として決定する場合と比較して、より少ない計算量で、抽出用領域を決定することができる。
このため、マスク画像生成部44は、複数の領域101a乃至101cのうち、領域101cを抽出用領域として指定するマスク画像を生成する場合、より迅速にマスク画像を生成することが可能となる。
したがって、以下の説明では、マスク画像生成部44は、基準抽出部43からの基準81に基づいて、領域101cを抽出用領域として指定するマスク画像を生成するものとして説明する。
図3に戻り、マスク処理部45には、マスク画像生成部44から、マスク画像の他、カメラ22から、第1又は第2の撮像画像の一方として、例えば第1の撮像画像が供給される。
マスク処理部45は、カメラ22から供給される第1の撮像画像上の全領域から、マスク画像生成部44からのマスク画像に指定された抽出用領域を抽出する。
すなわち、例えば、マスク画像は、画素値1の画素により構成されるマスク領域と、画素値0の画素により構成される非マスク領域とにより構成されている。
そして、マスク処理部45は、マスク画像生成部44からのマスク画像と、カメラ22からの第1の撮像画像との、対応する画素の画素値どうしを乗算することにより、マスク画像上のマスク領域に対応する、第1の撮像画像上の抽出用領域を抽出する。
マスク処理部45は、第1の撮像画像上の全領域のうち、抽出された抽出用領域を、特徴点抽出部46に供給する。
なお、マスク処理部45は、第1又は第2の撮像画像のうち、最も遅くに撮像された(最新の)撮像画像上の全領域から、抽出用領域を抽出することが望ましい。
この場合、後述する特徴点抽出部46において、ユーザのジェスチャ等による入力操作が最も反映された撮像画像から、特徴点を抽出することが可能となる。
特徴点抽出部46は、マスク処理部45から供給される抽出用領域、すなわち、例えば、図7に示されるような、第1の撮像画像61上の抽出用領域101cから、特徴点121を抽出し、制御部41に供給する。
これにより、制御部41は、特徴点抽出部46からの特徴点121に基づく所定の処理を行なう。すなわち、例えば、制御部41は、特徴点抽出部46からの特徴点121に対応する、図示せぬ表示装置の画面上の位置に、ポインタを移動させるように、その表示装置を制御する。
なお、特徴点抽出部46では、特徴点121を抽出する抽出方法として、例えば、抽出用領域101c上の肌領域61aと、ユーザの中指の先端部分を表す指先モデル(例えば、半円や円)との形状の比較を行う。そして、特徴点抽出部46では、指先モデルと最も一致する、抽出用領域101c上の領域の位置を、特徴点として抽出する。
その他、例えば、基準抽出部43は、抽出用領域101c上の肌領域61aの輪郭の曲率(輪郭の曲がり具合)を算出し、算出した曲率に基づいて、ユーザの中指の先端部分が存在する位置を、特徴点として抽出するようにしてもよい。
[情報処理システム1が行なう位置検出処理の詳細]
次に、図8のフローチャートを参照して、図3の画像処理装置23を有する情報処理システム1が行なう位置検出処理について説明する。
この位置検出処理は、例えば、図3の画像処理装置23を有する情報処理システム1の電源がオンされたときから繰り返し行なわれる。
なお、この位置検出処理において、制御部41は、情報処理システム1の電源がオンされたことに対応して、発光装置21を制御して、LED21a及びLED21bを交互に発光させ、カメラ22を制御して、撮像により得られる第1及び第2の撮像画像を、図3の画像処理装置23に供給させる処理を繰り返し行う。
ステップS1において、2値化肌画像生成部42は、カメラ22からの第1及び第2の撮像画像に基づいて、2値化肌画像を生成し、基準抽出部43に供給する。
ステップS2において、基準抽出部43は、2値化肌画像生成部42から供給される2値化肌画像から、基準を抽出し、マスク画像生成部44に供給する。
ステップS3において、マスク画像生成部44は、基準抽出部43からの基準に基づいて、図6A乃至図6Cに示すような抽出用領域を決定する。そして、マスク画像生成部44は、第1又は第2の撮像画像の一方として、例えば第1の撮像画像上の全領域から、決定した抽出用領域を指定するマスク画像を生成し、マスク処理部45に供給する。
ステップS4において、マスク処理部45は、カメラ22から供給される、第1又は第2の撮像画像の一方として、例えば第1の撮像画像上の全領域から、マスク画像生成部44からのマスク画像により指定された抽出用領域を抽出する。
そして、マスク処理部45は、抽出した抽出用領域を、特徴点抽出部46に供給する。
ステップS5において、特徴点抽出部46は、マスク処理部45からの抽出用領域から、特徴点を抽出し、制御部41に供給する。
ステップS6において、制御部41は、特徴点抽出部46からの特徴点に基づく所定の処理を行なう。すなわち、例えば、制御部41は、特徴点抽出部46からの特徴点に対応する、図示せぬ表示装置の画面上の位置に、ポインタを移動させるように、その表示装置を制御する。
以上説明したように、位置検出処理では、第1及び第2の撮像画像に基づいて生成された2値化肌画像から、大まかな特徴点として、基準を抽出するようにした。そして、第1又は第2の撮像画像のうちの一方として、例えば、第1の撮像画像上の全領域のうち、基準に基づいて決定された抽出用領域から、正確な特徴点を抽出するようにした。
したがって、位置検出処理では、例えば第1の撮像画像上の全領域よりも狭い抽出用領域から、特徴点を抽出するので、第1の撮像画像上の全領域から、特徴点を抽出する場合と比較して、より迅速に特徴点を抽出することが可能となる。
また、位置検出処理では、2値化肌画像よりも、正確に特徴点を抽出することが可能な抽出用領域(第1又は第2の撮像画像のうちの一方の領域)から特徴点を抽出するようにしているので、2値化肌画像から直接に特徴点を抽出する場合と比較して、より正確な特徴点を抽出することが可能となる。
第1の実施の形態では、特徴点抽出部46は、主に、ユーザの中指の先端部分により構成される抽出用領域101a乃至101cから、特徴点121を抽出する処理を行うようにしたが、抽出用領域を対象として、複数の特徴点を抽出するようにしてもよい。
なお、特徴点抽出部46が、例えば、1個の特徴点を抽出する場合と、複数の特徴点を抽出する場合とで、マスク処理部45により抽出され供給される抽出用領域の大きさや形状等が変更される。
次に、図9乃至図11を参照して、抽出用領域から複数の特徴点が抽出される際に、基準抽出部43乃至特徴点抽出部46により行われる処理の一例を説明する。
なお、図9乃至図11においては、1個の特徴点121を抽出する場合の説明に用いた図5乃至図7と区別するために、図中の符号にプライム(')を付加するようにしている他は、図5乃至図7と同様に構成されている。
基準抽出部43は、例えば、図9に示されるように、2値化肌画像生成部42からの2値化肌画像64'上の肌領域64a'(黒色で示す)の重心を、基準81'として抽出し、マスク画像生成部44に供給する。
マスク画像生成部44は、基準抽出部43からの基準81'に基づいて、抽出用領域を決定する。そして、マスク画像生成部44は、第1の撮像画像上の全領域のうち、決定した抽出用領域を指定するマスク画像を生成する。
すなわち、マスク画像生成部44は、例えば図10Aに示されるように、基準抽出部43からの基準81'に基づいて、基準81'を含む楕円状(又は円状)の領域101a'(例えば、基準81'を重心とする楕円状の領域101a'等)を、抽出用領域に決定し、決定された抽出用領域を指定するマスク画像を生成する。
また、マスク画像生成部44は、例えば図10Bに示されるように、基準抽出部43からの基準81'に基づいて、基準81'を含む矩形状の領域101b'(例えば、基準81'を重心とする矩形状の領域101b'等)を、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
なお、マスク画像生成部44は、図10Aに示される楕円状の領域101a'や、図10Bに示される矩形状の領域101b'の他、基準81'に基づいて、三角形や五角形等の任意の大きさ及び形状を有する領域を、抽出用領域に決定するようにしてもよい。
さらに、マスク画像生成部44は、例えば図10Cに示されるように、基準抽出部43からの基準81'に基づいて、X軸方向(図中、水平方向)に存在する複数の水平ラインにより構成される領域101c'を、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
具体的には、例えば、マスク画像生成部44は、図10Cに示されるように、基準抽出部43からの基準81'から、Y軸の正方向に所定の距離だけ離れた位置と、Y軸の負方向に所定の距離だけ離れた位置との間に存在する複数の水平ラインにより構成される領域101c'を、抽出用領域に決定してマスク画像を生成する。
マスク画像生成部44は、生成したマスク画像を、マスク処理部45に供給する。
以下の説明では、マスク画像生成部44は、基準抽出部43からの基準81'に基づいて、領域101c'を抽出用領域として指定するマスク画像を生成するものとして説明する。
マスク処理部45は、カメラ22から供給される第1の撮像画像上の全領域から、マスク画像生成部44からのマスク画像に指定された抽出用領域101c'を抽出し、特徴点抽出部46に供給する。
なお、マスク処理部45において、比較的大きな抽出用領域101c'を抽出するようにした場合、ユーザが手を移動させたとしても、肌領域61a'は、抽出用領域101cの範囲内に収まる可能性が高いものとなる。
したがって、例えば、マスク処理部45は、カメラ22の撮像により得られる複数の第1の撮像画像に対して、同一の大きさ及び形状の抽出用領域101c'を抽出して、特徴点抽出部46に供給するようにしてもよい。
この場合、マスク画像生成部44は、抽出用領域101c'を指定するマスク画像を、複数回に1回だけ生成してマスク処理部45に供給するだけでよいものとなる。したがって、例えば、マスク処理部45に供給される第1の撮像画像毎に、その第1の撮像画像に応じたマスク画像を生成してマスク処理部45に供給する場合と比較して、2値化肌画像生成部42乃至マスク画像生成部44が行う処理を少なくすることができ、より迅速に特徴点を抽出することができる。
特徴点抽出部46は、例えば、マスク処理部45からの、図11に示される抽出用領域101c'から、ユーザの右手における各指の指先(先端)を示す位置を、複数の特徴点121a'乃至121e'として抽出し、制御部41に供給する。
ここで、マスク画像生成部44が、基準抽出部43からの基準81'に基づいて、領域101b'を抽出用領域として指定するマスク画像を生成する場合、マスク処理部45から特徴点抽出部46に対して、図11に示される抽出用領域101b'が供給される。
そして、特徴点抽出部46は、例えば、マスク処理部45からの、図11に示される抽出用領域101b'から、複数の特徴点121a'乃至121e'を抽出し、制御部41に供給するものとなる。
このように、特徴点を抽出する際の領域として、抽出用領域101c'よりも小さな抽出用領域101b'を採用した場合には、抽出用領域101c'を採用した場合と比較して、より迅速に複数の特徴点121a'乃至121e'を抽出できる。また、抽出用領域が小さく、抽出用領域にユーザの手以外の物体が多く存在しないため、ユーザの手における各指の指先とは異なる物体の位置を、特徴点として抽出してしまう事態を抑止することが可能となる。このことは、抽出用領域101a'を採用した場合についても同様のことが言える。
なお、特徴点抽出部46は、特徴点を抽出する対象である肌領域61a'の形状や大きさ、抽出する特徴点の個数等に応じて、より迅速に特徴点を抽出可能な抽出方法を用いるようにすることができる。
すなわち、例えば、特徴点抽出部46は、図11に示されるように、ユーザの右手全体を表す肌領域61a'から、複数の特徴点121a'乃至121e'を抽出する場合、細線化による特徴点の抽出方法を用いることが望ましい。具体的には、例えば、特徴点抽出部46は、抽出用領域101c'上の肌領域61a'により表されるユーザの手を細線化(骨格化)し、細線化したユーザの手の先端を、ユーザの指先を表す特徴点として抽出する抽出方法を用いるとよい。しかし、ここでも前記したような指先モデルとの形状比較等の方法で、特徴点を抽出することもできる。
制御部41は、特徴点抽出部46からの、複数の特徴点121a'乃至121e'に基づいて、ユーザの動きや姿勢等を識別する。すなわち、例えば、制御部41は、ユーザの動きとして、ユーザが右手を握ろうとしているのか、又は右手を開くようにしているか等を識別する。また、例えば、制御部41は、ユーザの姿勢として、ユーザの右手の形状が、右手を開いたときの形状であるのか否か等を識別する。
そして、制御部41は、ユーザの動きや姿勢等の識別結果に基づいて、所定の処理を行う。
第1の実施の形態では、基準81に基づいて、抽出用領域101a乃至101cを決定するようにしたが、抽出用領域101a乃至101cの大きさや形状は、これに限定されない。また、基準81として、例えばユーザの中指の指先を示す大まかな位置を用いるようにしたが、抽出用領域101a乃至101cの大きさや形状等に応じて、抽出用領域101a乃至101cを容易に抽出可能な基準81を採用することができる。これらのことは、基準81'及び抽出用領域101a'乃至101c'についても同様のことが言える。
さらに、第1の実施の形態によれば、基準81'に基づいて、抽出用領域101a'乃至101c'を決定するようにしたが、抽出用領域101a'乃至101c'を決定する決定方法は、これに限定されない。
次に、図12乃至14を参照して、2値化肌画像64'上の肌領域64a'に基づいて、第1の撮像画像61'上の肌領域61a'を大まかに検出し、検出した肌領域61a'をすべて含むように、抽出用領域101a'乃至101c’を決定する場合の画像処理装置23について説明する。
<2.第2の実施の形態>
[画像処理装置の構成例]
図12は、画像処理装置23の他の構成例を示している。
なお、図12の画像処理装置23において、図3の画像処理装置23と同様に構成されている部分については同一の番号を付すようにしているので、それらの説明は、以下適宜省略する。
すなわち、図12の画像処理装置23では、図3の基準抽出部43及びマスク画像生成部44に代えて、肌領域抽出部141及びマスク画像生成部142により構成されている他は、図3の場合と同様に構成される。
肌領域抽出部141は、2値化肌画像生成部42から供給される2値化肌画像64'から肌領域64a'を抽出する。そして、肌領域抽出部141は、抽出した肌領域64a'に基づいて、第1の撮像画像61'上の、肌領域64a'に対応する領域(大まかな肌領域61a')を指定するための指定用情報を生成し、マスク画像生成部142に供給する。
なお、以下の説明において、2値化肌画像64'において、ユーザの肌が存在することを表す肌領域64a'と、第1の撮像画像61'において、ユーザの肌が露出された肌領域61a'とを区別するために、肌領域61a'を、肌露出領域61a'ともいう。
マスク画像生成部142は、肌領域抽出部141からの指定用情報に基づいて、第1の撮像画像61'上の全領域のうち、その指定用情報により指定される大まかな肌露出領域61a'(肌領域61a')を含む部分領域を特定し、抽出用領域に決定する。そして、マスク画像生成部142は、第1の撮像画像61'上の全領域のうち、決定した抽出用領域を指定するマスク画像を生成する。
すなわち、マスク画像生成部142は、例えば図13Aに示されるように、第1の撮像画像61'において、肌露出領域61a'を含む楕円状の領域101a'を、抽出用領域に決定し、決定された抽出用領域を指定するマスク画像を生成する。
また、マスク画像生成部142は、例えば図13Bに示されるように、第1の撮像画像61'において、肌露出領域61a'を含む矩形状の領域101b'を、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
なお、マスク画像生成部142は、図13Aに示される楕円状の領域101a'や、図13Bに示される矩形状の領域101b'の他、三角形や五角形等の任意の大きさ及び形状を有する領域であって、肌露出領域61a'を含む領域を、抽出用領域に決定するようにしてもよい。
さらに、マスク画像生成部142は、例えば図13Cに示されるように、第1の撮像画像61'において、肌露出領域61a'を含み、X軸方向(図中、水平方向)に存在する複数の水平ラインにより構成される領域101c'を、抽出用領域に決定し、決定した抽出用領域を指定するマスク画像を生成する。
すなわち、例えば、マスク画像生成部142は、図13Cに示されるように、第1の撮像画像61'上の、指定用情報により指定される領域の上端から、Y軸の正方向に所定の距離だけ離れた位置と、第1の撮像画像61'上の、指定用情報により指定される領域の下端から、Y軸の負方向に所定の距離だけ離れた位置との間に存在する複数の水平ラインにより構成される領域101c'を、抽出用領域に決定してマスク画像を生成する。
マスク画像生成部142は、生成したマスク画像を、マスク処理部45に供給する。
これにより、マスク処理部45では、カメラ22からの第1の撮像画像61'から、抽出用領域101a'乃至101c'のうち、例えば抽出用領域101c'が抽出されて、特徴点抽出部46に供給される。
そして、特徴点抽出部46において、図11に示したように、マスク処理部45からの抽出用領域101c'から、肌露出領域61a'における複数の特徴点121a'乃至121e'が抽出されて、制御部41に供給される。
[情報処理システム1が行なう複数位置検出処理の詳細]
次に、図14のフローチャートを参照して、図12の画像処理装置23を有する情報処理システム1が行う複数位置検出処理について説明する。
この複数位置検出処理は、例えば、図12の画像処理装置23を有する情報処理システム1の電源がオンされたときから繰り返し行われる。なお、この複数位置検出処理において、制御部41は、情報処理システム1の電源がオンされたことに対応して、発光装置21を制御して、LED21a及びLED21bを交互に発光させ、カメラ22を制御して、撮像により得られる第1及び第2の撮像画像を、図12の画像処理装置23に供給させる処理を繰り返し行う。
ステップS21において、2値化肌画像生成部42は、カメラ22からの第1及び第2の撮像画像に基づいて、2値化肌画像64'を生成し、肌領域抽出部141に供給する。
ステップS22において、肌領域抽出部141は、2値化肌画像生成部42から供給される2値化肌画像64'から肌領域64a'を抽出する。そして、肌領域抽出部141は、例えば第1の撮像画像61'上の全領域のうち、抽出した肌領域64a'に対応する領域(大まかな肌露出領域61a')を指定するための指定用情報を生成し、マスク画像生成部142に供給する。
ステップS23において、マスク画像生成部142は、肌領域抽出部141からの指定用情報に基づいて、第1の撮像画像61'上の全領域のうち、その指定用情報により指定される領域を含む部分領域を特定し、例えば抽出用領域101c'に決定する。そして、マスク画像生成部142は、第1の撮像画像61'上の全領域のうち、決定した抽出用領域101c'を指定するマスク画像を生成し、マスク処理部45に供給する。
ステップS24において、マスク処理部45は、カメラ22から供給される、第1又は第2の撮像画像の一方として、例えば第1の撮像画像61'上の全領域から、マスク画像生成部44からのマスク画像により指定された抽出用領域101c'を抽出する。
そして、マスク処理部45は、抽出した抽出用領域101c'を、特徴点抽出部46に供給する。
ステップS25において、特徴点抽出部46は、マスク処理部45からの抽出用領域101c'から、複数の特徴点121a'乃至121e'を抽出し、制御部41に供給する。
ステップS26において、制御部41は、特徴点抽出部46からの複数の特徴点121a'乃至121e'に基づく所定の処理を行なう。すなわち、例えば、制御部41は、特徴点抽出部46からの複数の特徴点121a'乃至121e'に基づいて、ユーザの手の形状を判別し、その判別結果に基づいて、ユーザのジェスチャ操作を認識する。そして、制御部41は、認識したジェスチャ操作に対応する処理を行う。
以上説明したように、複数位置検出処理によれば、例えば、第1の撮像画像61'上の肌露出領域61a'を全て含むように、抽出用領域101a'乃至101c'を決定するようにした。そして、第1の撮像画像61'上の全領域よりも小さな抽出用領域101a'乃至101c'の範囲内で、肌露出領域61a'を対象として、例えば、複数の特徴点121a'乃至121e'を抽出する処理を行うようにしたので、第1の撮像画像61'上の全領域を対象として処理を行う場合と比較して、より迅速に、肌露出領域61a'における複数の特徴点121a'乃至121e'を抽出することが可能となる。
上述した第1及び第2の実施の形態では、特徴点抽出部46が、マスク処理部45からの抽出用領域から、ユーザの指先の位置等を特徴点として抽出するようにしたが、特徴点は、ユーザの指先の位置等に限定されない。
すなわち、例えば、特徴点抽出部46は、図15に示されるように、肌露出領域61a'の形状を抽出するために、マスク処理部45からの抽出用領域101c'から、肌露出領域61a'を構成する各画素(の位置)を特徴点として抽出するようにしてもよい。
次に、図15は、特徴点抽出部46が、抽出用領域101c'に基づいて、第1の撮像画像61'上の肌露出領域61a'を構成する各画素を、特徴点として抽出する場合の一例を示している。
図15において、抽出用領域101c'は、肌露出領域61a'と、肌露出領域61a'以外の非肌露出領域61b'(非肌領域61b')により構成されている。また、非肌露出領域61b'内に、比較的反射率の高い白いシャツや鏡等は存在しないものとする。さらに、例えば、ユーザの手は発光装置21に最も近くにあることが多いことを考慮すると、図15に示される抽出用領域101c'において、ユーザの手に相当する肌露出領域61a'の輝度値は、発光装置21から離れた位置にある物体に相当する非肌露出領域61b'の輝度値と比較して、より高いものとなる。なお、非肌露出領域61b'内に、比較的反射率の高い白いシャツや鏡等が存在する場合については後述する。
したがって、特徴点抽出部46は、マスク処理部45からの抽出用領域101c'のうち、輝度値が第1の輝度閾値以上である各画素(の位置)を、特徴点として抽出する。なお、第1の輝度閾値は、肌露出領域61a’の輝度値の分布に基づいて決定されるが、肌露出領域61a'の輝度値として想定される輝度値や、非肌露出領域61b'の輝度値として想定される輝度値等に基づいて、予め決められて、特徴点抽出部46の図示せぬメモリ等に記憶されていてもよい。
そして、特徴点抽出部46は、抽出した複数の特徴点により構成される領域を、肌露出領域61a'として、制御部41に供給する。
この場合、特徴点抽出部46は、カメラ22の異なる撮像時刻で撮像された第1及び第2の撮像画像に基づき検出される肌領域64a'(第1の撮像画像上の肌露出領域と、第2の撮像画像上の肌露出領域とが重複する領域64a')と比較して、第1の撮像画像61'における肌露出領域61a'の形状を、より正確に抽出することが可能となる。
すなわち、例えば、2値化肌画像生成部42では、カメラ22からの第1の撮像画像上の肌露出領域と、カメラ22からの第2の撮像画像上の肌露出領域とが重複する領域を、2値化肌画像上の肌領域とする。
ここで、第1及び第2の撮像画像は、それぞれ、カメラ22において、異なる撮像時刻の撮像により得られるものであるため、第1の撮像画像上の、肌露出領域の位置と、第2の撮像画像上の、肌露出領域の位置とが、完全に一致しないことが生じ得る。
この場合、2値化肌画像生成部42により生成される2値化肌画像上の肌領域の形状は、第1の撮像画像上の肌露出領域の形状とは異なるものとなる。
これに対して、特徴点抽出部46において、図15に示されるように、マスク処理部45からの抽出用領域101c'のうち、輝度値が第1の輝度閾値以上である各画素により構成される領域を、肌露出領域61a'として抽出するようにしている。
したがって、第1及び第2の撮像画像が、異なる撮像時刻の撮像により得られるものであっても、特徴点抽出部46において、第1の撮像画像61'上の肌露出領域61a'の形状を、より正確に抽出することが可能となる。
ここで、図15において、非肌露出領域61b'内に、比較的反射率の高い白いシャツや鏡等が存在する高輝度領域(図示せず)が含まれる場合、肌露出領域61a'の輝度値は、非肌露出領域61b'内の高輝度領域の輝度値と比較して、より高いものにはならないことが生じ得る。この場合、第1の輝度閾値を用いた上述の方法では、肌露出領域61a'の画素の他、非肌露出領域61b'内の高輝度領域の画素も、特徴点であるとして抽出されてしまうことが生じ得る。
そこで、抽出用領域101c'よりも小さな抽出用領域として、例えば、図15に示される抽出用領域101b'を採用するようにして、抽出用領域内に、非肌露出領域61b'内の高輝度領域が含まれないようにしてもよい。この場合、非肌露出領域61b'内の高輝度領域の画素が、特徴点であるとして抽出される事態を防止できる。このことは、抽出用領域101a'を採用した場合についても同様のことが言える。
また、例えば、一般的に、肌露出領域61a'の輝度値と、非肌露出領域61b'内の高輝度領域の輝度値とが一致しないことを利用して、肌露出領域61a'と高輝度領域とを区別するようにしてもよい。
すなわち、例えば、肌領域抽出部141は、大まかな肌露出領域61a'を指定するための指定用情報を、マスク画像生成部142の他、特徴点抽出部46に供給するようにする。特徴点抽出部46は、肌領域抽出部141からの指定用情報に基づいて、マスク処理部45からの抽出用領域101c'から、大まかな肌露出領域61a'を検出する。
また、特徴点抽出部46は、検出した大まかな肌露出領域61a'の各輝度値の平均値を算出する。そして、特徴点抽出部46は、抽出用領域101c'の各画素のうち、抽出用領域101c'の各輝度値と、算出した平均値との差分絶対値が第2の輝度閾値以下となる画素(の位置)を、特徴点として抽出する。
なお、第2の輝度閾値は、肌露出領域61a’の輝度値の分布に基づいて決定されるが、検出した大まかな肌露出領域61a'の各輝度値の平均値として想定される値や、肌露出領域61a'の輝度値として想定される値、高輝度領域の輝度値として想定される値等に基づいて、予め決められて、特徴点抽出部46の図示せぬメモリ等に予め記憶されていてもよい。
また、差分絶対値が第2の輝度閾値以下であるか否かに応じて、特徴点を抽出する抽出方法は、抽出用領域101c'の他、抽出用領域101a'や101b'について採用することができる。
<3.変形例>
第1の実施の形態では、特徴点抽出部46において、特徴点として、例えば第1の撮像画像上の肌領域の先端部分(例えば、中指の指先)を特徴点121として抽出するようにしたが、例えば、抽出した特徴点121を、第1の撮像画像上の肌領域の内側にオフセットして得られる新たな特徴点(例えば、中指の腹部分に存在する位置)を、最終的な特徴点121とするようにしてもよい。
また、第1の実施の形態では、特徴点として、ユーザの中指の先端部分が存在する位置を抽出するようにしたが、その他、例えば、人差し指の先端部分が存在する位置等の任意の位置を抽出するように構成することができる。
さらに、第1の実施の形態では、マスク画像生成部44は、図6Cに示されるような領域101cを抽出用領域に決定するようにしたが、例えば、第1及び第2の撮像画像上に存在する被写体の形状に応じて、抽出用領域を決定するようにしてもよい。
すなわち、例えば、マスク画像生成部44は、被写体が丸い形状である場合には、図6Aに示されるように、楕円状の領域101aを抽出用領域に決定し、被写体が矩形の形状である場合には、図6Bに示されるように、矩形状の領域101bを抽出用領域に決定することができる。
この場合、マスク画像生成部44において、被写体の形状に応じて、特徴点を抽出するために必要最小限の抽出用領域を決定することが可能となるので、特徴点抽出部46において、決定された抽出用領域から、特徴点を抽出する処理を、より迅速に行なうことが可能となる。このことは、第2の実施の形態においても同様のことが言える。
第1の実施の形態では、基準抽出部43は、例えば、図5に示されるように、座標(x,ymax)(座標(x,ymax)が複数存在する場合には座標(xmax,ymax))を、そのまま基準81として抽出するようにしたが、基準81として抽出する情報はこれに限定されず、座標(x,ymax)が表す位置を一意に特定可能な情報であれば、どのような情報であってもよい。
また、第1の実施の形態では、2値化肌画像生成部42は、カメラ22からの第1の撮像画像61及び第2の撮像画像62に基づいて生成した差分画像63をそのまま2値化するようにしたが、差分画像63を構成する画素の画素値を、それぞれ、第1の撮像画像61を構成する画素のうち、対応する画素の輝度値で正規化(除算)した上で、2値化することが可能である。なお、2値化肌画像生成部42は、第1の撮像画像61に代えて、第2の撮像画像62を用いて差分画像63を正規化した上で2値化するようにしてもよい。
その他、例えば、2値化肌画像生成部42は、第1の撮像画像61と第2の撮像画像62との平均値を用いて、差分画像63の各画素の画素値を正規化した上で2値化することができる。
すなわち、2値化肌画像生成部42は、第1の撮像画像61の画素値、又は第2の撮像画像62の画素値の少なくとも一方に基づく値を用いて、差分画像63の各画素の画素値を正規化した上で2値化することができる。
差分画像63を正規化した場合には、正規化後の差分画像63を2値化する際に用いる閾値を、固定値とすることができるので、より迅速に2値化を行うことが可能となる。
第1の実施の形態において、2値化肌画像生成部42は、第1の撮像画像61の画素値から、第2の撮像画像62の画素値を差し引いて得られる差分の絶対値を、差分画像63の画素値としたが、差分画像63の画素値は、これに限定されない。
すなわち、例えば、人間の髪の毛の反射率は波長が大きくなるほど大きくなることが知られており、肌と髪の毛とをより正確に区別することを考慮すれば、差分画像63の画素値として、差分をそのまま採用することが望ましい。
そこで、2値化肌画像生成部42は、差分をそのまま差分画像63の画素値とするようにしてもよい。この場合についても同様に、2値化肌画像生成部42は、差分を画素値とする差分画像63を正規化した上で2値化することができる。
また、例えば、2値化肌画像生成部42は、差分画像63に代えて、第1の撮像画像61の画素値と、第2の撮像画像62の画素値との比を画素値とする比画像を生成するようにして、その比画像を2値化することができる。この場合についても、比画像を2値化する際に用いる閾値を、固定値とすることができる。
第1及び第2の実施の形態では、説明を簡単にするために、第1の撮像画像は、1個の肌露出領域(肌領域)のみを含むことを前提とし、1個の肌露出領域の全て又は一部分を含む抽出用領域を対象として、特徴点を抽出する処理を行うことについて説明した。
しかしながら、第1の撮像画像が、複数の肌露出領域を含む場合にも、複数の肌露出領域のうちのいずれかを対象として処理を行うようにすることができる。
すなわち、例えば、第1の撮像画像に、複数の肌露出領域が含まれる場合には、複数の肌露出領域のうち、任意の肌露出領域を注目肌露出領域とし、注目肌露出領域を対象として処理を行うことができる。ここで、注目肌露出領域とされる任意の肌露出領域としては、例えば、複数の肌露出領域のうち、面積がi番目に大きい肌露出領域や、複数の肌露出領域のうち、肌露出領域の各輝度値の平均値(又は最小値や最大値でも可能)がj番目に大きい肌露出領域等が考えられる。
具体的には、例えば、複数の肌露出領域のうち、面積が1番目に大きい肌露出領域や、複数の肌露出領域のうち、肌露出領域の各輝度値の平均値が1番目に大きい肌露出領域等が、注目肌露出領域とされる。
これは、ユーザが、情報処理システム1に対して所定の処理を実行させる際に、自身の手を移動させる場合、一般的に、顔や胴体等と比較して、情報処理システム1のカメラ22及び発光装置21に近い状態で移動させることによる。
ここで、特に、例えば、肌露出領域の各輝度値の平均値に基づいて、注目肌露出領域を決定する場合には、複数の肌露出領域の中から、所望の肌露出領域を注目肌露出領域とすることができる。
すなわち、例えば、第1の撮像画像において、手と顔が重複しており、手で顔の一部分が隠れているために、手に相当する第1の肌露出領域と、顔に相当する第2の肌露出領域とが連結(結合)している場合でも、第1の肌露出領域を注目肌露出領域とすることができる。
具体的には、例えば、第1の肌露出領域と第2の肌露出領域との輝度値の平均値の差に基づいて、第1及び第2の肌露出領域が連結して構成される領域から、第1の肌露出領域を明確に区別して、注目肌露出領域とすることが可能となる。
その他、例えば、複数の肌露出領域のうち、面積の大きさを表す順位iと、平均値の大きさを表す順位jとを加算した加算結果(i+j)が、最小となるときの肌露出領域を、注目肌露出領域とするようにしてもよい。
さらに、例えば、第1の撮像画像に、複数の肌露出領域が含まれる場合には、複数の肌露出領域を、順次、注目肌露出領域に設定し、注目肌露出領域とされる複数の肌露出領域をそれぞれ対象として処理を行うようにしてもよい。
さらに、例えば、第1の撮像画像に、複数の肌露出領域が含まれる場合には、2以上の肌露出領域が含まれるように、抽出用領域を決定し、決定した抽出用領域を対象として処理を行うようにすることができる。
第1及び第2の実施の形態では、マスク処理部45は、カメラ22からの第1の撮像画像から、抽出用領域を抽出するようにしたが、抽出用領域を抽出する対象は、第1の撮像画像に限定されない。
すなわち、例えば、抽出用領域を抽出する対象は、被写体が表示されている表示画像であれば、どのような表示画像であってもよい。具体的には、例えば、マスク処理部45は、カメラ22により生成される第1又は第2の撮像画像は勿論、第1の撮像画像の画素値と、第2の撮像画像の画素値との平均値からなる平均値画像を対象として、抽出用領域を抽出するようにしてもよい。
また、第1及び第2の実施の形態では、LED21aにより発光される第1の波長を870[nm]とし、LED21bにより発光される第2の波長を950[nm]としたが、波長の組合せはこれに限定されない。
すなわち、波長の組合せとしては、第1の波長における反射率と、第2の波長における反射率との差分絶対値が、ユーザの肌以外のものについて得られる反射率の差分絶対値と比較して、十分に大きくなる組合せであれば、どのような組合せでもよい。
具体的には、図2から明らかなように、例えば、870[nm]と950[nm]との組合せの他、800[nm]と950[nm]との組合せ、870[nm]と1000[nm]との組合せ、800[nm]と1000[nm]との組合せ等のように、LED21aが930[nm]未満の波長λ1の照射光を照射し、LED21bが930[nm]以上の波長λ2の照射光を照射するように構成することが可能である。
なお、肌領域を正確に検出するためには、概ね、波長λ1の値は640nmから1000nm、波長λ1よりも長波長側の波長λ2の値は900nmから1100nmの範囲内で設定することが望ましいことが、本発明者が予め行なった実験によりわかっている。
特に、例えば、波長λ1の値を、可視光領域を除く、近赤外領域の700nmから1000nmの範囲内に設定すれば、LED21a及びLED21bから、赤外線等の不可視光が照射されることとなる。この場合、情報処理システム1では、情報処理システム1の操作者である被写体に眩しさを感じさせることなく、操作者のジェスチャやポスチャを認識できるようになる。
なお、LED21aから発光される光として、可視光を用いる場合には、可視光カットフィルタ22aに代えて、LED21aから発光される可視光のみを通過させて、カメラ22のレンズに入射させるフィルタが用いられる。これは、LED21bについても同様のことがいえる。
また、第1及び第2の実施の形態において、発光装置21は、LED21a及びLED21bを、それぞれ個別に発光させるようにしたが、LED21a及びLED21bを同時に発光させることにより、第1の撮像画像、及び第2の撮像画像を取得するように構成することが可能である。
すなわち、例えば、カメラ22に代えて、カメラ22と同様の機能を有する2台のカメラを近接させた状態で設けるようにし、2台のカメラのうち、一方のカメラの前面には、第1の波長の光のみを通過させるフィルタを設けるとともに、他方のカメラの前面には、第2の波長の光のみを通過させるフィルタを設けるように構成する。
この場合、LED21a及びLED21bを同時に発光させたとしても、一方のカメラには、第1の波長の光のみが入射されることから、一方のカメラにおいて、第1の撮像画像を得ることが可能となる。また、他方のカメラには、第2の波長の光のみが入射されることから、他方のカメラにおいて、第2の撮像画像を得ることが可能となる。
第1及び第2の実施の形態において、LED21aの個数及びLED21bの個数は、それぞれ、2個であるとして説明したが、それらの個数は、これに限定されない。
すなわち、例えば、LED21aの個数、及びLED21bの個数は、被写体に必要な光量が極力むらなく照射されるように適宜決定される。
第1及び第2の実施の形態では、情報処理システム1について説明したが、情報処理システム1を、例えばパーソナルコンピュータ等の電子機器に内蔵し、パーソナルコンピュータは、情報処理システム1により抽出される特徴点に対応する画面上の位置に、ポインタを移動させるように構成することが可能である。
また、情報処理システム1を内蔵する電子機器としては、パーソナルコンピュータの他、例えば、携帯電話機や携帯オーディオプレーヤ等の、比較的小型の機器、テレビジョン受像機や家庭用ゲーム機等の家庭用機器、車載用のオーディオ機器やカーナビゲーション等の車載用機器を採用することができる。
ところで、上述した一連の処理は、専用のハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、いわゆる組み込み型のコンピュータ、又は、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等に、記録媒体からインストールされる。
[コンピュータの構成例]
次に、図16は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成例を示している。
CPU(Central Processing Unit)201は、ROM(Read Only Memory)202、又は記憶部208に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)203には、CPU201が実行するプログラムやデータ等が適宜記憶される。これらのCPU201、ROM202、及びRAM203は、バス204により相互に接続されている。
CPU201にはまた、バス204を介して入出力インタフェース205が接続されている。入出力インタフェース205には、キーボード、マウス、マイクロホン等よりなる入力部206、ディスプレイ、スピーカ等よりなる出力部207が接続されている。CPU201は、入力部206から入力される指令に対応して各種の処理を実行する。そして、CPU201は、処理の結果を出力部207に出力する。
入出力インタフェース205に接続されている記憶部208は、例えばハードディスクからなり、CPU201が実行するプログラムや各種のデータを記憶する。通信部209は、インターネットやローカルエリアネットワーク等のネットワークを介して外部の装置と通信する。
また、通信部209を介してプログラムを取得し、記憶部208に記憶してもよい。
入出力インタフェース205に接続されているドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア211が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータ等を取得する。取得されたプログラムやデータは、必要に応じて記憶部208に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを記録(記憶)する記録媒体は、図16に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)を含む)、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア211、又は、プログラムが一時的もしくは永続的に格納されるROM202や、記憶部208を構成するハードディスク等により構成される。記録媒体へのプログラムの記録は、必要に応じてルータ、モデム等のインタフェースである通信部209を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の通信媒体を利用して行われる。
なお、本明細書において、上述した一連の処理を記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本開示における実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。