JP5907136B2 - Head mounted display and control program - Google Patents
Head mounted display and control program Download PDFInfo
- Publication number
- JP5907136B2 JP5907136B2 JP2013204061A JP2013204061A JP5907136B2 JP 5907136 B2 JP5907136 B2 JP 5907136B2 JP 2013204061 A JP2013204061 A JP 2013204061A JP 2013204061 A JP2013204061 A JP 2013204061A JP 5907136 B2 JP5907136 B2 JP 5907136B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- cpu
- image
- unit
- trajectory
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 137
- 230000008569 process Effects 0.000 claims description 121
- 238000012937 correction Methods 0.000 claims description 93
- 230000008859 change Effects 0.000 claims description 68
- 238000003384 imaging method Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 43
- 230000033001 locomotion Effects 0.000 description 27
- 210000003128 head Anatomy 0.000 description 26
- 210000001508 eye Anatomy 0.000 description 9
- 239000011521 glass Substances 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000003708 edge detection Methods 0.000 description 5
- 101100347655 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) NAB3 gene Proteins 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 210000005252 bulbus oculi Anatomy 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 102100039388 Polyamine deacetylase HDAC10 Human genes 0.000 description 1
- 101710107444 Polyamine deacetylase HDAC10 Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Position Input By Displaying (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、ヘッドマウントディスプレイ、及び、ヘッドマウントディスプレイを制御する為の制御プログラムに関する。 The present invention relates to a head mounted display and a control program for controlling the head mounted display.
ヘッドマウントディスプレイ(Head Mounted Display、HMD)はユーザの頭部に装着されて使用される。従ってHMDには、ユーザの視野の確保及び装着時の負担の軽減の為に小型であることが要求される。HMDを小型化した場合、スイッチ等の機械的なユーザインターフェイス(User Interface UI)を設ける場所は制約される。特許文献1は、カメラによって撮影されたユーザの手の動きを検出することで、対応する操作情報を特定する技術を開示する。HMDにこの技術を応用することで、HMDは、カメラによって撮影された対象物の動きに対応する操作内容を特定し、特定した操作内容に応じた動作を実行できる。この場合、HMDは、小型化した場合でも十分なUIを確保できる。
A head mounted display (HMD) is used by being mounted on a user's head. Therefore, the HMD is required to be small in order to secure the user's field of view and reduce the burden at the time of wearing. When the HMD is downsized, a place where a mechanical user interface (User Interface UI) such as a switch is provided is limited.
HMDにカメラが設けられる場合、ユーザの頭部に表示部と共に配置する方法が考えられる。この場合、カメラの撮影領域は、HMDを装着したユーザの頭部が動くことによって変化する。この場合、撮影領域に対する対象物の相対位置は、ユーザの頭部が動いたことに伴って変化する。通常、HMDは、撮影領域に対する対象物の相対位置に基づいて、対象物の動きを検出する。従ってHMDは、ユーザの頭部が動いた場合、対象物の動きを正確に検出できない場合がある。この場合、HMDは、ユーザの所望する動作を実行できないという問題点がある。 When a camera is provided in the HMD, a method of arranging it together with a display unit on the user's head can be considered. In this case, the shooting area of the camera changes as the head of the user wearing the HMD moves. In this case, the relative position of the object with respect to the imaging region changes as the user's head moves. Usually, the HMD detects the movement of the object based on the relative position of the object with respect to the imaging region. Therefore, the HMD may not be able to accurately detect the movement of the object when the user's head moves. In this case, the HMD has a problem that it cannot execute the operation desired by the user.
本発明の目的は、対象物の動きを正確に検出し、対応する動作を実行することが可能なヘッドマウントディスプレイ、及び、ヘッドマウントディスプレイを制御する為の制御プログラムを提供することである。 An object of the present invention is to provide a head mounted display capable of accurately detecting the movement of an object and executing a corresponding operation, and a control program for controlling the head mounted display.
本発明の第1態様に係るヘッドマウントディスプレイは、第1方向に画像光を射出可能な表示部と、前記第1方向と反対方向である第2方向の領域を少なくとも含む所定領域内を撮影して画像データを出力可能な撮影部と、前記撮影部から出力された画像データに基づいて、前記所定領域内に所定の対象物があるかを繰り返し判断する第1判断手段と、前記第1判断手段によって前記対象物が前記所定領域内にあると判断された場合に、検出部の出力に基づいて、前記撮影部の撮影方向に対応する位置である第1位置を示す第1情報を取得する第1取得手段と、前記所定領域に対する前記対象物の相対位置である第2位置を示す第2情報を、前記画像データに基づいて取得する第2取得手段と、前記第1取得手段によって取得された前記第1情報と、前記第2取得手段によって取得された前記第2情報とに基づく第3情報を、前記第1判断手段によって前記対象物が前記所定領域内にあると判断される度に決定する決定手段と、前記決定手段によって決定された前記第3情報を、決定された順序を示す順序情報と関連付けて第1記憶部に記憶する記憶手段と、前記第1記憶部に記憶された複数の第3情報のうち1の第3情報と、前記1の第3情報に関連付けられた順序情報によって示される順序よりも後の順序を示す順序情報に関連付けられた他の第3情報とに基づいて、前記1の第3情報に対応する第1情報が前記第1取得手段によって取得されてから、前記他の第3情報に対応する第1情報が前記第1取得手段によって取得されるまでの間に、前記第1位置と前記第2位置との位置関係が変化したかを判断する第2判断手段と、前記第2判断手段によって、前記位置関係が変化したと判断された場合、少なくとも前記他の第3情報に基づいて決定される位置を示す軌跡情報を前記表示部に繰り返し表示する第1表示手段と、前記第1記憶部に記憶された前記複数の第3情報に基づいて、夫々の第3情報に対応する前記第2位置を、対応する第1位置によって補正した複数の補正位置の変化の傾向が所定の条件を満たしているか判断する第3判断手段と、前記第3判断手段によって、前記所定の条件を満たしていると判断された場合、対応する処理を実行する実行手段とを備え、前記第3情報は、前記位置関係に対応する情報であることを特徴とする。 The head-mounted display according to the first aspect of the present invention images a predetermined area including at least a display unit capable of emitting image light in a first direction and a second direction area opposite to the first direction. An imaging unit capable of outputting image data, first determination means for repeatedly determining whether there is a predetermined object in the predetermined area based on the image data output from the imaging unit, and the first determination When it is determined by the means that the object is within the predetermined area, first information indicating a first position that is a position corresponding to the photographing direction of the photographing unit is acquired based on the output of the detecting unit. Acquired by the first acquisition means, the second acquisition means for acquiring the second information indicating the second position, which is the relative position of the object with respect to the predetermined area, based on the image data, and the first acquisition means. Said first Determination means for determining third information based on the information and the second information acquired by the second acquisition means each time the first determination means determines that the object is within the predetermined area. Storage means for storing the third information determined by the determination means in association with order information indicating the determined order in a first storage unit, and a plurality of third information stored in the first storage unit Based on the third information of one of the information and the other third information associated with the order information indicating the order after the order indicated by the order information associated with the first third information, From the time when the first information corresponding to the third information is acquired by the first acquisition means until the time when the first information corresponding to the other third information is acquired by the first acquisition means, Between the first position and the second position. A second determination unit that determines whether the positional relationship has changed, and a position determined based on at least the other third information when the second determination unit determines that the positional relationship has changed. Corresponding to the second position corresponding to each third information based on the first display means for repeatedly displaying the trajectory information on the display unit and the plurality of third information stored in the first storage unit It is determined that the predetermined condition is satisfied by the third determination means for determining whether the tendency of the change in the plurality of correction positions corrected by the first position to satisfy the predetermined condition and the third determination means In this case, an execution unit that executes a corresponding process is provided, and the third information is information corresponding to the positional relationship.
第1態様によれば、ヘッドマウントディスプレイは、第1情報と第2情報とに基づいて第3情報を決定し、第1記憶部に記憶する。第3情報は、第1位置(撮影部の撮影方向に対応する位置)と第2位置(所定領域に対する対象物の相対位置)との位置関係を示す情報である。第1位置は、撮影部の撮影方向が変化することに応じて変化する。このため、第1位置と第2位置との位置関係の経時的な変化は、撮影部の撮影方向が変化した場合でも、実際の対象物の動きを示す。ヘッドマウントディスプレイは、第2位置を第1位置によって補正した補正位置の経時的な変化の傾向が所定の条件を満たす場合、対応する処理を実行する。従ってヘッドマウントディスプレイは、撮影部の撮影方向が変化した場合でも、対象物の動きを正確に検出し、対応する処理を実行できる。 According to the first aspect, the head mounted display determines the third information based on the first information and the second information, and stores the third information in the first storage unit. The third information is information indicating the positional relationship between the first position (position corresponding to the photographing direction of the photographing unit) and the second position (relative position of the object with respect to the predetermined area). The first position changes according to a change in the shooting direction of the shooting unit. For this reason, the temporal change in the positional relationship between the first position and the second position indicates the actual movement of the object even when the shooting direction of the shooting unit changes. The head mounted display performs a corresponding process when the tendency of the correction position with the second position corrected by the first position over time satisfies a predetermined condition. Therefore, the head mounted display can accurately detect the movement of the object and execute the corresponding process even when the shooting direction of the shooting unit changes.
第1態様において、前記第3情報は、前記第1位置に対する前記第2位置の相対位置を示す情報であってもよい。この場合、ヘッドマウントディスプレイは、第3情報に基づいて、第1位置と第2位置との位置関係を容易に特定できる。 In the first aspect, the third information may be information indicating a relative position of the second position with respect to the first position. In this case, the head mounted display can easily specify the positional relationship between the first position and the second position based on the third information.
第1態様において、n番目(nは2以上の自然数)の軌跡情報を、前記決定手段によってn番目に決定された第3情報に対応する第2位置に表示する第2表示手段を備え、前記第1表示手段は、前記表示部に表示された1からn−1番目の夫々の軌跡情報を消去する第1消去手段と、1からn−1番目の夫々に決定された第3情報に対応する第2位置を、n番目に決定された第3情報に対応する第1位置に基づいて補正し、補正した第2位置に前記軌跡情報を表示する修正手段とを備えてもよい。この場合、ヘッドマウントディスプレイは、ユーザに対し、撮影部の撮影方向の変化分が反映された軌跡情報を認識させることができる。このためユーザは、所定の条件を満たすように対象物を移動させることが容易に可能となる。 In the first aspect, the apparatus includes second display means for displaying n-th (n is a natural number of 2 or more) trajectory information at a second position corresponding to the third information determined by the determination means. The first display means corresponds to the first erasing means for erasing the 1st to (n-1) th trajectory information displayed on the display unit, and the 1st to (n-1) th determined third information. Correction means for correcting the second position to be corrected based on the first position corresponding to the n-th determined third information, and displaying the trajectory information at the corrected second position. In this case, the head mounted display can make the user recognize the trajectory information reflecting the change in the shooting direction of the shooting unit. For this reason, the user can easily move the object so as to satisfy the predetermined condition.
第1態様において、前記第1表示手段は、前記決定手段によってn番目(nは2以上の自然数)に決定された前記第3情報に対応する第2位置を、1番目に決定された第3情報に対応する第1位置に基づいて補正し、補正した第2位置に前記軌跡情報を表示してもよい。この場合、ヘッドマウントディスプレイは、ユーザに対し、撮影部の撮影方向の変化分が反映された軌跡情報を認識させることができる。このためユーザは、所定の条件を満たすように対象物を移動させることが容易に可能となる。 In the first aspect, the first display means has a third position in which the second position corresponding to the third information determined nth (n is a natural number of 2 or more) determined by the determination means is determined first. Correction may be made based on the first position corresponding to the information, and the locus information may be displayed at the corrected second position. In this case, the head mounted display can make the user recognize the trajectory information reflecting the change in the shooting direction of the shooting unit. For this reason, the user can easily move the object so as to satisfy the predetermined condition.
第1態様において、前記第1判断手段によって前記所定領域内に前記対象物がないと判断される状態が所定の第1時間以上継続した場合であって、前記表示部に前記軌跡情報が表示されている場合に、前記軌跡情報を消去する第2消去手段を備えてもよい。この場合、ヘッドマウントディスプレイは、ユーザにとって不要な軌跡情報を表示部から消去できる。 In the first aspect, the locus information is displayed on the display unit when the state in which the first determination unit determines that the object is not present in the predetermined region continues for a predetermined first time or longer. A second erasing unit for erasing the trajectory information. In this case, the head mounted display can erase the trajectory information unnecessary for the user from the display unit.
第1態様において、前記第2判断手段によって前記位置関係が移動しないと判断される状態が所定の第2時間以上継続した場合であって、前記表示部に前記軌跡情報が表示されている場合に、前記軌跡情報を消去する第3消去手段を備えてもよい。この場合、ヘッドマウントディスプレイは、ユーザにとって不要な軌跡情報を表示部から消去できる。 In the first aspect, when the state in which the positional relationship is determined not to move by the second determination unit continues for a predetermined second time or more, and the trajectory information is displayed on the display unit A third erasing unit for erasing the trajectory information may be provided. In this case, the head mounted display can erase the trajectory information unnecessary for the user from the display unit.
第1態様において、前記第3判断手段によって、前記複数の補正位置の変化の傾向が所定の条件を満たしていると判断された場合に、前記軌跡情報を消去する第4消去手段を備えてもよい。この場合、ヘッドマウントディスプレイは、ユーザにとって不要な軌跡情報を表示部から消去できる。 In the first aspect, there is provided fourth erasing means for erasing the trajectory information when the third judgment means judges that the tendency of change of the plurality of correction positions satisfies a predetermined condition. Good. In this case, the head mounted display can erase the trajectory information unnecessary for the user from the display unit.
第1態様において、前記第3判断手段は、第2記憶部に記憶されたテンプレートデータによって示される特定の形状と、前記複数の補正位置の変化の傾向とが一致するかを判断することによって、前記複数の補正位置の変化の傾向が所定の条件を満たしているか判断してもよい。この場合、ヘッドマウントディスプレイは、複数の補正位置の変化の傾向が所定の条件を満たしているかを適切に判断できる。 In the first aspect, the third determining means determines whether the specific shape indicated by the template data stored in the second storage unit matches the tendency of change in the plurality of correction positions, It may be determined whether the tendency of change of the plurality of correction positions satisfies a predetermined condition. In this case, the head mounted display can appropriately determine whether the tendency of the change in the plurality of correction positions satisfies a predetermined condition.
第1態様において、前記実行手段は、前記複数の補正位置の変化の傾向と一致すると判断された特定の形状を示すテンプレートデータに関連付けられた特定の処理を実行してもよい。この場合、ヘッドマウントディスプレイは、対象物の動きに対応する処理を容易に判断し、処理を実行できる。 In the first aspect, the execution means may execute a specific process associated with template data indicating a specific shape that is determined to match the tendency of change in the plurality of correction positions. In this case, the head mounted display can easily determine the process corresponding to the movement of the object and execute the process.
第1態様において、前記第1取得手段は、前記画像データに基づき、前記所定領域内に含まれる比較物の位置を示す情報を、前記第1情報として取得してもよい。この場合、ヘッドマウントディスプレイは、撮影部の撮影方向に対応する位置を第1情報として適切に取得できる。 In the first aspect, the first acquisition unit may acquire, as the first information, information indicating a position of a comparison object included in the predetermined area based on the image data. In this case, the head mounted display can appropriately acquire the position corresponding to the shooting direction of the shooting unit as the first information.
第1態様において、前記第1取得手段は、前記画像データに基づき、複数の第1情報を取得してもよい。この場合、ヘッドマウントディスプレイは、撮影部の撮影方向を、複数の第1情報に基づいて正確に特定できる。 In the first aspect, the first acquisition unit may acquire a plurality of first information based on the image data. In this case, the head mounted display can accurately specify the shooting direction of the shooting unit based on the plurality of pieces of first information.
第1態様において、前記複数の第1情報は、前記画像データによって示される撮影画像の四隅の夫々の近傍位置を示してもよい。この場合、ヘッドマウントディスプレイは、撮影部の撮影方向を、撮影画像の四隅の夫々の位置を示す複数の第1情報に基づいて更に正確に特定できる。 In the first aspect, the plurality of pieces of first information may indicate positions near the four corners of the captured image indicated by the image data. In this case, the head mounted display can more accurately specify the shooting direction of the shooting unit based on a plurality of pieces of first information indicating the positions of the four corners of the shot image.
本発明の第2態様に係る制御プログラムは、表示部が画像光を射出可能な第1方向と反対方向である第2方向の領域を少なくとも含む所定領域内が、撮影部によって撮影された場合に、前記撮影部から出力される画像データに基づいて、前記所定領域内に所定の対象物があるかを繰り返し判断する第1判断ステップと、前記第1判断ステップによって前記対象物が前記所定領域内にあると判断された場合に、検出部の出力に基づいて、前記撮影部の撮影方向に対応する位置である第1位置を示す第1情報を取得する第1取得ステップと、前記所定領域に対する前記対象物の相対位置である第2位置を示す第2情報を、前記画像データに基づいて取得する第2取得ステップと、前記第1取得ステップによって取得された前記第1情報と、前記第2取得ステップによって取得された前記第2情報とに基づく第3情報を、前記第1判断ステップによって前記対象物が前記所定領域内にあると判断される度に決定する決定ステップと、前記決定ステップによって決定された前記第3情報を、決定された順序を示す順序情報と関連付けて第1記憶部に記憶する記憶ステップと、前記第1記憶部に記憶された複数の第3情報のうち1の第3情報と、前記1の第3情報に関連付けられた順序情報によって示される順序よりも後の順序を示す順序情報に関連付けられた他の第3情報とに基づいて、前記1の第3情報に対応する第1情報が前記第1取得ステップによって取得されてから、前記他の第3情報に対応する第1情報が前記第1取得ステップによって取得されるまでの間に、前記第1位置と前記第2位置との位置関係が変化したかを判断する第2判断ステップと、前記第2判断ステップによって、前記位置関係が変化したと判断された場合、少なくとも前記他の第3情報に基づいて決定される位置を示す軌跡情報を表示部に繰り返し表示する第1表示ステップと、前記第1記憶部に記憶された前記複数の第3情報に基づいて、夫々の第3情報に対応する前記第2位置を、対応する第1位置によって補正した複数の補正位置の変化の傾向が所定の条件を満たしているか判断する第3判断ステップと、前記第3判断ステップによって、所定の条件を満たしていると判断された場合、対応する処理を実行する実行ステップとを、ヘッドマウントディスプレイのコンピュータに実行させる。第2態様によれば、第1態様と同様の効果を奏することができる。
The control program according to the second aspect of the present invention is such that the imaging unit captures a predetermined area including at least a region in the second direction that is opposite to the first direction in which the display unit can emit image light. A first determination step of repeatedly determining whether or not there is a predetermined object in the predetermined area based on image data output from the imaging unit; and the object is within the predetermined area by the first determination step. A first acquisition step of acquiring first information indicating a first position, which is a position corresponding to the shooting direction of the shooting unit, based on the output of the detection unit; A second acquisition step of acquiring second information indicating a second position, which is a relative position of the object, based on the image data; the first information acquired by the first acquisition step; A determination step of determining third information based on the second information acquired by the acquisition step every time the first determination step determines that the object is in the predetermined area; and A step of storing the determined third information in the first storage unit in association with the sequence information indicating the determined order; and a first one of the plurality of third information stored in the
以下、本発明を具体化した実施形態について、図面を参照して説明する。図1を参照し、ヘッドマウントディスプレイ(以下、HMDという。)1の概要を説明する。HMD1は、投影装置(以下、ヘッドディスプレイ又はHDという。)10及び制御装置(以下、コントロールボックス又はCBという。)50を備える。以下の説明において、図1の上方、下方、右斜め下方、左斜め上方、右斜め上方及び左斜め下方が夫々、HMD1の上方、下方、前方、後方、右方及び左方である。実施形態において、種々の構成における位置関係及び方向関係の理解を助けるため、関連する図面において、HMD1の上方、下方、前方、後方、右方及び左方は、3次元デカルト座標系の軸を参照して説明される。
DESCRIPTION OF EXEMPLARY EMBODIMENTS Embodiments of the invention will be described below with reference to the drawings. An outline of a head mounted display (hereinafter referred to as HMD) 1 will be described with reference to FIG. The
HD10の概要を説明する。HD10は、専用の装着具である眼鏡5に取り付けられる。ユーザは、HD10が取り付けられた眼鏡5をかけることによって、HD10を頭部に装着して使用する。HD10は、画像光を後方に向けて照射できる。画像光は、HD10を装着したユーザの左眼に入射する。HD10は、ハーネス7を介してCB50と着脱可能に接続する。HD10は、筐体2、ハーフミラー3、画像表示部14(図2参照)、接眼光学系(図示略)、カメラ20等を主な構成要素とする。
An outline of the
筐体2は、眼鏡5の右端部に設けられる。筐体2の左端側に、ハーフミラー3が設けられる。ハーフミラー3は、ユーザがHD10を頭部に装着した状態で、ユーザの左眼の前方に配置される。画像表示部14及び接眼光学系は、筐体2の内部に設けられる。画像表示部14及び接眼光学系の詳細は後述する。カメラ20は、筐体2の前面に設けられる。カメラ20は、筐体2の前方の外界の風景のうち、所定の大きさの領域(以下、所定領域という。)を撮像可能である。
The
画像表示部14は、液晶素子及び光源を備える。画像表示部14は、コンテンツ画像を表示することが可能である。コンテンツ画像は、静止画像又は動画像である。又、画像表示部14は、コンテンツ画像に撮影画像を重ねて表示することが可能である。撮影画像は、カメラ20によって撮影された画像である。画像表示部14は、CB50からハーネス7を介して送信される映像信号に基づいて、画像を表示する。接眼光学系は、画像表示部14に表示された画像を示す画像光を集光し、ハーフミラー3に射出する。接眼光学系から射出された画像光は、ハーフミラー3によって反射される。ハーフミラー3によって反射された画像光は、筐体2の後方(カメラ20の撮影方向と反対方向)に射出される。HMD1がユーザに装着されている状態で、画像光は、ユーザの左眼の眼球に入射する。又、ハーフミラー3は、外界の実像からの光を、ユーザの左眼に向けて透過する。HMD1は、ユーザの視野範囲内の実像(例えば、外界の風景等)に、画像表示部14に表示された画像を重ねた状態の光景を、ユーザに視認させることができる。
The
眼鏡5は、HD10をユーザの頭部に保持する。眼鏡5は、フレーム6及び支持部4を備える。フレーム6の形状は、通常の眼鏡と略同一であるので、詳細な説明は省略する。フレーム6のうち、左眼用レンズを支えるリム部の上面右端に、支持部4が設けられる。支持部4は、HD10の筐体2を保持する。支持部4は、筐体2の保持位置を上下方向及び左右方向に移動できる。ユーザは、筐体2を上下方向及び左右方向に移動させることによって、左眼の眼球の位置とハーフミラー3の位置とが前後方向に並ぶように位置を調整できる。
The
なお、HD10は、ユーザが日常的に使用する眼鏡、ヘルメット、ヘッドホンなど、他の装着具に取り付けられてもよい。画像表示部14は、他の空間変調素子であってもよい。例えば画像表示部14は、画像信号に応じた強度のレーザ光を2次元走査して画像表示を行う網膜走査型表示部、及び有機EL(Organic Electro-luminescence)ディスプレイであってもよい。また、図1では支持部4及びHD10がフレーム6の右側に設けられるが、支持部4及びHD10は、フレーム6の右側に設けられてもよい。この場合、HMD1がユーザに装着されている状態で、画像光は、ユーザの右眼の眼球に入射する。
The
又、本実施形態において、HD10は、画像表示部14に表示された画像を外界の実像に重ねた状態の光景をユーザに視認させる機能を有する、所謂光学シースルー型のヘッドディスプレイである。しかしながら本発明は、別の機能を有するヘッドディスプレイであってもよい。例えばHD10は、外界の実像からの光をユーザの眼に入射させず、画像表示部14に表示された画像と、カメラによって撮像された外界の画像とをユーザに視認させる機能を有する、所謂ビデオシースルー型のヘッドディスプレイであってもよい。
In the present embodiment, the
又、本実施形態において、カメラ20は筐体2の前面に設けられているが、カメラ20は筐体2から着脱可能であってもよい。例えばカメラ20は、HD10の前面方向を撮影可能な状態で、眼鏡5のフレーム6に直接取り付けられてもよい。
In this embodiment, the
CB50の概要を説明する。CB50は、例えばユーザの腰ベルトや腕等に取り付けられる。CB50はHD10を制御する。CB50は、ハーネス7を介してHD10と着脱可能に接続する。CB50は、筐体60、操作スイッチ61、電源スイッチ62等を主な構成要素とする。筐体60の形状は、縁部の丸い略直方体である。操作スイッチ61は、HD10における各種設定や、使用時における各種操作等を行う為のスイッチである。電源スイッチ62は、HMD1の電源をオン又はオフにする為のスイッチである。電源スイッチ62には、電源ランプ63が内蔵される。
An outline of the
図2を参照し、HMD1の電気的構成を説明する。はじめに、HD10の電気的構成を説明する。HD10は、HD10全体の制御を行うCPU11を備える。CPU11は、RAM12、プログラムROM13、画像表示部14、インターフェイス15、及び接続コントローラ19に電気的に接続される。CPU11は、インターフェイス15を介してカメラ20に電気的に接続される。RAM12は、各種データを一時的に記憶する。プログラムROM13は、CPU11が実行するプログラムを記憶する。プログラムROM13はOSを記憶する。プログラムはOS上で実行される。プログラム及びOSは、HMD1の出荷時にプログラムROM13に記憶される。画像表示部14は、コンテンツ画像及び撮影画像の少なくとも一方を表示できる。インターフェイス15はカメラ20に接続し、信号の入出力を制御する。接続コントローラ19は、ハーネス7を介してCB50の接続コントローラ58に接続し、有線通信を行う。
The electrical configuration of the
なお、HD10は、フラッシュROMを更に備えてもよい。フラッシュROMには、CPU11が実行するプログラムが記憶されてもよい。CPU11は、フラッシュROMに記憶されたプログラムを実行してもよい。プログラムROM13及びフラッシュROMには、CB50のCPU51が実行するプログラムが記憶されてもよい。CPU11は、CB50のCPU51が実行する処理と同じ処理を、CPU51の代わりに実行してもよい。
The
CB50の電気的構成を説明する。CB50は、CB50全体の制御を行うCPU51を備える。CPU51は、RAM52、プログラムROM53、フラッシュROM54、インターフェイス55、ビデオRAM56、画像処理部57、接続コントローラ58、及び無線通信部59に電気的に接続される。RAM52は、各種データを一時的に記憶する。RAM52は、テーブル521(図8参照)を記憶する。プログラムROM53は、CPU51が実行するプログラムを記憶する。プログラムROM53はOSを記憶する。プログラムはOS上で実行される。プログラム及びOSは、HMD1の出荷時にプログラムROM53に記憶される。フラッシュROM54は、テーブル541(図7参照)を記憶する。
The electrical configuration of the
インターフェイス55は、操作スイッチ61及び電源スイッチ62に接続し、信号の入出力を制御する。画像処理部57は、HD10の画像表示部14に表示する画像を形成し、ビデオRAM56に記憶する。ビデオRAM56は、画像処理部57によって形成された画像を一時的に記憶する。接続コントローラ58は、ハーネス7を介してHD10の接続コントローラ19に接続し、有線通信を行う。無線通信部59は、インターネット、LAN等に接続されたアクセスポイント(図示略)を介して、インターネット、LAN等に接続された周辺機器と通信を行う。周辺機器の例として、パーソナルコンピュータ、スマートフォン、タブレット型携帯端末、サーバ等が挙げられる。
The
なお、CB50のフラッシュROM54に、CPU51が実行するプログラムが記憶されてもよい。CPU51は、フラッシュROM54に記憶されたプログラムを実行してもよい。プログラムROM53及びフラッシュROM54には、HD10のCPU11が実行するプログラムが記憶されてもよい。CPU51は、HD10のCPU11が実行する処理と同じ処理を、CPU11の代わりに実行してもよい。
Note that a program executed by the
なお、HMD1は、プログラム及びOSを、無線通信部59を介してプログラムダウンロード用のサーバからダウンロードし、インストールしてもよい。例えば、プログラム及びOSは、コンピュータで読み取り可能な一時的な記憶媒体(例えば、伝送信号)として、サーバからHMD1に送信されてもよい。プログラムは、HMD1が備えるコンピュータで読み取り可能な記憶装置、例えば、フラッシュROMに保存されてもよい。CPU11は、フラッシュROMに記憶されたプログラムに基づいてプログラムを実行してもよい。CPU51は、フラッシュROM54に記憶されたプログラムに基づいてプログラムを実行してもよい。但し、記憶装置は、例えばROM、フラッシュROM、HDD、RAMなどの、一時的な記憶媒体を除く記憶媒体であってもよい。また、記憶装置は、非一時的な記憶媒体であってもよい。非一時的な記憶媒体は、データを記憶する時間の長さに関わらず、データを留めておくことが可能なものであってもよい。
The
HMD1の構成は上記実施形態に限定されず、例えば、HD10とCB50とが一体となった構成であってもよい。HD10のCPU11とCB50のCPU51とは、ハーネス7の代わりに無線によって通信を行ってもよい。
The configuration of the
HMD1は、カメラ20によって撮影される所定領域内でユーザの指先が移動した時の指先の位置の経時的な変化の傾向が、所定の条件を満たすと判断した場合、対応する処理を実行する。対応する処理の具体例として、各種設定処理、画像表示部14に表示されたコンテンツ画像の切り替え、コンテンツ画像のスクロール、電源制御等が挙げられる。ユーザは、所望する処理をHMD1に実行させる為に、所定の条件を満たすように指先を移動させる必要がある。HMD1は、ユーザが指先の位置の経時的な変化を認識し易いように、指先の位置を示す軌跡画像を、指先の位置を特定したタイミングで繰り返し画像表示部14に表示する。なお、本実施形態では、画像表示部14に表示される画像は軌跡画像のみであり、カメラ20によって撮影された撮影画像は画像表示部14に表示されないことを前提とする。
When the
図3を参照して具体的に説明する。なお以下では、説明を容易とする為、HD10のCPU11によって実行される処理と、CB51のCPU51によって実行される処理とを区別せず、HMD1によって実行される処理として説明する。実際には、以下の処理はCPU11、51の夫々に割り当てられ、夫々によって実行される。詳細は、図4、図5のフローチャートを参照し、後述にて説明する。
This will be specifically described with reference to FIG. In the following, for ease of explanation, the processing executed by the CPU 11 of the
図3は、HD10を装着したユーザによって視認される光景25を示す。光景25には実像22(22A、22F〜22J)が含まれる。実像22にはユーザの手23が含まれる。実像22は、ユーザの視野範囲内の実像からの光が、ハーフミラー3を透過してユーザの左眼に到達することによって、ユーザが視認する像である。又、画像表示部14に画像が表示された場合、実像22に画像が重ねられる。これによってユーザは、視野範囲内の実像22と画像との両方を視認できる。又、矩形状の点線で囲まれた領域は、カメラ20によって撮影される所定領域21(21A〜21J)を示す。
FIG. 3 shows a
HMD1が、指先の位置が時間の経過とともに上から下に垂直に移動すると判断した時に、対応する処理(例えば、HMD1の設定処理等)を実行する場合を例に挙げる。HMD1は、カメラ20によって撮影された撮影画像を取得し、撮影画像に指先が含まれているか判断する。指先が含まれているかの判断方法の詳細は後述する。HMD1は、撮影画像に指先が含まれていると判断した場合、撮影画像に基づいて指先の位置を特定する。特定される指先の位置は、具体的には、カメラ20によって撮影される所定領域内の特定の位置を座標系の基準とした場合の座標情報である。
An example will be given in which the
HMD1は、特定した指先の位置に基づいて、画像表示部14に軌跡画像26(26A〜26J)を表示させる。軌跡画像26は円形である。HMD1は、実像22に含まれる指先の位置に軌跡画像26が重なるように、画像表示部14に表示させる軌跡画像26の位置を調整する。指先が移動を開始する前の状態では、光景25Aで示されるように、ユーザは、実像22A内の手23の指先の位置に重ねられた軌跡画像26Aを視認できる。
The
HMD1は、カメラ20によって撮影された撮影画像を繰り返し取得し、撮影画像に含まれている指先の位置を繰り返し特定する。HMD1は、画像表示部14に軌跡画像26を繰り返し表示する。ユーザが指先を上から下に向けて垂直方向に移動させた場合、HMD1は、異なる指先の位置を複数特定する。HMD1は、特定した複数の位置に基づいて、画像表示部14に軌跡画像26B〜26Eを順番に表示させる。なおこの場合、HMD1は、画像表示部14に一旦表示させた軌跡画像26を消去しない。このためユーザは、光景25A〜25Eの夫々で示されるように、指先を上から下に向けて垂直方向に移動させたことに伴って徐々に増加する軌跡画像26A〜26Eを視認する。従ってユーザは、軌跡画像26A〜26Eを視認することによって、指先が上から下に向けて垂直に移動していることを容易に把握できる。
The
なお、HMD1は、画像表示部14に軌跡画像26B、26C、26D、26Eの夫々を表示させるタイミングで、軌跡画像26A−26B間、軌跡画像26B−26C間、軌跡画像26C−26D間、及び軌跡画像26D−26E間に延びる点線を、画像表示部14に表示してもよい。これによってユーザは、指先の経時的な動きを更に容易に把握できる。
In addition, HMD1 is the timing which displays each of
又、HMD1は、繰り返し特定した複数の指先の位置に基づいて、指先の位置が時間の経過とともに上から下に垂直に移動していると判断する。この場合、HMD1は、対応する処理を特定し、処理を実行する。このためユーザは、カメラ20によって撮影される所定領域内で指先を上から下に垂直に移動させることによって、HMD1に処理を実行させることができる。
Further, the
なお、カメラ20は、HD10の筐体2の前面に設けられており、HD10の前面方向の外界を撮影する。従ってユーザは、カメラ20によって指先が撮影されるように、目の前で指先を移動させる。ここで、HD10を装着したユーザが頭部の向きを変えた場合、カメラ20によって撮影される所定領域21も変化する。HD10を装着したユーザが頭部の向きを横方向に変化させた場合を例に挙げる。カメラ20によって撮影される所定領域は、所定領域21F〜21Jのように徐々に変化する。この時に、光景25A〜25Eの場合と同様にユーザが指先を上から下に向けて垂直方向に移動させた場合を例に挙げる。この場合、光景25F〜25Jで示されるように、実像22F〜22Jと指先との位置関係は、カメラ20の撮影方向が変化しても変化せず、光景25A〜25Eの場合と一致する。一方、所定領域21F〜21Jと実像22F〜22Jとの位置関係は、カメラ20の撮影方向が横方向に変化することに応じて横方向に変化する。従って、所定領域21F〜21Jに対する指先の相対位置は、カメラ20の撮影方向が横方向に変化したことに伴い、上下方向だけでなく横方向にも変化する。
The
HMD1は、カメラ20によって撮影される所定領域内の特定の位置を座標系の基準とした場合の座標情報を、指先の位置として特定する。HD10を装着したユーザが頭部の向きを横方向に変化させた場合には、カメラ20の撮影方向も変化するので、座標情報に対応する座標系の基準の位置は横方向に変化する。このためHMD1は、ユーザが指先を上から下に向けて垂直に移動させている場合でも、指先の位置が時間の経過とともに上から下に垂直に移動していると判断できない。このためHMD1は、対応する処理を特定できなくなる。
The
更に、光景25F〜25Jで示されるように、実像22F〜22Jに重ねられる軌跡画像26F〜22Jは、カメラ20の撮影方向が横方向に変化した場合、ユーザが指先を上から下に向けて垂直に移動させているにも関わらず、斜め方向に直線状に並んだ状態になる。従ってユーザは、指先が上から下に向けて垂直に移動させていることを把握し難くなる。
Further, as shown by the
このためHMD1は、以下の処理を行うことによって、カメラ20の撮影方向が変化した場合でも、指先の適切な位置を特定し、対応する処理を実行できるようにする。又、HMD1は、以下の処理を行うことによって、ユーザが指先の移動を適切に把握できるように、実像22に重ねる軌跡画像26の位置を調整する。以下では、はじめに、HD10のCPU11によって実行される処理の概要について説明する。次に、CPU51によって実行される処理について、図4、図5のフローチャートを参照して詳細に説明する。
For this reason, the
HD1のCPU11によって実行される処理の概要について説明する。CB50の電源スイッチ62を介してHMD1の電源をオンする操作がされた場合、CPU11は次の処理を開始する。CPU11は、カメラ20による撮影を開始する。カメラ20は、撮影を開始した場合、所定領域内を撮影しながら画像データを継続的に出力する。以下、カメラ20から出力される画像データを、撮影画像データという。撮影画像データの画像形式は、Motion JPEG形式、Audio Video Interleave形式、QuickTime形式等である。CPU11は、カメラ20から出力される撮影画像データを、インターフェイス15を介して受信する。CPU11は、撮影画像データをCB50に送信する。
An outline of processing executed by the CPU 11 of the
又、CPU11は、軌跡画像26(図3参照)の映像信号をCB50から受信する。CPU11は、受信した映像信号に基づいて画像表示部14を制御することによって、画像表示部14に軌跡画像26を表示させる。HD1を装着したユーザは、画像表示部14に表示された画像からの光がハーフミラー3を反射して左眼に入射することによって、軌跡画像26を視認する。なお、HD1を装着したユーザの左眼には、視野範囲内の実像22からの光がハーフミラー3を透過して入射するので、ユーザは、画像表示部14に表示された軌跡画像26が外界の実像22に重ねられた光景を視認する。
Further, the CPU 11 receives a video signal of the trajectory image 26 (see FIG. 3) from the
なお、上述において、カメラ20は、CB50に対して撮影画像データを直接送信してもよい。又、画像表示部14は、CB50から映像信号を直接受信してもよい。
In the above description, the
図4、図5を参照し、CB50のCPU51によって実行される処理の詳細について説明する。メイン処理は、電源スイッチ62を介してHMD1の電源をオンする操作がされた場合に、プログラムROM53に記憶されたプログラムをCPU51が実行することによって開始される。CPU51は、RAM52に記憶した変数nに0を代入して初期化する(S10)。nは、後述するテーブル541(図7参照)に情報を記憶する場合に、記憶された順序を示すインデックスとして対応付けられる。CPU51は、HD10から送信された撮影画像データを、接続コントローラ58を介して受信する(S11)。CPU51は、受信した撮影画像データをRAM52に記憶する。
Details of processing executed by the
CPU51は、RAM52に記憶した撮影画像データに基づいて解析を行い(S13)、撮影画像から指先を特定する。具体的には次の通りである。CPU51は、撮影画像データに対応する撮影画像から、肌色の領域を検出する。肌色領域の検出は、例えば、肌色に対応する所定の画素値(例えば、R=241,G=187,B=147)を有する画素が連続している領域と検出することで可能である。なお、所定の画素値は他の値であってもよく、所定の幅を有してもよい。CPU51は、検出した肌色の領域全体を囲う多角形を特定する。CPU51は、特定した多角形の形状と、プログラムROM53に予め記憶された指先特定用の画像テンプレートとに基づいて、周知のパターンマッチング処理を行う。CPU51は、パターンマッチング処理によって算出された相互相関係数が所定の範囲内の値である場合、特定した多角形の形状と画像テンプレートとのパターンマッチングに成功したと判断する。この場合、CPU51は、多角形の形状の頂点を指先と特定する。なお、撮影画像に指先が含まれているかの判断方法は、上記方法に限定されない。
The
CPU51は、上記の方法で指先を特定できたか判断する(S15)。CPU51は、指先を特定できた場合、撮影画像に指先が含まれていると判断する(S15:YES)。CPU51は、nに1を加算する(S16)。CPU51は、撮影画像に指先が含まれていると判断してからの経過時間を計測する為のタイマ変数の更新を開始する(S17)。タイマ変数は、OSによって一定周期(例えば1ms)周期で1ずつ加算される。CPU51は、タイマ変数の値に基づいて、撮影画像に指先が含まれていると判断してからの経過時間を特定できる。
The
CPU51は、特定された指先の位置を示す座標情報を特定する(S18)。座標情報の基準点は、カメラ20によって撮影される所定領域21(図3参照)内の左下の隅とされる。所定領域21の左右方向がX軸方向とされ、上下方向がY軸方向とされる。右方向及び上方向が正方向とされ、左方向及び下方向が負方向とされる。CPU51は、特定した座標情報をRAM52に記憶する。
The
CPU51は、S18で特定した座標情報に基づき、画像表示部14に軌跡画像26(図3参照)を表示させる為に、次の処理を行う。CPU51は、座標情報によって示される所定領域21内の位置に対応する実像22(図3参照)上の位置(指先の位置)を特定する。CPU51は、画像処理部57を駆動し、特定した実像22上の位置に表示する軌跡画像26を形成させ、ビデオRAM56に記憶させる。CPU51は、ビデオRAM56に記憶された軌跡画像26に基づいて映像信号を生成する。映像信号の形式は、Transition Minimized Differential Signaling(TMDS)、Low voltage differential signaling(LVDS)等である。CPU51は、接続コントローラ58を介してHD10に映像信号を送信する(S19)。なお、映像信号は、CPU51によって生成される場合に限らない。例えば映像信号は、ビデオRAM56に記憶されたコンテンツ画像に基づいて接続コントローラ19が生成してもよい。
The
なお上記のように、HD10のCPU11は、CB50から送信された軌跡画像26の映像信号を、接続コントローラ19を介して受信する。CPU11は、受信した映像信号に基づいて画像表示部14を制御することによって、画像表示部14に軌跡画像26を表示させる。従って、CPU51は、HD10に対して映像信号を送信することによって、画像表示部14に軌跡画像を表示させていることになる。以下では、CPU51が画像処理部57を駆動して軌跡画像26を形成させ、形成された軌跡画像26をビデオRAM56に記憶させ、ビデオRAM56に記憶された軌跡画像26に基づいて映像信号を生成し、HD10に対して映像信号を送信することによって、画像表示部14に軌跡画像26を表示させることを、CPU51が画像表示部14に軌跡画像26を表示させるという。
As described above, the CPU 11 of the
又、後述するように、CPU51は、S35で指先の位置の経時的な変化の傾向が所定の条件を満たすと判断する迄の間、又は、S41、S43、S45で、指先を特定してからの経過時間が所定値よりも大きいと判断する迄の間、S19を繰り返し実行し、軌跡画像26を画像表示部14に表示させる。又、後述するように、CPU51は、S27の修正処理によって、修正した軌跡画像26を画像表示部14に表示させる。ここでCPU51は、S19でn回目に軌跡画像26を画像表示部14に表示させる場合、S19及びS27で画像表示部14に表示させた1〜n−1回目に対応する軌跡画像26も、同時に表示させる。このため、S19でn回目に軌跡画像26が画像表示部14に表示された場合、画像表示部14にはn個の軌跡画像26が表示された状態になる。
Further, as will be described later, until the
CPU51は、S11で取得された撮影画像データに基づき、撮影画像のうち所定領域21の四隅の近傍に配置された特徴的な点を、カメラ20の撮影方向に対応する点として特定する(S21)。以下、特定される特徴的な点を、参照点という。図6の撮影画像31を参照して具体的に説明する。撮影画像31は、HD10から受信した撮影画像データに対応する撮影画像を示す。撮影画像31を囲む枠線は、カメラ20によって撮影される所定領域21を示す。所定領域21の形状は長方形である。CPU51は、所定領域21の四隅の頂点32A(左上)、32B(右上)、32C(左下)、32D(右下)の夫々を中心とする円弧33A、33B、33C、33Dを定義する。以下、円弧33A〜33Dを総称して、円弧33という。円弧33の半径は、所定領域21の短辺の半分の長さよりも短い。CPU51は、撮影画像31のうち円弧33Aを含む扇形の内部の部分34A(左上)、円弧33Bを含む扇形の内部の部分34B(右上)、円弧33Cを含む扇形の内部の部分34C(左下)、及び、円弧33Dを含む扇形の内部の部分34D(右下)の夫々の部分を抽出する。部分34A〜34Dは、夫々、撮影画像31のうち所定領域21の四隅の近傍の部分に対応する。CPU51は、抽出した部分34A〜34Dの夫々について、Sobe1オペレータを用いた手法やキャニー法などの一次微分の勾配を利用したアルゴリズムや、勾配の局所的極大を検出するために二次微分のゼロ交差点を利用したアルゴリズムなど、周知のエッジ検出法によって境界点を検出する。CPU51は、検出された複数の境界点のうち濃度差が最も大きい点を、夫々の部分の中の特徴的な点として特定する。これによってCPU51は、部分34A〜34Dの夫々から参照点35A〜35Dを特定する。以下、参照点35A〜35Dを総称して参照点35という。
Based on the photographed image data acquired in S11, the
なおCPU51は、S21(図4参照)が繰り返し実行された場合でも、撮影画像31のうち共通する特徴的な点を、夫々の部分から参照点35として特定できる。その理由は、参照点35を特定する場合のエッジ検出法の各種パラメータ(勾配の値や濃度差)、及び、エッジ検出によって検出された複数の境界点から参照点を選択する場合のアルゴリズムが、S21が繰り返し実行される場合の夫々で共通とされるためである。具体的には次の通りである。撮影画像31に含まれる一軒家の屋根(参照点35A)、長屋の屋根(参照点35B)、一軒家の玄関(参照点35C)、及び、長屋の側壁の特定の位置(参照点35D)の夫々が、参照点35として特定された場合を例に挙げる。CPU51は、参照点35A〜35Dの夫々の位置を示す座標情報と、エッジ検出法によって参照点35A〜35Dの夫々を特定した時のパラメータとを関連付けてRAM52に記憶する。CPU51は、S21を繰り返し実行する場合、RAM52に記憶されたパラメータを参照する。具体的には、CPU51は、エッジ検出法によって複数の境界点を検出した時の複数のパラメータのうち、RAM52に記憶されたパラメータに最も近いパラメータに対応する境界点を、参照点35として特定する。これによってCPU51は、ユーザの頭部の向きが変更されることによってカメラ20の撮影方向が変化し、撮影画像31に含まれる風景が変化した場合でも、撮影画像31に含まれる一軒家の屋根、長屋の屋根、一軒家の玄関、及び、長屋の側壁の特定の位置の夫々を、参照点35A〜35Dとして繰り返し特定できる。
Note that the
なお、参照点35を4つ特定する理由は、HD10を装着したユーザによる頭部の向きが変化することによって、カメラ20によって撮影される所定領域21の内側から参照点35が外れる場合がある為である。又、カメラ20によって撮影された所定領域21内の参照点35が、ユーザの手によって隠れる場合がある為である。CPU51は、所定領域21の四隅の近傍の部分34A〜34Dから合計4つの参照点35を特定することによって、ユーザの頭部の向きが変化した場合や、ユーザの手の位置が変化した場合でも、常に何れかの参照点35を特定できる。
The reason for specifying the four
図4に示すように、CPU51は、S18で特定した指先の位置を示す座標情報のX成分から、S21で特定した4つの参照点35の位置を示す座標情報の夫々のX成分を減算し、4つのX成分の算出結果を特定する。CPU51は、S18で特定した指先の位置を示す座標情報のY成分から、S21で特定した4つの参照点35の位置を示す座標情報の夫々のY成分を減算し、4つのY成分の算出結果を特定する。CPU51は、特定された4つのX成分の算出結果及び4つのY成分の算出結果の夫々を対応付け、4つの差分情報を特定する(S23)。4つの差分情報の夫々は、4つの参照点35の夫々の位置を基準とした場合の指先の位置の相対位置を示す。
As shown in FIG. 4, the
なお、CPU51は、S21で4つの参照点35のうち何れかを特定できなかった場合、例えば、HD10を装着したユーザが頭部の向きを変化させたことによって何れかの参照点35が所定領域21の内側から外れた場合、何れかの参照点35に基づいて差分情報を算出しない。しかしながら上記のように、参照点35は、所定領域21の四隅の近傍の夫々から特定されるので、CPU51は、ユーザの頭部の向きが変化した場合でも、常に何れかの参照点35から差分情報を算出できる。
Note that if the
CPU51は、S21で特定した参照点35の位置を示す4つの座標情報、S18で特定した指先の位置を示す座標情報、及び、S23で特定された4つの差分情報を関連付けて、図7に示すテーブル541に記憶する(S25)。CPU51は、nの値をインデックスとして更に関連付けてテーブル541に記憶する。以下、参照点の位置を示す座標情報を第1情報という。指先の位置を示す座標情報を第2情報という。差分情報を第3情報という。
The
図7を参照し、テーブル541を説明する。テーブル541には、インデックス、4つの第1情報、第2情報、及び、4つの第3情報が関連付けられて記憶される。インデックスは、4つの第1情報、第2情報、及び、4つの第3情報がテーブル541に記憶された順序、言い換えれば、S18で指先の位置が特定され、S21で参照点35の位置が特定され、S23で第3情報が算出された順序を示す。
The table 541 will be described with reference to FIG. The table 541 stores an index, four pieces of first information, second information, and four pieces of third information in association with each other. The index is the order in which the four first information, the second information, and the four third information are stored in the table 541. In other words, the position of the fingertip is specified in S18, and the position of the
なお、図7は、図3の光景25F〜25Jで示された場合のように、カメラ20の撮影方向が横方向に変化し、且つ、指先の位置を上から下に向けて垂直方向に移動した場合に作成されるテーブル541を具体的に示している。図3の光景25F〜25Jでは、カメラ20の撮影方向が横方向に変化することに伴い、指先の位置は、所定領域21内を右上から左下に向けて斜め方向に変化している。この位置の変化の傾向は、第2情報のX成分及びY成分の夫々がインデックスの増加に伴って1ずつ減少していることによって示されている。一方、4つの第3情報の夫々は、インデックスが増加するに従ってY成分のみ減少し、X成分は変化しない。その理由は、4つの第3情報の夫々は、参照点35の位置を基準とした場合の指先の位置の相対位置を示している為である。参照点35の位置は、カメラ20の撮影方向に応じて変化するので、参照点35の位置を基準とした場合の指先の位置の相対位置は、ユーザの頭部の動きの影響を受けない。このように、4つの第3情報の夫々は、指先の実際の動きに対応する位置の変化の傾向を示す。
Note that, in FIG. 7, the shooting direction of the
図4に示すように、CPU51は、テーブル541を参照し、n−1のインデックスに対応する第1情報をS21で取得してから、nのインデックスに対応する第1情報をS21で取得する迄の間に、参照点35の位置に対する指先の相対位置が変化したか判断する(S26)。具体的には次の通りである。CPU51は、テーブル541のうちn−1のインデックスに対応付けられた4つの第3情報と、nのインデックスに対応付けられた4つの第3情報とを取得する。以下、n−1のインデックスに対応付けられた4つの第3情報を、4つの第3情報(n−1)という。nのインデックスに対応付けられた4つの第3情報を、4つの第3情報(n)という。CPU51は、取得した4つの第3情報(n−1)、及び、4つの第3情報(n)について、同一の参照点35に対応する第3情報どうしを比較する。4つの第3情報の何れかが相違する場合、参照点35を基準とした場合の指先の相対位置は変化していることになる。CPU51は、参照点35を基準とした場合の指先の相対位置が変化していると判断した場合(S26:YES)、画像表示部14に表示された軌跡画像26を修正する処理(修正処理、図5参照)を実行する(S27)。
As illustrated in FIG. 4, the
図5を参照し、修正処理を説明する。CPU51は、nが1よりも大きいか判断する(S50)。CPU51は、nが1よりも大きくないと判断した場合(S50:NO)、修正処理を終了させ、処理をメイン処理(図4参照)に戻す。CPU51は、nが1よりも大きいと判断した場合(S50:YES)、RAM52に記憶された変数iに1を記憶する(S53)。CPU51は、テーブル541のうちiのインデックスに対応する4つの第1情報及び第2情報を取得する(S55)。CPU51は、テーブル541のうちnのインデックスに対応する4つの第1情報を取得する(S57)。
The correction process will be described with reference to FIG. The
CPU51は、S55で取得した4つの第1情報(インデックス:i)と、S57で取得した4つの第1情報(インデックス:n)とに基づき、同一の参照点35に対応する第3情報どうしのX成分及びY成分の夫々の減算を行うことによって、4つの参照点35の夫々に対応するX成分及びY成分の差分を算出する。以下、X成分の差分をX差分といい、Y成分の差分をY差分という。CPU51は、同一の参照点35毎に算出したX差分及びY差分のうち、何れかの参照点35に対応するX差分及びY差分を選択する。例えばCPU51は、撮影画像31(図6参照)のうち左上の部分34A(図6参照)、右上の部分34B(図6参照)、右下の部分34C(図6参照)、及び右下の部分34D(図6参照)の順を優先度として定めてもよい。CPU51は、優先度の高い部分から特定された参照点35に対応するX差分及びY差分を優先的に選択してもよい。CPU51は、選択したX差分及びY差分を加算する。なお、X差分及びY差分を加算した値は、テーブル541のうちiのインデックスに対応する第1情報をS11で取得してから、nのインデックスに対応する第1情報をS11で取得する迄の間の、参照点35の位置の移動量に対応する。つまり、CPU51は、X差分及びY差分を加算することによって、参照点35の位置の移動量に対応する値を算出する(S59)。なお以下では、X差分及びY差分を加算することによって算出された値を、変化量と呼称する。なお、CPU51は、X差分及びY差分の夫々を2乗し、2乗された夫々の値を加算し、加算された値の平方根を算出することによって、変化量を算出してもよい。
Based on the four pieces of first information (index: i) acquired in S55 and the four pieces of first information (index: n) acquired in S57, the
CPU51は、S59で算出した参照点35の位置の変化量が所定値(例えば1)よりも小さいか判断する(S61)。CPU51は、参照点35の位置の変化量が所定値よりも小さいと判断した場合(S61:YES)、処理をS67に進める。CPU51は、参照点35の位置の変化量が所定値よりも小さくない場合(S61:NO)、次の処理を行うことによって、テーブル541のうちiのインデックスに対応する第2情報を補正する(S63)。CPU51は、テーブル541のうちiのインデックスに対応する第2情報のX成分から、S59で算出されたX差分を減算する。CPU51は、テーブル541のうちiのインデックスに対応する第2情報のY成分から、S59で算出されたY差分を減算する。以下、X成分及びY成分の算出結果を、補正情報といい、補正情報によって示される位置を補正位置という。CPU51は、i、nと補正情報とを関連付けて、図8に示すテーブル521に記憶する(S65)。
The
図8を参照し、テーブル521を説明する。テーブル521は、i,nと補正情報とを関連付けて記憶する。なお図8では、理解を容易とする為に、補正前の第2情報と矢印とが、夫々の補正情報の前に追加して示されている。又、後述するように、i=nの場合には補正情報は算出されない(S69、図5参照)が、理解を容易とする為、S19(図4参照)でn番目に表示された軌跡画像26の位置を示す座標情報が、i=nに対応付けて示されている。テーブル521の詳細は後述する。 The table 521 will be described with reference to FIG. The table 521 stores i, n and correction information in association with each other. In FIG. 8, in order to facilitate understanding, the second information before correction and an arrow are additionally shown before each correction information. As will be described later, correction information is not calculated when i = n (S69, see FIG. 5), but for the sake of easy understanding, the trajectory image displayed nth in S19 (see FIG. 4). Coordinate information indicating the position of 26 is shown in association with i = n. Details of the table 521 will be described later.
図5に示すように、CPU51は、S65で補正情報をテーブル521に記憶した後、iに1を加算する(S67)。CPU51は、S67で1を加算したiとnとを比較する(S69)。CPU51は、iとnとが一致しないと判断した場合(S69:NO)、iがnよりも小さいと判断する。この場合、CPU51は処理をS55に戻す。CPU51は、S67で1が加算されたiに基づいてS55〜S67の処理を繰り返す。これによってCPU51は、テーブル541に記憶された第2情報をインデックスの順番に補正し、i、nと補正情報とを関連付けてテーブル521に記憶する。
As shown in FIG. 5, after storing the correction information in the table 521 in S65, the
iとnとが一致した場合、テーブル541のうち1からn−1のインデックスの夫々に対応する第2情報は、全て補正されたことになる。CPU51は、iとnとが一致したと判断した場合(S69:YES)、画像表示部14に表示された状態の軌跡画像26のうち、1〜n−1番目に対応する軌跡画像26を消去する(S71)。1〜n−1番目に対応する軌跡画像26とは、S19で1〜n番目に表示された軌跡画像26の夫々の位置がS63で補正され、後述するS73で補正位置に表示された軌跡画像26を示す。
When i and n match each other, the second information corresponding to each of the
具体的には次の通りである。CPU51は、テーブル541のうちnのインデックスに対応する第2情報によって示される所定領域21内の位置を特定する。次にCPU51は、特定した位置に対応する実像22上の位置に重ねる軌跡画像26を、画像表示部14に表示させる。これによって、S19でn番目に表示された軌跡画像26のみ表示され、1〜n−1番目に対応する軌跡画像26が表示されない状態になる。次に、CPU51は、テーブル521に記憶した補正情報によって示される所定領域21内の補正位置を特定する。CPU51は、特定した補正位置に対応する実像22上の位置に重ねる軌跡画像26を、画像表示部14に表示させる(S73)。これによって、S71で消去された1〜n−1番目に対応する軌跡画像26の夫々の代わりに、位置が修正されたn−1個の軌跡画像26が、n番目に表示された軌跡画像26に追加して表示される。CPU51は修正処理を終了させ、処理をメイン処理(図4参照)に戻す。
Specifically, it is as follows. The
以下、n番目に表示された軌跡画像26を、n番目の軌跡画像26という。又、1〜n−1番目の軌跡画像26が、修正処理によって位置が補正位置に補正され、画像表示部14に表示された場合の軌跡画像26を、1〜n−1番目の軌跡画像という。
Hereinafter, the
図4に示すように、修正処理(S27)の終了後、CPU51は、テーブル541に記憶された複数の第3情報に基づいて、指先の位置の経時的な変化が所定の条件を満たすか判断する(S29、S35)。
As shown in FIG. 4, after the correction process (S27) is completed, the
判断の具体的な方法は次の通りである。CPU51は、テーブル541のうち、複数のインデックスの夫々に関連付けて記憶された4つの第3情報のうち、何れかの参照点35に対応する第3情報を選択する。例えばCPU51は、撮影画像31(図6参照)のうち左上の部分34A(図6参照)、右上の部分34B(図6参照)、右下の部分34C(図6参照)、及び右下の部分34D(図6参照)の順を優先度として定めてもよい。CPU51は、優先度の高い部分から特定された参照点35に対応する第3情報を選択してもよい。次にCPU41は、インデックス毎に選択された複数の第3情報の夫々によって示される位置を、インデックスの順に線で結び、指先の移動の軌跡を示す線分として特定する。これによってCPU51は、指先の位置の経時的な変化、即ち、指先の動きを特定する(S29)。
The specific method of judgment is as follows. The
CPU51は、特定した線分と、プログラムROM53に予め記憶された軌跡特定用の複数の画像テンプレートとに基づいて、周知のパターンマッチング処理を行う。軌跡特定用の複数の画像テンプレートは、特定の形状を示す画像のテンプレートである。特定の形状とは、例えば、上下方向に延びる直線、左右方向に延びる直線、三角形、円形等である。CPU51は、パターンマッチング処理によって複数の画像テンプレートの夫々に対応する複数の相互相関係数を算出し、最も1に近い相互相関係数が所定の範囲内の値であるか判断する。CPU51は、最も1に近い相互相関係数が所定の範囲内の値である場合、パターンマッチングに成功したと判断する。この場合CPU51は、指先の位置の変化の傾向が、最も1に近い相互相関係数に対応する画像テンプレートによって示される特定の形状と一致すると判断する(S35:YES)。なお、複数の第3情報は、参照点35に対する相対位置を示しているので、実際の指先の位置を示す。このためCPU51は、カメラ20による撮影方向が変化した場合でも、指先の位置の変化の傾向が所定の条件を満たしているかを、上記の処理によって適切に判断できる。CPU51は処理をS37に進める。
The
なお、指先の位置の経時的な変化が所定の条件を満たすかの判断方法は、上記の方法に限定されない。例えばCPU51は、インデックス毎に選択された複数の第3情報の変化の傾向が、複数の所定の条件式のうち何れかを満たす場合、指先の動きが、何れかの所定の条件式に対応する条件を満たすと判断してもよい。
Note that a method for determining whether a change in the position of the fingertip over time satisfies a predetermined condition is not limited to the above method. For example, when the tendency of change of the plurality of third information selected for each index satisfies any of a plurality of predetermined conditional expressions, the
CPU51は、画像表示部14に表示させた軌跡画像26を全て消去する(S37)。理由は、指先の位置の経時的な変化が所定の条件を満たすと既に判断されているので、ユーザはこれ以上指先を移動させる必要がなく、軌跡画像26はユーザにとって不要となる為である。従ってCPU51は、上記処理によって、ユーザにとって不要な軌跡画像26を消去できる。又、CPU51は、軌跡画像26を消去することによって、指先の位置の変化の傾向が所定の条件を満たすと判断したことをユーザに通知できる。
The
CPU51は、プログラムROM53に記憶された処理内容DBを参照する。処理内容DBには、複数の画像テンプレートの種別を示す情報と、HMD1の処理内容を示す情報とが関連付けて記憶されている。CPU51は、S35で指先の動きを判断する時に算出された1に最も近い相互相関係数に対応する画像テンプレートに対応する処理内容を、処理内容DBを参照することによって特定する。CPU51は、特定した処理内容に基づいて処理を実行する(S39)。処理内容DBを参照することによって、CPU51は、指先の位置の変化の傾向に対応する処理を容易に特定できる。CPU51は、S17で開始したタイマ変数の更新を停止する(S40)。CPU51は処理をS11に戻す。
The
CPU51は、上記の処理が繰り返される中で、S11で受信された撮影画像データに対応する撮影画像から指先を特定できないと判断した場合(S15:NO)、S17で更新を開始したタイマ変数の値に基づいて、撮影画像に指先が含まれていない状態の経過時間を特定する。CPU51は、特定した経過時間が所定値(以下、第1時間という。)よりも大きく、且つ、画像表示部14に軌跡画像26を表示させているか判断する(S41)。CPU51は、特定した経過時間が第1時間よりも大きくないか、又は、画像表示部14に軌跡画像26を表示させていないと判断した場合(S41:NO)、処理をS11に戻す。CPU51は、特定した経過時間が第1時間よりも大きく、且つ、画像表示部14に軌跡画像26を表示させていると判断した場合(S41:YES)、画像表示部14に表示させた軌跡画像26を全て消去する(S42)。CPU51は処理をS40に進める。
When the
カメラ20によって撮影される所定領域21内に指先が含まれていると最初に判断された後(S15)、第1時間以上継続して指先が所定領域21内に含まれない状態となった場合(S41:YES)、ユーザは、HMD1に特定の処理を実行させるための指先の移動動作を行っていない場合がある。又、このような場合、S35で、指先の位置の経時的な変化が所定の条件を満たすか否かを判断できなくなる。このような場合、軌跡画像26はユーザにとって不要となる。従ってCPU51は、上記処理によって、ユーザにとって不要な軌跡画像26を消去できる。
When it is first determined that the fingertip is included in the predetermined
CPU51は、上記の処理が繰り返される中で、S26の処理で、4つの第3情報(n−1)と4つの第3情報(n)とについて同一の参照点35に対応する第3情報どうしを比較し、何れも相違しないと判断した場合、参照点35を基準とした場合の指先の相対位置が変化していないと判断する(S26:NO)。CPU51は、S17で更新を開始したタイマ変数の値に基づいて、参照点35を基準とした場合の指先の相対位置が変化しない状態の経過時間を特定する。CPU51は、特定した経過時間が所定値(以下、第2時間という。)よりも大きく、且つ、画像表示部14に軌跡画像26を表示させているか判断する(S43)。CPU51は、特定した経過時間が第2時間よりも大きくないか、又は、画像表示部14に軌跡画像を表示させていないと判断した場合(S43:NO)、処理をS11に戻す。CPU51は、特定した経過時間が第2時間よりも大きく、且つ、画像表示部14に軌跡画像を表示させていると判断した場合(S43:YES)、画像表示部14に表示させた軌跡画像26を全て消去する(S44)。CPU51は処理をS40に進める。
While the above processing is repeated, the
カメラ20によって撮影される所定領域21内に指先が含まれていると最初に判断された後(S15)、参照点35を基準とした場合の指先の相対位置が変化しない状態が第2時間以上継続した場合(S43:YES)、ユーザは、HMD1に特定の処理を実行させるための指先の移動動作を行っていない場合可能性が高い。このような場合、軌跡画像26はユーザにとって不要となる。従ってCPU51は、上記処理によって、ユーザにとって不要な軌跡画像26を消去できる。
After it is first determined that the fingertip is included in the predetermined
CPU51は、上記の処理が繰り返される中で、S35の処理で、最も1に近い相互相関係数が所定の範囲外の値である場合、指先の動きが、複数の画像テンプレートによって示される条件を満たしていないと判断する(S35:NO)。CPU51は、S17で更新を開始したタイマ変数の値に基づいて、指先の動作が所定の条件を満たしていない状態の経過時間を特定する。CPU51は、特定した経過時間が所定値(以下、第3時間という。)よりも大きいか判断する(S45)。CPU51は、特定した経過時間が第3時間よりも大きくないと判断した場合(S45:NO)、処理をS11に戻す。CPU51は、特定した経過時間が第3時間よりも大きいと判断した場合(S45:YES)、画像表示部14に表示させた軌跡画像26を全て消去する(S46)。CPU51は処理をS40に進める。
In the process of S35, when the cross-correlation coefficient closest to 1 is a value outside the predetermined range in the process of S35, the
カメラ20によって撮影される所定領域21内に指先が含まれていると最初に判断され(S15)、軌跡画像26が表示された(S19)後、指先の動作が所定の条件を満たさない状態が第3時間以上継続した場合(S45:YES)、ユーザは、HMD1に特定の処理を実行させるための指先の移動動作を行っていない可能性が高い。このような場合、軌跡画像26はユーザにとって不要となる。従ってCPU51は、上記処理によって、ユーザにとって不要な軌跡画像26を消去できる。
First, it is determined that the fingertip is included in the predetermined
図4、図5、図7〜図9を参照し、軌跡画像26が画像表示部14に表示される場合について、具体的に説明する。CPU51は、nが「1」の状態でメイン処理(図4参照)のS17以降を実行する場合、テーブル541(図7参照)のうち「1」のインデックスに対応する第2情報(13,8)に基づき、画像表示部14の対応する位置に軌跡画像26F(光景25F、図9参照)を1番目の軌跡画像として表示させる(S19、図4参照)。CPU51は、修正処理(S27、図4参照)を実行した場合、nが1より大きくないので(S50:NO、図5参照)、第2情報の補正(S63、図5参照)を行わず、テーブル521(図8参照)に補正情報を記憶しない(但し、テーブル521では、上記で説明したように、理解を容易とする為に、軌跡画像26Fに対応する位置を示す第2情報(13,8)が、i=n=1に対応付けて示されている。)。
The case where the
次に、CPU51は、nが「2」の状態でメイン処理のS17以降を実行する場合、テーブル541のうち「2」のインデックスに対応する第2情報(12,7)に基づき、画像表示部14の対応する位置に軌跡画像26G(光景25G、図9参照)を2番目の軌跡画像として表示させる(S19、図4参照)。又、CPU51は、1番目の軌跡画像26Fも画像表示部14に表示させる(S19)。テーブル521では、軌跡画像26Gに対応する位置を示す第2情報(12,7)が、i=n=2に対応付けて示されている。CPU51は、修正処理(S27、図4参照)を実行した場合、nが「1」より大きいので(S50:YES、図5参照)、次のようにして第2情報の補正を行う。
Next, in the case where n is “2” and the main process is executed after S17 of the main process, the
CPU51は、「1」(=i)のインデックスに対応する第1情報(5,9)(15,9)(5,1)(15,1)及び第2情報(13,8)を、テーブル541(図7参照)から取得する(S55、図5参照)。CPU51は、「2」(=n)のインデックスに対応する第1情報(4,9)(14,9)(4,1)(14,1)を、テーブル541(図7参照)から取得する(S57、図5参照)。CPU51は、S55及びS57の夫々で取得した第1情報に基づいて、X差分及びY差分を算出する。算出されるX差分は何れも「1」であり、Y差分は何れも「0」である。CPU51は、X差分とY差分とを加算し、参照点35の位置の変化量「1」を算出する(S59、図5参照)。算出される参照点35の位置の変化量「1」は所定値「1」よりも小さくないので(S61:NO、図5参照)、CPU51は、テーブル541のうち「1」(=i)のインデックスに対応する第2情報のX成分「13」から、S59で算出されたX差分「1」を減算し、補正後のX成分「12」を得る。CPU51は、テーブル541のうち「1」(=i)のインデックスに対応する第2情報のY成分「8」から、S59で算出されたY差分「0」を減算し、補正後のY成分「8」を得る。CPU51は、補正情報(12,8)を特定し、i=1、n=2に対応付けてテーブル521(図8参照)に記憶する(S65、図5参照)。これによって、第2情報は(13,8)から(12,8)に修正されたことになる。
The
CPU51は、i(=1)に「1」を加算した結果「2」がn(=2)と同一であるため(S69:YES、図5参照)、テーブル541のうち「1」(=n−1)のインデックスに対応する第2情報に基づいて画像表示部14に表示させた1番目の軌跡画像26Fを消去する(S71、図5参照)(光景25G、図9参照)。CPU51は、画像表示部14のうちテーブル521に記憶された補正情報(12,8)によって示される補正位置に、軌跡画像261(光景25G、図9参照)を、新たな1番目の軌跡画像として表示させる(S73、図5参照)。図9に示すように、軌跡画像261(補正情報:(12,8))は、消去した軌跡画像26F(座標情報:(13,8))に対して左方に配置する。また軌跡画像261は、S19(図4参照)で表示させた軌跡画像26G(座標情報:(12,7))に対して垂直上側に配置する。
The
CPU51は、nが「3」の状態でメイン処理のS17以降を実行する場合、テーブル541のうち「3」のインデックスに対応する第2情報(11,6)に基づき、画像表示部14の対応する位置に軌跡画像26H(光景25H、図9参照)を3番目の軌跡画像として表示させる(S19、図4参照)。又、CPU51は、1番目の軌跡画像261、及び、2番目の軌跡画像26Gも画像表示部14に表示させる(S19)。CPU51は、修正処理(S27、図4参照)を実行した場合、nが「1」より大きいので(S50:YES、図5参照)、次のようにして第2情報の補正を行う。
When the
CPU51は、「1」(=i)のインデックスに対応する第1情報及び第2情報を、テーブル541(図7参照)から取得する(S55、図5参照)。CPU51は、「3」(=n)のインデックスに対応する第1情報(3,9)(13,9)(3,1)(13,1)を、テーブル541(図7参照)から取得する(S57、図5参照)。CPU51は、S55及びS57の夫々で取得した第1情報に基づいて、X差分及びY差分を算出する。算出されるX差分は何れも「2」であり、Y差分は何れも「0」である。CPU51は、X差分とY差分とを加算し、参照点35の位置の変化量「2」を算出する(S59、図5参照)。算出される参照点35の位置の変化量「2」は所定値「1」よりも小さくないので(S61:NO、図5参照)、CPU51は、テーブル541のうち「1」(=i)のインデックスに対応する第2情報のX成分「13」から、S59で算出されたX差分「2」を減算し、補正後のX成分「11」を得る。CPU51は、テーブル541のうち「1」(=i)のインデックスに対応する第2情報のY成分「8」から、S59で算出されたY差分「0」を減算し、補正後のY成分「8」を得る。CPU51は、補正情報(11,8)を特定し、i=1、n=3に対応付けてテーブル521(図8参照)に記憶する(S65、図5参照)。これによって、第2情報は(13,8)から(11,8)に修正されたことになる。CPU51は、i(=1)に「1」を加算した結果「2」がn(=3)より小さいので(S69:NO、図5参照)、1が加算されたi(=2)に基づいて処理を繰り返す。
The
CPU51は、「2」(=i)のインデックスに対応する第1情報(4,9)(14,9)(4,1)(14,1)及び第2情報(12,7)を、テーブル541(図7参照)から取得する(S55、図5参照)。CPU51は、「3」(=n)のインデックスに対応する第1情報を、テーブル541(図7参照)から取得する(S57)。CPU51は、S55及びS57の夫々で取得した第1情報に基づいて、X差分及びY差分を算出する。算出されるX差分は何れも「1」であり、Y差分は何れも「0」である。CPU51は、X差分とY差分とを加算し、参照点35の位置の変化量「1」を算出する(S59、図5参照)。算出される参照点35の位置の変化量「1」は所定値「1」よりも小さくないので(S61:NO、図5参照)、CPU51は、テーブル541のうち「2」(=i)のインデックスに対応する第2情報のX成分「12」から、S59で算出されたX差分「1」を減算し、補正後のX成分「11」を得る。CPU51は、テーブル541のうち「2」(=i)のインデックスに対応する第2情報のY成分「7」から、S59で算出されたY差分「0」を減算し、補正後のY成分「7」を得る。CPU51は、補正情報(11,7)を特定し、i=2、n=3に対応付けてRAM52に記憶する(S65、図5参照)。これによって、第2情報は(12,7)から(11,7)に修正されたことになる。
The
CPU51は、i(=2)に「1」を加算した結果「3」がn(=3)と同一であるため(S69:YES、図5参照)、テーブル541のうち「1」「2」(=n−1)のインデックスに対応する第2情報に基づいて表示させた1番目の軌跡画像261、及び、2番目の軌跡画像26Gを消去する(S71、図5参照)(光景25H、図9参照)。CPU51は、画像表示部14のうちテーブル521に記憶された補正情報(11,8)によって示される補正位置に、軌跡画像262(光景25H、図9参照)を、新たな1番目の軌跡画像として表示させる。又、補正情報(11,7)によって示される補正位置に、軌跡画像263(光景25H、図9参照)を、新たな2番目の軌跡画像として表示させる(S73、図5参照)。図9に示すように、軌跡画像262(補正情報:(11,8))は、消去された軌跡画像261(補正情報:(12,8))に対して左方に配置する。又、軌跡画像263(補正情報:(11,7))は、消去された軌跡画像26G(座標情報:(12,7))に対して左方に配置する。又、軌跡画像262、263は、S19(図4参照)で表示させた軌跡画像26H(座標情報:(11,6))に対して垂直上側に配置する。
The
以上の処理は、メイン処理のS35で指先の位置の経時的な変化が所定の条件を満たすと判断されるまで繰り返される。これによって、図9の光景25I、25Jで示されるように、n−1番目の軌跡画像26は、修正処理(S27参照)が繰り返される毎に補正される。従って、光景25Iの軌跡画像264〜266、26I、及び、光景25Jの軌跡画像267〜270、26Jで示されるように、軌跡画像26は、上から下に向けて垂直に並んだ状態になる。なお、この配置は、実際の指先の位置の経時的な変化の傾向を示す。
The above processing is repeated until it is determined in S35 of the main processing that a change with time of the fingertip position satisfies a predetermined condition. As a result, as shown by
以上説明したように、CPU51は、第1情報(参照点35の位置を示す情報)と、第2情報(指先の位置を示す情報)とに基づいて第3情報を決定し、テーブル541に記憶する。第3情報は、参照点35に対する指先の相対位置を特定可能な情報である。参照点35の位置は、カメラ20の撮影方向が変化することに応じて変化する。このため、参照点35に対する指先の相対位置の経時的な変化は、カメラ20の撮影方向が変化した場合でも、実際の指先の動きを示す。CPU51は、指先の相対位置の経時的な変化の傾向が所定の条件を満たす場合、対応する処理を実行する。これによってCPU51は、カメラ20による撮影方向が変化した場合でも、実際の指先の動きを正確に特定し、対応する処理を実行できる。
As described above, the
又、CPU51は、HD10を装着したユーザの頭部の向きが変化し、カメラ20の撮影方向が変化した場合でも、所定領域21の変化分を排除した軌跡画像26を、実際の指先の移動の様子を示す軌跡画像26として表示できる。従ってユーザは、所定の条件に合致するように指先を適切に移動させることができる。又、ユーザは、指先が所定の条件に合致するように移動しているかを容易に確認できる。又、画像表示部14に表示された直後の軌跡画像26、即ち、n番目に画像表示部14に表示された軌跡画像26は、実像22に含まれる手23の指先の位置と一致する。このためユーザは、軌跡画像26が指先の位置を示していることを違和感なく認識できる。
Further, the
本発明は上記実施形態に限定されず、種々の変更が可能である。図7、図10、図11を参照し、変形例における修正処理を説明する。図10の修正処理は、図4のメイン処理のS27で、図5の修正処理の代わりに実行される。メイン処理は上記実施形態と同一である為、処理を省略する。 The present invention is not limited to the above embodiment, and various modifications can be made. With reference to FIGS. 7, 10, and 11, correction processing in the modification will be described. The correction process of FIG. 10 is executed instead of the correction process of FIG. 5 in S27 of the main process of FIG. Since the main process is the same as the above embodiment, the process is omitted.
図10を参照し、変形例における修正処理を説明する。CPU51は、RAM52に記憶されたnが1よりも大きいか判断する(S70)。CPU51は、nが1よりも大きくないと判断した場合(S70:NO)、修正処理を終了させ、処理をメイン処理(図4参照)に戻す。CPU51は、nが1よりも大きいと判断した場合(S70:YES)、iの値としてnを設定する(S71)。CPU51は、テーブル541(図7参照)のうち「1」のインデックスに対応する4つの第1情報を取得する(S75)。CPU51は、テーブル541のうちi(=n)のインデックスに対応する4つの第1情報及び第2情報を取得する(S77)。
With reference to FIG. 10, the correction process in a modification is demonstrated. The
CPU51は、S75で取得した4つの第1情報(インデックス:1)と、S77で取得した4つの第1情報(インデックス:i)とに基づき、同一の参照点35に対応する第3情報どうしのX成分及びY成分の夫々の減算を行うことによって、4つの参照点35の夫々に対応するX成分及びY成分の差分(X差分及びY差分))を算出する。CPU51は、同一の参照点35毎に算出したX差分及びY差分のうち、何れかの参照点35に対応するX差分及びY差分を選択する。CPU51は、選択したX差分及びY差分を加算し、参照点35の位置の変化量を算出する(S79)。
The
CPU51は、S79で算出した参照点35の位置の変化量が所定値(例えば「1」)よりも小さいか判断する(S81)。CPU51は、参照点35の位置の変化量が所定値よりも小さいと判断した場合(S81:YES)、修正処理を終了させ、処理をメイン処理(図4参照)に戻す。CPU51は、参照点35の位置の変化量が所定値よりも小さくないと判断した場合(S81:NO)、次の処理を行うことによって、テーブル541のうちi(=n)のインデックスに対応する第2情報を補正する(S83)。具体的には次の通りである。CPU51は、テーブル541のうちiのインデックスに対応する第2情報のX成分に、S79で算出されたX差分を加算する。CPU51は、テーブル541のうちiのインデックスに対応する第2情報のY成分に、S79で算出されたY差分を加算する。CPU51は、算出されたX成分及びY成分を含む補正情報を、i(=n)、nと補正情報とを関連付けて、テーブル521(図11参照)に記憶する(S85)。
The
図11に示すように、テーブル521では、上記のように補正情報が記憶されることによって、i=nに補正情報が関連付けて記憶される。なお図11では、理解を容易とする為に、補正前の第2情報と矢印とが、夫々の補正情報の前に追加して示されている。又、i=n以外に対応する情報は記憶されないが、理解を容易とする為、補正情報に基づいて継続して画像表示部14に表示される軌跡画像26の位置を示す座標情報が示されている。
As shown in FIG. 11, in the table 521, the correction information is stored as described above, so that the correction information is stored in association with i = n. In FIG. 11, in order to facilitate understanding, second information before correction and an arrow are additionally shown before each correction information. In addition, information corresponding to other than i = n is not stored, but for easy understanding, coordinate information indicating the position of the
図10に示すように、CPU51は、画像表示部14に表示された状態の軌跡画像26のうち、S19(図4参照)で表示されたn番目の軌跡画像26を消去する(S87)。これによって、1〜n−1番目に対応する軌跡画像26が画像表示部14に表示された状態になる。1〜n−1番目に対応する軌跡画像26とは、S19で1〜n−1番目に表示された軌跡画像26の夫々の位置が、i=1〜n−1の時に実行された補正処理のS83で補正され、更に、i=1〜n−1の時に実行された補正処理のS89(後述)で、補正位置に表示された軌跡画像26を示す。
As shown in FIG. 10, the
次にCPU51は、テーブル521に記憶した補正情報によって示される所定領域21内の補正位置を特定する。CPU51は、特定した位置に対応する実像22上の位置に重ねる軌跡画像26を、画像表示部14に表示させる(S89)。これによって、S87で消去されたn番目に対応する軌跡画像26の代わりに、位置が修正されたn番目に対応する軌跡画像26が、1〜n−1番目に対応する軌跡画像26に追加して表示される。CPU51は修正処理を終了させ、処理をメイン処理(図4参照)に戻す。
Next, the
図4、図10〜図12を参照し、軌跡画像26が画像表示部14に表示される場合について、具体的に説明する。CPU51は、nが「1」の状態でメイン処理(図4参照)のS17以降を実行する場合、テーブル541(図7参照)のうち「1」のインデックスに対応する第2情報(13,8)に基づき、画像表示部14の対応する位置に軌跡画像26F(光景25F、図12参照)を表示させる(S19、図4参照)。CPU51は、修正処理(S27、図4参照)を実行した場合、nが1より大きくないので(S70:NO、図10参照)、第2情報の補正(S83、図10参照)を行わず、テーブル521(図11参照)に補正情報を記憶しない(但し、テーブル521では、上記で説明したように、理解を容易とする為に、軌跡画像26Fに対応する位置を示す第2情報(13,8)が、i=n=1に対応付けて示されている。)。
The case where the
次に、CPU51は、nが「2」の状態でメイン処理のS17以降を実行する場合、テーブル541のうち「2」のインデックスに対応する第2情報(12,7)に基づき、画像表示部14の対応する位置に軌跡画像26G(光景25G、図12参照)を表示させる(S19、図4参照)。CPU51は、修正処理(S27、図4参照)を実行した場合、nが「1」より大きいので(S70:YES、図10参照)、次のようにして第2情報の補正を行う。
Next, in the case where n is “2” and the main process is executed after S17 of the main process, the
CPU51は、「1」のインデックスに対応する第1情報(5,9)(15,9)(5,1)(15,1)を、テーブル541(図7参照)から取得する(S75、図10参照)。CPU51は、「2」(=i=n)のインデックスに対応する第1情報(4,9)(14,9)(4,1)(14,1)及び第2情報(12,7)を、テーブル541(図7参照)から取得する(S77、図10参照)。CPU51は、S75及びS77の夫々で取得した第1情報に基づいて、X差分及びY差分を算出する。算出されるX差分は何れも「1」であり、Y差分は何れも「0」である。CPU51は、X差分とY差分とを加算し、参照点35の位置の変化量「1」を算出する(S79、図10参照)。算出される参照点35の位置の変化量「1」は所定値「1」よりも小さくないので(S81:NO、図10参照)、CPU51は、テーブル541のうち「2」(=i=n)のインデックスに対応する第2情報のX成分「12」に、S79で算出されたX差分「1」を加算し、補正後のX成分「13」を得る。CPU51は、テーブル541のうち「2」のインデックスに対応する第2情報のY成分「7」に、S59で算出されたY差分「0」を加算し、補正後のY成分「7」を得る。CPU51は、補正情報(13,7)を特定し、i=2、n=2に対応付けてテーブル521(図11参照)に記憶する(S85、図10参照)。これによって、第2情報は(12,7)から(13,7)に修正されたことになる。
The
CPU51は、テーブル541のうち「2」(=i=n)のインデックスに対応する第2情報に基づいて画像表示部14に表示させた軌跡画像26Gを消去する(S87)(光景25G、図12参照)。CPU51は、画像表示部14のうちテーブル521に記憶された補正情報(13,7)によって示される補正位置に、軌跡画像281(光景25G、図12参照)を表示させる(S89、図10参照)。図12の光景25Gに示すように、軌跡画像281(補正情報:(13,7))は、消去した軌跡画像26F(座標情報:(12,7))に対して右方に配置する。また軌跡画像281は、軌跡画像26F(座標情報:(13,8))に対して垂直下側に配置する。
The
CPU51は、nが「3」の状態でメイン処理のS17以降を実行する場合、テーブル541のうち「3」のインデックスに対応する第2情報(11,6)に基づき、画像表示部14の対応する位置に軌跡画像26H(光景25H、図9参照)を表示させる(S19、図4参照)。CPU51は、修正処理(S27、図4参照)を実行した場合、nが「1」より大きいので(S70:YES、図10参照)、次のようにして第2情報の補正を行う。
When the
CPU51は、「1」のインデックスに対応する第1情報を、テーブル541(図7参照)から取得する(S75、図10参照)。CPU51は、「3」(=i=n)のインデックスに対応する第1情報(3,9)(13,9)(3,1)(13,1)及び第2情報(11,6)を、テーブル541(図7参照)から取得する(S77、図10参照)。CPU51は、S75及びS77の夫々で取得した第1情報に基づいて、X差分及びY差分を算出する。算出されるX差分は何れも「2」であり、Y差分は何れも「0」である。CPU51は、X差分とY差分とを加算し、参照点35の位置の変化量「2」を算出する(S79、図10参照)。算出される参照点35の位置の変化量「2」は所定値「1」よりも小さくないので(S81:NO、図10参照)、CPU51は、テーブル541のうち「3」(=i=n)のインデックスに対応する第2情報のX成分「11」に、S79で算出されたX差分「2」を加算し、補正後のX成分「13」を得る。CPU51は、テーブル541のうち「3」のインデックスに対応する第2情報のY成分「6」に、S59で算出されたY差分「0」を加算し、補正後のY成分「6」を得る。CPU51は、補正情報(13,6)を特定し、i=3、n=3に対応付けてテーブル521(図11参照)に記憶する(S85、図10参照)。これによって、第2情報は(11,6)から(13,6)に修正されたことになる。
The
CPU51は、テーブル541のうち「3」(=i=n)のインデックスに対応する第2情報に基づいて画像表示部14に表示させた軌跡画像26Hを消去する(S87)(光景25H、図12参照)。CPU51は、画像表示部14のうちテーブル521に記憶された補正情報(12,6)によって示される補正位置に、軌跡画像282(光景25H、図12参照)を表示させる(S89、図10参照)。図12の光景25Hに示すように、軌跡画像282(補正情報:(13,6))は、消去した軌跡画像26H(座標情報:(11,6))に対して右方に配置する。また軌跡画像282は、軌跡画像26F(座標情報:(13,8))、281(座標情報:(13,7))に対して垂直下側に配置する。
The
以上の処理は、メイン処理のS35で指先の位置の経時的な変化が所定の条件を満たすと判断されるまで繰り返される。これによって、図12の光景25I、25Jで示されるように、n番目に画像表示部14に表示された軌跡画像26は、修正処理(S27参照)によって補正される。従って、光景25Iの軌跡画像26F、281〜283、及び、光景25Jの軌跡画像26F、281〜284で示されるように、軌跡画像26は、上から下に向けて垂直に並んだ状態になる。なお、この配置は、実際の指先の位置の経時的な変化の傾向を示す。
The above processing is repeated until it is determined in S35 of the main processing that a change with time of the fingertip position satisfies a predetermined condition. As a result, as shown by the
このようにCPU51は、HD10を装着したユーザの頭部の向きが変化し、カメラ20の撮影方向が変化した場合でも、所定領域21の変化分を排除した軌跡画像26を、実際の指先の移動の様子を示す軌跡画像26として表示できる。従ってユーザは、所定の条件に合致するように指先を適切に移動させることができる。又、ユーザは、指先が所定の条件に合致するように移動しているかを容易に確認できる。又、上記実施形態の場合と異なり、画像表示部14に一旦表示された軌跡画像26は移動しない。このためユーザは、軌跡画像26を違和感なく視認できる。
In this way, the
上記実施形態において、CPU51は、S15で指先を特定したが、特定される対象物は指先に限定されない。例えばCPU51は、所定色(例えば赤色)のペン先を対象物として特定してもよい。この場合、CPU51は、所定色に対応する所定の画素値を有する画素が連続している領域を検出することで、対象物が含まれる領域を検出することができる。そして、検出した領域全体を囲う多角形の形状と、プログラムROM53に予め記憶された、対象物に対応する形状の画像テンプレートとに基づいて、周知のパターンマッチング処理が行われる。CPU51は、パターンマッチング処理によって算出された相互相関係数が所定の範囲内の値である場合、特定した多角形の形状と画像テンプレートとのパターンマッチングに成功したと判断する。この場合、CPU51は、多角形の領域をペン先と特定する。カメラ20は、CB50に対して撮影画像データを直接送信してもよい。
In the said embodiment, although CPU51 specified the fingertip by S15, the target object specified is not limited to a fingertip. For example, the
CPU51は、S21で、カメラ20の撮影方向を示す情報として参照点35を特定した。CPU451は、別の方法で、カメラ20の撮影方向を示す情報を特定してもよい。例えば、HD10には加速度センサ又は方位センサが更に設けられてもよい。加速度センサは、ユーザの頭部の向く方向の変化を、加速度の情報として検出してもよい。方位センサは、ユーザの頭部の向く方向の変化を、方位の情報として検出してもよい。CPU51は、加速度センサ又は方位センサによって検出される情報に基づき、HMD1の起動時におけるユーザの頭部の向く方向に対する相対的な方向を、カメラ20の撮影方向を示す情報として特定してもよい。CPU51は、カメラ20の撮影方向を示す情報から、カメラ20によって撮影される撮影領域の変化分を特定し、特定した変化分に基づいて参照点35を特定してもよい。又、例えばCPU51は、S21で特定した参照点35の位置を示す情報(第1情報)を、加速度センサから取得した加速度の情報に基づいて修正し、S23で第3情報を特定してもよい。これによってCPU51は、カメラ20の撮影方向が変化した場合でも、共通する参照点35を継続して特定し、第3情報を特定できる。
CPU51 specified the
CPU51が特定する参照点35の数、及び、参照点35を抽出する撮影画像31の場所は変更できる。例えばCPU41は、1〜3、又は4よりも大きい数分、参照点35を特定してもよい。例えばCPU51は、参照点35を特定する位置を、所定領域21の略中央としてもよい。
The number of
CPU51は、S25で、インデックス、4つの第1情報、第2情報、及び4つの第3情報を関連付けてテーブル541に記憶した。これに対し、インデックスの代わりに、S25が実行されたときの時刻情報が、4つの第1情報、第2情報、及び4つの第3情報に関連付けてテーブル541に記憶されてもよい。或いは、CPU51は、4つの第1情報、第2情報、及び4つの第3情報を関連付けてテーブル541に記憶し、インデックスは記憶されなくてもよい。例えばCPU51は、4つの第1情報、第2情報、及び4つの第3情報をテーブル541に記憶した順番を、テーブル541が記憶されるフラッシュROM54のアドレス情報に基づいて特定してもよい。
In S25, the
上記実施形態において、CPU51は、修正処理(S27)を実行することによって軌跡画像26の位置を修正した。CPU51は修正処理を行わなくてもよい。CPU51は、S19で表示した軌跡画像26の位置をそのまま維持しつつ、指の位置の経時的な変化が所定の条件を満たすかを第3情報に基づいて判断してもよい。CPU51は、S41、S43、S45の夫々で、経過時間が所定値よりも大きく且つ軌跡画像26が画像表示部14に表示されている場合に、S42、S44、S46の夫々で軌跡画像26を消去した。これに対してCPU51は、S41、S43、S45の夫々で、画像表示部14に表示された軌跡画像26の数が所定値よりも大きいか否かを判断してもよい。CPU51は、軌跡画像26の数が所定値よりも小さい場合に、軌跡画像26を消去してもよい。
In the above embodiment, the
画像表示部14、接眼光学系、及びハーフミラー3が本発明の「表示部」の一例である。カメラ20が本発明の「撮影部」の一例である。指先が本発明の「対象物」の一例である。S15の処理を行うCPU51が本発明の「第1判断手段」の一例である。カメラ20が本発明の「検出部」の一例である。撮影画像データが本発明の「検出部の出力」の一例である。参照点35の位置が本発明の「第1位置」の一例である。S21の処理を行うCPU51が本発明の「第1取得手段」の一例である。S18の処理を行うCPU51が本発明の「第2取得手段」の一例である。所定領域21に対する指先の位置が本発明の「第2位置」の一例である。S23の処理を行うCPU51が本発明の「決定手段」の一例である。S25の処理を行うCPU51が本発明の「記憶手段」の一例である。テーブル541を記憶するフラッシュROM54が本発明の「第1記憶部」の一例である。画像テンプレートを記憶するプログラムROM53が本発明の「第2記憶部」の一例である。S26の処理を行うCPU51が本発明の「第2判断手段」の一例である。S27の処理を行うCPU51が本発明の「第1表示手段」の一例である。S19の処理を行うCPU51が本発明の「第2表示手段」の一例である。S35の処理を行うCPU51が本発明の「第3判断手段」の一例である。S39の処理を行うCPU51が本発明の「実行手段」の一例である。S71の処理を行うCPU51が本発明の「第1消去手段」の一例である。S73の処理を行うCPU51が本発明の「修正手段」の一例である。S42の処理を行うCPU51が本発明の「第2消去手段」の一例である。S44の処理を行うCPU51が本発明の「第3消去手段」の一例である。S46の処理を行うCPU51が本発明の「第4消去手段」の一例である。
The
S15の処理が本発明の「第1判断ステップ」の一例である。S21の処理が本発明の「第1取得ステップ」の一例である。S18の処理が本発明の「第2取得ステップ」の一例である。S23の処理が本発明の「決定ステップ」の一例である。S25の処理が本発明の「記憶ステップ」の一例である。S26の処理が本発明の「第2判断ステップ」の一例である。S27の処理が本発明の「第1表示ステップ」の一例である。S35の処理が本発明の「第3判断ステップ」の一例である。S39の処理が本発明の「実行ステップ」の一例である。 The process of S15 is an example of the “first determination step” in the present invention. The process of S21 is an example of the “first acquisition step” in the present invention. The process of S18 is an example of the “second acquisition step” in the present invention. The process of S23 is an example of the “decision step” in the present invention. The process of S25 is an example of the “storage step” in the present invention. The process of S26 is an example of the “second determination step” in the present invention. The process of S27 is an example of the “first display step” in the present invention. The process of S35 is an example of the “third determination step” in the present invention. The process of S39 is an example of the “execution step” in the present invention.
3 ハーフミラー
14 画像表示部
20 カメラ
21 所定領域
23 手
26 軌跡画像
35 参照点
51 CPU51
52 RAM
54 フラッシュROM
521、541 テーブル
3
52 RAM
54 Flash ROM
521, 541 Table
Claims (13)
前記第1方向と反対方向である第2方向の領域を少なくとも含む所定領域内を撮影して画像データを出力可能な撮影部と、
前記撮影部から出力された画像データに基づいて、前記所定領域内に所定の対象物があるかを繰り返し判断する第1判断手段と、
前記第1判断手段によって前記対象物が前記所定領域内にあると判断された場合に、検出部の出力に基づいて、前記撮影部の撮影方向に対応する位置である第1位置を示す第1情報を取得する第1取得手段と、
前記所定領域に対する前記対象物の相対位置である第2位置を示す第2情報を、前記画像データに基づいて取得する第2取得手段と、
前記第1取得手段によって取得された前記第1情報と、前記第2取得手段によって取得された前記第2情報とに基づく第3情報を、前記第1判断手段によって前記対象物が前記所定領域内にあると判断される度に決定する決定手段と、
前記決定手段によって決定された前記第3情報を、決定された順序を示す順序情報と関連付けて第1記憶部に記憶する記憶手段と、
前記第1記憶部に記憶された複数の第3情報のうち1の第3情報と、前記1の第3情報に関連付けられた順序情報によって示される順序よりも後の順序を示す順序情報に関連付けられた他の第3情報とに基づいて、前記1の第3情報に対応する第1情報が前記第1取得手段によって取得されてから、前記他の第3情報に対応する第1情報が前記第1取得手段によって取得されるまでの間に、前記第1位置と前記第2位置との位置関係が変化したかを判断する第2判断手段と、
前記第2判断手段によって、前記位置関係が変化したと判断された場合、少なくとも前記他の第3情報に基づいて決定される位置を示す軌跡情報を前記表示部に繰り返し表示する第1表示手段と、
前記第1記憶部に記憶された前記複数の第3情報に基づいて、夫々の第3情報に対応する前記第2位置を、対応する第1位置によって補正した複数の補正位置の変化の傾向が所定の条件を満たしているか判断する第3判断手段と、
前記第3判断手段によって、前記所定の条件を満たしていると判断された場合、対応する処理を実行する実行手段と
を備え
前記第3情報は、前記位置関係に対応する情報であることを特徴とするヘッドマウントディスプレイ。 A display unit capable of emitting image light in a first direction;
A photographing unit capable of photographing a predetermined area including at least a second direction area opposite to the first direction and outputting image data;
First determination means for repeatedly determining whether there is a predetermined object in the predetermined area based on the image data output from the imaging unit;
A first position indicating a first position that is a position corresponding to the shooting direction of the shooting unit based on the output of the detection unit when the first determination unit determines that the object is within the predetermined area. First acquisition means for acquiring information;
Second acquisition means for acquiring second information indicating a second position, which is a relative position of the object with respect to the predetermined area, based on the image data;
The third information based on the first information acquired by the first acquisition unit and the second information acquired by the second acquisition unit is converted into the predetermined area by the first determination unit. A determination means for determining each time it is determined that
Storage means for storing the third information determined by the determination means in the first storage unit in association with the order information indicating the determined order;
Associating with one third information among a plurality of third information stored in the first storage unit and order information indicating an order after the order indicated by the order information associated with the first third information The first information corresponding to the first third information is acquired by the first acquisition means, and the first information corresponding to the other third information is Second determination means for determining whether the positional relationship between the first position and the second position has changed before being acquired by the first acquisition means;
First display means for repeatedly displaying, on the display unit, trajectory information indicating a position determined based on at least the other third information when the second determination means determines that the positional relationship has changed; ,
Based on the plurality of third information stored in the first storage unit, there is a tendency of a change in a plurality of correction positions obtained by correcting the second position corresponding to each third information by the corresponding first position. Third judging means for judging whether or not a predetermined condition is satisfied;
An execution unit that executes a corresponding process when the third determination unit determines that the predetermined condition is satisfied, wherein the third information is information corresponding to the positional relationship. Head mounted display.
前記第1表示手段は、
前記表示部に表示された1からn−1番目の夫々の軌跡情報を消去する第1消去手段と、
1からn−1番目の夫々に決定された第3情報に対応する第2位置を、n番目に決定された第3情報に対応する第1位置に基づいて補正し、補正した第2位置に前記軌跡情報を表示する修正手段と
を備えたことを特徴とする請求項1又は2に記載のヘッドマウントディスプレイ。 a second display means for displaying n-th (n is a natural number of 2 or more) trajectory information at a second position corresponding to the third information determined by the determination means;
The first display means includes
First erasing means for erasing the 1st to (n-1) th trajectory information displayed on the display unit;
The second position corresponding to the third information determined for each of the 1st to (n-1) th is corrected based on the first position corresponding to the third information determined for the nth, and the corrected second position is set. The head mounted display according to claim 1, further comprising correction means for displaying the trajectory information.
前記決定手段によってn番目(nは2以上の自然数)に決定された前記第3情報に対応する第2位置を、1番目に決定された第3情報に対応する第1位置に基づいて補正し、補正した第2位置に前記軌跡情報を表示することを特徴とする請求項1又は2に記載のヘッドマウントディスプレイ。 The first display means includes
The second position corresponding to the third information determined n-th (n is a natural number of 2 or more) by the determining means is corrected based on the first position corresponding to the first information determined first. 3. The head mounted display according to claim 1, wherein the trajectory information is displayed at the corrected second position.
前記第1判断ステップによって前記対象物が前記所定領域内にあると判断された場合に、検出部の出力に基づいて、前記撮影部の撮影方向に対応する位置である第1位置を示す第1情報を取得する第1取得ステップと、
前記所定領域に対する前記対象物の相対位置である第2位置を示す第2情報を、前記画像データに基づいて取得する第2取得ステップと、
前記第1取得ステップによって取得された前記第1情報と、前記第2取得ステップによって取得された前記第2情報とに基づく第3情報を、前記第1判断ステップによって前記対象物が前記所定領域内にあると判断される度に決定する決定ステップと、
前記決定ステップによって決定された前記第3情報を、決定された順序を示す順序情報と関連付けて第1記憶部に記憶する記憶ステップと、
前記第1記憶部に記憶された複数の第3情報のうち1の第3情報と、前記1の第3情報に関連付けられた順序情報によって示される順序よりも後の順序を示す順序情報に関連付けられた他の第3情報とに基づいて、前記1の第3情報に対応する第1情報が前記第1取得ステップによって取得されてから、前記他の第3情報に対応する第1情報が前記第1取得ステップによって取得されるまでの間に、前記第1位置と前記第2位置との位置関係が変化したかを判断する第2判断ステップと、
前記第2判断ステップによって、前記位置関係が変化したと判断された場合、少なくとも前記他の第3情報に基づいて決定される位置を示す軌跡情報を表示部に繰り返し表示する第1表示ステップと、
前記第1記憶部に記憶された前記複数の第3情報に基づいて、夫々の第3情報に対応する前記第2位置を、対応する第1位置によって補正した複数の補正位置の変化の傾向が所定の条件を満たしているか判断する第3判断ステップと、
前記第3判断ステップによって、所定の条件を満たしていると判断された場合、対応する処理を実行する実行ステップと
を、ヘッドマウントディスプレイのコンピュータに実行させる為の制御プログラム。 Based on image data output from the imaging unit when the imaging unit captures a predetermined area including at least a region in the second direction that is opposite to the first direction in which the display unit can emit image light. A first determination step of repeatedly determining whether or not there is a predetermined object in the predetermined area;
When the first determination step determines that the object is in the predetermined area, the first position indicating a first position that is a position corresponding to the shooting direction of the shooting unit is based on the output of the detection unit. A first acquisition step of acquiring information;
A second acquisition step of acquiring second information indicating a second position, which is a relative position of the object with respect to the predetermined region, based on the image data;
The third information based on the first information acquired by the first acquisition step and the second information acquired by the second acquisition step is converted into the predetermined area by the first determination step. A determination step that is determined each time it is determined that
A storage step of storing the third information determined by the determination step in the first storage unit in association with the order information indicating the determined order;
Associating with one third information among a plurality of third information stored in the first storage unit and order information indicating an order after the order indicated by the order information associated with the first third information The first information corresponding to the first third information is acquired by the first acquisition step, and the first information corresponding to the other third information is A second determination step for determining whether the positional relationship between the first position and the second position has changed before being acquired by the first acquisition step;
A first display step of repeatedly displaying trajectory information indicating a position determined based on at least the other third information on the display unit when it is determined by the second determination step that the positional relationship has changed;
Based on the plurality of third information stored in the first storage unit, there is a tendency of a change in a plurality of correction positions obtained by correcting the second position corresponding to each third information by the corresponding first position. A third determination step for determining whether a predetermined condition is satisfied;
A control program for causing a computer of a head mounted display to execute an execution step of executing a corresponding process when it is determined by the third determination step that a predetermined condition is satisfied.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013204061A JP5907136B2 (en) | 2013-09-30 | 2013-09-30 | Head mounted display and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013204061A JP5907136B2 (en) | 2013-09-30 | 2013-09-30 | Head mounted display and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015069480A JP2015069480A (en) | 2015-04-13 |
JP5907136B2 true JP5907136B2 (en) | 2016-04-20 |
Family
ID=52836057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013204061A Expired - Fee Related JP5907136B2 (en) | 2013-09-30 | 2013-09-30 | Head mounted display and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5907136B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016190057A1 (en) * | 2015-05-22 | 2016-12-01 | コニカミノルタ株式会社 | Wearable electronic device and gesture detection method for wearable electronic device |
CN113678435A (en) | 2019-02-07 | 2021-11-19 | 奇跃公司 | Lightweight low-power consumption cross reality device with high temporal resolution |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086708A (en) * | 1994-04-22 | 1996-01-12 | Canon Inc | Display device |
JP2001134371A (en) * | 1999-11-05 | 2001-05-18 | Shimadzu Corp | Visual line detector |
JP2004334718A (en) * | 2003-05-09 | 2004-11-25 | Denso Corp | Input operation support program |
JP4857196B2 (en) * | 2007-05-31 | 2012-01-18 | キヤノン株式会社 | Head-mounted display device and control method thereof |
JP5146845B2 (en) * | 2009-12-24 | 2013-02-20 | ブラザー工業株式会社 | Head mounted display |
JP5597064B2 (en) * | 2010-08-26 | 2014-10-01 | キヤノン株式会社 | Information processing apparatus and method |
US8179604B1 (en) * | 2011-07-13 | 2012-05-15 | Google Inc. | Wearable marker for passive interaction |
-
2013
- 2013-09-30 JP JP2013204061A patent/JP5907136B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015069480A (en) | 2015-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11557134B2 (en) | Methods and systems for training an object detection algorithm using synthetic images | |
JP6532393B2 (en) | Display control apparatus and display control method | |
JP6852355B2 (en) | Program, head-mounted display device | |
KR20180004018A (en) | Video display system, video display method, video display program | |
US9412190B2 (en) | Image display system, image display apparatus, image display method, and non-transitory storage medium encoded with computer readable program | |
KR20160027097A (en) | Web-like hierarchical menu display configuration for a near-eye display | |
JP6576536B2 (en) | Information processing device | |
JP2017102732A (en) | Display control device and display control method | |
CN111213375B (en) | Information processing apparatus, information processing method, and program | |
CN111417989A (en) | Program, information processing method, information processing system, head-mounted display device, and information processing device | |
JP2014106888A (en) | Work assistance system, and program | |
JP7499819B2 (en) | Head-mounted display | |
WO2017122270A1 (en) | Image display device | |
US20150172553A1 (en) | Display device, display method, and computer-readable recording medium | |
JP5907136B2 (en) | Head mounted display and control program | |
JPWO2019021601A1 (en) | Information processing apparatus, information processing method, and program | |
WO2015104919A1 (en) | Gesture recognition device, operation input device, and gesture recognition method | |
US20220351444A1 (en) | Animation production method | |
KR20210133674A (en) | Augmented reality device and method for controlling the same | |
JP2018028765A (en) | Method for providing virtual space, program, and recording medium | |
JP6554139B2 (en) | Information processing method, apparatus, and program for causing computer to execute information processing method | |
JP5979110B2 (en) | Head mounted display and control program | |
JP5907034B2 (en) | Work assistance system and program | |
JP2022025463A (en) | Animation creation system | |
US20230083874A1 (en) | Animation production method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150318 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160217 |
|
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: 20160223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5907136 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |