IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニーセミコンダクタソリューションズ株式会社の特許一覧

特開2022-142624検出処理装置、検出処理方法、情報処理システム
<>
  • 特開-検出処理装置、検出処理方法、情報処理システム 図1
  • 特開-検出処理装置、検出処理方法、情報処理システム 図2
  • 特開-検出処理装置、検出処理方法、情報処理システム 図3
  • 特開-検出処理装置、検出処理方法、情報処理システム 図4
  • 特開-検出処理装置、検出処理方法、情報処理システム 図5
  • 特開-検出処理装置、検出処理方法、情報処理システム 図6
  • 特開-検出処理装置、検出処理方法、情報処理システム 図7
  • 特開-検出処理装置、検出処理方法、情報処理システム 図8
  • 特開-検出処理装置、検出処理方法、情報処理システム 図9
  • 特開-検出処理装置、検出処理方法、情報処理システム 図10
  • 特開-検出処理装置、検出処理方法、情報処理システム 図11
  • 特開-検出処理装置、検出処理方法、情報処理システム 図12
  • 特開-検出処理装置、検出処理方法、情報処理システム 図13
  • 特開-検出処理装置、検出処理方法、情報処理システム 図14
  • 特開-検出処理装置、検出処理方法、情報処理システム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022142624
(43)【公開日】2022-09-30
(54)【発明の名称】検出処理装置、検出処理方法、情報処理システム
(51)【国際特許分類】
   G06T 7/20 20170101AFI20220922BHJP
   G06F 3/01 20060101ALI20220922BHJP
   G06F 3/0346 20130101ALI20220922BHJP
   G06T 7/521 20170101ALI20220922BHJP
   G06T 7/593 20170101ALI20220922BHJP
   G06T 7/00 20170101ALI20220922BHJP
   G06T 1/00 20060101ALI20220922BHJP
   G06T 3/00 20060101ALI20220922BHJP
【FI】
G06T7/20 300A
G06F3/01 570
G06F3/0346 421
G06T7/521
G06T7/593
G06T7/00 350B
G06T1/00 340Z
G06T3/00 725
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2021042870
(22)【出願日】2021-03-16
(71)【出願人】
【識別番号】316005926
【氏名又は名称】ソニーセミコンダクタソリューションズ株式会社
(74)【代理人】
【識別番号】100116942
【弁理士】
【氏名又は名称】岩田 雅信
(74)【代理人】
【識別番号】100167704
【弁理士】
【氏名又は名称】中川 裕人
(72)【発明者】
【氏名】高梨 省吾
【テーマコード(参考)】
5B057
5B087
5E555
5L096
【Fターム(参考)】
5B057AA16
5B057BA02
5B057CA02
5B057CA08
5B057CA13
5B057CA16
5B057CB02
5B057CB08
5B057CB12
5B057CB16
5B057CC03
5B057CD14
5B057DA08
5B057DB03
5B057DB05
5B057DB09
5B057DC16
5B057DC40
5B087AA02
5B087AC07
5B087BC32
5E555AA12
5E555BA23
5E555BB23
5E555BC04
5E555CA41
5E555CA42
5E555CB66
5E555CC01
5E555EA22
5E555FA00
5L096AA03
5L096AA06
5L096AA09
5L096BA04
5L096CA05
5L096DA02
5L096FA06
5L096FA67
5L096FA69
5L096GA51
5L096HA02
(57)【要約】      (修正有)
【課題】非接触の操作において、親指と人差し指の指先同士を接触させる等、ユーザにとって無理なく、且つ、少ない手の動きで実現可能な操作により、該操作に応じた処理を実行し、操作性の向上を図る情報処理システム、検出処理装置及び方法を提供する。
【解決手段】情報処理システムにおいて、検出処理装置は、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、形状検出情報に基づいて、少なくともユーザの指先同士の接触有無を含む手の動きを検出する検出処理部を備える演算部と、検出処理部が検出した手の動きの情報から認識されるユーザの操作入力情報に応じた処理を実行する対応処理実行部と、を有する。
【選択図】図1
【特許請求の範囲】
【請求項1】
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部を備えた
検出処理装置。
【請求項2】
前記検出処理部は、前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を用いる
請求項1に記載の検出処理装置。
【請求項3】
前記検出処理部は、前記手における指先同士が接触した指の組み合わせを検出する
請求項1に記載の検出処理装置。
【請求項4】
前記検出処理部は、前記手における少なくとも親指と人差し指の指先同士の接触有無を検出する
請求項3に記載の検出処理装置。
【請求項5】
前記検出処理部は、前記手における指先同士の接触回数を検出する
請求項1に記載の検出処理装置。
【請求項6】
前記検出処理部は、前記手における指先同士の単位時間あたりの接触回数を検出する
請求項5に記載の検出処理装置。
【請求項7】
前記検出処理部は、前記手における掌の動きを検出する
請求項1に記載の検出処理装置。
【請求項8】
前記検出処理部は、
前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を入力し、
入力した前記三次元検出情報に基づき前記手の簡易モデルを生成し、
前記簡易モデルに基づいて前記手の動きの検出を行う
請求項1に記載の検出処理装置。
【請求項9】
前記検出処理部は、
前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を入力し、
入力した前記三次元検出情報に基づいて二次元のシルエット画像を生成し、
前記シルエット画像に基づいて前記指先同士の接触有無を検出する
請求項1に記載の検出処理装置。
【請求項10】
前記検出処理部は、前記シルエット画像において周囲が前記手の領域で囲まれている中空部分が存在するか否かの判定を行った結果に基づき、前記指先同士の接触有無を検出する
請求項9に記載の検出処理装置。
【請求項11】
前記検出処理部は、前記中空部分の大きさに基づいて前記指先同士の接触有無を検出する
請求項10に記載の検出処理装置。
【請求項12】
前記検出処理部は、
前記三次元検出情報に基づいて二次元のシルエット画像を生成し、
前記シルエット画像に基づいて前記指先同士の接触有無を検出し、
前記簡易モデルに基づいて、前記指先同士の接触が有ると検出された指を同定する処理を行う
請求項8に記載の検出処理装置。
【請求項13】
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する
検出処理方法。
【請求項14】
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部と、
前記検出処理部が検出した前記手の動きの情報から認識される前記ユーザの操作入力情報に応じた処理を実行する対応処理実行部と、を備える
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、ユーザの手の動きを検出する検出処理装置とその方法、及び手の動きから認識されるユーザの操作入力情報に応じた処理を実行する情報処理システムの技術分野に関する。
【背景技術】
【0002】
ユーザが各種のボタンやキー、ダイヤル、タッチパネル等とった操作子に触れることによる操作ではなく、手を所定の態様で動かすことによる非接触での操作を認識するための技術が各種提案されている。
例えば、下記特許文献1には、ユーザが空中に指先でなぞった文字等を画像解析により認識するジェスチャー認識技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2017-76408号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の技術では、ジェスチャー認識の精度を確保する上では指先を比較的大きく動かすことを要し、操作性の悪化が懸念される。
【0005】
本技術は上記事情に鑑み為されたものであり、非接触の操作について、操作性の向上を図ることを目的とする。
【課題を解決するための手段】
【0006】
本技術に係る検出処理装置は、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部を備えたものである。
例えば、親指と人差し指の指先同士を接触させる等、指先同士を接触させることは、ユーザにとって無理なく且つ少ない手の動きで実現可能である。
【0007】
また、本技術に係る情報処理システムは、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部と、前記検出処理部が検出した前記手の動きの情報から認識される前記ユーザの操作入力情報に応じた処理を実行する対応処理実行部と、を備えるものである。
これにより、非接触の操作として、ユーザにとって無理なく且つ少ない手の動きで実現可能な操作を受け付けて、該操作に応じた処理を実行する情報処理システムが実現される。
【図面の簡単な説明】
【0008】
図1】本技術に係る実施形態としての情報処理システムの構成概要を説明するための図である。
図2】実施形態としての検出処理装置の内部構成例を説明するためのブロック図である。
図3】実施形態としての情報処理装置の内部構成例を示したブロック図である。
図4】検出処理装置の演算部が有する実施形態としての機能を示した機能ブロック図である。
図5】情報処理装置のCPUが有する実施形態としての機能を示した機能ブロック図である。
図6】実施形態における手の動きの検出処理例を示したフローチャートである。
図7】手の三次元検出情報のイメージを示した図である。
図8】シルエット画像の説明図である。
図9】手の簡易モデルの説明図である。
図10】実施形態における地図のスクロール操作と地図のスクロール動作との関係を示した図である。
図11】実施形態における地図の拡大、縮小操作と地図の拡大、縮小動作との関係を示した図である。
図12】地図スクロールについての操作認識及び認識した操作に応じた対応処理のフローチャートである。
図13】画像によるフィードバックの例を示した図である
図14】変形例としての地図スクロールを実現するための処理手順例を示したフローチャートである。
図15】変形例の場合に対応したフィードバックの例を説明するための図である。
【発明を実施するための形態】
【0009】
以下、実施形態を次の順序で説明する。
<1.情報処理システムの概要>
<2.ハードウエア構成>
(2-1.検出処理装置の構成)
(2-2.情報処理装置の構成)
<3.機能構成>
<4.手の動き検出について>
<5.操作対応処理について>
(5-1.操作対応処理の具体例)
(5-2.処理手順例)
<6.変形例>
<7.実施形態のまとめ>
<8.本技術>
【0010】
<1.情報処理システムの概要>
図1は、本技術に係る実施形態としての情報処理システム10の構成概要を説明するための図である。
情報処理システム10は、ユーザが所定の態様で手を動かすことにより行われる非接触の操作について、ユーザの手の動きを検出した結果に基づいて操作内容を認識し、認識した操作内容に応じた処理を実行するシステムとして構成される。ここではそのようなシステムの適用例として、カーナビゲーションシステムへの適用例を挙げる。
【0011】
図示のように情報処理システム10は、検出処理装置1、情報処理装置2、センサ装置3、及び表示装置4を少なくとも備える。情報処理システム10は、例えば車両における運転者等の乗員がユーザとして想定され、該ユーザの手5の動きを検出し、手5の動きの検出結果に基づき操作内容を認識し、認識した操作内容に応じた処理を実行する。
【0012】
センサ装置3は、手5の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を得るための装置とされる。
本例では、センサ装置3は、上記の形状検出情報として、手5の形状を三次元で捉えた(つまり立体的に捉えた)三次元検出情報を得ることが可能に構成される。具体的には、距離画像を得ることが可能な測距装置として構成されている。距離画像とは、水平方向及び垂直方向の画素数がそれぞれ複数とされて所定の解像度を有し、画素毎に被写体までの測距値が対応づけられた情報を意味する。
距離画像を得るための測距装置としては、例えばToF(Time of Flight)方式やストラクチャードライト方式、或いはステレオ法等の公知の測距手法により測距を行う装置を用いることができる。
【0013】
本例において、センサ装置3は、運転席又は助手席に着座したユーザの手5を真上から捉えることができるように、車室内における運転席と助手席との間の天井部分に設置されている。
【0014】
検出処理装置1は、例えばコンピュータ装置として構成され、センサ装置3の出力情報、すなわち、ユーザの手5の形状を捉えた形状検出情報を入力し、該形状検出情報に基づいて、ユーザの手5の動きを検出するための処理を行う。
【0015】
情報処理装置2は、例えばコンピュータ装置として構成され、本例ではカーナビゲーションに係る処理を実行する装置とされる。
情報処理装置2には、例えばLCD(Liquid Crystal Display)パネルや有機EL(Electro-Luminescence)パネルなどのディスプレイパネルを有して構成された表示装置4が接続されている。情報処理装置2は、カーナビゲーションに係る処理として、表示装置4の表示画面4a上に地図の表示や案内のための矢印情報の表示等、カーナビゲーションに関連する情報の表示を実行させるための処理を行う。
【0016】
また、情報処理装置2は、検出処理装置1が検出した手5の動きの情報から認識されるユーザの操作入力情報に応じた処理を実行する。本例では、手5の動きで表現される操作入力情報はカーナビゲーションに係る操作入力情報とされ、情報処理装置2は、手5の動きの情報から認識されるユーザの操作入力情報に応じて、カーナビゲーションに係る処理を実行する。例えば、後述の例のように、地図のスクロールや拡大、縮小のための処理等を実行する。
【0017】
なお、図1では検出処理装置1がセンサ装置3と別体に構成される例としているが、検出処理装置1とセンサ装置3は一体の装置として構成することもできる。
また、検出処理装置1と情報処理装置2についても別体ではなく一体に構成することもでき、さらに、情報処理装置2と表示装置4についても別体ではなく一体に構成することもできる。
センサ装置3の配置位置にもよるが、これら検出処理装置1、情報処理装置2、センサ装置3、及び表示装置4については、全てを一体の装置として構成することも考えられる。
【0018】
<2.ハードウエア構成>
(2-1.検出処理装置の構成)
図2は、検出処理装置1の内部構成例を説明するためのブロック図であり、検出処理装置1の内部構成例と共に、図1に示したセンサ装置3を併せて示している。
図示のように検出処理装置1は、演算部11、センサI/F(インタフェース)12、及び通信部13を備えている。
【0019】
演算部11は、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、及びRAM(Random Access Memory)等を有するマイクロコンピュータを備えて構成され、CPUが上記のROMに格納されたプログラム(ROMからRAMに読み出されたプログラム)に従った処理を実行することで、プログラムされた所定の処理を実行する。
【0020】
演算部11に対しては、センサI/F12、及び通信部13が接続されている。
センサI/F12は、センサ装置3との間で所定の通信方式に従ってデータをやりとりするインタフェース部として構成されている。
演算部11は、センサI/F12を介してセンサ装置3で得られる手5の形状検出情報(本例では距離画像のデータ)を入力することが可能とされる。
【0021】
通信部13は、外部装置との間で有線又は無線による通信、バス通信などによる通信を行う。本例において通信部13は、演算部11が情報処理装置2との間で各種のデータをやりとりするために用いられる。
【0022】
ここで、演算部11は、センサ装置3から入力した形状検出情報に基づくユーザの手5の動きの検出処理や、検出した手5の動きの情報を情報処理装置2に出力するための処理を行うが、これらの処理の詳細については後に改めて説明する。
【0023】
(2-2.情報処理装置の構成)
図3は、情報処理装置2の内部構成例を示したブロック図である。
図3において、情報処理装置2のCPU21は、ROM22に記憶されているプログラム、または記憶部29からRAM23にロードされたプログラムに従って各種の処理を実行する。RAM23にはまた、CPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU21、ROM22、およびRAM23は、バス33を介して相互に接続されている。このバス33にはまた、入出力インタフェース25も接続されている。
【0024】
入出力インタフェース25には、操作子や操作デバイスよりなる入力部26が接続される。
例えば入力部26としては、キーボード、マウス、キー、ダイヤル、タッチパネル、タッチパッド、リモートコントローラ等の各種の操作子や操作デバイスが想定される。
入力部26によりユーザの操作が検知され、入力された操作に応じた信号はCPU21によって解釈される。
【0025】
また入出力インタフェース25には、前述した表示装置4に各種の情報を表示させるための表示制御を行う表示制御部27が接続されている。CPU21は、この表示制御部27に対する指示を行って、表示装置4の表示画面4a上に各種の情報を表示させることが可能とされる。
例えばCPU21は、ナビゲーションのための地図の情報や、各種操作メニュー、アイコン、メッセージ等、即ちGUI(Graphical User Interface)を実現するための画像情報を表示画面4a上に表示させることができる。
【0026】
さらに、入出力インタフェース25には、スピーカなどよりなる音声出力部28が接続されている。なお、音声出力部28は、情報処理装置2と別体に構成される場合もある。
【0027】
入出力インタフェース25には、ハードディスクや固体メモリなどより構成される記憶部29や、モデムなどより構成される通信部30が接続される場合もある。
通信部30は、例えばインターネット等の伝送路を介しての通信処理や、各種機器との有線又は無線通信、バス通信などによる通信を行うものを用いることができる。
【0028】
入出力インタフェース25にはまた、必要に応じてドライブ31が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブル記録媒体32が適宜装着される。
ドライブ31により、リムーバブル記録媒体32からは例えば各種の画像データ、音声データ等や、各種のコンピュータプログラムなどを読み出すことができる。読み出されたデータは、記憶部29に記憶されたり、画像データや音声データについては、それらのデータに基づく画像や音声が表示装置4や音声出力部28で出力されたりする。またリムーバブル記録媒体32から読み出されたコンピュータプログラム等は必要に応じて記憶部29にインストールされる。
【0029】
この情報処理装置2では、ソフトウエアを、通信部30によるネットワーク通信やリムーバブル記録媒体32を介してインストールすることができる。或いは当該ソフトウエアは予めROM22や記憶部29等に記憶されていてもよい。
【0030】
<3.機能構成>
図3及び図4を参照し、実施形態としての検出処理装置1、情報処理装置2がそれぞれ有する機能について説明する。
図3は、検出処理装置1の演算部11が有する実施形態としての機能を示した機能ブロック図である。
図示のように演算部11は、検出処理部11aとしての機能を有している。
検出処理部11aは、センサ装置3で得られる手5の形状検出情報を入力し、該形状検出情報に基づいて、少なくともユーザの指先同士の接触有無を含む手5の動きを検出する。
なお、このような指先同士の接触有無を含む手5の動きの具体的な検出手法については後に改めて説明する。
【0031】
図5は、情報処理装置2のCPU21が有する実施形態としての機能を示した機能ブロック図である。
図示のようにCPU21は、対応処理実行部21aを有する。
対応処理実行部21aは、検出処理装置1が検出した手5の動きの情報から認識されるユーザの操作入力情報に応じた処理を実行する。
認識する操作入力情報の種類や実行する処理の具体例は以降で説明する。
【0032】
<4.手の動き検出について>
図6のフローチャートを参照し、演算部11が行う手5の動きの検出処理の具体例について説明する。
ここでは、手5の動きについての検出情報として、具体的に以下の検出情報を得るものとする。
1)接触フラグ:本例では、親指と他の指との指先同士の接触有無を表す
2)親指と人差し指、親指と中指、親指と薬指の各組ごとの指先の接触回数:単位時間あたりの接触回数
3)掌の中心位置情報:所定時間ごとの位置情報
【0033】
図6の処理は、例えば所定周期で繰り返し実行される。これにより、ユーザの手5の状態について、所定時間ごとの検出情報を得ることが可能となり、情報処理装置2に対して手5の動きを示す情報を出力可能とされている。
図6に示す処理の実行周期は、手5の動き検出についての時間方向の分解能を左右するものとなる。手5の素早い動きに対応可能とするためには、図6に示す処理の実行周期を短くすることが望ましい。本例では、該実行周期は、例えば1/30秒の周期とされる。また、これに対応し、センサ装置3の検出周期(本例では距離画像の取得周期)も1/30秒とされている。
なお、図6の処理の実行周期やセンサ装置3の検出周期は例えば1/60秒や1/120秒等、1/30秒以外に設定することもできる。
【0034】
先ず、演算部11はステップS101で、三次元検出情報入力処理を行う。すなわち、センサ装置3により得られる距離画像としての三次元検出情報を入力する。
【0035】
図7は、手5の三次元検出情報のイメージを示している。
図示のように距離画像としての三次元検出情報は、三次元位置の点群データとなる。三次元位置の点群とは、任意の原点をとった際に得られる三次元座標点(x,y,z)の集合であり、その点数は、センサ装置3の分解能(水平方向及び垂直方向の画素数)に依存する。
【0036】
図6において、ステップS101に続くステップS102で演算部11は、シルエット画像の生成処理を行う。すなわち、ステップS101で取得した三次元検出情報に基づいて、二次元画像としてのシルエット画像を生成するものである。
【0037】
図8は、シルエット画像の説明図である。
シルエット画像とは、三次元空間内における対象物のシルエットを二次元平面上に投影して得られる画像を意味する。
本例では、シルエット画像は、三次元検出情報としての距離画像において、手5の領域に「1」を、それ以外の領域に「0」を割り当てた画像として生成する。これにより、図8に示すような手5のシルエットを表す画像を得ることができる。
【0038】
図6において、ステップS102に続くステップS103で演算部11は、接触判定処理を行う。すなわち、上記のシルエット画像に基づき、親指と他の指との指先同士の接触有無を判定する。
【0039】
ここで、図8のシルエット画像について、親指と他の指との指先同士が接触している場合には、図中に示すような中空部分Po、すなわち、周囲が手5の領域で囲まれている部分が得られる。
従って、シルエット画像において、このような中空部分Poの有無を判定することで、親指と他の指との指先同士の接触有無を判定可能となる。
【0040】
このとき、手首のロール角等によっては、親指と他の指との指先同士が接触していたとしても、シルエット画像中に中空部分Poが得られない場合もあり得る。そこで、センサ装置3を複数設け、複数のアングルで手5を捉えた三次元検出情報、及びシルエット画像が得られるようにする。これにより、複数のアングルのシルエット画像のうち少なくとも何れかのシルエット画像において中空部分Poが捉えられるようにすることができ、指先同士の接触有無の判定精度向上を図ることができる。
以下では説明上、車室内の天井に設置した1台のセンサ装置3のみで中空部分Poを捉えることができる場合を考える。
【0041】
また、シルエット画像において、手5の状態によっては、親指と他指との指先同士の接触に起因しない、比較的小さな中空部分Poが形成されてしまうことも考えられる。
このため本例では、シルエット画像における中空部分Poの有無のみを判定するのではなく、中空部分Poの大きさに基づいて指先同士の接触有無を検出する。
具体的に、演算部11は、シルエット画像における中空部分Poの有無を判定し、中空部分Poがある場合には、検出された全ての中空部分Poについて、その大きさ(面積)を求め、該大きさが所定の閾値以上である中空部分Poがある場合に、親指と他指との指先同士の接触が有るとの判定結果を得る。
一方、シルエット画像において大きさが上記の閾値以上である中空部分Poがなかった場合は、親指と他指との指先同士の接触が無いとの判定結果を得る。
【0042】
ステップS103で演算部11は、上記のような中空部分Poに基づく判定処理を行った結果、親指と他指との指先同士の接触が有ると判定した場合は、上述した接触フラグとしてONを示す値(例えば「1」)格納したフラグ情報を生成し、親指と他指との指先同士の接触が無いと判定した場合は接触フラグとしてOFFを示す値(例えば「0」)格納したフラグ情報を生成する。
【0043】
ステップS103に続くステップS104で演算部11は、接触有無の判定処理、すなわち、上記した接触フラグに基づく親指と他指との指先同士の接触有無の判定を行う。
接触フラグがOFFであり、親指と他指との指先同士の接触が無かったと判定した場合、演算部11は後述するステップS109に処理を進める。
【0044】
一方、接触フラグがONであり、親指と他指との指先同士の接触が有ったと判定した場合、演算部11はステップS105に処理を進める。
ステップS105からS108の処理は、指先同士の接触が実際に親指とどの指との組み合わせで為されているかの検出や、掌の位置の検出、及び単位時間あたりの接触回数の検出を行うための処理となる。
【0045】
具体的に、先ずステップS105で演算部11は、手の簡易モデルの生成処理として、入力した三次元検出情報に基づく手5の簡易モデルの生成処理を行う。
【0046】
図9は、手5の簡易モデルの説明図である。
ここで言う手5の簡易モデルとは、手5を構成する各部位のうち、例えば指先部や各種関節部等といった所定の複数部位と、部位間を繋ぐ線とによって手の構成を簡易的に表したモデルのことを意味する。
このような手5の簡易モデルを生成することは、手5を構成する指先部や各種関節部等といった所定の各部位について、その位置を推定しているものと換言できる。
なお、手5の簡易モデルの生成手法については多くの手法が存在するため、公知である汎用の手法を用いればよい。例えば、三次元検出情報における領域ごとの点群の集合を一つのユニットとして情報量を落としたうえで、機械学習されたAI(人工知能)モデルによって手の各部位の位置を推定するという手法がある。これにより、各指先を含む手5の各部位についての三次元位置を得ることができる。
なお、手5の簡易モデルの生成において、モデルの生成精度向上を図る上では、センサ装置3を複数設けて、手5を複数のアングルで捉えた三次元検出情報を得ることが有効である。
【0047】
図6において、ステップS105に続くステップS106で演算部11は、同定処理として、手5の簡易モデルから手5の各部位を同定する処理を行う。本例において、この同定処理では、手5における親指、人差し指、中指、薬指の各指先と、掌とを同定する。
ここで、掌については、その中心の位置を掌の位置として検出する。
【0048】
ステップS106に続くステップS107で演算部11は、接触指の判定処理を行う。
具体的に、本例において演算部11は、親指に対し、指先同士の離間距離が最も短い指を接触指(親指に対し指先同士が接触している指)として判定する。
先のステップS104で既に親指の先に対する何れかの指の先の接触が認められているため、上記のように親指に対して指先同士の離間距離が最も短い指を判定することで、接触指を特定することができる。
【0049】
なお、親指の先と小指の先の接触は手5に負荷をかける操作となることが懸念されるため、本例では、小指について接触指の判定候補から除外しているが、これは、小指を接触指の判定候補に含めることを否定するものではない。
【0050】
ステップS107に続くステップS108で演算部11は、接触回数検出処理を実行する。この処理は、親指との接触対象とされる指(本例では人差し指、中指、薬指)ごとに、親指との単位時間あたりの接触回数(指先同士の接触回数)を検出するための処理である。ここでは操作性の観点から、人差し指、中指、薬指のそれぞれについて、3回までの接触回数を検出する。
【0051】
ステップS108における接触回数検出処理は、例えば以下のような要領で行う。
先ず、ある処理時刻に親指と接触対象指(本例では人差し指、中指、薬指)との指先同士の接触開始が認められたとすると、該接触対象指について、接触回数の値を「1」とする。そして、以降の処理時刻において、任意の時間間隔t秒以内に再び親指と該接触対象指との接触開始が認められた場合は、該接触対象指の接触回数の値を「2」とする。一方で、t秒以内に再度の接触開始が認められなかった場合には、当該接触対象指の接触回数の値を「1」で確定する。
また、接触回数が「2」となった後の処理時刻以降において、t秒以内に親指と接触対象指との再度の接触開始が認められた場合は、該接触対象指の接触回数の値を「3」とし、一方で、t秒以内に再度の接触開始が認められなかった場合には、当該接触対象指の接触回数の値を「2」で確定する。
なお、接触の時間間隔tについては、例えば0.2秒程度が想定される。
【0052】
ステップS108に続くステップS109で演算部11は、検出情報の出力処理として、上記により説明した検出処理で得られた検出情報を通信部13を介して情報処理装置2に出力するための処理を行う。
具体的に、この出力処理では、ステップS108から処理が遷移した場合、すなわちシルエット画像に基づく接触フラグがONであった場合には、接触フラグの情報と、ステップS107で判定した接触指の情報と、ステップS108で検出した人差し指、中指、薬指ごとの接触回数(それぞれ0回から3回の何れか)の情報と、ステップS106の同定処理で得た掌の位置の情報とを情報処理装置2に出力する処理を行う。
一方、ステップS104から処理が遷移した場合、すなわちシルエット画像に基づく接触フラグがOFFであった場合、演算部11はステップS109の出力処理として接触フラグの情報を情報処理装置2に出力する処理を行う。
【0053】
演算部11は、ステップS109の処理を実行したことに応じて図6に示す一連の処理を終える。
【0054】
なお、上記した処理によると、演算部11は、掌の位置を所定周期で検出することになるが、これは、掌の動きを検出していることに相当すると言える。
【0055】
<5.操作対応処理について>
(5-1.操作対応処理の具体例)
続いて、上記の処理で得られた検出処理装置1による検出情報に応じた情報処理装置2側の対応処理例について説明する。具体的には、上記した接触フラグや接触指の情報、接触回数の情報、及び掌の位置の情報に応じた対応処理である。
以下の例では、情報処理装置2がこれらの検出情報に基づいて地図のスクロール操作、拡大又は縮小の操作を認識し、認識した操作に応じて地図の表示態様を制御するものとする。
【0056】
本例において、地図のスクロール操作は、親指と人差し指の指先同士を接触させた状態で、手5を水平面に平行な任意の方向に動かす操作であるとする。これは、地図を親指と人差し指とで擬似的に摘まんで引っ張る操作と換言できる。
【0057】
図10に、このような地図のスクロール操作と該操作に応じた地図のスクロール動作との関係を示す。
図示のように、親指と人差し指の指先同士を接触させた状態で手5を左方向に移動させる操作を行った場合、表示画面4a上においては、地図を同様に左方向にスクロールさせる。ここでの地図のスクロール方向とは、表示画面4aの画枠に対し地図を移動させる方向を意味するものであり、地図を左方向にスクロールさせるとは、表示画面4aの画枠に対し、地図を左方向に移動させることを意味する。換言すれば、表示画面4aの画枠よりも右側の見えていなかった部分が、画枠内に移動してくるように見えるものである。
このとき、地図スクロールの量については、親指と人差し指の指先同士を接触させた状態での手5の移動量に応じた量とする。
【0058】
このように、親指と人差し指の指先同士を接触させた状態での手5の水平面での移動方向、移動量それぞれに応じたスクロール方向、スクロール量により、地図のスクロール表示が行われるようにする。
これによりユーザは、地図を親指と人差し指とで摘まんで手5を動かす、という操作を繰り返すことで、地図を任意の方向に任意の量だけスクロールさせることができる。
【0059】
ここで、本例において、地図スクロールについては、親指と人差し指の指先同士を接触させてからの手5の初速vが所定の閾値THvを超えている場合に、自動スクロールを実行する。ここで言う自動スクロールとは、ユーザが手5の動きを止めた以降も、所定の時間にわたって地図のスクロールが継続するスクロール手法を意味する。具体的に、本例の自動スクロールでは、高速なスクロール速度でスクロールを開始した後、徐々にスクロール速度を(慣性のように)減衰させていって、スクロール開始から所定時間後にスクロールを停止させる。
これにより、ユーザが地図を大きくスクロールさせたい場合に、必要なスクロール操作(つまり親指と人差し指の指先同士を接触させた状態で手5を動かすという操作)の量の低減を図ることができる。
【0060】
続いて、地図の拡大、縮小の操作について説明する。
本例において、地図の拡大、縮小の操作は、親指の指先に対して、人差し指ではなく中指の指先を接触させた状態で、手5を鉛直面に平行な方向(つまり上下何れかの方向)に動かす操作とされる。
【0061】
図11は、このような地図の拡大、縮小操作と該操作に応じた地図の拡大、縮小動作との関係を示した図である。
例えば図示のように、親指と中指の指先同士を接触させた状態で、手5を上方向に移動させる操作が地図の拡大操作とされる。この操作は、親指と中指とで地図を摘まんで上方向に引っ張り上げる操作として捉えられることができる。このため、地図を拡大表示する。
逆に、親指と中指の指先同士を接触させた状態で手5を下方向に移動させる操作が、地図の縮小操作とされる。この操作は、親指と中指とで地図を摘まんで下方向に引き下げる操作として捉えられることができるため、地図を縮小表示する。
【0062】
本例では、地図の拡大、縮小の率は、手5の移動量に応じて連続的に変化させる。つまり、親指と中指の指先同士を接触させた状態で手5を上方向に徐々に移動させていくと、その移動量に応じて、地図の拡大率が徐々に上昇していく。逆に、親指と中指の指先同士を接触させた状態で手5を下方向に徐々に移動させていくと、その移動量に応じて、地図の縮小率が徐々に上昇していく。
【0063】
(5-2.処理手順例)
図12のフローチャートを参照し、上記により説明した実施形態としての操作対応処理を実現するための具体的な処理手順の例を説明する。
図12は、地図スクロールについての操作認識及び認識した操作に応じた対応処理のフローチャートである。
【0064】
先ず、CPU21はステップS201で、検出情報を入力する処理を行う。すなわち、検出処理装置1の演算部11が出力する検出情報、具体的に本例では、接触フラグや接触指の情報、接触回数の情報、及び掌の位置の情報を入力する(前述のように、指先同士の接触が検出されない場合は接触フラグのみとなる)。
【0065】
ステップS201に続くステップS202でCPU21は、親指と人差し指が接触しているか否かを判定する。すなわち、入力した検出情報に含まれる接触フラグ、接触指の情報に基づいて、親指と人差し指の指先同士が接触しているか否かを判定する。検出処理装置1で指先同士の接触が検出されていない場合には、接触フラグのみが入力されるが、接触フラグがOFFであるため親指と人差し指の指先同士が接触していないと判定できる。一方、検出処理装置1で指先同士の接触が検出された場合には、接触フラグ(ON)と接触指の情報が入力されるが、この場合は、接触指の情報に基づいて、親指と人差し指の指先同士が接触しているか否かの判定を行う。
【0066】
ステップS202において、親指と人差し指が接触していないと判定した場合、CPU21はステップS201に戻る。これにより、検出処理装置1による新たな検出情報が入力されることになる。
【0067】
一方、ステップS202において、親指と人差し指が接触していると判定した場合、CPU21はステップS203に進み、前回も接触であるか否か、すなわち、一つ前の処理時刻に実行したステップS202の処理で、親指と人差し指が接触しているとの判定結果が得られたか否かを判定する。
ステップS203において、前回も接触であるとの条件を満たさない場合、CPU21はステップS201に戻る。
つまり、ステップS201、S202、及びステップS203によっては、親指と人差し指が接触との判定結果が2回連続で得られるまで待機するループが形成されている。
【0068】
ステップS203において、前回も接触であると判定した場合、CPU21はステップS204に進み、手5の移動量、移動方向、及び初速vを計算する。ここで、手5の移動量、移動方向、及び初速vについては、検出情報に含まれる掌の位置の情報に基づき計算することができる。
【0069】
ステップS204に続くステップS205でCPU21は、初速vが閾値THvより大きいか否かを判定する。
初速vが閾値THvよりも大きければ、CPU21はステップS206に進み、地図を手5の初速vと移動方向に応じて自動スクロールさせる処理を行う。
この場合の自動スクロールの処理としては、ステップS204で計算した手5の移動方向に対応した方向への地図スクロールとして、所定速度によるスクロール速度でスクロールを開始させた後、徐々にスクロール速度を減衰させていって、スクロール開始から所定時間後にスクロールを停止させる処理を行う。
CPU21は、ステップS206に続くステップS207で自動スクロールについてスクロールが停止するまで待機し、スクロールが停止した場合はステップS201に戻る。これにより、新たな地図スクロール操作が行われた場合に対応可能となる。
【0070】
一方、ステップS205において、初速vが閾値THvよりも大きくないと判定した場合、CPU21はステップS208に進み、地図を手5の移動量と移動方向に応じてスクロールさせる処理を行う。すなわち、地図を手5の移動方向に対応するスクロール方向に、手5の移動量に応じたスクロール量だけスクロールさせる処理を行う。
【0071】
CPU21は、ステップS208の処理を実行したことに応じ、ステップS201に戻る。これにより、初速vが閾値THv以下のスクロール操作については、スクロール操作(つまり親指と人差し指の指先同士が接触した状態での手5の移動)が継続される間、ステップS208の処理が繰り返し実行され、手5の動きに連動して地図のスクロールが行われる。
【0072】
ここで、図示による説明は省略するが、地図の拡大や縮小に係る処理については、図12と同様の処理で実現することができる。ただしこの場合、CPU21は、ステップS202の処理に代えて、親指と中指の指先同士が接触しているか否かを判定する(接触フラグと接触指の情報を用いる)処理を行う。
そして、親指と中指の指先同士が接触していれば、ステップS203の処理として、親指と中指の指先同士が接触しているか否かを判定する処理を行う。前回も接触であれば、CPU21は、ステップS205以降の処理に代えて、次の処理を実行する。すなわち、手5の移動量と移動方向を計算し、計算した移動量と移動方向に応じた地図の拡大、又は縮小を行う。具体的に本例では、手5の移動方向が上方向である場合には、計算した移動量に応じた拡大率で地図を拡大させる処理を行い、また、手5の移動方向が下方向である場合には、計算した移動量に応じた縮小率で地図を縮小させる処理を行う。
そして、このような拡大又は縮小の処理を実行したことに応じ、CPU21はステップS201に戻る。
【0073】
なお、地図の拡大や縮小の操作については、手5の移動を伴わない次のような操作を割り当てることもできる
すなわち、親指と人差し指の指先同士の2回の接触を一段階分の地図の拡大操作とし、親指と中指の指先同士の2回の接触を一段階分の地図の縮小操作とするというものである。
【0074】
ここで、手5の動きによる非接触の操作について、ユーザがスムーズに操作を行う上では、操作が受け付けられていることをユーザに伝えるためのフィードバックを行うことが重要である。このフィードバックの例としては、例えば画像を用いたフィードバックを挙げることができる。
【0075】
図13に、画像によるフィードバックの例を示す。
図10図11で例示した地図を摘まむようなスクロールや拡大、縮小の操作、具体的には、親指と他指の指先同士の接触を伴う手5の動きによる操作については、図13のように、親指と他指の指先同士の接触が認められた場合(つまりスクロール操作や拡大、縮小操作が受け付けられている状態となっている場合)に、表示画面4aにおいて、地図の周辺を太枠で囲む描画を施すことや、地図を引っ張るような操作を想起させるために指の接触中は地図を少し拡大させるといった表示を行うことが考えられる。この場合、親指と他指の指先同士の接触が解除されたと認められた際には、図示のように太枠を非表示とし、地図の縮尺を元に戻すようにする。
【0076】
なお、フィードバックは画像による視覚的なフィードバックに限らず、音を用いた聴覚的なフィードバックを行うこともできる。
音によるフィードバックについては、指先同士が接触した瞬間と離れた瞬間それぞれで異なる音を出力することが考えられる。
また、フィードバックについては、操作の種類によって異なる種類のフィードバックを行うことも考えられる。例えば本例では、指先同士の接触の種類としては、親指に対する人差し指、中指、薬指の3種類と、それぞれの指の組に対する3種の接触回数とで合計9種類存在するため、これら9種類について、それぞれ異なる種類のフィードバックを行うことが考えられる。
【0077】
なお、指先同士の接触を伴う手5の動きによる操作については、上記で例示したような地図スクロールや地図の拡大、縮小の操作に限定されない。
例えば、操作の決定やキャンセルの操作に割り当てることが考えられる。具体例としては、例えば親指と人差し指の指先同士の3回の接触をトリガーとして、カーナビゲーションシステムにおける目的地の設定やその後の決定操作を可能とすることが考えられる。或いは、親指と中指の指先同士の3回の接触をトリガーとして、カーナビゲーションシステムにおける各種選択事項のキャンセル操作を可能とすることも考えられる。
また、これら決定やキャンセルの操作の過程で何らかの方向操作(メニュー選択など)が必要な場合には、該方向操作に、前述した地図スクロールでの操作を適用することも考えられる。
【0078】
<6.変形例>
ここで、実施形態としては上記により説明した具体例に限定されるものではなく、多様な変形例としての構成を採り得る。
例えば、上記では、地図のスクロール操作について、地図を摘まんで任意の方向に引っ張るような操作感を実現する例を挙げたが、指先同士の接触は、地図を摘まむアクションとして扱うのではなく、単に地図スクロールの操作であることを識別するアクションとして扱うようにすることも考えられる。その場合、指先同士を接触させた状態での手5の移動は、地図を移動させる方向を指示するアクションではなく、地図上の見たい方向を指示するアクションとして扱うようにすることが考えられる。換言すれば、画枠内における地図の移動方向ではなく、地図上における画枠の移動方向を指示するアクションとして扱うものである。具体的にこの場合は、手5が右方向に動く場合には地図を左方向に移動させる等、手5の移動方向とは逆方向(180度異なる方向)に地図を移動させる。
【0079】
このとき、指先同士が接触を開始した時点の手の位置(基点)からの移動量が任意の距離R以上となったら、地図スクロールを開始するようにする。この基点からの距離Rは、地図スクロールの不感帯領域を定めるものとなる。距離Rを調整することで、各方向への操作の機敏さを制御可能となる。
【0080】
図14のフローチャートに、このような変形例としての地図スクロールを実現するためのCPU21の処理手順例を示す。
なお、図14において、既に図12で説明済みとなった処理と同様となる処理については同一ステップ番号を付して説明を省略する。
【0081】
図示のようにこの場合のCPU21は、ステップS203で前回も接触であると判定した場合に、ステップS210で手5の移動量と移動方向を計算する処理を実行する。
そして、続くステップS211でCPU21は、初回接触位置からの移動量が距離R以上であるか否かを判定する。すなわち、上述した基点からの移動量が距離R以上であるか否かを判定する。
初回接触位置からの移動量が距離R以上でなければ、CPU21はステップS201に戻る。これにより、基点からの移動量が距離R以上とならなければ、地図スクロールは実行されない。つまり、上記した地図スクロールの不感帯領域が実現される。
【0082】
一方、初回接触位置からの移動量が距離R以上であれば、CPU21はステップS212に進み、手5の移動方向とは逆方向への地図スクロールを開始する。
なお、ここでの地図スクロールの速度は、一定の速度とし、該地図スクロールは例えば手5の位置が初回接触位置から半径Rの範囲内に戻ったら停止する。
この場合、地図スクロールを開始した後、手5の位置が初回接触位置から半径Rの範囲外にあるとの条件を満たせば、初回接触位置から見た手5の方向の変化に応じて、スクロール方向を変化させることが考えられる。
【0083】
ここで、上記のような距離Rを定義した変形例としての地図スクロールを行う場合にも、操作が受け付けられていることのフィードバックを行うことが考えられる。
図15は、該変形例の場合に対応したフィードバックの例を説明するための図である。
なお、ここでは一例として、地図スクロールの方向が8方向(上下、左右、及び斜め)に制限された例とするが、スクロール方向はこれに限るものではない。
【0084】
図中では、表示画面4aにおける地図以外の表示要素がフィードバックのための表示要素とされ、具体的にこの場合におけるフィードバックのための表示要素は、少なくとも水平方向ゲージ41と、水平方向ゲージ41上に表示されるスクロール開始点41l、スクロール開始点41r、中心点41c、及び現在点マーカ41mと、垂直方向ゲージ42と、垂直方向ゲージ42上に表示されるスクロール開始点42u、41d、中心点42c、及び現在点マーカ42mと、スクロール方向表示部43とを含む。
このようなフィードバックのための表示要素は、地図スクロールの操作モードとなった場合、具体的に本例ではユーザの親指と人差し指の指先同士等、所定の組み合わせによる指先同士の接触が認められた場合に表示が開始される。該当する指先同士の接触が解除されたことが認められた場合、フィードバックのための表示要素は非表示となる。
なお、フィードバックのための表示については、図13の例と同様に太枠の表示を伴うものでもよい。
【0085】
ユーザが所定の指先同士を接触させた状態で手5を水平方向に動かすと、水平方向ゲージ41上において現在点マーカ41mが該手5の移動方向、移動量に応じた方向、移動量だけ移動する。また、同状態でユーザが手5を垂直方向に動かすと、垂直方向ゲージ42上において現在点マーカ42mが該手5の移動方向、移動量に応じた方向、移動量だけ移動する。
水平方向ゲージ41において、中心点41cは、上述した基点(初回接触位置)の水平方向の位置を表す。すなわち、ユーザの所定の指先同士の接触が認められた時点での手5の水平方向の位置を表す。スクロール開始点41l、スクロール開始点41rは、それぞれ基点から左方向、右方向に距離Rだけ離間した位置を表している。
また、垂直方向ゲージ42において、中心点42cは基点の垂直方向の位置を表し、スクロール開始点42u、スクロール開始点43dは、それぞれ基点から上方向、下方向に距離Rだけ離間した位置を表している。
【0086】
ユーザが手5を基点から左右何れかの方向に距離Rを超える量移動させた場合には、現在点マーカ41mが中心点41cからスクロール開始点41l、41rの何れかを超える位置まで移動し、右又は左方向の地図スクロールが開始される。垂直方向についても同様に、ユーザが手5を基点から上下何れかの方向に距離Rを超える量移動させた場合には、現在点マーカ42mが中心点42cからスクロール開始点42u、42dの何れかを超える位置まで移動し、上又は下方向の地図スクロールが開始される。
【0087】
スクロール方向表示部43は、このときのスクロール方向(本例では地図に対する画枠側の移動方向)を示すために設けられる。図15では、基点からの手5の移動として、右方向及び上方向の移動量がそれぞれ距離Rを超える移動が行われて、スクロール方向表示部43において右斜め上方向のスクロール方向が示されている場合を例示している。本例では、手5の移動量が距離Rを超えて、実際に地図スクロールが開始された場合にスクロール方向表示部43においてスクロール方向が示される。
【0088】
例えばこの図15で例示したようなフィードバックを行うことで、図14で説明した変形例としての地図スクロールを行う場合において、操作性の向上を図ることができる。
【0089】
また、これまでの説明では、指先同士の接触の種類を接触回数との組み合わせで9種類とする例を挙げたが、さらに時間方向に組み合わせを拡張することにより、より多くの種類の操作を実現することもできる。例えば、親指の先と人差し指の先の接触に関して、1回接触、2回接触、1回接触が連続して行われることを一つの操作として扱うようにすること等が考えられる。これは、指でリズムを刻むような動きによる操作と換言できる。
また、同じ種類の指での連続接触に限らず、別の指との連続接触を組み合わせることにより、より操作のバリエーションを増すことができる。
【0090】
また、これまでの説明では、指先同士の接触の有無として、二つの指の指先同士の接触の有無を検出する例を挙げたが、例えば親指と人差し指と中指との指先同士の接触等、三つ以上の指先同士の接触有無を検出してもよい。
【0091】
また、これまでの説明では、指先同士の接触有無の判定をシルエット画像を用いて行う例としたが、指先同士の接触有無の判定は、手の簡易モデルを用いて行うことも可能である。具体的な手法としては、例えば、指先同士の離間距離が最短となっている指の組を特定し、該指先同士の離間距離が所定の閾値以下であれば、特定した指の組について、指先同士の接触が有るとの判定結果を得る、といった手法が考えられる。
【0092】
また、図8で例示したシルエット画像の生成や、図9で例示した手5の簡易モデルの生成は、手5の形状を二次元で捉えた二次元の形状検出情報、具体的には、カメラによる手5の撮像画像に基づいて行うことも可能である。
【0093】
また、これまでの説明では、本技術の適用先として、カーナビゲーションシステムを例示したが、本技術はカーナビゲーションシステムへの適用に限らず、手5の動きによる非接触の操作を認識し、操作に応じた処理を実行する様々なシステムに適用可能なものである。
【0094】
<7.実施形態のまとめ>
上記のように実施形態の検出処理装置(同1)は、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、形状検出情報に基づいて、少なくともユーザの指先同士の接触有無を含む手の動きを検出する検出処理部(同11a)を備えたものである。
例えば、親指と人差し指の指先同士を接触させる等、指先同士を接触させることは、ユーザにとって無理なく且つ少ない手の動きで実現可能である。
従って、上記構成のように指先同士の接触有無を含むユーザの手の動きを検出することで、操作にあたりユーザに手を大きく動かすことや無理な動きを強いる必要をなくすことが可能となり、非接触の操作について、操作性の向上を図ることができる。
【0095】
また、実施形態の検出処理装置においては、検出処理部は、形状検出情報として、手の形状を三次元で捉えた三次元検出情報を用いている。
ユーザの手について、三次元検出情報、すなわち手を立体的に捉えた検出情報を用いることで、手の動きの検出精度向上が図られる。
従って、操作に要するユーザの手の動きとしてより小さな動きを許容したり、より容易な手の動きを許容したりする等が可能となり、操作性の向上を図ることができる。
【0096】
さらに、実施形態の検出処理装置においては、検出処理部は、手における指先同士が接触した指の組み合わせを検出している。
これにより、例えば親指と人差し指、及び親指と中指等、複数の指の組み合わせについて指先同士の接触有無を検出可能となる。
従って、手の動きにより可能な操作の種類を増やすことができる。
【0097】
さらにまた、実施形態の検出処理装置においては、検出処理部は、手における少なくとも親指と人差し指の指先同士の接触有無を検出している。
親指と他の指の指先同士を接触させるのは、例えば中指と小指の指先同士を接触させる等、親指を除いた指先同士を接触させる場合よりも無理のない動きとなる。
従って、操作性の向上を図ることができる。
【0098】
また、実施形態の検出処理装置においては、検出処理部は、手における指先同士の接触回数を検出している。
これにより、同じ組み合わせの指同士の接触であっても、その接触回数の違いにより別操作として扱うことが可能となる。
従って、手の動きにより可能な操作の種類を増やすことができる。
【0099】
さらに、実施形態の検出処理装置においては、検出処理部は、手における指先同士の単位時間あたりの接触回数を検出している。
指先同士の接触の時間的間隔があまりに長い場合、ユーザは接触回数による操作を行っていない可能性が高いと言える。
上記のように単位時間あたりの接触回数を検出することで、ユーザが接触回数による操作を行っている場合を適切に検出可能となり、操作の認識精度向上を図ることができる。
【0100】
さらにまた、実施形態の検出処理装置においては、検出処理部は、手における掌の動きを検出している。
掌の動きを検出することで、手全体の動きを検出可能となる。
従って、非接触の操作として、手全体の移動量や移動方向等といった手全体の動きを用いた操作を許容することができる。
【0101】
また、実施形態の検出処理装置においては、検出処理部は、形状検出情報として、手の形状を三次元で捉えた三次元検出情報を入力し、入力した三次元検出情報に基づき手の簡易モデルを生成し、簡易モデルに基づいて手の動きの検出を行っている。
手の簡易モデルとは、手を構成する各部位のうち、例えば指先部や各種関節部等といった所定の複数部位と、部位間を繋ぐ線とによって手の構成を簡易的に表したモデルである。
このような手の簡易モデルにより、各指や掌等といった手の構成部位の同定を行うことができ、手の多様な動きを検出可能となるようにすることができる。
【0102】
さらに、実施形態の検出処理装置においては、検出処理部は、形状検出情報として、手の形状を三次元で捉えた三次元検出情報を入力し、入力した三次元検出情報に基づいて二次元のシルエット画像を生成し、シルエット画像に基づいて指先同士の接触有無を検出している。
シルエット画像とは、三次元空間内における対象物のシルエットを二次元平面上に投影して得られる画像を意味する。
上記構成によれば、ユーザの手のシルエット形状に基づいて指先同士の接触有無を適切に検出することができる。
【0103】
さらにまた、実施形態の検出処理装置においては、検出処理部は、シルエット画像において周囲が手の領域で囲まれている中空部分(同Po)が存在するか否かの判定を行った結果に基づき、指先同士の接触有無を検出している。
シルエット画像における中空部分は、指先同士が接触して形成されている可能性が高いと言える。
従って、上記構成によれば、指先同士の接触有無を適切に検出することができる。
【0104】
また、実施形態の検出処理装置においては、検出処理部は、中空部分の大きさに基づいて指先同士の接触有無を検出している。
中空部分が存在していても、そのサイズが小さい場合には、該中空部分は指先同士の接触で形成されたものでない可能性がある。
従って、上記のように中空部分の大きさを考慮した判定とするこで、指先同士の接触有無についての検出精度向上を図ることができる。
【0105】
さらに、実施形態の検出処理装置においては、検出処理部は、三次元検出情報に基づいて二次元のシルエット画像を生成し、シルエット画像に基づいて指先同士の接触有無を検出し、簡易モデルに基づいて、指先同士の接触が有ると検出された指を同定する処理を行っている。
これにより、例えばシルエット画像に基づく指先同士の接触有無の検出を行い、指先同士の接触があると検出された場合にのみ、手の簡易モデルに基づく各指の同定や接触指の同定を行うということが可能となる。
従って、指先同士の接触がない場合に接触指の同定のための処理が無闇に行われてしまうことの防止を図ることができ、処理負担の軽減を図ることができる。
【0106】
実施形態の検出処理方法は、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、形状検出情報に基づいて、少なくともユーザの指先同士の接触有無を含む手の動きを検出する検出処理方法である。
このような検出処理方法によっても、上記した実施形態の検出処理装置と同様の作用及び効果を得ることができる。
【0107】
また、実施形態の情報処理システムは、ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、形状検出情報に基づいて、少なくともユーザの指先同士の接触有無を含む手の動きを検出する検出処理部(同11a)と、検出処理部が検出した手の動きの情報から認識されるユーザの操作入力情報に応じた処理を実行する対応処理実行部(同21a)と、備えるものである。
これにより、非接触の操作として、ユーザにとって無理なく且つ少ない手の動きで実現可能な操作を受け付けて、該操作に応じた処理を実行する情報処理システムが実現される。
従って、非接触での操作について、操作性の向上を図ることができる。
【0108】
なお、本明細書に記載された効果はあくまでも例示であって限定されるものではなく、また他の効果があってもよい。
【0109】
<8.本技術>
なお本技術は以下のような構成も採ることができる。
(1)
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部を備えた
検出処理装置。
(2)
前記検出処理部は、前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を用いる
前記(1)に記載の検出処理装置。
(3)
前記検出処理部は、前記手における指先同士が接触した指の組み合わせを検出する
前記(1)又は(2)に記載の検出処理装置。
(4)
前記検出処理部は、前記手における少なくとも親指と人差し指の指先同士の接触有無を検出する
前記(3)に記載の検出処理装置。
(5)
前記検出処理部は、前記手における指先同士の接触回数を検出する
前記(1)から(4)の何れかに記載の検出処理装置。
(6)
前記検出処理部は、前記手における指先同士の単位時間あたりの接触回数を検出する
前記(5)に記載の検出処理装置。
(7)
前記検出処理部は、前記手における掌の動きを検出する
前記(1)から(6)の何れかに記載の検出処理装置。
(8)
前記検出処理部は、
前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を入力し、
入力した前記三次元検出情報に基づき前記手の簡易モデルを生成し、
前記簡易モデルに基づいて前記手の動きの検出を行う
前記(1)から(7)の何れかに記載の検出処理装置。
(9)
前記検出処理部は、
前記形状検出情報として、前記手の形状を三次元で捉えた三次元検出情報を入力し、
入力した前記三次元検出情報に基づいて二次元のシルエット画像を生成し、
前記シルエット画像に基づいて前記指先同士の接触有無を検出する
前記(1)から(8)の何れかに記載の検出処理装置。
(10)
前記検出処理部は、前記シルエット画像において周囲が前記手の領域で囲まれている中空部分が存在するか否かの判定を行った結果に基づき、前記指先同士の接触有無を検出する
前記(9)に記載の検出処理装置。
(11)
前記検出処理部は、前記中空部分の大きさに基づいて前記指先同士の接触有無を検出する
前記(10)に記載の検出処理装置。
(12)
前記検出処理部は、
前記三次元検出情報に基づいて二次元のシルエット画像を生成し、
前記シルエット画像に基づいて前記指先同士の接触有無を検出し、
前記簡易モデルに基づいて、前記指先同士の接触が有ると検出された指を同定する処理を行う
前記(8)に記載の検出処理装置。
(13)
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する
検出処理方法。
(14)
ユーザの手の形状を少なくとも二次元以上の次元で捉えた情報である形状検出情報を入力し、前記形状検出情報に基づいて、少なくとも前記ユーザの指先同士の接触有無を含む前記手の動きを検出する検出処理部と、
前記検出処理部が検出した前記手の動きの情報から認識される前記ユーザの操作入力情報に応じた処理を実行する対応処理実行部と、を備える
情報処理システム。
【符号の説明】
【0110】
1 検出処理装置
2 情報処理装置
3 センサ装置
4 表示装置
4a 表示画面
5 手
10 情報処理システム
11 演算部
11a 検出処理部
12 センサI/F
13 通信部
21 CPU
21a 対応処理実行部
Po 中空部分
41 水平方向ゲージ
41l,41r スクロール開始点
41c 中心点
41m 現在点マーカ
42 垂直方向ゲージ
42u,42d スクロール開始点
42c 中心点
42m 現在点マーカ
43 スクロール方向表示部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15