JP2021012684A - ライブ動画ストリームからの指の押下の検出 - Google Patents

ライブ動画ストリームからの指の押下の検出 Download PDF

Info

Publication number
JP2021012684A
JP2021012684A JP2020099009A JP2020099009A JP2021012684A JP 2021012684 A JP2021012684 A JP 2021012684A JP 2020099009 A JP2020099009 A JP 2020099009A JP 2020099009 A JP2020099009 A JP 2020099009A JP 2021012684 A JP2021012684 A JP 2021012684A
Authority
JP
Japan
Prior art keywords
finger
candidate
hand
image
candidates
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020099009A
Other languages
English (en)
Other versions
JP2021012684A5 (ja
JP7378354B2 (ja
Inventor
ジエ クルビダ,
Kulbida Jie
ジエ クルビダ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Business Solutions USA Inc
Original Assignee
Konica Minolta Business Solutions USA Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Business Solutions USA Inc filed Critical Konica Minolta Business Solutions USA Inc
Publication of JP2021012684A publication Critical patent/JP2021012684A/ja
Publication of JP2021012684A5 publication Critical patent/JP2021012684A5/ja
Application granted granted Critical
Publication of JP7378354B2 publication Critical patent/JP7378354B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0425Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】拡張現実(AR)作業領域における指の押下を検出する方法を提供する。【解決手段】方法は、AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得する工程と、少なくともスキン調カラーフィルターに基づいて、コンピュータープロセッサーにより、AR作業領域の画像から手候補を抽出する工程と、予め決められた信頼尺度に基づいて、コンピュータープロセッサーにより、手候補の輪郭から指候補を抽出する工程と、GUIのアイコンとの関係における指候補の位置に基づいて、コンピュータープロセッサーにより、ユーザーの手によって実行される指の押下を検出する工程と、を含む。【選択図】図2A

Description

拡張現実(AR)を使用すると、ユーザーは、現実世界の環境における物体に重ねられた、又は物体の周囲に重ねられた、コンピューター生成のAR出力とふれあうことができる。場合によっては、ユーザーがスマートフォンを保持したりAR眼鏡を着用したりする必要がないように、コンピューター生成のAR出力が現実世界の環境に投影されてもよい。コンピューターインターフェイスとの最小限の相互作用で、又は直接の相互作用なしで、ARシステムがユーザーの意図を捉える場合、ユーザーの体験が向上することが多い。
概して言えば、本発明の一態様は、拡張現実(AR)作業領域における指の押下を検出する方法に関する。当該方法は、AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得する工程と、少なくともスキン調カラーフィルターに基づいて、コンピュータープロセッサーにより、前記AR作業領域の画像から手候補を抽出する工程と、予め決められた信頼尺度に基づいて、前記コンピュータープロセッサーにより、前記手候補の輪郭から指候補を抽出する工程と、前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記コンピュータープロセッサーにより、前記ユーザーの手によって実行される前記指の押下を検出する工程と、を含む。
概して言えば、本発明の一態様は、拡張現実(AR)作業領域における指の押下を検出するためのコンピューター読取可能プログラムコードを記憶した非一時的コンピューター読取可能媒体(CRM)に関する。前記コンピューター読取可能プログラムコードは、コンピュータープロセッサーによって実行されると、AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得する工程と、少なくともスキン調カラーフィルターに基づいて、前記AR作業領域の画像から手候補を抽出する工程と、予め決められた信頼尺度に基づいて、前記手候補の輪郭から指候補を抽出する工程と、前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記ユーザーの手によって実行される前記指の押下を検出する工程と、を実行する機能を含む。
概して言えば、本発明の一態様は、拡張現実(AR)作業領域における指の押下を検出するためのシステムに関する。当該システムは、メモリーと、当該メモリーに接続されたコンピュータープロセッサーとを含んでおり、前記コンピュータープロセッサーが、AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得し、少なくともスキン調カラーフィルターに基づいて、前記AR作業領域の画像から手候補を抽出し、予め決められた信頼尺度に基づいて、前記手候補の輪郭から指候補を抽出し、前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記ユーザーの手によって実行される前記指の押下を検出する。
本発明の他の態様は、以下の説明及び特許請求の範囲から明らかであろう。
本発明の1つ以上の実施形態によるシステムを示す図である。 図2Aから図2Eは、本発明の1つ以上の実施形態による方法のフローチャートを示す図である。 図3Aから図3Dは、本発明の1つ以上の実施形態による実施例を示す図である。 本発明の1つ以上の実施形態によるコンピューターシステムを示す図である。
本発明の具体的な実施形態について、添付の図を参照しつつ詳細に説明する。様々な図の中の同様の要素は、統一のため、同様の参照番号で示す。
本発明の実施形態の以下の詳細な説明では、本発明のより完全な理解のために、具体的な細部が多数記載されている。しかしながら、本発明がこれらの具体的な細部なしに実施可能であることは、当業者には明らかであろう。他の例では、説明がいたずらに複雑になることを避けるため、周知の特徴については詳細に説明されてはいない。
概して言えば、本発明の実施形態は、拡張現実システムのカメラが撮影したリアルタイム画像を使用して、アプリケーションの投影ユーザーインターフェイス上のユーザーの指の押下を検出する方法、非一時的コンピューター読取可能媒体(CRM)、及びシステムを提供する。カメラが撮影した一連の画像を分析することによって、ユーザーの指(又は一般的にはジェスチャー)を検出することにより、投影ユーザーインターフェイスとユーザーとの相互作用(例えば、指の押下)を推測する。アプリケーションには、マウスやタッチセンサーなどの専用機器に依存せず、推測結果に基づいて動作を実行するソフトウェアアプリケーション及び/又は機器を含んでもよい。この技術は、1つ又は複数の人間の指の光学的検出と、光学的に検出された指の位置及び速度の分析を含む。投影ユーザーインターフェイス内で指の押下が光学的に検出されると、アプリケーションが通知を受け取る。本発明の1つ以上の実施形態では、投影ユーザーインターフェイスは、カメラと一体化された光学プロジェクターによって投影される。光プロジェクター及びカメラを含む統合装置を、相互捕捉投影(PIC)装置と呼ぶ。
図1は、本発明の1つ以上の実施形態によるシステムを示す。図1に示すように、システム(100)は複数の構成要素を有し、例えば、バッファー(102)、表示エンジン(108)、アプリケーションエンジン(110)、手検出エンジン(112)、指検出エンジン(114)、及び指押下検出エンジン(116)を含んでもよい。これらの各構成要素(102、108、110、112、114、116)は、同一のコンピューター装置(例えば、パーソナルコンピューター、ラップトップ、タブレットPC、スマートフォン、複合機、キオスク、サーバー、又は相互捕捉投影(PIC)装置)、あるいは、有線及び/又は無線の区間を有する任意のサイズのネットワークによって接続された異なるコンピューター装置上に配置することができる。これらの各構成要素について以下に説明する。
バッファー(102)は、ハードウェア(すなわち回路)、ソフトウェア、又はこれらの任意の組み合わせにより実現することができる。バッファー(102)はAR作業領域画像(104)、及びAR作業領域画像(104)の抽出された特徴(106)を記憶するように構成される。複数のAR作業領域画像(104)、及び/又は抽出された特徴(106)の複数の組が、バッファー(102)に記憶されてもよい。1つ以上の実施形態において、AR作業領域画像(104)はAR作業領域(101)の画像である。AR作業領域(101)は、あらゆる種類の面(例えば、机、壁、ホワイトボード、又は床)であってよい。さらにAR作業領域(101)は、マット、複数の作業面、凹凸面、又は空間的に分離された面を含むことができるが、特にこれらの構成には限定されない。AR作業領域画像(104)は、あらゆる画像形式(例えば、JPEG画像、GIF画像、ビットマップ画像、TIFF画像、又はPDF文書)でバッファー(102)に保存することができる。
AR作業領域画像(104)は単一画像でも複数画像でもよい。例えば、複数のAR作業領域画像(104)は、ライブ動画ストリーム(例えば、撮像素子によって同時に記録され送信される一連の画像フレーム)中に時間の経過とともに記録されるAR作業領域(101)に対応してもよい。言い換えれば、AR作業領域画像(104)のそれぞれが、ライブ動画ストリームのフレームに対応していてもよい。本明細書全体を通して、「フレーム」の語は、ライブ動画ストリーム内のAR作業領域画像を意味する。
AR作業領域画像(104)は、ユーザーが使用するソフトウェアアプリケーション又は機器の投影グラフィカルユーザーインターフェイス(GUI)の、撮影された画像を含む。例えばGUIは、AR作業領域(101)上に光学的に投影され、AR作業領域画像(104)内に光学的に捕捉されてもよい。ソフトウェアアプリケーションとふれあい、機器を制御するために、ユーザーはAR作業領域(101)に投影されたGUI上に手を置いてもよい。具体的には、ユーザーの指(118)を、GUIの一部としてAR作業領域(101)に投影されたアイコンの上に置いてもよい。AR作業領域画像(104)は、指(118)や指(118)の一部といった、ユーザーの手の一部の画像を含んでもよい。AR作業領域(101)上に置かれたユーザーの手のような、前景物なしで撮影された1つ以上のAR作業領域画像(104)は、背景画像である。1つ以上の実施形態では、背景画像は、前景物なしで撮影された複数のAR作業領域画像(104)の平均である。投影されたGUI上に指(118)を置いたAR作業領域画像(104)の一例が、図3Aに描かれている。
具体的には図3Aが、本発明の1つ以上の実施形態によるAR作業領域画像の例を示す。図3Aに示されるように、相互捕捉投影(PIC)装置(301)は撮像部(例えば、2次元及び/又は3次元撮像素子)及び投影部(例えば、光学プロジェクター)を含む。投影部は、撮像部がAR作業領域画像(104)を捉えるように、GUI (302)をAR作業領域(101)に投影する。具体的にはAR作業領域画像(104)は、アイコン(303)上に指(118)を置いた状態での、GUI(302)のアイコン(303)の画像を含む。
図1の説明に戻ると、抽出された特徴(106)は、AR作業領域画像(104)の抽出された内容、及び/又は、抽出された内容から導かれる特徴を含んでもよい。例えば、抽出された特徴(106)は、フィルターされた画像、変換された画像、フィルターされた又は変換された画像の色及び/又は輝度パラメータ、フィルターされた又は変換された画像から検出された幾何形状及び/又は輪郭を含み得るが、特にこれらの項目に限定されない。一般に、抽出された特徴(106)は、投影されたGUI上に置かれる指(118)に関する情報を含む。
投影されたGUI上での指の押下を検出するにあたり、抽出された特徴(106)が、手検出エンジン(112)、指検出エンジン(114)、及び指押下検出エンジン(116)によって生成及び/又は使用される。抽出された特徴(106)の例は、図3Bから図3Dを参照しつつ以下に詳細に説明される手候補、指候補、及び指先の軌道を含む。
上述したように、システム(100)は表示エンジン(108)を含む。表示エンジン(108)はハードウェア(すなわち回路)、ソフトウェア、又はこれらの任意の組み合わせにより実現することができる。表示エンジン(108)は1つ以上の光及び/又は効果を用いて、AR出力画像をAR作業領域(101)の面に投影するように構成される。1つ以上の実施形態では、AR出力画像は上述の投影されたGUIである。
表示エンジン(108)は、デジタル画像をAR作業領域(101)上に投影することができる2次元(2D)及び/又は3次元(3D)光学プロジェクターを含んでもよい。表示エンジン(108)は可視波長領域(例えばカラー又はモノクロ)で動作してもよい。
上述したように、システム(100)はアプリケーションエンジン(110)を含む。アプリケーションエンジン(110)は、ハードウェア(すなわち回路)、ソフトウェア、又はそれらの任意の組み合わせにより実現することができる。アプリケーション・エンジン(110)は、ユーザーがアプリケーションソフトウェア又は機器にユーザーのためのタスクを実行させるために使用する、アプリケーションソフトウェア又は機器の一部であってもよい。
GUIをレンダリングするアプリケーションエンジン(110)に応答して、表示エンジン(108)がAR作業領域(101)の領域内にGUIを投影してもよい。AR作業領域(101)の領域のサイズ及び形状は、表示エンジン(108)及び/又はアプリケーションエンジン(110)によって決定され得る。
表示エンジン(108)は、ユーザーとアプリケーションエンジンとのやり取りを容易にする仮想指標(例えば状態指標)又は仮想制御(例えばボタン、スクロールバー、スイッチ及びノブ)といった、GUI内の1つ以上のアイコンを投影してもよい。言い換えれば、仮想指標又は仮想制御は、ユーザーのための前述のタスクを完了するため、ユーザーがアプリケーションソフトウェア又は機器の特徴を誘導及び操作することを可能にしてもよい。
上述のように、システム(100)は手検出エンジン(112)を含む。手検出エンジン(112)はハードウェア(すなわち回路)、ソフトウェア、又はこれらの任意の組み合わせにより実現することができる。手検出エンジン(112)は、AR作業領域(101)を撮像することによりAR作業領域画像(104)を生成するように構成される。例えば、手検出エンジン(112)は、AR作業領域(101)のデジタル画像を捉えるために、撮像センサーを有する2次元及び/又は3次元撮像素子(例えば、カメラ又は1つ以上のカメラの組み合わせ)を含んでもよい。さらに、手検出エンジン(112)は、AR作業領域画像(104)を分析することにより、ユーザーの手を表す手候補を生成するように構成される。1つ以上の実施形態では、手検出エンジン(112)は、図2Aから図2Cを参照しつつ以下に説明する方法を使用して手候補を生成する。手検出エンジン(112)によって生成される手候補の例が、図3Bから図3Cに描かれている。
具体的には図3Bが、AR作業領域画像(104)うちの1つにおける画像部分A(310)内の手候補A(311)の例を示す。手候補A(311)は凸包(312)で囲まれている。c1及びc2としてラベル付けされた2つの凸欠陥が、他のラベルなしの些細な凸欠陥(後述)とともに、手候補A(311)(より具体的には手候補A(311)の外郭)と凸包(312)との間に存在する。具体的には凸欠陥c1は、頂点で接合されて凸包(312)から外れた凹角を形成する、隣り合う2辺を含む。頂点は手候補A(311)の輪郭上にあり、2辺は頂点を囲む輪郭の線形近似である。各辺は、一端が頂点で終端し、他端が凸包と輪郭との交点で終端する。同様に、凸欠陥c2は、別の頂点で接合されて凸包(312)から外れた別の凹角を形成する、隣り合う2辺を含む。各凸欠陥の反時計回りでの前辺を、凸欠陥の辺e1と呼ぶ。反対に、各凸欠陥の反時計回りでの後辺を、凸欠陥の辺e2と呼ぶ。従って、凸欠陥c1の辺e2と凸欠陥c2の辺e1とは互いに隣接している。
図3Cは、AR作業領域画像(104)のうちの他の1つにおける画像部分B(314)内の手候補B(313)の一例を示す。例えば、画像部分A(311)及び画像部分B(314)は、2つの異なる時点で撮影された2つの異なるAR作業領域画像(104)内にあってもよい。具体的には、手候補A(311)及び手候補B(314)は、2つの異なる時点におけるユーザーの手の異なる姿勢に対応する。
図3Cに示すように、c3及びc4とラベル付けされた2つの凸欠陥が、他のラベルなしの些細な凸欠陥とともに、手候補B(314)と対応する凸包との間に存在する。具体的には、凸欠陥c3及びc4の各々は、頂点で接合されて凸包から外れた凹角を形成する隣り合う2辺を含む。凸欠陥c4の2辺の長さはd1及びd2として表される。上記凸欠陥c1、c2、c3、c4の各々において、頂点と、頂点から離れた2つの端点e1、e2とが、全体として三角形をなす。頂点から、対向する辺までの三角形の高さを、凸欠陥の深さと呼ぶ。
図1の説明に戻ると、システム(100)は指検出エンジン(114)を含む。指検出エンジン(114)はハードウェア(すなわち回路)、ソフトウェア、又はそれらの任意の組み合わせにより実現することができる。さらに指検出エンジン(114)は、AR作業領域画像(104)内の手候補を分析することにより、ユーザーの指(118)を表す指候補を生成するように構成される。1つ以上の実施形態では、指検出エンジン(114)は、図2A及び図2Dを参照しつつ以下に説明する方法を使用して指候補を生成する。指検出エンジン(114)によって生成された指候補の一例が、図3B及び図3Cに示される。
具体的には、図3B及び図3Cでは各c1、c2及びc3について、e1及びe2の各々の長さが、予め設定された最短の長さを超える。また、各c1、c2及びc3の深さも、予め設定された最少の深さを超える。予め設定された最短の長さ、及び予め設定された最少の深さの両方を満たすことから、各c1、c2及びc3は有効な凸欠陥とみなされる。対照的に、c4の長さd2は予め設定された最短の長さより短く、c4の深さは予め設定された最少の深さより浅い。予め設定された最短の長さの基準、及び予め設定された最少の深さのどちらも満たさないことから、c4は有効な凸欠陥とはみなされない。言い換えれば、c4は些細な凸欠陥である。
図3Bは隣り合う一対の有効な凸欠陥c1及びc2を示しており、欠陥c1のe2と欠陥c2のe1とが隣り合う。予め設定された最大指幅閾値内にある、隣り合う凸欠陥c1及びc2の隣り合う辺の間の距離に基づいて、隣り合う凸欠陥c1及びc2の隣り合う辺が、指候補(311a)を規定する。1つ以上の実施形態では指候補(311a)は、図2Dを参照しつつ以下に説明する方法を使用して決定される。
図3Bとは対照的に、図3Cは、単一の有効な凸欠陥c3を有する手候補B(313)と、有効な凸欠陥のない手候補C(321)とを示す。両方の手候補において、各手候補の最小外接矩形が「minRect」で表される。従って、「tip」として示される指先は、手候補の輪郭とminRectとの交点として検出される。1つ以上の実施形態では、「tip」として示される指先は、図2Dを参照しつつ以下に説明する方法を使用して決定される。
図1の説明に戻ると、1つ以上の実施形態ではシステム(100)は指押下検出エンジン(116)を含む。指押下検出エンジン(116)は、ハードウェア(すなわち回路)、ソフトウェア、又はこれらの任意の組み合わせにより実現することができる。また、指押下検出エンジン(116)は、AR作業領域画像(104)内の指候補を分析することにより、ユーザーの指の押下を検出するように構成される。一つ以上の実施形態では指押下検出エンジン(116)は、図2A及び図2Eを参照しつつ以下に説明する方法を用いて、指の押下を検出する。指押下検出エンジン(116)によって検出された指の押下の例を図3Dに示す。
具体的には図3Dは、指先の軌道(333)を形成する、一連の検出された指先(例えば、検出された指先(332))を重ね合わせた画像部分D(330)を示す。具体的には、一連の白い点が連続した指先の軌道に対応するように、検出された各指先が図3Dの1つの白い点に対応する。指先の軌道(333)における、検出された2つの隣り合う指先の間の距離は、ユーザーの指の移動速度に対応する。場所(334)内では、検出された隣り合う指先の間の各距離は、予め設定された最小値を下回る。言い換えれば、ユーザーの指の動きは場所(334)内で遅くなるか、あるいは停止する。従って、場所(334)内で撮影されたユーザーの指の動きが、指の押下として決定される。1つ以上の実施形態において、ユーザーの指の移動速度に基づいて指の押下を決定するにあたり、図2Eを参照しつつ以下に説明する方法が使用される。
上記システム(100)は6つの構成要素(102、108、110、112、114、116)を有するものとして示されているが、本発明の他の実施形態では、システム(100)は、より多くの又はより少ない構成要素を有してもよい。また、上記各構成要素の機能は複数の構成要素間で共有されてもよい。さらに、各構成要素(102、108、110、112、114、116)は、反復演算を実行するために連続で又は並行して複数回利用されてもよい。
図2Aから図2Eは、本発明の1つ以上の実施形態によるAR作業領域内の指の押下を検出する方法のフローチャートを示す。図2Aから図2Eの1つ以上のステップは、図1を参照しつつ先に説明したシステム(100)の構成要素によって実行されてもよい。本発明の1つ以上の実施形態において、図2Aから図2Eに示される1つ以上のステップは省略及び/又は繰り返されてもよいし、あるいは図2Aから図2Eに示される順序とは異なる順序で実行されてもよい。つまり、本発明の範囲は、図2Aから図2Eに示される具体的なステップの順序に限定されるとみなすべきではない。
図2Aを参照すると、まずステップ201において、撮像センサーを使用してAR作業領域の背景画像を得る。1つ以上の実施形態では、背景画像はグラフィックユーザーインターフェイス(GUI)のアイコンを含む。GUIは例えば光学プロジェクターを使用してAR作業領域に投影することができる。ステップ201の細部の例を、図2Bを参照しつつ以下に説明する。
ステップ202では、ユーザーの手がAR作業領域上に置かれた状態でのAR作業領域の画像が、撮像センサーを使用して取得される。具体的には画像がGUIに加え、ユーザーの手の一部分の投影をも含む。1つ以上の実施形態では、画像は、AR作業領域上に置かれたユーザーの指を記録するライブ動画ストリームといった、一連の画像のうちの一部である。画像は例えば、再符号化と同時に撮像センサーから送信されるライブ動画ストリームの1フレームである。具体的には、以下に説明するようにステップ203からステップ206を繰り返すことによって、一連の画像又はライブ動画ストリームが撮影され、分析される。
ステップ203では少なくともスキン調カラーフィルターに基づいて、コンピュータープロセッサーにより、AR作業領域の画像から手候補が抽出される。1つ以上の実施形態では、手候補を抽出することは、前景マスクを生成するために画像と背景画像とを比較することと、予め決められたスキン調フィルターを用い、背景画像のホワイトバランスパラメーターに基づいて、つながった色成分を画像から抽出することとを含む。具体的には手候補は、予め決められた寸法基準に基づいて、つながった色成分から選択される。ステップ203の細部の例を、図2Cを参照しつつ以下に説明する。
ステップ204では、予め決められた信頼尺度に基づいて、コンピュータープロセッサーにより、手候補の輪郭から指候補が抽出される。1つ以上の実施形態では、手候補の輪郭から凸欠陥を抽出することに基づいて、指候補が抽出される。1つ以上の実施形態では、予め決められた信頼尺度は、隣り合う凸欠陥と、予め決められた指幅の閾値との間の距離を比較することに基づいている。例えば、指候補は、対応する距離が予め決められた指幅閾値内にある一対の隣り合う凸欠陥に対応する。1つ以上の実施形態では、予め決められた信頼尺度はさらに指の資質尺度、指先の資質尺度、及び隣り合う指候補の存在に基づいている。
手候補の輪郭から複数の指候補を抽出してもよく、各指候補の個々の信頼スコアを予め決められた信頼尺度に基づいて計算する。従って、個々の信頼スコアに基づいて指候補から指の有力候補が選択される。例えば指の有力候補は、最も高い信頼スコアを有する指候補として選択されてもよい。ステップ204の細部の例を、図2Dを参照しつつ以下に説明する。
ステップ205では、GUIのアイコンに対する指候補の位置に基づいて、コンピュータープロセッサーにより、ユーザーの手によって実行される指の押下が検出される。例えば、指候補がGUI上にあって特定のアイコン内で停止していると検出された場合、特定のアイコン上での指の押下の通知がアプリケーションに送信される。それに従い、アプリケーションは、特定のアイコンに対応する予め決められたタスクを実行する。1つ以上の実施形態では、GUI上に置かれた指の速度は、AR作業領域の一連の記録された(ライブ動画ストリームからの)画像から抽出された指候補の一連の位置から計算される。停止は、特定領域内で遅くなっている指の速度に基づいて決定される。ステップ205の細部の例を、図2Eを参照しつつ以下に説明する。
ステップ206では、指押下検出を継続すべきか否かの判定がなされる。判定が肯定的、すなわち指押下検出を継続する場合には、ステップ202に戻り、一連の画像のうちの次の画像が得られる。判定が否定的、すなわち指押下検出を継続しない場合には、本方法は終了する。
図2Bは、上記図2Aに示されたステップ201の細部の例を示す。1つ以上の実施形態において、AR作業領域がいずれの前景物にも干渉されないとき、システム(100)の初期化工程中に、N個のAR作業領域画像フレームを平均化することによって背景画像が得られる。Nは典型的には5に設定される。ホワイトバランスパラメーターが背景画像から計算されることにより、基礎となるRGB成分が等しくなる。
図2Bを参照すると、最初にステップ211において、例えばAR作業領域を記録しているライブ動画ストリーム内のフレームとして、AR作業領域画像が得られる。
ステップ212では、背景画像がすでに利用可能であるかどうかが確認される。背景画像がすでに利用可能である場合、方法は終了する。背景画像がまだ利用可能でない場合、取得したフレームが格納される(ステップ213)。
ステップ214では、背景画像を計算するために十分なフレームが記憶されているかどうかが確認される。十分なフレームが利用可能でない場合はステップ211に戻る。十分なフレームが利用可能であれば、例えば記憶されたフレームの画素値を平均化することにより、背景画像が計算される(ステップ215)。
ステップ216では、ホワイトバランスパラメーターが背景画像から計算される。例えば、図1で先に説明したように、算出されたホワイトバランスパラメーターは、抽出された特徴(106)の一部としてバッファー(102)に記憶されてもよい。
図2Cは、上述した図2Aにおけるステップ203の細部の例を示す。1つ以上の実施形態において、手候補を他の物体から区別するための、より計算量の多い操作を適用する前に、手候補を検出して探索領域を絞り込むために、スキン調フィルターが使用される。言い換えれば、スキン調フィルターを使うことにより、リアルタイム性能を達成するために必要な計算資源が低減される。スキン調検出は色成分のみに基づいており、輝度、すなわちスキンの濃度レベルの変動に対して耐性がある。
図2Cを参照すると、ユーザーからの指の押下が予想される実行時間中に、ライブ動画ストリーム内の各入力フレームは、以下のように処理される。最初に、ステップ221において、上記初期化工程から導き出された背景フレームに対してフレームを比較することによって、前景マスクが計算される。前景画素は、同じ位置にある背景画素とは大きく異なる画素値を持つ画素として規定される。1つ以上の実施形態では前景マスク内の値は、前景画素に対して255、他のすべての画素に対して0に設定される。
ステップ222では、入力フレームと前景マスクとの間でビット単位のAND演算を実行することによって、前景マスクが適用される。さらに、画像をぼかすためにローパスフィルターが適用される。また、画像のホワイトバランスは、上記図2Bに示す初期化工程中に取得したホワイトバランスパラメーターを用いて行われる(ステップ223)。ホワイトバランスの後、画像がRGB空間からYCrCb空間に変換されることにより、色成分から輝度が分離される(ステップ224)。
ステップ226では、スキン調カラーフィルターとスキン調マスクが、YCcCb空間内のホワイトバランス画像に適用される。YCcCb空間ではスキン調範囲内の画素値が255に設定され、残りの画素値が0に設定される。ノイズのような斑点を除去するために形態的収縮が実行され、穴を埋めるために形態的膨張が実行される。
ステップ227において、塊を形成するため、ステップ226からの出力画像内で連結成分が検出される。予め設定された範囲内の寸法を有し、かつ予め設定された指押下検出領域と重複する塊が保持される(ステップ227)。従って、保持された塊の各々は、手候補とみなされる。
図2Dは、図2Aにおいて上述したステップ204の細部の例を示す。具体的には、上記で検出された各手候補は、指及び指先の有力候補を見つけるために分析される。1つ以上の実施形態では、指候補を識別するため、手候補の輪郭をなぞることにより、予め規定された一組の基準内の幅及び長さ、例えば、0.25から1.25インチの幅、及び1インチを超える長さを有する、突出した特徴を探索する。指候補は、突出した特徴の形状又は指の姿勢を何ら仮定することなく識別される。例えば指は、まっすぐでも曲がっていてもよく、また、伸ばしていても、拳の中に収まっていてもよい。さらに、目標の位置に1本の指さえあれば、指の押下を検出することができる。
図2Dを参照すると、指候補を検出するにあたり、手候補の外郭が抽出されることにより(ステップ231)、輪郭の凸包が計算される(ステップ232)。従って、輪郭の凸欠陥が検出される(ステップ233)。ステップ233において凸欠陥の数が1より多い場合、ステップ234から239が、時計回り又は反時計回りのいずれかの順序で、手候補の輪郭に沿って、各凸欠陥について繰り返される。
ステップ234では、凸欠陥を分析することにより指先を検出する。まず、上述したように、2辺c1及びc2の長さが計算され、それぞれd1及びd2で表される。d1又はd2のいずれかが予め設定された最小指長閾値より大きい場合、d1又はd2が指の辺であるとともに凸欠陥が有効な凸欠陥である可能性が高い。d1及びd2の両方が予め設定された最小指長閾値より小さい場合、又は欠陥深さが予め設定された最小閾値より小さい場合、凸欠陥は些細なものであるとみなされ、無視される。
有効な各凸欠陥に対して、凸欠陥のe2を、後続の凸欠陥のe1と比較する。2辺の間の距離が最大指幅の閾値内にある場合、2辺は指候補をなす。上記図3Bに示す指候補(311a)は、こうして検出された指候補の一例である。
隣り合う指が拳内に折り畳まれている図3Cに示された手候補B(313)のように、辺が別の適当な辺と一致しない場合、又は図3Cに示される手候補C(321)のように有効な凸欠陥が存在しない場合、一本の指及び対応する指先を探索しようとする際に以下の工程が行われる。当該工程は、図3Cに示す例に基づいて説明される。
手候補の最小外接矩形minRectを調べ、minRectの寸法が設定基準内にある場合は、次のステップに進む。それ以外の場合は、この候補のための処理を終了する。この例では、手候補B(313)及び手候補C(321)は、設定基準に合致するそれぞれのminRectを有する。従って、上記工程は、各minRectの境界上で指先候補を探索する。
minRectが画像の境界上にある場合、上記工程は、minRectの短い寸法を有する輪郭の交点を見つける。それは画像の境界から最も遠い位置にある。複数の交点が見つかった場合は、中央の交点が指先候補として指定される。指先候補は、手候補B(313)及び手候補C(321)のそれぞれに存在し、図3Cでは「tip」と表記されている。他の例では、minRectが画像の境界上にない場合、上記工程は凸包とminRectの短辺との間のすべての交点を集める。交点の数が最小となる短辺が、指先の存在する可能性が最も高い辺として選択される。その辺上で複数の交点が見つかった場合、中央の交点が指先候補として指定される。
指先が位置する手候補B(313)及び手候補C(321)のそれぞれにおいて、上記工程は、指先から一定の距離(例えば、0.5インチや1インチ)だけ離れた、指の各辺に沿った2つの異なる位置における、指の幅を推定する。双方の場所で測定された幅が、予め設定された指幅範囲内にあり、指候補としてのより高い資質を表す場合、指候補は受け入れられる。さらに、指先から離れた位置で測定された幅が、指先に近い位置で測定された幅よりも大きく、指候補としてのさらに高い資質を表す場合、ステップ236で後述するように、より高い信頼スコアが与えられる。指候補又は指先が見つからない場合、工程はステップ239に進む。
ステップ236では、幅の推定(指の資質尺度に対応)、両辺が存在するかどうか(例えば、隣り合う指候補の存在)、形の良い指先が存在するかどうか(指先の資質尺度に対応)、といった要素の組合せを使用して、指候補に対して信頼スコアが計算される。最終的な信頼スコア(C)は、下記数式1に示すように、サブスコアの重み付けされた和である。Nはサブスコアの合計であり、a及びSはそれぞれn番目の寄与因子の重みとサブスコアである。
以下の実施例では、指幅(w)に対するサブスコアS(w)の1つが、下記数式2として定義される。この実施例では0.5が、S(w)=1の最大サブスコアに対応する平均幅である。wが平均(0.5)から離れると、サブスコアS(w)は減少し、0に近づく。除数(この例では0.01)がサブスコアの減少速度を制御する。
下の表1は、実施例における全信頼スコア(C)に寄与する要素としてのサブスコアの例をまとめたものである。表1の1列目、2列目、3列目は、1つ以上の指の資質尺度と指先の資質尺度に対応していてもよい。表1の4列目は、隣り合う指候補が存在するか否かを示すものであってもよい。
表1に基づいて、信頼スコアの合計を下記数式3のように計算する。
指候補の信頼スコアが予め設定された閾値を超えると、指候補がリストに追加される(ステップ238)。予め設定された閾値を超える指候補がない場合、方法はステップ239へ進む。
ステップ239では、処理すべき凸欠陥がさらにあるか否かの判定がなされる。YESの場合、工程はステップ234に戻る。NOの場合、工程はステップ240へ進み、最も高い信頼値を有するものとして、指先の有力候補が選択される(ステップ240)。
図2Eは、上述した図2Aにおけるステップ205の細部の例を示す。1つ以上の実施形態では2DカメラがPICで使用されるが、これは、ユーザーの指が面に接触していることを確実に直接判別することができない。このような実施形態では、ユーザーの指の動きに基づいて指の押下が推定される。この推定は、意図的な押下が、指の移動軌道における停止を含むことに基づいている。
図2Eを参照すると、最初にステップ251において、上記工程から検出されたすべての指先位置が、検出が発生した際に時刻印と共に一連の位置に繰り返し追加される。従って、それぞれの時点において指先の移動速度が計算される(ステップ252)。指押下検出ステートマシン(253)は、ステップ251及びステップ252が繰り返し(すなわち、反復して)実行される間、表2に列挙された規則に基づいて実行される。
停止閾値は、例えば処理間隔(例えば66ミリ秒)中に0.25インチである。フレーム間隔(すなわち、ライブ動画ストリーム内の隣り合うフレームの間隔)は、システムの現在の処理負荷に基づいて調整することができ、システムへの負荷が増加するにつれて間隔が増加する。フレーム間隔は通常33〜99ミリ秒の範囲である。
図3Aから図3Dは、本発明の1つ以上の実施形態による実施例を示す。図3Aから図3Dに示す実施例は、図1及び図2Aから図2Eを参照しつつ上述したシステム及び方法フローチャートに基づいている。本発明の1つ以上の実施形態において、図3Aから図3Dに示される1つ以上の要素は、省略され、繰り返され、及び/又は異なる配置で編成されてもよい。つまり、本発明の範囲は、図3Aから図3Dに示される各要素の特定の配置に限定されるものとみなすべきではない。
図3Aから図3Dの様々な詳細が、上記図1の説明と共に説明されてきた。1つ以上の実施形態において、図3Aから図3Dに示される実施例は、一組のカメラ及びプロジェクターを備えた投影ユーザーインターフェイスに対応する。当該ユーザーインターフェイスにおいてユーザーは、マウス又はタッチスクリーンがない場合に、1本以上の指を使用して、一般的な現実の面(机や壁など)上の投影されたボタンとふれあうことができる。例えば、図3A及び図3Dを参照すれば、アイコン(303)と重なる場所(334)内のユーザーの指の押下を検出すると、アプリケーションは、従来のユーザーインターフェイスによってマウスクリックイベントが処理されるのと同様にして、アイコン(303)上での検出された指の押下の通知を受信する。この通知を受けて、アプリケーションは、マウスやタッチセンサーといった専用ユーザーインターフェイス装置に頼ることなく、アイコン(303)に対応した予め決められたタスクを実行する。
本発明の実施形態は、使用されているプラットフォームに関係なく、実質的にあらゆるタイプのコンピューターシステム上で実施可能である。例えば、コンピューターシステムは、1つ以上のモバイル機器(例えば、ラップトップコンピューター、スマートフォン、個人用デジタル補助器、タブレット・コンピューター、その他のモバイル機器)、デスクトップ・コンピューター、サーバー、サーバーシャーシ内のブレードであってよい。あるいは、本発明の1つ以上の実施形態を実行するための最小処理能力、メモリー、及び入出力装置を少なくとも有するあらゆる他のタイプのコンピューター装置又は装置であってもよい。例えば図4に示すように、コンピューターシステム(400)は、1つ以上のコンピュータープロセッサー(402)、関連するメモリー(404)(例えば、ランダムアクセスメモリー(RAM)、キャッシュメモリー、フラッシュメモリー等)、1つ以上の記憶装置(406)(例えば、ハードディスク、コンパクトディスク(CD)ドライブ又はデジタル汎用ディスク(DVD)ドライブなどの光ドライブ、フラッシュメモリースティック等)、及び多数の他の素子及び機能を含んでもよい。コンピュータープロセッサー(402)は、命令を処理するための集積回路であってもよい。例えば、コンピュータープロセッサーは、プロセッサーの1つ以上のコア、又はマイクロコアであってもよい。コンピューターシステム(400)は、タッチスクリーン、キーボード、マウス、マイクロフォン、タッチパッド、電子ペン、又は他のあらゆるタイプの入力装置といった、1つ以上の入力装置(410)をさらに含んでもよい。また、コンピューターシステム(400)は、スクリーン(例えば、液晶ディスプレイ(LCD)、プラズマディスプレイ、タッチスクリーン、ブラウン管(CRT)モニター、プロジェクター、又は他の表示装置)、プリンター、外部記憶装置、又は他のあらゆる出力装置といった、1つ以上の出力装置(408)を含んでもよい。1つ以上の出力装置は、入力装置と同じであっても、異なっていてもよい。コンピューターシステム(400)は、ネットワークインターフェイス接続(図示せず)を介して、ネットワーク(412)(例えば、ローカルエリアネットワーク(LAN)、インターネットやモバイルネットワークといったワイドエリアネットワーク(WAN)、又は他のあらゆるタイプのネットワーク)に接続されてもよい。入出力装置は、その場で又は(例えば、ネットワーク(412)を介して)遠隔で、コンピュータープロセッサー(402)、メモリー(404)、及び記憶装置(406)に接続されてもよい。多くの異なるタイプのコンピューターシステムが存在しており、前述の入出力装置は他の形態であってもよい。
本発明の実施形態を実行するためのコンピューター読取可能プログラムコードの形式におけるソフトウェア命令は、CD、DVD、記憶装置、ディスケット、テープ、フラッシュメモリー、物理メモリー、又は他のあらゆるコンピューター読取可能記憶媒体といった、非一時的コンピューター読取可能媒体に、全体的又は部分的に、一時的又は恒久的に記憶されてもよい。具体的には、ソフトウェア命令は、プロセッサーによって実行されるときに本発明の実施形態を実行するように構成された、コンピューター読取可能プログラムコードに対応してもよい。
また、前述のコンピューターシステム(400)の1つ以上の要素は、遠隔地に配置され、ネットワーク(412)を介して他の要素に接続されてもよい。さらに、本発明の1つ以上の実施形態は、複数のノードを有する分散システム上で実現されてもよく、本発明の各部分は、分散システム内の異なるノード上に配置することができる。本発明の一実施形態では、ノードは別個のコンピューター装置に対応する。あるいはノードは、付属の物理メモリーを有するコンピュータープロセッサーに対応していてもよい。あるいはノードは、共有メモリー及び/又はリソースを有するコンピュータープロセッサー又はコンピュータープロセッサーのマイクロコアに対応していてもよい。
本発明の1つ以上の実施形態は、以下の利点のうち1つ以上を有することができる。専用ハードウェアなしで一般的なカメラからストリーミングされた低解像度画像(例えばライブ動画)に基づいて、ユーザーの指の押下を検出する能力。ボタン領域内に他の物体が存在することによる誤った手の検出を(人のスキン調及び手の輪郭を使用して)除去/低減する能力。ボタンを押すことを意図していない、カメラの下の手や腕の動きの存在による誤った潜在的誘因を、(「押下」イベントが発生する前に、ユーザーが一定期間、ある場所で一時停止したことを保証するべく、手の動きを分析することにより)除去/低減する能力。応答時間は待ち時間なしで即座に訪れるため、リアルタイムの実行でボタンの押下を検出する能力。深度情報を使用して検出精度を向上させるため、及び/又は、追加のさまざまな手のジェスチャーを認識するため、1つ以上のカメラ(2D又は3D)を追加してシステムを拡張する能力。
限られた数の実施形態との関連で本発明を説明したが、本開示に触れた当業者ならば、ここに開示される発明の範囲から逸脱しない他の実施形態を考えつくであろう。従って、本発明の範囲は、添付の請求項によってのみ制限されるべきである。

Claims (20)

  1. 拡張現実(AR)作業領域における指の押下を検出する方法であって、
    AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得する工程、
    少なくともスキン調カラーフィルターに基づいて、コンピュータープロセッサーにより、前記AR作業領域の画像から手候補を抽出する工程、
    予め決められた信頼尺度に基づいて、前記コンピュータープロセッサーにより、前記手候補の輪郭から指候補を抽出する工程、及び、
    前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記コンピュータープロセッサーにより、前記ユーザーの手によって実行される前記指の押下を検出する工程、
    を備えることを特徴とする方法。
  2. 前記画像がライブ動画ストリームのフレームである、前記AR作業領域の当該ライブ動画ストリームを、前記撮像センサーを使用して取得する工程、
    少なくとも、前記画像から抽出された前記指候補の位置に基づいて、前記ライブ動画ストリームから一連の指先移動速度を決定する工程、及び、
    前記一連の指先移動速度に基づいて、前記GUIのアイコン上に置かれた指の停止時間を決定する工程、をさらに備え、
    前記指の押下の検出は、予め決められた停止の閾値を超えた前記停止時間に基づくことを特徴とする、請求項1に記載の方法。
  3. 前記AR作業領域の背景画像であって、グラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、前記撮像センサーを使用して取得する工程をさらに含んでおり、
    前記手候補を抽出する工程が、
    前景マスクを生成するために前記画像と前記背景画像とを比較する工程、及び、
    予め設定されたスキン調フィルター及び前記前景マスクを使用し、前記背景画像のホワイトバランスパラメーターに基づいて、つながった色成分を前記画像から抽出する工程、を備え、
    前記手候補は、予め決められた寸法基準に基づいて、前記つながった色成分から選択されることを特徴とする、請求項1に記載の方法。
  4. 前記指候補を抽出する工程が、前記手候補の輪郭から複数の凸欠陥を抽出することを含んでおり、
    前記予め決められた信頼尺度は、前記複数の凸欠陥における隣り合う凸欠陥の間の距離と、予め決められた指幅の閾値とを含んでおり、
    前記指候補は、前記予め決められた指幅の閾値内の対応する距離を有する一対の隣り合う凸欠陥を含むことを特徴とする、請求項1に記載の方法。
  5. 前記予め決められた信頼尺度は、指の資質尺度、指先の資質尺度、及び隣り合う指候補の存在をさらに含むことを特徴とする、請求項4に記載の方法。
  6. 前記指候補を抽出する工程が、
    前記手候補の輪郭から複数の指候補を抽出する工程、
    前記予め決められた信頼尺度に基づいて、前記複数の指候補の個々の信頼スコアを計算する工程、及び、
    前記個々の信頼スコアに基づき、指の有力候補として、前記複数の指候補から前記指候補を選択する工程、
    を含むことを特徴とする、請求項1に記載の方法。
  7. 前記指候補を抽出する工程が、
    前記手候補の輪郭に基づいて、前記手候補の最小外接矩形を生成する工程、
    前記画像の境界線及び前記手候補の輪郭からなる群から選択された少なくとも1つと、前記最小外接矩形との交点に基づいて、前記手候補の輪郭から指先候補を抽出する工程、及び、
    前記指先候補及び前記手候補の輪郭に基づいて推定指幅を決定する工程、
    を含んでおり、
    前記指候補の抽出は、予め決められた指幅の閾値内にある前記推定指幅に基づくことを特徴とする、請求項1に記載の方法。
  8. 拡張現実(AR)作業領域における指の押下を検出するためのコンピューター読取可能プログラムコードを記憶した非一時的コンピューター読取可能媒体(CRM)であって、前記コンピューター読取可能プログラムコードは、コンピュータープロセッサーによって実行されると、
    AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得する工程、
    少なくともスキン調カラーフィルターに基づいて、前記AR作業領域の画像から手候補を抽出する工程、
    予め決められた信頼尺度に基づいて、前記手候補の輪郭から指候補を抽出する工程、及び、
    前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記ユーザーの手によって実行される前記指の押下を検出する工程、
    を実行する機能を備えることを特徴とする非一時的コンピューター読取可能媒体。
  9. 前記コンピューター読取可能プログラムコードは、前記コンピュータープロセッサーによって実行されると、
    前記画像がライブ動画ストリームのフレームである、前記AR作業領域の当該ライブ動画ストリームを、前記撮像センサーを使用して取得する工程、
    少なくとも、前記画像から抽出された前記指候補の位置に基づいて、前記ライブ動画ストリームから一連の指先移動速度を決定する工程、及び、
    前記一連の指先移動速度に基づいて、前記GUIのアイコン上に置かれた指の停止時間を決定する工程、
    を実行する機能をさらに備えており、
    前記指の押下の検出は、予め決められた停止の閾値を超えた前記停止時間に基づくことを特徴とする、請求項8に記載の非一時的コンピューター読取可能媒体。
  10. 前記コンピューター読取可能プログラムコードは、前記コンピュータープロセッサーによって実行されると、
    前記AR作業領域の背景画像であって、グラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、前記撮像センサーを使用して取得する工程、
    を実行する機能をさらに備えており、
    前記手候補を抽出する工程が、
    前景マスクを生成するために前記画像と前記背景画像とを比較する工程、及び、
    予め設定されたスキン調フィルター及び前記前景マスクを使用し、前記背景画像のホワイトバランスパラメーターに基づいて、つながった色成分を前記画像から抽出する工程、を備え、
    前記手候補は、予め決められた寸法基準に基づいて、前記つながった色成分から選択されることを特徴とする、請求項8に記載の非一時的コンピューター読取可能媒体。
  11. 前記指候補を抽出する工程が、前記手候補の輪郭から複数の凸欠陥を抽出することを含んでおり、
    前記予め決められた信頼尺度は、前記複数の凸欠陥における隣り合う凸欠陥の間の距離と、予め決められた指幅の閾値とを含んでおり、
    前記指候補は、前記予め決められた指幅の閾値内の対応する距離を有する一対の隣り合う凸欠陥を含むことを特徴とする、請求項8に記載の非一時的コンピューター読取可能媒体。
  12. 前記予め決められた信頼尺度は、指の資質尺度、指先の資質尺度、及び隣り合う指候補の存在をさらに含むことを特徴とする、請求項11に記載の非一時的コンピューター読取可能媒体。
  13. 前記指候補を抽出する工程が、
    前記手候補の輪郭から複数の指候補を抽出する工程、
    前記予め決められた信頼尺度に基づいて、前記複数の指候補の個々の信頼スコアを計算する工程、及び、
    前記個々の信頼スコアに基づき、指の有力候補として、前記複数の指候補から前記指候補を選択する工程、
    を含むことを特徴とする、請求項8に記載の非一時的コンピューター読取可能媒体。
  14. 前記指候補を抽出する工程が、
    前記手候補の輪郭に基づいて、前記手候補の最小外接矩形を生成する工程、
    前記画像の境界線及び前記手候補の輪郭からなる群から選択された少なくとも1つと、前記最小外接矩形との交点に基づいて、前記手候補の輪郭から指先候補を抽出する工程、及び、
    前記指先候補及び前記手候補の輪郭に基づいて推定指幅を決定する工程、
    を含んでおり、
    前記指候補の抽出は、予め決められた指幅の閾値内にある前記推定指幅に基づくことを特徴とする、請求項8に記載の非一時的コンピューター読取可能媒体。
  15. 拡張現実(AR)作業領域における指の押下を検出するためのシステムであって、
    メモリーと、
    当該メモリーに接続されたコンピュータープロセッサーと、
    を備えており、前記コンピュータープロセッサーが、
    AR作業領域の画像であって、ユーザーの手が置かれたグラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、撮像センサーを用いて取得し、
    少なくともスキン調カラーフィルターに基づいて、前記AR作業領域の画像から手候補を抽出し、
    予め決められた信頼尺度に基づいて、前記手候補の輪郭から指候補を抽出し、
    前記GUIのアイコンとの関係における前記指候補の位置に基づいて、前記ユーザーの手によって実行される前記指の押下を検出する
    ことを特徴とするシステム。
  16. 前記コンピュータープロセッサーがさらに、
    前記画像がライブ動画ストリームのフレームである、前記AR作業領域の当該ライブ動画ストリームを、前記撮像センサーを使用して取得し、
    少なくとも、前記画像から抽出された前記指候補の位置に基づいて、前記ライブ動画ストリームから一連の指先移動速度を決定し、
    前記一連の指先移動速度に基づいて、前記GUIのアイコン上に置かれた指の停止時間を決定し、
    前記指の押下の検出は、予め決められた停止の閾値を超えた前記停止時間に基づくことを特徴とする、請求項15に記載のシステム。
  17. 前記コンピュータープロセッサーがさらに、前記AR作業領域の背景画像であって、グラフィックユーザーインターフェイス(GUI)のアイコンを含む画像を、前記撮像センサーを使用して取得し、
    前記手候補を抽出する工程が、
    前景マスクを生成するために前記画像と前記背景画像とを比較する工程、及び、
    予め設定されたスキン調フィルター及び前記前景マスクを使用し、前記背景画像のホワイトバランスパラメーターに基づいて、つながった色成分を前記画像から抽出する工程、を備え、
    前記手候補は、予め決められた寸法基準に基づいて、前記つながった色成分から選択されることを特徴とする、請求項15に記載のシステム。
  18. 前記指候補を抽出する工程が、前記手候補の輪郭から複数の凸欠陥を抽出することを含んでおり、
    前記予め決められた信頼尺度は、前記複数の凸欠陥における隣り合う凸欠陥の間の距離と、予め決められた指幅の閾値とを含んでおり、
    前記指候補は、前記予め決められた指幅の閾値内の対応する距離を有する一対の隣り合う凸欠陥を含むことを特徴とする、請求項15に記載のシステム。
  19. 前記指候補を抽出する工程が、
    前記手候補の輪郭から複数の指候補を抽出する工程、
    前記予め決められた信頼尺度に基づいて、前記複数の指候補の個々の信頼スコアを計算する工程、及び、
    前記個々の信頼スコアに基づき、指の有力候補として、前記複数の指候補から前記指候補を選択する工程、
    を含むことを特徴とする、請求項15に記載のシステム。
  20. 前記指候補を抽出する工程が、
    前記手候補の輪郭に基づいて、前記手候補の最小外接矩形を生成する工程、
    前記画像の境界線及び前記手候補の輪郭からなる群から選択された少なくとも1つと、前記最小外接矩形との交点に基づいて、前記手候補の輪郭から指先候補を抽出する工程、及び、
    前記指先候補及び前記手候補の輪郭に基づいて推定指幅を決定する工程、
    を含んでおり、
    前記指候補の抽出は、予め決められた指幅の閾値内にある前記推定指幅に基づくことを特徴とする、請求項15に記載のシステム。
JP2020099009A 2019-06-28 2020-06-08 ライブ動画ストリームからの指の押下の検出 Active JP7378354B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/457,449 2019-06-28
US16/457,449 US10747371B1 (en) 2019-06-28 2019-06-28 Detection of finger press from live video stream

Publications (3)

Publication Number Publication Date
JP2021012684A true JP2021012684A (ja) 2021-02-04
JP2021012684A5 JP2021012684A5 (ja) 2022-07-28
JP7378354B2 JP7378354B2 (ja) 2023-11-13

Family

ID=72046020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020099009A Active JP7378354B2 (ja) 2019-06-28 2020-06-08 ライブ動画ストリームからの指の押下の検出

Country Status (2)

Country Link
US (1) US10747371B1 (ja)
JP (1) JP7378354B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947728B2 (en) 2021-04-30 2024-04-02 Samsung Electronics Co., Ltd. Electronic device for executing function based on hand gesture and method for operating thereof

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084957B (zh) * 2020-09-11 2021-12-17 广东联通通信建设有限公司 一种移动目标滞留检测方法及系统
CN112200040A (zh) * 2020-09-28 2021-01-08 北京小米松果电子有限公司 遮挡图像检测方法、装置及介质
CN112462937B (zh) * 2020-11-23 2022-11-08 青岛小鸟看看科技有限公司 虚拟现实设备的局部透视方法、装置及虚拟现实设备
CN114596582B (zh) * 2022-02-28 2023-03-17 北京伊园未来科技有限公司 一种带视觉和力反馈的增强现实交互方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144366A (en) * 1996-10-18 2000-11-07 Kabushiki Kaisha Toshiba Method and apparatus for generating information input using reflected light image of target object
CN101470800A (zh) * 2007-12-30 2009-07-01 沈阳工业大学 手形识别方法
JP2011022927A (ja) * 2009-07-17 2011-02-03 Oki Joho Systems:Kk 手画像認識装置
US20160259423A1 (en) * 2011-09-19 2016-09-08 Eyesight Mobile Technologies, LTD. Touch fee interface for augmented reality systems
CN108369630A (zh) * 2015-05-28 2018-08-03 视觉移动科技有限公司 用于智能家居的手势控制系统和方法
JP2018195053A (ja) * 2017-05-17 2018-12-06 株式会社東海理化電機製作所 画像処理装置、画像処理プログラム及びジェスチャ認識システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977796B (zh) 2008-03-19 2013-05-08 株式会社电装 车辆操作输入设备
JP5347673B2 (ja) 2009-04-14 2013-11-20 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US20110254939A1 (en) 2010-04-16 2011-10-20 Tatiana Pavlovna Kadantseva Detecting User Input Provided To A Projected User Interface
US9135503B2 (en) * 2010-11-09 2015-09-15 Qualcomm Incorporated Fingertip tracking for touchless user interface
US9030425B2 (en) 2011-04-19 2015-05-12 Sony Computer Entertainment Inc. Detection of interaction with virtual object from finger color change
JPWO2014034527A1 (ja) * 2012-08-27 2016-08-08 シチズンホールディングス株式会社 情報入力装置
US9524028B2 (en) * 2013-03-08 2016-12-20 Fastvdo Llc Visual language for human computer interfaces
JP6146094B2 (ja) 2013-04-02 2017-06-14 富士通株式会社 情報操作表示システム、表示プログラム、および、表示方法
US10310675B2 (en) * 2014-08-25 2019-06-04 Canon Kabushiki Kaisha User interface apparatus and control method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144366A (en) * 1996-10-18 2000-11-07 Kabushiki Kaisha Toshiba Method and apparatus for generating information input using reflected light image of target object
CN101470800A (zh) * 2007-12-30 2009-07-01 沈阳工业大学 手形识别方法
JP2011022927A (ja) * 2009-07-17 2011-02-03 Oki Joho Systems:Kk 手画像認識装置
US20160259423A1 (en) * 2011-09-19 2016-09-08 Eyesight Mobile Technologies, LTD. Touch fee interface for augmented reality systems
CN108369630A (zh) * 2015-05-28 2018-08-03 视觉移动科技有限公司 用于智能家居的手势控制系统和方法
JP2018195053A (ja) * 2017-05-17 2018-12-06 株式会社東海理化電機製作所 画像処理装置、画像処理プログラム及びジェスチャ認識システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947728B2 (en) 2021-04-30 2024-04-02 Samsung Electronics Co., Ltd. Electronic device for executing function based on hand gesture and method for operating thereof

Also Published As

Publication number Publication date
US10747371B1 (en) 2020-08-18
JP7378354B2 (ja) 2023-11-13

Similar Documents

Publication Publication Date Title
JP7378354B2 (ja) ライブ動画ストリームからの指の押下の検出
CN107251096B (zh) 图像捕获装置和方法
JP5201096B2 (ja) 対話操作装置
JP6089722B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP5916880B2 (ja) ジェスチャを認識するための方法およびジェスチャ検出器
JP5974165B2 (ja) 視標追跡によるユーザ入力処理
JP6723814B2 (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
Chu et al. Hand gesture for taking self portrait
JP5510907B2 (ja) タッチ位置入力装置及びタッチ位置入力方法
JP6028589B2 (ja) 入力プログラム、入力装置および入力方法
JPWO2015030264A1 (ja) クリック動作検出装置,方法およびプログラム
CN107209556B (zh) 用于对捕获对象相对于交互平面的交互的深度图像进行处理的系统及方法
JP5962249B2 (ja) 文字入力プログラム、情報処理装置および文字入力方法
JP2021012684A5 (ja)
JP2010205223A (ja) 仮想対象に対するジェスチャーに従う制御を行うシステム及び装置
JP6255954B2 (ja) 動作入力装置、動作入力プログラム及び動作入力方法
EP2618237B1 (en) Gesture-based human-computer interaction method and system, and computer storage media
KR101308184B1 (ko) 윈도우 형태의 증강현실을 제공하는 장치 및 방법
JP2015170206A (ja) 検出装置および検出方法
CN114167997B (zh) 一种模型显示方法、装置、设备和存储介质
JP4500036B2 (ja) 画像投影表示装置、画像投影表示方法および画像投影表示プログラム
US11782548B1 (en) Speed adapted touch detection
JP2013134549A (ja) データ入力装置およびデータ入力方法
JP2018055685A (ja) 情報処理装置、その制御方法、プログラム、および記憶媒体
JP6858159B2 (ja) 頭部装着装置を使用して関心領域を標識するテレプレゼンスのフレームワーク

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220720

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230906

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231031

R150 Certificate of patent or registration of utility model

Ref document number: 7378354

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150