【実施例】
【0016】
次に、上述した実施形態に対応する具体的な実施例について、
図2乃至
図6を用いて説明する。なお以下に説明する実施例は、例えば赤外光を用いて物体Hとしての人の手(以下、単に「手」と称する)の存在を検出する近接センサに対して実施形態を適用した場合の実施例である。
【0017】
また、
図2は実施例に係る近接センサの概要構成を示すブロック図等であり、
図3は実施例に係る近接センサが組み込まれたナビゲーション装置の前面を例示する正面図であり、
図4は実施例に係る連動リストを例示する図である。更に、
図5は実施例に係る検出処理等を示すフローチャートであり、
図6は実施例に係る検出処理を説明する図である。このとき
図2及び
図3では、
図1に示した実施形態に係る処理装置Sにおける各構成部材に対応する実施例の構成部材それぞれについて、当該処理装置Sにおける各構成部材と同一の部材番号を用いている。
【0018】
図2(a)に示すように、実施例に係る近接センサSは、例えば車載用のナビゲーション装置に組み込まれており、使用者の音声を検出してその内容を認識するためのマイク10等を含む近接センサである。以下、実施例に係る近接センサSが組み込まれているナビゲーション装置を、適宜、単に「ナビゲーション装置」と称する。そして近接センサSは、ナビゲーション装置に手を触れることなく当該ナビゲーション装置の動作等を操作するといった場合に実施形態に係る物体Hの一例としての手Hの存在を空間的に検出すると共に、当該手Hを有する使用者が発話する音声の内容をも認識する近接センサである。
【0019】
より具体的に実施例に係る近接センサSは、上記手Hの存在を検出するための赤外光をそれぞれ出射する第1発光部1A1乃至第4発光部1A4と、第1発光部1A1及び第2発光部1A2からそれぞれ出射された赤外光が手Hにより反射された反射光(この反射光も赤外光である)を受光する第1受光部1B1と、第3発光部1A3及び第4発光部1A4からそれぞれ出射された赤外光が手Hにより反射された反射光(この反射光もまた、赤外光である)を受光する第2受光部1B2と、第1発光部1A1乃至第4発光部1A4並びに第1受光部1B1及び第2受光部1B2をそれぞれ駆動するセンサドライバ5と、実施例に係る近接センサSとしての手Hの有無及びその動きの検出結果並びに音声の認識結果に対応した例えば既定の地図画面のスクロール処理等を実行させるCPU20と、例えば不揮発性領域及び揮発性領域を含むメモリ21と、により構成されている。このとき
図2(a)において一点鎖線で示すように、第1発光部1A1乃至第4発光部1A4、第1受光部1B1及び第2受光部1B2並びにセンサドライバ5により、実施形態に係る物体検出手段1の一例を構成する。更に、マイク10が実施形態に係る音検出手段10の一例に相当し、認識部11が実施形態に係る認識手段11の一例に相当する。また、CPU20が実施形態に係る実行手段20の一例に相当する。
【0020】
更に近接センサSのCPU20はナビゲーション装置内の処理部30に接続されている。この処理部30として具体的には、例えば
図2において図示しないディスプレイを含む表示処理部や、図示しないスピーカを含む音出力処理部等が処理部30に該当する。
【0021】
以上の構成において第1発光部1A1及び第2発光部1A2と第1受光部1B1とは、
図2(b)に例示するように平面状の基台B上に配置されている。なお
図2(b)は、例えばナビゲーション装置の前面を上方から見下ろした状態を模式的に示す図である。このような配置により、第1発光部1A1と第1受光部1B1とにより近接センサSとしての検出空間A1が形成され、また第1受光部1B1と第2発光部1A2とにより近接センサSとしての検出空間A2が形成される。このときセンサドライバ5は、検出用の赤外線を第1発光部1A1及び第2発光部1A2から例えば時分割的に交互にそれぞれ出射させる。そして、第1受光部1B1をも駆動させるセンサドライバ5において、第1発光部1A1及び第2発光部1A2それぞれの出射タイミングに対応したタイミングで第1受光部1B1に赤外線の受光があったか否かを検出することにより、検出すべき手Hが、検出空間A1又は検出空間A2のいずれに存在するかを検出する。
【0022】
ここで
図2(b)に例示するように、検出空間A1と検出空間A2とは、それぞれの一部が重複するように形成される。従って、例えば
図2(b)に例示する領域Aは、
図2(b)の第1発光部1A1と第1受光部1B1とにより手Hが検出され得る領域であり、また
図2(b)に例示する領域Cは、
図2(b)中の第2発光部1A2と第1受光部1B1とにより手Hが検出され得る領域である。そして
図2(b)における中央の領域Bは、第1発光部1A1及び第2発光部1A2と第1受光部1B1とにより手Hが検出され得る領域である。よってこれらにより、第1発光部1A1並びに第2発光部1A2及び第1受光部1B1の前面が領域A乃至領域Cの三つに分割され、これらの領域については、その領域内に手Hがあるか否かが別個に検出される。これにより、ナビゲーション装置の前面上部の前方の空間における手Hの左右方向の動きが検出される(後述する
図3参照)。そして、領域A乃至領域Cのそれぞれにおいて手Hがあると検出された場合、センサドライバ5は、当該手Hが検出されること及びその動きを示す検出信号をCPU20に出力する。
【0023】
一方、実施例に係る第3発光部1A3及び第4発光部1A4と第2受光部1B2とは、例えばナビゲーション装置の前面を上方から見下ろしたときの第1発光部1A1及び第2発光部1A2と第1受光部1B1の位置と同じ位置の基台B上に、それぞれ配置されている。即ち
図3に例示するように、ナビゲーション装置NVを正面から見たとき、第1発光部1A1乃至第4発光部1A4は、例えばナビゲーション装置NVの前面に配置されたディスプレイDの外側の縁部の四隅にそれぞれ配置されており、また第1受光部1B1は例えば当該縁部の上辺中央部に、第2受光部1B2は例えば当該縁部の下辺中央部に、それぞれ配置されている。なお実施例に係るマイク10は、
図3に例示するように当該縁部の右辺中央部に配置されている。そしてこのような配置により、第3発光部1A3と第2受光部1B2とにより近接センサSとしての三つ目の検出空間A3が形成され、また第2受光部1B2と第4発光部1A4とにより近接センサSとしての四つ目の検出空間A4が形成される。このときセンサドライバ5は、第1発光部1A1及び第2発光部1A2の場合と同様に、検出用の赤外線を第3発光部1A3及び第4発光部1A4から例えば時分割的に交互にそれぞれ出射させる。そして、第2受光部1B2をも駆動させるセンサドライバ5において、第3発光部1A3及び第4発光部1A4それぞれの出射タイミングに対応したタイミングで第2受光部1B2に赤外線の受光があったか否かを検出することにより、検出すべき手Hが、上記検出空間A3又は検出空間A4のいずれに存在するかを検出する。
【0024】
ここで、検出空間A3と検出空間A4とは、検出空間A1及び検出空間A2と同様に、それぞれの一部が重複するように形成される。従って、これも検出空間A1及び検出空間A2と同様に、第3発光部1A3と第2受光部1B2とにより手Hが検出され得る領域と、第4発光部1A4と第2受光部1B2とにより手Hが検出され得る領域と、第3発光部1A3及び第4発光部1A4と第2受光部1B2とにより手Hが検出され得る領域と、の三つが、検出空間A3及び検出空間A4により、それぞれ別個に形成される。よってこれらにより、第3発光部1A3並びに第4発光部1A4及び第2受光部1B2の前面が三つの領域に分割され、これらの領域については、その領域内に手Hがあるか否かが別個に検出される。これにより、ナビゲーション装置NVの前面下部の前方の空間における手Hの左右方向の動きが検出される。そして、これら三つの領域のそれぞれにおいて手Hがあると検出された場合、センサドライバ5は、当該手Hが検出されること及びその動きを示す検出信号をCPU20に出力する。
【0025】
これらに加えてセンサドライバ5は、第1発光部1A1及び第2発光部1A2と、第3発光部1A3及び第4発光部1A4と、の発光タイミングを更に異ならせて発光させる。これによりセンサドライバ5は、ナビゲーション装置NV(
図3参照)の前面左部及び前面右部それぞれの前方の空間における手Hの上下方向の動きをも検出し、その検出結果に相当する検出信号をCPU20に出力する。
【0026】
他方マイク10は、第1発光部1A1等と同様にナビゲーション装置NVの前面に配置されており(
図3参照)、使用者により発話された音声を検出すると、当該検出した音声に相当する音声信号を認識部11に出力する。これにより認識部11は、当該音声信号を既定の音声解析方法により解析し、上記発話された内容に相当する認識信号をCPU20に出力する。
【0027】
一方メモリ21には、実施例に係る連動リストL1及び連動リストL2がそれぞれ不揮発性に記憶されている。このとき連動リストL1及び連動リストL2が、実施形態に係る内部情報の一例に相当する。ここで連動リストL1は、使用者の音声の検出が手Hの動きの検出より先であった場合に、それらの組み合わせに対応して処理部30において実行させるべき処理の内容が記述されている連動リストである。より具体的には、例えば
図4(a)に例示するように、「ボリューム」なる使用者の音声が先に検出され、その後に検出された手Hの動きが所定の速度以上であった場合には、処理部30としての音出力処理部における音のボリュームを大きくする旨が記述されている。なおこの場合の「所定の速度」の判定基準となる閾値速度は、例えばメモリ21内に予め記憶されているものであってもよいし、使用者により設定又は変更可能に構成されていてもよい。また例えば
図4(a)において、「縮尺」なる使用者の音声が先に検出され、その後に検出された手Hの動きが所定の速度未満であった場合には、処理部30としての表示処理部において表示している地図の縮尺を小さくする旨が記述されている。
【0028】
これに対して連動リストL2は、使用者の音声の検出が手Hの動きの検出より後であった場合に、それらの組み合わせに対応して処理部30において実行させるべき処理の内容が記述されている連動リストである。より具体的には、例えば
図4(b)に例示するように、手Hの左右の動き(当該動きは、処理部30としての音声出力部におけるボリューム制御に予め関連付けられているとする)が先に検出され、その後に「大きく」なる使用者の音声が検出された場合には、上記音出力処理部における音のボリュームを大きくする旨が記述されている。また例えば
図4(b)において、手Hの上下の動き(当該動きは、処理部30としての表示出力部における地図表示の縮尺制御に関連付けられているとする)が先に検出され、その後に「小さく」なる使用者の音声が検出された場合には、上記ディスプレイDに表示中の地図の縮尺を小さくする旨が記述されている。
【0029】
なお以下の説明において、連動リストL1と連動リストL2とを纏めて扱う場合、単に「連動リストL」と称することとする。
【0030】
以上説明した第1発光部1A1乃至第4発光部1A4、第1受光部1B1及び第2受光部1B2、センサドライバ5並びにマイク10及び認識部11の動作、及びメモリ21に記憶されている連動リストL1及び連動リストL2の内容に基づき、CPU20は、ナビゲーション装置NVの前面前方の空間における手Hの上下左右方向の動き並びに使用者の発話内容をそれぞれ検出/認識し、その検出/認識された動き及び発話内容に対応して連動リストL1又は連動リストL2に記述されている内容に対応した処理を処理部30に実行させる。即ち例えば、
図4(a)に連動リストL1として例示するように、「ボリューム」なる使用者の音声が先にマイク10で検出され、その後に第1発光部1A1等により検出された手Hの動きが上記所定の速度以上であった場合にCPU20は、処理部30としての音出力処理部における音のボリュームを大きくするように、当該処理部30を制御する。また例えば
図4(a)において、「縮尺」なる使用者の音声が先に検出され、その後に検出された手Hの動きが上記所定の速度未満であった場合にCPU20は、処理部30としての表示処理部において表示している地図の縮尺を小さくするように、当該処理部30を制御する。
【0031】
これに対して、例えば
図4(b)に連動リストL2として例示するように、処理部30としての音声出力部におけるボリューム制御に予め関連付けられている手Hの左右の動きが先に第1発光部1A1等により検出され、その後に「大きく」なる使用者の音声がマイク10で検出された場合にCPU20は、上記音出力処理部における音のボリュームを大きくするように処理部30を制御する。また例えば
図4(b)において、処理部30としての表示出力部における地図表示の縮尺制御に予め関連付けられている手Hの上下の動きが先に検出され、その後に「小さく」なる使用者の音声が検出された場合にCPU20は、上記ディスプレイDに表示中の地図の縮尺を小さくするように処理部30を制御する。
【0032】
次に、実施例に係る近接センサSにおける上記検出処理について、より具体的に
図2乃至
図6を用いて説明する。なお当該検出処理は、主としてCPU20を中心として実行される。
【0033】
実施例に係る上記検出処理において、近接センサSに対する電源電力が投入されると、初めに、上記第1発光部1A1等を用いた手Hの動きの検出と、マイク10による音声の検出及び認識と、を組み合わせて(即ち連動させて)処理部30における処理の内容を制御するか否かの設定処理が行われる。即ち
図5(a)に示すように、手Hの動きの検出と音声認識とを連動させて処理部30における処理を制御する旨の指示が、例えば図示しない操作部を用いて実行されると、CPU20は当該指示の内容に対応する例えばフラグを、例えばメモリ21内において不揮発性に設定し(ステップS20)、上記設定処理を終了する。
【0034】
次にCPU20は、実施例に係る上記検出処理を開始する。即ち
図5(b)に示すように当該検出処理としてCPU20は、初めに、マイク10によって使用者の音声が検出されたか否か、及び第1発光部1A1等によりいずれかの検出空間において手Hの存在が検出されたか否かを、それぞれ監視している(ステップS1、ステップS3)。音声の検出及び手Hの存在の検出が共にない場合(ステップS1;NO、ステップS3;NO)、CPU20はそれぞれ、近接センサSに対する電源投入がオフとされているか否かを判定する(ステップS11)。ステップS11の判定において電源投入が引き続き行われている場合(ステップS11;NO)、CPU20は上記ステップS1及びステップS3それぞれに戻り、継続して手Hの動き及び音声それぞれの検出を監視する。
【0035】
一方ステップS1の監視において音声がマイク10により検出された場合(ステップS1;YES)、当該検出されたタイミングを示す時刻情報が例えばメモリ21に一時的に記憶されると共に、当該検出された音声に相当する音声信号が認識部11に出力される。そして認識部11は、出力されてきた音声信号の内容を認識する(ステップS2)。その後、当該認識結果はCPU20に出力される。
【0036】
これと並行して、ステップS3の監視において手Hの動きが第1発光部1A1等により検出された場合(ステップS3;YES)、当該検出されたタイミングを示す時刻情報が例えばメモリ21に一時的に記憶されると共に、当該検出された動きに基づいて手Hの移動速度及び移動方向がセンサドライバ5により認識される(ステップS4)。より具体的にセンサドライバ5は、例えば手Hの存在を複数の検出空間において検出した場合、各検出空間における当該検出の時間差と、例えば第1発光部1A1と第2発光部1A2との間の距離と、に基づいて手Hの移動速度を検出する。またセンサドライバ5は、いずれの検出空間において手Hの存在を検出したかを判別することにより、ナビゲーション装置NVの前方における手Hの移動方向を検出する。これらの検出結果は、その後CPU20に出力される。
【0037】
次にCPU20は、手Hの動きの検出と音声認識とを連動させる旨のフラグが、上記ステップS20の処理により設定されているか否かを確認する(ステップS5)。ステップS5の確認において、当該連動させる旨のフラグが設定されていない場合(ステップS5;NO)、CPU20は、従来と同様の処理として、上記ステップS2の処理により認識されている音声の内容に対応する処理部30としての処理、又は上記ステップS4の処理により認識されている手Hの移動方向等に対応する処理部30としての処理のいずれか又は双方を実行する(ステップS15)。その後CPU20は上記ステップS11の処理に移行する。
【0038】
一方ステップS5の確認において、手Hの動きの検出と音声認識とを連動させる旨のフラグが設定されている場合(ステップS5;YES)、次にCPU20は、上記ステップS1の監視において音声が検出されたタイミングと上記ステップS2の監視において手Hの存在が検出されたタイミングとの差が、予め設定されている閾値時間内であるか否かを判定する(ステップS6)。このステップS6の判定には、上記ステップS2及びステップS4においてそれぞれメモリ21等に一時的に記憶されている時刻情報が用いられる。ここでステップS6の判定は、手Hの動きの検出と音声認識とを連動させる場合において、実際に検出された手Hの動きと音声とが、連動の対象とすることを意図して行われたか否かを判定するための処理である。またこの場合の閾値時間としては、例えば0.5秒、1秒、1.5秒又は2秒のうちいずれかを、予めCPU20内に設定しておくことが考えられる。この閾値時刻を本願に係る「変更手段」の一例に相当する図示しない操作部により使用者が変更可能としてもよいし、いずれかの閾値時間を固定的にCPU20内に設定しておくこととしてもよい。
【0039】
ステップS6の判定において各タイミング同士の差が上記閾値時間より長かった場合(ステップS6;NO)、実際に検出された手Hの動きと音声とは連動の対象外であるとして、CPU20は次に、手Hの動きの検出と音声の検出のいずれが先であったかを判定する(ステップS12)。このステップS12の判定にも、上記ステップS2及びステップS4においてそれぞれメモリ21等に一時的に記憶されている時刻情報が用いられる。ステップS12の判定において上記ステップS1における音声の検出が先であった場合(ステップS12;YES)、CPU12は従来の処理と同様のものとして、当該検出された音声の内容に対応する処理を処理部30に実行させ(ステップS13)、その後上記ステップS11の処理に移行する。他方、ステップS12の判定において上記音声の検出が後であった場合(ステップS12;NO)、手Hの動きと音声とを連動させるように設定されているにも拘わらずそれぞれのタイミングの間が空き過ぎているとして、CPU20はステップS3における手Hの動きの検出が誤った検出であると判定し、この判定に対応した処理を実行する(ステップS14)。このステップS14の処理として具体的には、例えば、手Hの動きが検出されていても処理部30としては無反応とさせるか、或いは当該誤検出である旨の告知を表示又は音声にて実行させる等の処理が考えられる。その後CPU20は、上記ステップS11の処理に移行する。
【0040】
次に、上記ステップS6の判定において各タイミング同士の差が上記閾値時間内であった場合(ステップS6;YES)、CPU20は次に、
図4に例示した連動リストL1及び連動リストL2がメモリ21内に記憶されているか否かを確認する(ステップS7)。ステップS7の確認において各連動リストLが記憶されていない場合(ステップS7;NO)、手Hの動きと音声とを連動させるように設定されているにも拘わらず連動リストLが記憶されていないことになるので、CPU20は上記ステップS12乃至ステップS14の処理に移行する。
【0041】
一方、ステップ7の確認において各連動リストLが記憶されている場合(ステップS7;YES)、次にCPU20は、手Hの動きの検出と音声の検出のいずれが先であったかを判定する(ステップS8)。このステップS8の判定にも、上記ステップS2及びステップS4においてそれぞれメモリ21等に一時的に記憶されている時刻情報が用いられる。ステップS8の判定において上記ステップS1における音声の検出が先であった場合(ステップS8;YES)、CPU20は、メモリ21から上記連動リストL1の内容を読み出す。そしてCPU20は、当該読み出した連動リストL1の記述内容と、上記ステップS2において認識された音声の内容及び上記ステップS4において認識された手Hの移動状態と、に基づいて、それらに対応する処理を処理部30に実行させる(ステップS9)。その後CPU20は、上記ステップS11の処理に移行する。
【0042】
他方、ステップS8の判定において上記音声の検出が後であった場合(ステップS8;NO)、CPU20は、メモリ21から上記連動リストL2の内容を読み出す。そしてCPU20は、当該読み出した連動リストL2の記述内容と、上記認識された音声の内容及び上記認識された手Hの移動状態と、に基づいて、それらに対応する処理を処理部30に実行させる(ステップS10)。その後CPU20は、上記ステップS11の処理に移行する。
【0043】
なお実施例に係る上記検出処理において、音声が検出されたタイミングと手Hの存在が検出されたタイミングとが同時と判定される場合には、例えば、再度の発話を使用者に促すメッセージをディスプレイD上に表示するか、或いは音声として出力するように構成することができる。またこの他に、各タイミングが同時と判定された場合でも、いずれかのタイミングが先であるとして検出処理を進めるように構成することもできる。このとき、どちらのタイミングが先であるとするかは、例えば使用者によって設定可能としてもよいし、或いは予め設定されていてもよい。
【0044】
以上説明した実施形態に係る検出処理が実行されることにより、例えば
図6に例示するように、第1発光部1A1等及びマイク10を備えるナビゲーション装置NVの前方の空間内で手Hが左から右に移動され、これに対応して「ボリューム」という発生が使用者により為された場合、例えば手Hの検出が先であった場合には、上記連動リストL1の内容に基づき、手Hの移動速度に応じて処理部30における音声出力部としてのボリュームが調整されることとなる(
図4(a)参照)。
【0045】
以上説明したように、実施例に係る検出処理によれば、手Hの存在と音声の内容との組み合わせに連動させた処理が実行されるので、手Hの存在のみを検出して処理を行うことに起因する誤った処理の実行を防止できる。また手Hの存在と音声の内容との組み合わせにより、多くの種類の処理を実行させることができる。なお音声認識を手Hの検出に先んじて行う場合、例えば各検出空間A1等を避けるように手Hを移動させた後に発話するようにすれば、意図しない処理が実行されることを更に少なくすることができる。
【0046】
また、手Hの動き及び音声それぞれの検出タイミングの差が既定の閾値時間以下であった場合に、手Hの存在と音声の内容との組み合わせに連動させた処理を実行する(上記ステップS6;YES参照)ので、手Hの存在と音声の検出とが関連する(連動する)と推測される場合に処理を実行することで、使用者の意図に沿った正確な処理を実行することができる。
【0047】
更に、処理を実行するか否かを判定するために用いられる閾値時間が変更可能とされる場合は、使用者の意図により沿った正確な処理を実行することができる。
【0048】
更にまた、連動リストLが手Hの動きと音声の内容との組み合わせに対応付けられた処理の内容を示しており、当該連動リストLに基づいて、手Hの動きと音声の内容との組み合わせに対応した処理を実行するので、種々の移動状態に応じた内容の処理を実行することができる。なお、音声の認識を先に行う連動リストL2の場合は、簡易な用語により先に認識した処理部30における処理の詳細を手Hの動きにより表現することにより、発話用語の簡略化/短縮化を図ることができ、使用者における用語記憶に係る負担を軽減することができる。
【0049】
また、手Hの空間的な移動速度を検出する場合は当該移動速度に応じた内容の処理を実行することができ、手Hの空間的な移動方向を検出する場合は当該移動方向に応じた内容の処理を実行することができる。
【0050】
更に、検出される音声が使用者の音声であり、その音声の内容が認識されるので、使用者の意図に即した処理を正確に実行することができる。なおマイク10における検出対象は、使用者の音声の他に、予め設定されてその内容が連動リストL内に記述されていれば、他の物の音であってもよい。
【0051】
また実施例に係る処理部30の処理としては、上述してきたものの他に、例えば
図4の連動リストL1として例示するように、表示処理としてのリストのスクロール処理やタブ表示の場合の遷移処理等が考えられる。
【0052】
更に上述した実施例では、手Hの動きの検出と音声の検出との前後関係を自動的に判定する構成としたが、これ以外に、手Hの動きと音声との前後関係を予めCPU20内に設定しておき、その設定された順序で手Hの動き及び音声を検出させる構成としてもよい。このとき、音声の検出を先として設定した場合は、
図5(b)に示すフローチャートにおけるステップS8、ステップS10、ステップS12及びステップS14の各処理が不要となる。また手Hの動きの検出を先として設定した場合は、
図5(b)に示すフローチャートにおけるステップS8、ステップS9、ステップS12及びステップS13の各処理が不要となる。
【0053】
更にまた上述した実施形態及び実施例では、物体Hが手Hである場合について説明したが、物体Hとしては手Hに限らず、赤外光を反射可能な物体であれば、どのような物でも検出対象とすることができる。
【0054】
また上述した実施形態及び実施例では、車載用のナビゲーション装置NVにおける処理を制御するための近接センサSに対して本願を適用した場合について説明したが、これ以外に、一般家庭の照明のオン/オフや明るさを制御するための赤外線式等の非接触式のスイッチによる手Hの存在の検出による照明の制御に、本願を適用することもできる。この場合には、手Hの動きに対応して照明操作用の音声を発するように構成すればよい。
【0055】
更に、
図5に示したフローチャートに相当するプログラムを、フレキシブルディスク又はハードディスク等の記録媒体に記録しておき、或いはインターネット等のネットワークを介して取得しておき、これを汎用のマイクロコンピュータ等に読み出して実行することにより、当該マイクロコンピュータ等を実施例に係るCPU20として機能させることも可能である。