WO2021235316A1 - 情報処理装置、情報処理方法および情報処理プログラム - Google Patents

情報処理装置、情報処理方法および情報処理プログラム Download PDF

Info

Publication number
WO2021235316A1
WO2021235316A1 PCT/JP2021/018224 JP2021018224W WO2021235316A1 WO 2021235316 A1 WO2021235316 A1 WO 2021235316A1 JP 2021018224 W JP2021018224 W JP 2021018224W WO 2021235316 A1 WO2021235316 A1 WO 2021235316A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
real
glass
virtual
space
Prior art date
Application number
PCT/JP2021/018224
Other languages
English (en)
French (fr)
Inventor
毅 石川
淳 木村
壮一郎 稲谷
真一 河野
郁男 山野
Original Assignee
ソニーグループ株式会社
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 ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Priority to US17/998,578 priority Critical patent/US20230214004A1/en
Publication of WO2021235316A1 publication Critical patent/WO2021235316A1/ja

Links

Images

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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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
    • 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/033Indexing scheme relating to G06F3/033
    • G06F2203/0331Finger worn pointing device

Definitions

  • This disclosure relates to an information processing device, an information processing method, and an information processing program.
  • Augmented Reality is becoming widespread as a technology that realizes a realistic experience.
  • Augmented reality also called AR (Augmented Reality)
  • AR is a technology that expands the real space seen by the user by adding, emphasizing, attenuating, or deleting information to the real environment surrounding the user.
  • AR is realized by using, for example, a see-through type head-mounted display (hereinafter, also referred to as “AR glass”).
  • AR glass head-mounted display
  • AR technology a virtual object is superimposed on a real-space landscape that the user observes through AR glasses, a specific real object is highlighted or attenuated, and a specific real object is deleted as if it does not exist.
  • a display to show is realized.
  • Patent Document 1 discloses a laser marking device that irradiates two facing side walls in a real space and line light indicating a vertical plane on four surfaces of a ceiling and a floor by using a laser beam.
  • this laser marking device for example, by mounting the device on the floor surface, it is possible to irradiate the four surfaces of the wall surface, the ceiling, and the floor with line light indicating a vertical plane with the floor surface as a reference plane. ..
  • in interior work it is possible to install an object in a room or to make a hole in a wall surface, a floor, or a ceiling based on this line light.
  • the information processing apparatus includes an acquisition unit that acquires motion information indicating a user's motion, and a display control unit that controls display on a display unit that can display a virtual space superimposed on a real space.
  • the display control unit identifies a physical surface that is a surface in the real space based on motion information, and creates a region image showing a virtual object or an area for arranging the real object on the surface in the virtual space corresponding to the physical surface. Display on a virtual surface according to the orientation extracted based on the physical surface.
  • FIG. 5 is a diagram schematically showing an example in which a coordinate space is associated with each real object arranged in the real space and displayed in the virtual space according to the second embodiment.
  • FIG. 5 is a schematic diagram schematically showing an operation of moving a virtual object in a reduced virtual space according to a user operation according to a sixth embodiment.
  • the present disclosure relates to AR (Augmented Reality) technology, and shows AR glasses including a display unit worn on the user's head and used by superimposing a virtual space on a real space, and the movement of the user.
  • An acquisition unit for acquiring motion information is used.
  • the acquisition unit is realized as one of the functions in the AR glass.
  • the display control unit for controlling the display by the display unit specifies a surface (called a physical surface) in the real space based on the motion information acquired by the acquisition unit, and is specified for the virtual space.
  • a surface (called a virtual surface) corresponding to the actual surface is set.
  • the display control unit causes the virtual surface to display, for example, a real object or a region image showing a region for arranging the virtual object according to the orientation extracted based on the physical surface.
  • a virtual surface for displaying an area image showing an area for arranging a real object or a virtual object and its direction are determined according to the movement of the user. Therefore, the user can easily acquire information on the position and orientation in the real space or the virtual space. Further, the user can more accurately perform the placement of the real object in the real space and the placement of the virtual object in the virtual space.
  • 1A, 1B and 1C are block diagrams showing a configuration example of an AR glass system applicable to the present disclosure.
  • the AR glass system 1a includes an AR glass 10 and a hand sensor 20.
  • the AR glass 10 includes a display unit that is attached to the user's head like glasses and can display a virtual space superimposed on the real space.
  • the hand sensor 20 is attached to the user's hand and can detect the posture, position and movement of the user's hand.
  • the hand sensor 20 is connected to the AR glass 10 by a communication means such as wireless communication or wired communication, and transmits the detection result of the posture, position and movement to the AR glass 10 via the communication means. Further, the AR glass 10 can transmit an instruction to the hand sensor 20 to the hand sensor 20 via this communication means.
  • the AR glass system 1b shown in FIG. 1B has a configuration in which a controller 11 is added to the configuration of FIG. 1A.
  • the controller 11 is provided with an operator such as a button for the user to operate. It is connected to the AR glass 10 by a communication means such as wireless communication or wired communication, and for example, a control signal corresponding to a user operation is transmitted to the AR glass 10 via the communication means to control the operation of the AR glass 10.
  • the controller 11 can include a function of emitting beam light for pointing to a point in real space.
  • hand sensor 20 and the controller 11 are shown as separate configurations in FIG. 1B, this is not limited to this example, and the hand sensor 20 and the controller 11 may be integrally configured. ..
  • the AR glass 10 can be connected to a network 2 such as the Internet with respect to the configuration of FIG. 1A, and the AR glass 10 is connected to the server 3 connected to the network 2. Communication is possible. In this case, the AR glass 10 can download and use the data possessed by the server 3 via the network 2.
  • the network 2 and the server 3 shown in FIG. 1C may be a cloud network.
  • FIG. 2 is a schematic diagram schematically showing the appearance of the AR glass 10 applicable to each embodiment.
  • the main body of the AR glass 10 is generally a spectacle-type or goggle-type device, which is used by being worn on the user's head, and is used by superimposing digital information on the visual field of both eyes or one eye of the user, a specific real object. It is possible to enhance or attenuate the image of a specific real object, delete the image of a specific real object, and make the real object appear as if it does not exist.
  • FIG. 2 shows a state in which the AR glass 10 is attached to the user's head.
  • a display unit 1201L for the left eye and a display unit 1201R for the right eye are arranged in front of the left and right eyes of the user, respectively.
  • the display units 1201L and 1201R are transparent or translucent, and the virtual object is superimposed on the landscape in the real space, the image of the specific real object is emphasized or attenuated, and the image of the specific real object is deleted to display the real object image. It is possible to make it look as if it does not exist.
  • the left and right display units 1201L and 1201R may be independently displayed and driven, for example, to display a parallax image, that is, a virtual object as three-dimensional information.
  • an outward-facing camera 1101 directed toward the user's line of sight is arranged substantially in the center of the AR glass 10.
  • FIG. 3 is a functional block diagram of an example for explaining the functions of the AR glass 10 and the hand sensor 20 applicable to each embodiment.
  • the AR glass 10 includes a control unit 100, a sensor unit 110, and an output unit 120.
  • the control unit 100 controls the operation of the entire AR glass 10.
  • the sensor unit 110 includes an outward-facing camera 1101, an inward-facing camera 1102, a microphone 1103, an attitude sensor 1104, an acceleration sensor 1105, and an orientation sensor 1106.
  • the outward-facing camera 1101 for example, an RGB camera capable of outputting a so-called full-color captured image in each color of R (red), G (green) and B (blue) can be applied.
  • the outward-facing camera 1101 is arranged on the AR glass 10 so as to take an image in the line-of-sight direction of the user wearing the AR glass 10.
  • the outward-facing camera 1101 can capture, for example, the movement of the user's fingers.
  • the outward-facing camera 1101 measures the distance based on the IR light emitting unit that emits IR (Infrared) light, the IR camera including the IR light receiving unit that receives the IR light, and the time difference between the light emitting timing and the light receiving timing. It may be further equipped with at least one of the TOF (Time Of Flight) cameras.
  • IR Infrared
  • TOF Time Of Flight
  • a retroreflective material is attached to an object to be captured such as the back of the hand, infrared light is emitted by the IR camera, and the infrared light reflected from the retroreflective material is emitted. It can be made to receive light.
  • the inward-facing camera 1102 is made of, for example, an RGB camera, and is installed so that the inside of the AR glass 10, more specifically, the eyes of the user wearing the AR glass 10 can be photographed.
  • the line-of-sight direction of the user can be detected based on the captured image of the inward-facing camera 1102.
  • the image signals of the captured images captured by the outward-facing camera 1101 and the inward-facing camera 1102 are transferred to the control unit 100.
  • the microphone 1103 a microphone with a single sound collecting element can be applied.
  • the microphone 1103 may be a microphone array including a plurality of sound collecting elements. The microphone 1103 picks up the voice emitted by the user wearing the AR glass 10 and the ambient sound of the user. The sound signal based on the sound picked up by the microphone 1103 is transferred to the control unit 100.
  • the posture sensor 1104 is, for example, a 3-axis or 9-axis gyro sensor, and detects the posture of the AR glass 10, for example, Roll, Pitch, and Yaw.
  • the acceleration sensor 1105 detects the acceleration applied to the AR glass 10.
  • the azimuth sensor 1106 is, for example, a geomagnetic sensor, and detects the azimuth in which the AR glass 10 faces. For example, it is possible to obtain the current position of the AR glass 10 with respect to the initial position based on the detection result of the acceleration sensor 1105 and the detection result of the azimuth sensor 1106.
  • the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106 may be configured by an IMU (Inertial Measurement Unit).
  • Each sensor signal output from each of the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106 is transferred to the control unit 100.
  • the control unit 100 can detect the position and posture of the head of the user wearing the AR glass 10 based on these sensor signals.
  • the output unit includes a display unit 1201, an acoustic output unit 1202, and a vibration presentation unit 1203.
  • the left and right display units 1201L and 1201R shown in FIG. 2 are represented by the display unit 1201.
  • the display unit 1201 is composed of a transmissive display installed in front of both eyes or one eye of the user wearing the AR glass 10, and is used for displaying a virtual world. More specifically, the display unit 1201 displays information (for example, an image of a virtual object), emphasizes or attenuates an image of a real object (real object), deletes the image, and displays the real space as seen by the user. To extend.
  • the display unit 1201 performs a display operation according to a display control signal from the control unit 100. Further, the mechanism for transparently displaying the virtual space image with respect to the real space image in the display unit 1201 is not particularly limited.
  • the sound output unit 1202 includes a single sounding element that converts a sound signal supplied from the control unit 100 into sound as air vibration and outputs it, or an array of a plurality of sounding elements, and constitutes a speaker or an earphone. ..
  • the sound output unit 1202 is arranged in the AR glass 10, for example, at least one of the user's left and right ears.
  • the control unit 100 can output the sound related to the virtual object displayed on the display unit 1201 to the acoustic output unit 1202. Not limited to this, the control unit 100 can also output the sound of other types of sound signals to the sound output unit 1202.
  • the vibration presenting unit 1203 generates a control signal for giving a stimulus (for example, vibration) to the hand sensor 20 to the finger of the user who wears the hand sensor 20 according to the control of the control unit 100.
  • a stimulus for example, vibration
  • the communication unit 130 communicates with the hand sensor 20 via wireless communication or wired communication.
  • the communication unit 130 communicates with the hand sensor 20 by using, for example, wireless communication by Bluetooth (registered trademark).
  • the communication method in which the communication unit 130 communicates with the hand sensor is not limited to Bluetooth (registered trademark).
  • the communication unit 130 can execute communication via a network such as the Internet. As an example, in the AR glass system 1c shown in FIG. 1C, the communication unit 130 communicates with the server 3 via the network 2.
  • the storage unit 140 can non-volatileally store the data generated by the control unit 100 and the data used by the control unit 100.
  • the hand sensor 20 includes an attitude sensor 2001, an acceleration sensor 2002, an orientation sensor 2003, and a vibrator 2004.
  • the attitude sensor 2001, the acceleration sensor 2002, and the orientation sensor 2003 have functions corresponding to the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106 described above, respectively, and can determine the attitude, acceleration, and orientation of the hand sensor 20.
  • the orientation of the hand sensor 20 can be detected, for example, based on the direction pointed by the index finger of the user.
  • the attitude sensor 2001, the acceleration sensor 2002, and the azimuth sensor 2003 may be configured by an IMU (Inertial Measurement Unit).
  • IMU Inertial Measurement Unit
  • the oscillator 2004 is supplied with a control signal generated by the vibration presenting unit 1203 described above, and in response to this control signal, a stimulus (vibration in this example) is given to the hand of the user who wears the hand sensor 20. Do the action.
  • FIG. 4 is a schematic diagram showing an external example of the hand sensor 20 applicable to each embodiment.
  • the hand sensor 20 is configured to include the IMU 201, 202 and 203 that realize the respective functions of the attitude sensor 2001, the acceleration sensor 2002 and the azimuth sensor 2003 described above, and the hand sensor control unit 204, respectively.
  • the hand sensor 20 is configured to include the IMU 201, 202 and 203 that realize the respective functions of the attitude sensor 2001, the acceleration sensor 2002 and the azimuth sensor 2003 described above, and the hand sensor control unit 204, respectively.
  • NS the hand sensor control unit 204
  • the IMU201 is attached between the MP joint and the IP joint of the first finger (thumb) of the hand 21 by a belt 211 or the like.
  • the IMU 202 and 203 are attached by belts 212 and 213 of the second finger (index finger) of the hand 21 between the MP joint and the PIP joint, and between the PIP joint and the DIP joint, respectively. Based on the sensor signals of the two IMUs 202 and 203 mounted on the second finger, the direction pointed to by the second finger can be obtained.
  • control unit 100 determines the opening angle between the first finger and the second finger and the PIP joint (second joint) of the second finger based on the sensor signals output from the IMU 201, 202 and 203. It is possible to detect the angle, the presence or absence of contact between the fingertips of the first and second fingers, and the like. As a result, the control unit 100 can recognize the position and posture (or the form taken by the fingers) of the fingers in the user's hand 21 and the gestures by the fingers.
  • the hand sensor control unit 204 is attached by being wrapped around the palm of the hand 21 by a belt 214 or the like.
  • the hand sensor control unit 204 includes a communication unit (not shown) that communicates with the AR glass 10 and an oscillator 2004.
  • the hand sensor control unit 204 transmits each sensor signal output from the IMU 201 to 203 to the AR glass 10 by the communication unit.
  • the hand sensor control unit 204 includes an oscillator 2004.
  • the hand sensor control unit 204 vibrates the oscillator 2004 in response to the control signal generated by the vibration presentation unit 1203 and transmitted from the AR glass 10, and gives a stimulus to the hand 21 to which the hand sensor 20 is attached. Can be done.
  • the IMU is attached only to the first finger and the second finger, but this is not limited to this example, and the IMU is further attached to the other fingers of the hand 21. You can also.
  • the hand sensor 20 is shown to be mounted on the user's right hand, but this is not limited to this example.
  • the hand sensor 20 may be attached to the left hand of the user or may be attached to the left and right hands of the user.
  • FIG. 5 is a functional block diagram of an example for explaining the functions of the control unit 100 applicable to each embodiment.
  • the control unit 100 includes an application execution unit 1001, a head position / posture detection unit 1002, an output control unit 1003, a finger position / posture detection unit 1004, and a finger gesture detection unit 1005.
  • These application execution units 1001, head position / posture detection unit 1002, output control unit 1003, finger position / posture detection unit 1004, and finger gesture detection unit 1005 are stored, for example, by a CPU (Central Processing Unit) included in the AR glass 10 described later. This is realized by reading and executing the information processing program stored in 140. Not limited to this, hardware that operates part or all of the application execution unit 1001, the head position / posture detection unit 1002, the output control unit 1003, the finger position / posture detection unit 1004, and the finger gesture detection unit 1005 in cooperation with each other. It may be configured by a wear circuit.
  • a wear circuit not limited to this, hardware that operates part or all of the application execution unit 1001, the head position / posture detection unit 1002, the output control unit 1003, the finger position / posture detection unit 1004, and the finger gesture detection unit 1005 in cooperation with each other. It may be configured by a wear circuit.
  • the application execution unit 1001 executes an application program including an AR application under an execution environment provided by an OS (Operating System).
  • the application execution unit 1001 may execute a plurality of application programs in parallel at the same time.
  • the AR application is an application such as a moving image playback or a 3D object viewer.
  • the AR application deletes the superimposed display of the virtual space in the view of the user wearing the AR glass 10 on the head, the enhancement or attenuation display of the image of a specific real object, and the image of the specific real object. Performs a display that makes it appear as if it does not exist.
  • the AR application can acquire the surrounding three-dimensional information based on the captured image acquired by the outward-facing camera 1101.
  • the AR application can acquire surrounding three-dimensional information based on the distance information obtained by using the function of the TOF camera.
  • the AR application can also analyze the sound signal output from the microphone 1103 to obtain, for example, an instruction uttered by a user wearing the AR glass 10.
  • the AR application can be made to acquire an instruction by the user based on the gesture detected by the hand gesture detection unit 1005 described later.
  • the application execution unit 1001 further generates a display control signal for controlling the display on the display unit 1201, and also controls the display operation of the virtual object display unit 1201 by the AR application by the generated display control signal.
  • the virtual object generated by the AR application is arranged all around the user.
  • FIG. 6 is a schematic diagram showing an example of displaying a virtual object by the AR glass 10 applicable to each embodiment.
  • a plurality of virtual objects 701, 702, 703, ... are arranged around 700 around the user wearing the AR glass 10 on the head.
  • the application execution unit 1001 has the virtual objects 701, 702, and 703 around the user 700 based on the position of the user's head or the position of the center of gravity of the body estimated based on the sensor signal output from the sensor unit 110.
  • the space around the user 700 where the virtual objects 701, 702, 703, ... Are arranged is called a virtual space with respect to the real space in which a real object (real object) having an entity exists.
  • the head position / orientation detection unit 1002 is based on the sensor signals of the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106 included in the sensor unit 110 mounted on the AR glass 10, and the position / orientation of the user's head. Is detected, and the user's line-of-sight direction or visual field range is recognized.
  • the output control unit 1003 controls the outputs of the display unit 1201, the acoustic output unit 1202, and the vibration presentation unit 1203 based on the execution result of an application program such as an AR application.
  • the output control unit 1003 specifies the user's visual field range based on the detection result of the head position / posture detection unit 1002, so that the user can observe the virtual object arranged in the visual field range through the AR glass 10. That is, the display operation of the virtual object is controlled by the display unit 1201 so as to follow the movement of the user's head.
  • the output control unit 1003 can display the image of the virtual space superimposed on the image of the real space transmitted through the display units 1201L and 1201R. That is, in the AR glass 10, the control unit 100 functions as a display control unit that controls the display by the output control unit 1003 so that the virtual space is superimposed on the real space and displayed on the display units 1201L and 1201R.
  • FIG. 7 is a schematic diagram for explaining a mechanism for displaying a virtual object so that the AR glass 10 follows the movement of the user's head, which is applicable to each embodiment.
  • the axis indicating the depth direction of the line of sight of the user 800 is the axis z w
  • the horizontal axis is the axis y w
  • the vertical axis is the axis x w axis
  • the user's reference axis x w y w z w is the user's viewpoint position.
  • Roll ⁇ z is the movement around the axis z w of the user's head
  • Pitch ⁇ y is the movement around the axis y w of the user's head
  • Yaw. ⁇ x corresponds to the movement around the axis x w of the user's head.
  • the head position posture detection unit 1002 moves the head of the user 800 in each direction of Roll, Pitch, and Yaw ( ⁇ z , ⁇ y) based on the sensor signals of the posture sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106. , ⁇ x ) and posture information consisting of parallel movement of the head.
  • the output control unit 1003 moves the display angle of view of the display unit 1201 with respect to the real space in which the virtual object is arranged so as to follow the posture of the head of the user 800, and the image of the virtual object existing in the display angle of view. Is displayed on the display unit 1201.
  • the output control unit 1003 rotates according to the Roll component ( ⁇ z ) of the head movement of the user 800 with respect to the region 802a, and the Pitch component ( ⁇ ) of the head movement of the user 800 with respect to the region 802b.
  • the display angle of view is moved so as to cancel the movement of the user's head by moving according to y), moving according to the Yaw component ( ⁇ x ) of the head movement of the user 800 with respect to the region 802c, and the like.
  • the display unit 1201 displays the virtual object arranged at the display angle of view moved according to the position and orientation of the head of the user 800, and the user 800 superimposes the virtual object through the AR glass 10. You can observe the real space that has been created.
  • the hand position / posture detection unit 1004 is a user's hand 21 wearing the AR glass 10 based on the recognition result of the image taken by the outward camera 1101 or each sensor signal output from each IMU 201 to 203 of the hand sensor 20. And the position and posture of the fingers are detected.
  • the hand gesture detection unit 1005 is a gesture by the user's finger wearing the AR glass 10 based on the recognition result of the image taken by the outward camera 1101 or each sensor signal output from each IMU 201 to 203 of the hand sensor 20. Is detected.
  • the gesture of the finger here includes the form taken by the finger, specifically, the angle of the MP joint and the PIP joint of the second finger, and the presence or absence of contact between the fingertip of the first finger and the fingertip of the second finger.
  • the control unit 100 attaches the AR glass 10 based on each sensor signal output from the hand sensor 20 by the finger position / posture detection unit 1004 and the captured image captured by the outward camera 1101. It functions as an acquisition unit that acquires motion information indicating the motion of the user.
  • FIG. 8 is a block diagram showing a hardware configuration of an example of AR glass 10 applicable to each embodiment.
  • the AR glasses 10 are connected to each other by a bus 1520 so as to be communicable with each other, the CPU 1500, the ROM (Read Only Memory) 1501, the RAM (Random Access Memory) 1502, and the camera I / F (interface) 1503.
  • the AR glass 10 has a configuration as a computer (information processing device) including a CPU, a memory, and various I / Fs.
  • the storage device 1505 is a non-volatile storage medium such as a flash memory, and realizes the function of the storage unit 140 described with reference to FIG.
  • the CPU 1500 operates using the RAM 1502 as a work memory according to an information processing program stored in advance in the storage device 1505 or the ROM 1501, and controls the entire operation of the AR glass 10.
  • the camera I / F 1503 is an interface to the outward camera 1101 and the inward camera 1102, and supplies the image signal output from the outward camera 1101 and the inward camera 1102 to the bus 1520. Further, the control signal for controlling the outward-facing camera 1101 and the inward-facing camera 1102 generated by the CPU 1500 according to the information processing program is transmitted to the outward-facing camera 1101 and the inward-facing camera 1102 via the camera I / F 1503.
  • the sensor I / F 1504 is an interface to the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106, and each sensor signal output from the attitude sensor 1104, the acceleration sensor 1105, and the orientation sensor 1106 is transmitted via the sensor I / F 1504. It is supplied to the bus 1520.
  • the display control unit 1506 controls the display operation by the display units 1201L and 1201R in accordance with the command from the CPU 1500.
  • the display control unit 1506 converts the display control signals generated by the CPU 1500 according to the information processing program into display signals that can be displayed by the display units 1201L and 1201R, and supplies them to the display units 1201L and 1201R.
  • the audio I / F 1507 is an interface to the microphone 1103 and the sound output unit 1202.
  • the audio I / F 1507 converts an analog sound signal based on the sound picked up by the microphone 1103 into a digital sound signal and supplies it to the bus 1520.
  • the audio I / F 1507 is converted into a signal in a reproducible format by the sound output unit 1202 based on a digital sound signal generated by the CPU 1500 according to an information processing program, for example, supplied via the bus 1520. And supplies it to the sound output unit 1202.
  • the communication I / F 1508 controls the communication between the AR glass 10 and the hand sensor 20 according to the instruction of the CPU 1500. Further, the communication I / F 1508 can also control communication with the outside. For example, the communication I / F 1508 controls communication with the server 3 via the network 2 in the AR glass system 1c of FIG. 1C described above.
  • the position / posture detection unit 1004 and the finger gesture detection unit 1005 are configured as, for example, modules on the main storage area of the RAM 1502, respectively.
  • the information processing program can be acquired from the outside (for example, the server 3) via communication I / F 1508 and installed on the AR glass 10.
  • FIG. 9 is a block diagram showing a hardware configuration of an example of the hand sensor 20 applicable to each embodiment.
  • the I / F (interface) 2101 and 2102 and the communication I / F 2103 are connected to the CPU 2100.
  • the hand sensor 20 may be configured by using a bus that connects each part so as to be communicable with each other, as in the AR glass 10 described with reference to FIG. Further, the AR glass 10 described above may be configured to directly connect each part to the CPU in the same manner as the hand sensor 20 shown in FIG.
  • the CPU 2100 is configured to include a ROM in which a program for operating itself is stored and a RAM used as a work memory when executing the program.
  • a ROM in which a program for operating itself is stored
  • a RAM used as a work memory when executing the program.
  • the communication I / F 2103 controls the communication with the AR glass 10 according to the instruction of the CPU 2100.
  • the I / F 2101 is an interface to the attitude sensor 2001, the acceleration sensor 2002, and the orientation sensor 2003, and each sensor signal output from the attitude sensor 2001, the acceleration sensor 2002, and the orientation sensor 2003 is the I / F 2101. It is supplied to the CPU 2100 via.
  • the CPU 2100 transmits each sensor signal supplied from each attitude sensor 2001, an acceleration sensor 2002, and a direction sensor 2003 from the communication I / F 2103 to the AR glass 10.
  • the I / F 2102 is an interface to the oscillator 2004.
  • the I / F 2102 generates a drive signal for driving the oscillator 2004 based on a command issued by the CPU 2100 in response to a control signal transmitted from the AR glass 10 and received by the communication I / F 2103, and vibrates. Supply to child 2004.
  • FIG. 10 is a flowchart of an example schematically showing the processing by the AR glass 10 according to the first embodiment.
  • the user Prior to executing the process of the flowchart of FIG. 10, the user attaches the AR glass 10 and activates the AR glass 10 by a predetermined operation such as turning on the power of the attached AR glass 10.
  • the AR glass 10 measures the surrounding three-dimensional (3D) shape in step S100, for example, based on the captured image captured by the outward-facing camera 1101 using existing technology. For example, the user looks around while wearing the AR glass 10. During that time, the AR glass 10 is imaged by the outward-facing camera 1101 at regular time intervals, and a plurality of captured images of the surroundings are acquired. The AR glass 10 analyzes the acquired captured image and measures the surrounding three-dimensional shape. When the outward camera 1101 is equipped with a TOF camera, the AR glass 10 can obtain information on the surrounding depth. The AR glass 10 measures the surrounding three-dimensional shape based on this depth information.
  • the AR glass 10 generates a 3D model of the real space based on the measurement result of the surrounding 3D shape. At this time, the AR glass 10 is capable of generating an independent three-dimensional model based on edge information or the like for a real object arranged in the real space.
  • the AR glass 10 stores, for example, the data of the three-dimensional model generated based on the result of measuring the surrounding three-dimensional shape in the storage unit 140.
  • the AR glass 10 specifies a plane based on the user's operation. More specifically, the AR glass 10 specifies a plane (substantial surface) in the real space for displaying a region image showing a region for arranging a real object or a virtual object in the virtual space, and the area image Specify the plane related to the display.
  • the AR glass 10 designates the orientation (direction) of the region image to be arranged on the plane specified in the step S101 based on the user's operation.
  • the density of the area image specified in the AR glass 10 and step S102 is set.
  • the user causes the AR glass 10 to display a region image with a specified orientation and density on a surface (virtual surface) in the virtual space corresponding to the physical surface in the real space. Can be done. This allows the user to easily place the real object in the real space. Further, since the area image is displayed in the virtual space by the AR glass 10, for example, the user can change the position of the part that is shaded by the line of sight at the current position so that the part can be seen. , The AR glass 10 can display a region image on the portion.
  • the area image is not limited as long as it can show an area for arranging a real object or a virtual object.
  • a grid image showing a grid in which a line having a direction specified by the user in step S102 and a line having a direction different from the direction (for example, a direction orthogonal to the direction) is used can be used as a region image.
  • the area image may be a dot indicating each coordinate point of the physical surface, or may be an image in which tile images of a predetermined size are arranged on the physical surface.
  • the density of the area image is, for example, the interval between the grids and dots when the area image is a grid or dots. If the area image is a tile image, the tile image size corresponds to the density.
  • the designation of the plane in step S101 and the designation of the orientation of the region image in step S102 are shown as operations independent of each other, but this is not limited to this example.
  • the designation of the plane in step S101 and the designation of the orientation of the region image in step S102 can be a series of operations.
  • the AR glass 10 can execute the operation of step S101 or the operation of step S102 by using, for example, a predetermined gesture by the user's hand, a predetermined utterance of the user, or the like as a trigger.
  • the area image is a grid image showing a grid. Further, a grid image showing a grid is simply called a "grid".
  • FIG. 11 is a schematic diagram for explaining the first designation method of the plane according to the first embodiment.
  • FIG. 11 shows a real space including a floor surface 300 and a wall surface 301, and the hand 21 schematically shows a user's actual hand (a portion beyond the wrist) wearing the AR glass 10.
  • Each part (IMU201 to 203) included in the hand sensor 20 and the hand sensor control part 204 are attached to the hand 21.
  • the user performs an operation of pointing to the plane to be designated with the fingers of the hand 21.
  • the operation of pointing with the finger (second finger in this example) provided with the IMU 202 and 203 is performed.
  • the AR glass 10 detects the movement of the user's hand 21 based on each sensor signal transmitted from the hand sensor 20, and designates a plane (floor surface 300) that intersects the instruction destination pointed to by the user as a physical surface.
  • the AR glass 10 can also acquire the direction pointed by the finger of the hand 21 based on the captured image obtained by capturing the finger or the like of the hand 21 by the outward camera 1101.
  • the instruction line 310 indicating the instruction destination pointed to by the user intersects the floor surface 300 at the point 311.
  • the user is not limited to the operation of designating the point 311 and may move the designated destination to be pointed to, for example, on a plane to be designated.
  • the range 312 schematically shows the range in which the user has moved the instruction destination in this way.
  • step S100 in the flowchart of FIG. 10 the three-dimensional shape around the AR glass 10 has already been measured, and the three-dimensional model has been acquired. Further, the direction indicated by the instruction line 310 can be obtained based on each sensor signal output from each IMU 201 to 203 of the hand sensor 20.
  • the control unit 100 can specify the plane (floor surface 300) in the direction pointed to by the user based on the three-dimensional model and the information of the instruction line 310.
  • FIG. 12 is a schematic diagram for explaining another example of the first designation method of the plane according to the first embodiment.
  • the user brings the hand 21 into the plane 320 while keeping the hand 21 in contact with the plane 320 (assumed to be a desk surface) and the hand 21 in contact with the plane 320.
  • Move (stroking) In FIG. 12, the range 313 schematically shows the range in which the user moves the plane 320 while keeping the hand 21 in contact with the plane 320.
  • the AR glass 10 designates a plane 320 that the user has moved while touching the hand 21 as a physical surface.
  • the beam light emitted from the controller 11 can be specified as a physical surface.
  • the user points to a plane with beam light using the controller 11.
  • the AR glass 10 captures the emission destination of the beam light by, for example, the outward camera 1101, and detects the position where the beam light is irradiated based on the captured image. Since the three-dimensional model around the AR glass 10 has already been acquired in step S100 of the flowchart of FIG. 10, the AR glass 10 identifies the plane including the city irradiated with the beam light based on the captured image. And the specified plane can be designated as a real plane.
  • the third method of designating a plane is a method of designating a plane as a physical surface based on the line-of-sight direction of the user wearing the AR glass 10.
  • the AR glass 10 captures the eyeball of the user wearing the AR glass 10 by using the inward camera 1102.
  • the AR glass 10 detects the user's line of sight (line-of-sight direction) using existing technology based on the captured image obtained by capturing the eyeball with the inward-facing camera 1102.
  • the AR glass 10 designates a plane that intersects the line of sight as a physical surface.
  • the AR glass 10 designates a plane on which the AR glass 10 is attached and stands as a physical surface.
  • FIG. 13 is a schematic diagram for explaining a fourth designation method of a plane according to the first embodiment.
  • the user 30 wears the AR glass 10 and stands on the floor surface 300.
  • the AR glass 10 measures the inclination of the AR glass 10 itself based on, for example, a sensor signal output from the attitude sensor 1104, and obtains a vertical straight line 314 passing through the AR glass 10 based on the measurement result. Since the three-dimensional model around the AR glass 10 has already been acquired in step S100 of the flowchart of FIG. 10, by detecting the plane intersecting the vertical line 314 (floor surface 300 in the example of FIG. 13), It can be specified as a physical surface.
  • a vertical straight line 314 passing through a predetermined position on the AR glass 10 can be obtained.
  • the AR glass 10 can also obtain a vertical straight line 314 passing through a position presumed to be the center of the head to which the AR glass 10 is roughly adhered.
  • FIG. 14A and 14B are schematic views for explaining the first designation method of the orientation according to the first embodiment.
  • FIG. 14A schematically shows an example in the case where a plane 331 corresponding to the ground in the architectural model 330 is designated as the actual surface in step S101 of the flowchart of FIG. 10.
  • the AR glass 10 according to the first embodiment can be designated as a physical surface not only for a real object such as a building but also for a model or the like.
  • the user points to the plane 331 with the finger (second finger in this example) of the hand 21 equipped with the IMU 202 and 203 in the hand sensor 20, and points the finger in the direction in which the direction of the region image is to be set. Move it.
  • the user is moving his finger from point 314a to point 314b on the plane 331. That is, the user moves the finger from the point 314a of the plane 331 toward the point 314b so as to trace the plane 331.
  • the AR glass 10 designates the direction along the line segment connecting the points 314a and 314b as the direction of the region image.
  • FIG. 14B is a diagram schematically showing another example of the first designation method of orientation.
  • Another example of the first specification method of this orientation is an example of designating the orientation of the region image by using the feature portion on the physical surface.
  • the feature portion on the plane is not particularly limited as long as it is linear, but the case where the orientation of the region image is specified by using the boundary 318 between the floor surface 300 and the wall surface 301 will be described below.
  • the user first points to a point 317a at the boundary 318 between the floor surface 300 and the wall surface 301 by the finger (second finger in this example) of the hand 21 equipped with the IMU 202 and 203 in the hand sensor 20. ..
  • the user further moves the hand 21 as shown by an arrow 316 in the drawing, and moves the hand 21 from the point 317a to the point 317b while pointing at the boundary 318 so as to trace the boundary 318 at the point.
  • the AR glass 10 designates a direction along the boundary 318 as the direction of the region image based on the line segment connecting the points 317a and 317b.
  • the AR glass 10 detects the movement of the position pointed to by the hand 21 from the point 317a to the point 317b based on the captured image of the hand 21 taken by the outward camera 1101 and detects the movement of the point 317a. Based on the line segment connecting the point 317b and the point 317b, the direction along the boundary 318 can be specified as the direction of the region image.
  • the orientation of the area image is specified by using the feature portion on the physical surface, it is possible to give a margin to the position pointed by the user.
  • the hand sensor 20 even if the pointed position includes a slight deviation from the boundary 318, the boundary 318 existing in the vicinity of the pointed position based on the three-dimensional model acquired in step S100, for example. It is possible to regard the above points as specified. This is the same even when the captured image of the outward-facing camera 1101 is used.
  • the direction of the region image can be specified by using the beam light emitted from the controller 11.
  • the user uses the controller 11 to point to a plane with the beam light, and moves the irradiation position of the beam light, for example, linearly.
  • the AR glass 10 captures the irradiation position of the beam light by, for example, the outward camera 1101, and detects the trajectory of the beam light based on the captured image.
  • the AR glass 10 specifies the orientation of the region image based on the detection result of the locus. This is also applicable to the example described with reference to FIG. 14B in which the orientation of the region image is specified by using the feature portion on the physical surface.
  • the third method of specifying the orientation will be explained.
  • the third method of specifying the orientation is an example of designating the orientation of the region image based on the pattern on the plane in the real space specified in step S101.
  • FIG. 15 is a schematic diagram for explaining a third designation method of the orientation according to the first embodiment.
  • the AR glass 10 images a plane designated by the outward-facing camera 1101 (floor surface 300 in this example), and detects a pattern included in the captured image that is aligned in a certain direction on the plane. The pattern can be detected, for example, based on the feature information extracted from the captured image.
  • the AR glass 10 detects the seams 319, 319, ... Of the boards on the floor surface 300 of the flooring as a pattern based on the captured image, and extracts the direction of the detected pattern.
  • the orientation of the extracted pattern is specified as the orientation of the area image.
  • the pattern is shown as a flooring-like pattern in which the length of the long side is extremely long with respect to the length of the short side, but this is not limited to this example.
  • the pattern may be a tile-like pattern in which the ratio of the length of the long side to the length of the short side is small, or elements containing a straight line in a part or not containing a straight line are arranged in a straight line.
  • the pattern may be the same.
  • the edge of the specified plane is also possible to use as a pattern on the plane of the real space.
  • the AR glass 10 detects the edge of the plane (floor surface 300) specified in step S101 based on the captured image captured by the outward camera 1101 or the three-dimensional model of the real space generated in step S100. do.
  • the edge can apply the boundary 318 between the floor surface 300 and the wall surface 301 shown in FIG. 14B.
  • the density of the region image is the spacing of the grid if the region image is a grid.
  • the area image is a dot, it is the dot spacing, and when the area image is a tile image, it is the size of the tile image.
  • the AR glass 10 can set the density of the area image based on the default value that the system has in advance. Not limited to this, the AR glass 10 can set the density of the area image, for example, according to the user operation by the user wearing the AR glass 10. As an example, the AR glass 10 uses the display units 1201L and 1201R, or when the controller 11 is used, displays the operation menu on the display screen of the controller 11. The user operates this operation menu with a gesture, voice, an operator, or the like to set the density of the area image.
  • FIG. 16 is a flowchart showing an example of processing when the above-mentioned plane designation and region image orientation designation according to the first embodiment are executed by a series of hand 21 (finger) movements. ..
  • the AR glass 10 executes the movement of the user's hand 21, the detection of the direction pointed by the finger, and the like based on each sensor signal output from the hand sensor 20 or the captured image captured by the outward camera 1101. ..
  • Step S100 is a process corresponding to step S100 in the flowchart of FIG. 10 described above, and the AR glass 10 measures the surrounding three-dimensional shape based on the captured image captured by, for example, the outward camera 1101. Get a dimensional model.
  • step S101-1 corresponds to the processing of step S101 in the flowchart of FIG. 10 described above.
  • step S101-1 the AR glass 10 has either an action in which the hand 21 (fingers) points to a plane in real space (see FIG. 11) or an action in which the hand 21 touches a plane in real space (see FIG. 12). Is executed or not.
  • step S101-1 "No"
  • step S101-1 "No"
  • step S101-1 determines in step S101-1 that the hand 21 is performing either an operation of pointing to a plane in the real space or an operation of the hand 21 touching the plane in the real space ( Step S101-2, "Yes")
  • the process is shifted to step S101-2.
  • the AR glass 10 is a plane in real space corresponding to the plane pointed to by the hand 21 in step S101-1 or the plane touched by the hand 21 to display the area image in the virtual space. Specify as.
  • step S102-1 The process proceeds to the next step S102-1.
  • step S102-1 and the following steps S102-2 and S102-3 correspond to the processing of step S102 in the flowchart of FIG. 10 described above.
  • step S102-1 the AR glass 10 determines whether or not the plane specified in step S101-2 has been traced by the hand 21 (finger).
  • the AR glass 10 traces the plane when the hand 21 points to the plane in step S101-1 or when the hand 21 is linearly moved while maintaining the state where the hand 21 is in contact with the plane. judge.
  • step S102-1 "Yes"
  • the process shifts to step S102-3.
  • step S102-1 determines that the plane is not traced by the hand 21
  • step S102-2 the AR glass 10 determines whether or not the line segment on the plane specified in step S101-2 is pointed and traced (moved linearly) by the hand 21.
  • step S102-2 determines that the operation of pointing and tracing the line segment is not executed by the hand 21.
  • step S102-2 When the AR glass 10 determines in step S102-2 that the operation of tracing while pointing to the line segment is executed, the process shifts to step S102-3.
  • step S102-3 the AR glass 10 is in the virtual space corresponding to the plane of the real space specified in step S101-2 in the direction in which the hand 21 traces the plane in step S102-1 or step S102-2.
  • step S102-3 When the direction (direction) for displaying the area image is specified in step S102-3, the process shifts to step S103, and the density of the area image is set in the same manner as in step S103 of the flowchart of FIG. 10 described above.
  • the AR glass 10 has a series of user's hands 21 for specifying the plane in the virtual space for displaying the region image and the orientation of the region image to be displayed on the plane in the specified virtual space. It can be executed based on the movement. As a result, the user can easily display the area image on the plane in the virtual space corresponding to the plane in the real space.
  • FIG. 17 is a schematic diagram showing a specific example of displaying a region image applicable to the first embodiment.
  • the floor surface 300 is designated as the physical surface
  • the direction along the boundary 318 (not shown) between the floor surface 300 and the wall surface 301 is designated as the orientation of the area image.
  • Area image as a grid by one or more grid lines 321a in the direction along the boundary 318 and one or more grid lines 321b along a direction different from the grid line 321a (for example, a direction orthogonal to the grid line 321a). Is displayed in the virtual space.
  • the spacing 320a of each grid line 321a and the spacing 320b of each grid line 321b are grid spacings corresponding to the density of the region image set in the process of step S13 in the flowchart of FIG.
  • the grid is displayed only on the virtual surface corresponding to the floor surface 300 designated as the physical surface, but this is not limited to this example.
  • a grid is displayed on each virtual surface corresponding to each of the floor surface 300 and the wall surface 301.
  • the AR glass 10 can, for example, extend the grid displayed on the virtual surface corresponding to the designated physical surface to the virtual surface corresponding to another physical surface and display it.
  • FIG. 18 is a schematic diagram showing an example in which the grid is expanded and displayed, which is applicable to the first embodiment.
  • the grid is expanded and displayed in the entire virtual space. That is, in FIG. 18, the grid displayed on the virtual surface corresponding to the floor surface 300 is expanded and displayed on the virtual surface corresponding to the wall surface 301 connected to the floor surface 300. More specifically, a grid composed of horizontal grid lines 321c and vertical grid lines 321d is further displayed on the virtual surface corresponding to the wall surface 301.
  • the vertical grid lines 321d are displayed as lines continuous with the grid lines 321b constituting the grid displayed on the virtual surface corresponding to the floor surface 300.
  • the horizontal grid line 321c is displayed in parallel with the grid line 321a.
  • FIG. 19 is a schematic diagram showing an example in which the grid is expanded and displayed in the entire virtual space, which is applicable to the first embodiment.
  • each grid line 321e is displayed perpendicular to the virtual surface from each grid point of the grid displayed on the virtual surface corresponding to the floor surface 300, and is displayed on the virtual surface corresponding to the wall surface 301.
  • each grid line 321f is displayed perpendicular to the virtual surface.
  • a three-dimensional lattice corresponding to the orientation specified in step S102 of the flowchart of FIG. 10 is displayed in the virtual space. This allows the user to easily confirm, for example, the spatial arrangement.
  • FIG. 20 is a diagram corresponding to FIG. 14A described above, and is an example in which a grid is displayed on a virtual surface corresponding to a physical surface designated in the architectural model 330, which is applicable to the first embodiment. It is a figure which shows schematically.
  • a grid consisting of grid lines 321a and 321b orthogonal to each other is displayed with respect to the virtual surface corresponding to the plane 331 corresponding to the ground in the architectural model 330 designated as the physical surface.
  • the grid of the portion hidden by the architectural model 330 is shown by a dotted line.
  • FIG. 21 is a diagram schematically showing an example of a case where a line showing a vertical plane is projected onto a surface in real space by using a laser beam according to an existing technique.
  • the locus 410 of the laser light emitted from the laser light projection device 400 (for example, the laser marking device of Patent Document 1) installed on the floor surface 300 is projected from the floor surface 300 to the wall surface 301. Has been done.
  • Section (b) of FIG. 21 shows an example in which an object 420 that serves as a shield exists on the optical path of the laser beam by the laser beam projection device 400 in the state of the section (a) described above.
  • the laser light emitted from the laser light projection device 400 is blocked by the object 420 and does not reach the inner side of the object 420 when viewed from the laser light projection device 400. Therefore, this existing technique may not fully function in a state where the object 420 is already installed on the floor surface 300 on which the laser light projection device 400 is installed.
  • FIG. 22 is a diagram schematically showing an example of the case where the grid is displayed in the virtual space according to the first embodiment.
  • the user wearing the AR glass 10 is on the lower side of each figure, that is, on the front side in the depth direction of the figure, and from the front side to the back side. Suppose you are watching.
  • Section (a) of FIG. 22 schematically shows a state in which a grid with grid lines 321a and 321b is displayed on the virtual surface corresponding to the floor surface 300.
  • the floor surface 300 between the object 420 and the wall surface 301 and the portion of the wall surface 301 on the back side of the object 420 corresponding to the object 420 are behind the object 420 with respect to the user's current position. Become. The user cannot see the grid behind this object from the current position.
  • the grid is displayed in the virtual space by the display units 1201L and 1201R of the AR glass 10. Therefore, the user can move to another position around the object 420 to see the grid at the position that was behind the object 420 at the initial position. More specifically, as shown in section (b) of FIG. 22, the user wraps around behind the object 420 (between the object 420 and the wall surface 301) from the position in section (a) of FIG. As a result, the grid of the part that was the shadow of the object 420 in the section (a) is displayed in the virtual space, and the grid can be seen.
  • the second embodiment is a virtual space when a real object is placed in a real space corresponding to the virtual space in which a grid is displayed in the virtual space by using the technique of the first embodiment described above. Regarding the display inside.
  • FIG. 23 schematically shows how the real objects 430a, 430b, and 430c are arranged in the real space in which the grid is displayed on the virtual surface corresponding to the real surface in the virtual space as in FIG. 18 described above. It is a figure.
  • each real object 430a, 430b, and 430c has a shape such as a cylinder or an elliptical pillar that does not have a straight side on the ground plane with respect to the floor surface 300.
  • the ground plane of an object arranged on the floor surface 300 has a shape having straight sides such as a rectangular parallelepiped, it is easy to arrange the object along the grid.
  • the AR glass 10 according to the second embodiment measures the feature amount of the real object to be arranged, and makes it possible to acquire the position and posture of the real object based on the measured feature amount. Further, the AR glass 10 according to the second embodiment sets the origin and coordinates with respect to the real object based on the acquired position and posture. Then, the coordinate space represented by the set origin and coordinates is displayed in the virtual space.
  • FIG. 24 shows the origin and the three-dimensional coordinates (x local , y local , z local ) set according to the position and the posture acquired based on the feature amount with respect to the real object 430a according to the second embodiment. It is a figure which shows the example of the coordinate space 440a.
  • the AR glass 10 displays this coordinate space 440a in the virtual space in association with the position and orientation of the real object 430a in the real space.
  • the coordinate space 440a is made available as a guideline for the position and posture of the real object 430a when the user arranges the real object 430a on the grid.
  • the first method will be described as an example of acquiring the position and posture of the real object 430a.
  • the AR glass 10 measures the shape and texture of the real object 430a. For example, the AR glass 10 first identifies the real object 430a that the user is touching the hand 21. In this case, the AR glass 10 may identify the real object 430a based on each sensor signal output from the hand sensor 20, or may perform the identification based on the captured image of the hand 21 taken by the outward camera 1101. good.
  • the AR glass 10 captures the specified real object 430a with, for example, an outward camera 1101, and three-dimensionally models the real object 430a in real time based on the captured image to acquire a three-dimensional model. Further, the AR glass 10 sets a certain posture of the real object 430a (for example, a posture at the time of performing three-dimensional modeling) in a state where Roll, Pitch, and Yaw are each "0". The AR glass 10 registers information indicating the three-dimensional model and the posture thus acquired for the real object 430a. For example, the AR glass 10 stores information for identifying the real object 430a and information indicating the three-dimensional model and posture of the real object 430a in association with each other in the storage unit 140.
  • a certain posture of the real object 430a for example, a posture at the time of performing three-dimensional modeling
  • FIG. 25 shows the coordinate spaces 440a, 440b, and 440c associated with each real object 430a, 430b, and 430c arranged in the real space according to the second embodiment, respectively, in the virtual space. It is a figure which shows the example schematically.
  • Each of these coordinate spaces 440a, 440b and 440c is displayed in a position and orientation corresponding to each position and orientation specified for each corresponding real object 430a, 430b and 430c, respectively. That is, each coordinate space 440a, 440b, and 440c is a coordinate space according to the local coordinate system for each real object 430a, 430b, and 430c, respectively.
  • the AR glass 10 constantly measures the feature amount of the real object 430a and compares it with the shape shown by the registered three-dimensional model of the real object 430a to specify the current position and posture of the real object 430a. .. It is preferable that the AR glass 10 updates the display of the coordinate space 440a based on the information on the position and orientation of the real object 430a thus identified.
  • association between the coordinate system of the virtual space and the coordinate system of the coordinate space can be performed by, for example, a matrix operation using known rotation and translation.
  • the AR glass 10 acquires the origin and coordinates based on the position and the posture for each real object arranged in the real space, and based on the acquired origin and coordinates. , Set the coordinate space for each real object. Therefore, the user can easily arrange a real object having a shape whose position and posture are difficult to visually specify in the real space according to the grid displayed in the virtual space.
  • the second method will be described as another example of acquiring the position and posture of the real object 430a.
  • a part of the texture of the real object 430a is regarded as a marker such as an AR marker, and the position and the posture of the marker are detected to detect the position and the posture of the real object 430a.
  • the AR glass 10 captures the real object 430a with the outward camera 1101 and detects the texture of the real object 430a based on the captured image. A part of the detected texture is extracted, and the extracted part is used as a marker.
  • FIG. 26 is a schematic diagram for explaining still another example of acquiring the position and posture of the real object 430a according to the second embodiment.
  • the AR glass 10 transmits the feature amount measured based on the captured image of the real object 430a to the server 3, and the feature amount is the feature amount.
  • the three-dimensional model 431a corresponding to the above may be downloaded from the server 3.
  • the three-dimensional model 431a has a coordinate space 441a associated with the three-dimensional model 431a in a one-to-one relationship.
  • the AR glass 10 can specify the current position and orientation of the real object 430a by comparing the three-dimensional model 431a downloaded from the server 3 with the real object 430a.
  • FIG. 4 Processing for a partially deformed real object
  • FIG. 4 An example of a real object that is partially deformed is a potted plant.
  • the pot part does not deform, but the position and posture of the plant itself may change due to wind or the like. Therefore, when the real object to be placed in the real space is a potted plant, it is preferable not to use the plant part for detecting the position and the posture.
  • FIG. 27 is a schematic diagram for explaining a method of setting the coordinate space 440d for a partially deformed real object according to the second embodiment.
  • a potted plant is applied as an example of a real object 450 that is partially deformed.
  • the pot portion 451 has a fixed shape, while the plant portion 452 sways due to wind, vibration, or the like, and the shape changes.
  • the user attaches the AR glass 10 and traces the pot portion 451 having a fixed shape by hand 21.
  • the AR glass 10 captures the entire image of the real object 450 by the outward camera 1101 to detect the movement of the user's hand 21, and the portion of the real object 450 designated according to the movement of the hand 21.
  • Pot portion 451 is extracted as a detection target of position and posture.
  • the AR glass 10 may extract the position and orientation detection target of the real object 450 based on each sensor signal output from the hand sensor 20.
  • the AR glass 10 can also perform motion detection processing on the captured image captured by the real object 450 to extract the motion portion in the real object 450.
  • the portion of the real object 450 other than the extracted moving portion is extracted as the detection target of the position and the posture in the real object 450.
  • the AR glass 10 ignores the part (plant part 452) of the real object 450 that was not extracted as the detection target of the position and the posture.
  • the AR glass 10 measures the feature amount of the pot portion 451 extracted as the detection target of the position and the posture in the real object 450 based on the image captured by the outward camera 1101 and acquires the position and the posture.
  • the AR glass 10 sets the origin and coordinates for the pot portion 451 based on the acquired position and posture, and displays the coordinate space 44d represented by the set origin and coordinates in the virtual space.
  • the AR glass 10 acquires the position and the posture while ignoring the deformed portion in the partially deformed real object. Therefore, the coordinate space can be set even for a real object that is partially deformed, and it can be easily arranged in the real space according to the grid displayed in the virtual space.
  • the coordinate space of the real object is displayed at a position in the virtual space corresponding to the real object arranged in the real space.
  • the coordinate space is displayed in advance in the virtual space. Then, the real object is moved to a position in the real space corresponding to the position in the virtual space where the coordinate space is displayed, and the real object and the coordinate space are associated with each other.
  • FIG. 28 is a schematic diagram for explaining the processing of an example according to the modified example of the second embodiment.
  • the origin and the coordinates are set at a predetermined position in the virtual space, and the coordinate space 442a is displayed based on the set origin and the coordinates.
  • the user actually moves the real object 430a in the real space to the position of the coordinate space 442a based on the coordinate space 442a superimposed and displayed on the display unit 1201 of the AR glass 10.
  • the user moves the real object 430a to a predetermined position in the coordinate space 442a
  • the user acquires the position and posture of the real object 430a and registers the real object 430a in association with the coordinate space 442a.
  • the registration of the real object 430a is performed, for example, according to the gesture and vocalization of the hand 21 by the user wearing the AR glass 10, and when the AR glass 10 uses the controller 11, a predetermined operation on the controller 11 and the like.
  • the posture of the real object 430a at the time of registration can be regarded as a state (initial state) in which Roll, Pitch, and Yaw are each "0".
  • the AR glass 10 gives the user a sound or tactile stimulus according to the positional relationship between the position of the hand 21 of the user wearing the AR glass 10 and the area image. There is.
  • FIG. 29 is a schematic diagram schematically showing the operation according to the third embodiment.
  • FIG. 29 is a diagram corresponding to FIG. 20 described above, and the grid is displayed with respect to the virtual surface corresponding to the physical surface designated in the architectural model 330.
  • the AR glass 10 detects the position of the user's hand 21 based on each sensor signal of the hand sensor 20, and when the hand 21 approaches the grid, issues a notification 500 to the user in a predetermined pattern.
  • the AR glass 10 emits the notification 500 by using, for example, vibration by the vibrator 2004 of the hand sensor 20 and at least one of the sounds output from the acoustic output unit 1202 of the AR glass 10.
  • the AR glass 10 can make the pattern of the notification 500 different depending on the distance of the detected hand 21 to the grid. Further, the pattern of the notification 500 can be changed depending on which direction the position of the detected hand 21 approaches the grid line.
  • FIG. 30 is a schematic diagram showing an example of the pattern of the notification 500 according to the third embodiment.
  • the notification 500 is emitted by the sound output from the acoustic output unit 1202 of the AR glass 10.
  • the control unit 100 determines the position of the user's hand 21 based on each sensor signal of the hand sensor 20, for example, the fingertip of the finger on which the IMU 202 and 203 are attached (in this example, the fingertip of the second finger). Guess the position.
  • the control unit 100 may use a predetermined portion of the hand sensor 20 as the position of the hand 21.
  • the positions 510a to 510e indicate the positions (fingertip positions) of the estimated fingertips on the grid.
  • the notification 500 is shown as each notification 501a to 501e, respectively. In each of the notifications 501a to 501e, the passage of time is shown in the right direction.
  • the AR glass 10 outputs the first sound according to the estimated distance between the fingertip position and the grid line 321i, and the second sound output according to the estimated distance between the fingertip position and the grid line 321j.
  • the pattern of the notification 500 is made different.
  • the AR glass 10 makes the frequency of the first sound different from the frequency of the second sound.
  • the AR glass 10 makes the frequency of the first sound lower than the frequency of the second sound.
  • the first sound is heard, for example, "po”
  • the second sound is heard, for example, "pi”.
  • the user can know whether the fingertip position is placed on the grid and is closer to the grid line 321i along the vertical direction or the grid line 321j along the horizontal direction.
  • the factor for making the first sound different from the second sound is not limited to the frequency.
  • the AR glass 10 may have different tones (waveforms) between the first sound and the second sound.
  • the sound output unit 1202 is provided corresponding to both ears of the user, the localization of the first sound and the localization of the second sound may be different.
  • these plurality of elements can be combined to make the first sound different from the second sound.
  • the AR glass 10 further modifies the pattern of the notification 500 by varying the frequency with which the first and second sounds are emitted, depending on the distance between the estimated fingertip position and the grid lines 321i and 321j. Let me. More specifically, in the AR glass 10, the closer the estimated fingertip position is to the grid line 321i, the higher the frequency at which the first sound is emitted. Similarly, in the AR glass 10, the closer the estimated fingertip position is to the grid line 321j, the higher the frequency at which the second sound is emitted.
  • the fingertip position is between a certain grid line and a grid line parallel to and adjacent to the grid line, that is, the fingertip position is orthogonal to the grid line from the grid line.
  • the position is separated by 1/2 of the grid spacing in the direction of the grid, the sound of the notification 500 is not emitted.
  • the position 510a is the intersection position of the grid lines 321i and 312j and is the closest position to the grid lines 321i and 321j.
  • the AR glass 10 receives the first sound "po" and the second sound "pi" from the sound output unit 1202, as indicated by the notification 501a. Is output at the first frequency, which is the highest frequency.
  • the AR glass 10 continuously outputs the first sound like "popopopo " and continuously outputs the second sound like "pipipipipi " in parallel with the first sound. do.
  • the position 510b is, for example, the center position of the grid, and is not close to any of the grid lines 321i and 321j. In other words, the position 510b is an intermediate position between the specific grid line 321i and the grid line to the right of the specific grid line 321i among the grid lines along the vertical direction. If this position 510b is presumed to be the fingertip position, the AR glass 10 does not output either the first sound or the second sound.
  • the AR glass 10 When the estimated fingertip position is on the grid line 321j and is at the position 510c which is a distance of 1/2 of the grid spacing in the horizontal direction from the grid line 321i, the AR glass 10 Does not output the first sound, but outputs the second sound at the first frequency. For example, the AR glass 10 continuously outputs only the second sound like "pip pip pip ##.
  • the AR glass 10 When the estimated fingertip position is on the grid line 321j and at the position 510d which is closer than 1/2 of the grid spacing in the horizontal direction from the grid line 321i, the AR glass 10 is set. , The second sound is output at the first frequency, and the first sound is output at the second frequency, which is lower than the first frequency.
  • the AR glass 10 continuously outputs the second sound like “pipipipi ", and in parallel with the second sound, the first sound is like "po, po, po, ## Output intermittently to.
  • the AR glass 10 when the estimated fingertip position is at the position on the grid line 321i and at the position 510e which is closer than 1/2 of the grid spacing in the vertical direction from the grid line 321j, the AR glass 10 outputs the first sound with high frequency and outputs the second sound with a second frequency.
  • the AR glass 10 continuously outputs the first sound like "popopopo " and outputs the second sound like "pi, pi, pi, ## in parallel with the first sound. Output intermittently to.
  • the present invention is not limited to this example. That is, the AR glass 10 can control the operation of the vibrator 2004 provided in the hand sensor 20 according to the distance between the position of the hand 21 (fingertip position) and the grid line. In this case, it is conceivable that the pattern of one vibration itself is different for the grid lines in different directions.
  • the AR glass 10 issues a notification 500 to the user in a pattern according to the positional relationship between the hand 21 and the grid.
  • the user can roughly grasp the position of the hand 21 and can easily perform work at that position. ..
  • FIG. 31 is a schematic diagram for explaining the first display method according to the fourth embodiment.
  • FIG. 31 is a diagram corresponding to FIG. 20 described above, and the grid is displayed with respect to the virtual surface corresponding to the physical surface designated in the architectural model 330. Further, the outline 340 of the architectural model 330 and the site 341 are shown respectively.
  • the site 341 is included in the plane 331 in the real space designated for displaying the grid in the virtual space in the AR glass 10.
  • the line of sight of the user wearing the AR glass 10 is directed from the front toward the architectural model 330 on FIG. 31, and the user cannot directly see the back side of the portion surrounded by the contour 340.
  • the area 351 is an area behind the site 341 when viewed from the user, and cannot be seen by the user because it is blocked by the architectural model 330.
  • the AR glass 10 estimates the position and posture of the hand 21 based on each sensor signal output from the hand sensor 20. Based on this estimation result, the AR glass 10 generates a virtual image 22 that imitates the position and posture of the hand 21, and the generated virtual image 22 is actually placed at a position in the virtual space corresponding to the estimated position of the hand 21. It is displayed by superimposing it on the image of space. At this time, the AR glass 10 may display the virtual image 22 so as not to transmit the image in the real space, or display the virtual image 22 so as to transmit the image in the real space visible at the position of the virtual image 22. You can also let it. Further, the AR glass 10 displays the grid blocked by the architectural model 330 by superimposing it on the image in the real space.
  • the user can confirm the position of the hand 21 in an area that cannot be seen because it is blocked by the actual object, and for example, the position of the object with respect to the area can be executed more accurately.
  • FIG. 32 is a schematic diagram for explaining a second display method according to the fourth embodiment.
  • FIG. 32 is a diagram corresponding to FIG. 31 described above, wherein the user wearing the AR glass 10 uses the hand 21 wearing the hand sensor 20 to place the model 350 of the tree on the back side of the architectural model 330 as seen from the user. An example of arranging is shown. In FIG. 32, the grid, the contour 340 of the architectural model 330, and the site 341 are omitted with respect to FIG. 31.
  • the AR glass 10 has the position and posture of the hand 21 based on each sensor signal of the hand sensor 20 mounted on the hand 21. To get. Further, the AR glass 10 acquires a three-dimensional model of a real object (architectural model 330 in this example) that blocks the line of sight of the user's hand 21.
  • the three-dimensional model of the real object may be generated based on an image captured in advance using, for example, an outward-facing camera 1101, or if the three-dimensional model is registered in the server 3 in advance, the server 3 may be generated. You may get it from.
  • the AR glass 10 captures an image of a part that cannot be seen from the user's position because it is blocked by the real object, based on the acquired position and posture of the hand 21 and the three-dimensional model of the real object (architectural model 330). Generate. At this time, the AR glass 10 may generate an enlarged image of the portion. This image includes a virtual image 23 of the hand 21 based on the position and orientation of the hand 21.
  • the AR glass 10 forms a window 620 for presenting information in the field of view of the AR glass 10, and displays the generated image in the window 620.
  • the coordinates 621 detected as the position of the hand 21 are displayed for the window 620, and the grid lines 321g and 321h corresponding to the grid displayed based on the plane 331 are displayed.
  • the user can, for example, fine-tune the position of the model 350 of the tree on the back side of the architectural model 330 when arranging the model 350 in the area 351 from the user's point of view. Easy to do. Further, the user can confirm the state of the back of the shield when viewed from the user based on the image of the window 620. In this case, the AR glass 10 can display the state of the back of the shield on the window 620 regardless of the presence or absence of the user's hand 21.
  • the image in the window 620 can be enlarged or reduced by a predetermined user operation or the like.
  • the user can confirm the position of the hand 21 in the area blocked by the real object and cannot be seen, and for example, the arrangement of the object with respect to the area can be performed more accurately. Further, in this second method, the user can confirm the state of the back of the shield regardless of whether or not the user's hand 21 is in the position.
  • the designated real object is duplicated in the virtual space
  • the duplicated virtual object in which the real object is duplicated is arranged in the virtual space.
  • FIG. 33 is a schematic diagram schematically showing the operation according to the fifth embodiment.
  • FIG. 33 is a diagram corresponding to FIG. 23 described above, and shows a state in which, for example, real objects 430a, 430b, and 430c, which are chairs, are arranged in the real space.
  • the real object 430a is set as the object to be duplicated.
  • the user designates the real object 430a to be duplicated by a fingertip or the like.
  • the real object 430a to be duplicated can be designated by the fingertip of the finger (for example, the second finger) provided with the IMU 202 and 203 of the hand 21 equipped with the hand sensor 20. Not limited to this, it is also possible to image the user's finger by the outward camera 1101 of the AR glass 10 and specify the real object 430a to be duplicated based on the captured image.
  • the user When the user specifies the real object 430a to be duplicated, the user instructs the AR glass 10 to duplicate the specified real object 430a.
  • the instruction of duplication by the user may be given, for example, by vocalization or by operating an operator of the controller 11.
  • the three-dimensional model of the real object 430a has already been acquired in step S100 of the flowchart of FIG.
  • the AR glass 10 When the AR glass 10 is instructed to duplicate the real object 430a to be duplicated, the AR glass 10 generates a virtual real object 430a_copy that virtually duplicates the real object 430a based on the three-dimensional model of the real object 430a (FIG. 33). See the figure below).
  • the AR glass 10 arranges the generated virtual real object 430a_copy in the vicinity of the position corresponding to the position of the real object 430a in the real space in the virtual space.
  • the user can move the virtual real object 430a_copy in which the real object 430a is duplicated in the virtual space. For example, the user performs an operation of picking a virtual real object 430a_copy displayed in the virtual space by a finger, and further moves the finger in the picked state.
  • the AR glass 10 detects the motion of picking and moving with the fingers based on the image captured by the outward camera 1101
  • the picked virtual real object 430a_copy is moved in the virtual space according to the movement of the fingers. Move it.
  • the three-dimensional model of the real object in the real space is duplicated and placed in the vicinity of the position corresponding to the position of the real object in the virtual space.
  • the user can easily confirm the state as if a plurality of the real objects are arranged.
  • the AR glass 10 creates a virtual space (referred to as a reduced virtual space) in which the real space is reduced, and displays it by superimposing it on the real space in an opaque manner.
  • a virtual space referred to as a reduced virtual space
  • FIG. 34A is a schematic diagram showing a display example of the reduced virtual space according to the sixth embodiment.
  • FIG. 34A and FIG. 34B described later are views corresponding to FIG. 25 described above.
  • the AR glass 10 creates a virtual space (called a reduced virtual space) in which the real space is reduced based on the surrounding three-dimensional model acquired in step S100 of FIG.
  • a virtual object is arranged in the virtual space corresponding to the real space
  • the AR glass 10 includes the virtual object to generate a reduced virtual space.
  • the AR glass 10 displays the generated reduced virtual space by superimposing it on the real space, for example, opaquely.
  • the three-dimensional models of the real objects 430a, 430b, and 430c in the real space have already been acquired.
  • the reduced virtual real objects 430a_mini, 430b_mini and 430c_mini corresponding to the respective real objects 430a, 430b and 430c in the reduced virtual space are generated using the three-dimensional models of the respective real objects 430a, 430b and 430c, respectively.
  • FIG. 34A schematically shows how the reduced virtual space is displayed in the region 600 which is opaquely superimposed on the real space.
  • the user can see the whole state of the real space by the reduced virtual space in the area 600 displayed on the AR glass 10, and the reduced virtual real objects 430a_mini and 430b_mini and 430c_mini arranged in the virtual space corresponding to the real space. Including, it becomes possible to easily grasp.
  • FIG. 34B relates to the sixth embodiment. It is a schematic diagram schematically showing the operation which moves the reduced virtual real object 430a_mini, 430b_mini and 430c_mini according to the user operation in the reduced virtual space.
  • the reduced virtual real object 430a_mini is moved.
  • the user performs, for example, an operation of picking the reduced virtual real object 430a_mini displayed in the area 600 with the fingers of the hand 21, and while maintaining the picked state, the reduced virtual real object 430a_mini is indicated by, for example, arrow 610.
  • Move in the reduced virtual space The AR glass 10 captures the movement of the user's hand 21 by the outward-facing camera 1101, and detects the picking motion, the moving direction, and the like based on the captured image.
  • arrow 610 is merely for explaining the movement of the reduced virtual real object 430a_mini, and is not an object that is actually displayed in the area 600.
  • the AR glass 10 moves in the reduced virtual space to a position in the virtual space corresponding to the reduced virtual real object 430a_mini moved in the reduced virtual space (arrow 610).
  • the object 612 is displayed as an arrow indicating the moving direction in which the real object 430a is moved in response to the movement indicated by the arrow 610 of the reduced virtual real object 430a_mini in the virtual space.
  • the user can move the reduced virtual real object 430a_mini in the reduced virtual space displayed in the area 600 in the real space. It can be reflected in the movement of the real object 430a in. In this way, by displaying an object for reflecting the movement of the reduced virtual object in the reduced virtual space on the movement of the corresponding object in the real space, the user can arrange each object in the real space. It can be easily decided.
  • the present technology can also have the following configurations.
  • An acquisition unit that acquires motion information that indicates the user's motion A display control unit that controls the display of a display unit that can be displayed by superimposing a virtual space on the real space, Equipped with The display control unit A real surface that is a surface in the real space is specified based on the motion information, and a region image showing a virtual object or a region for arranging the real object is a surface in the virtual space corresponding to the physical surface. Displayed on the virtual surface according to the orientation extracted based on the physical surface. Information processing device.
  • the acquisition unit The motion information indicating the motion pointed to by the user is acquired, and the motion information is acquired.
  • the display control unit A surface in the real space that intersects the direction pointed to by the pointing movement is specified as the physical surface.
  • the acquisition unit The motion information indicating the motion of moving the position pointed to by the user is acquired, and the motion information is acquired.
  • the display control unit The direction is extracted based on the locus of the movement due to the movement of the pointed position on the physical surface.
  • the information processing apparatus according to any one of (1) to (4).
  • the acquisition unit Based on the output of a sensor attached to the user's finger and detecting the position and posture of the finger, motion information indicating the user's movement is acquired.
  • the information processing apparatus according to any one of (1) to (5).
  • the display control unit The orientation is extracted based on the feature information extracted from the captured image in which the physical surface is captured by the imaging unit capable of capturing the real space.
  • the information processing apparatus according to any one of (1) to (4).
  • the display control unit Based on the feature information, the direction along the edge of the physical surface is extracted as the direction.
  • the information processing device according to (7) above.
  • the display control unit Based on the feature information, the direction along the pattern of the physical surface is extracted as the orientation.
  • the information processing device according to (7) above.
  • the display control unit A coordinate space corresponding to a real object arranged in the real space is set in the virtual space, and an image showing the set coordinate space is displayed in the virtual space.
  • the information processing apparatus according to any one of (1) to (9).
  • (11) The display control unit Based on the movement information, the position where the movement of the user has occurred in the area indicated by the area image is detected, and the user is notified according to the position information indicating the detected position.
  • the information processing apparatus according to any one of (1) to (10). (12) The display control unit The sound output by the sound output unit is used as the notification. The information processing apparatus according to (11) above. (13) The display control unit As the notification, the stimulus given by the stimulus unit to the user's tactile sensation is used. The information processing apparatus according to (11) or (12). (14) The display control unit The closer the position indicated by the position information is to the boundary of the area, the higher the frequency of the notification. The information processing apparatus according to any one of (11) to (13). (15) The display control unit The notification is given in a different pattern depending on the orientation of the boundary of the region where the position indicated by the position information approaches. The information processing apparatus according to any one of (11) to (14).
  • the display control unit Based on the three-dimensional information of the real space, a reduced virtual space obtained by reducing the real space is generated, superimposed on the real space, and displayed.
  • the movement information indicating the movement of the virtual object corresponding to the real object in the real space by the user which is arranged in the reduced virtual space, is acquired by the acquisition unit, the information indicating the movement is obtained. Displayed superimposed on the position corresponding to the real object in the real space.
  • the information processing apparatus according to any one of (1) to (15).
  • the acquisition unit Based on the output of a sensor that is attached to the user's finger and detects the position and posture of the finger, motion information indicating the user's movement is acquired.
  • the display control unit Based on the motion information acquired based on the output of the sensor, the three-dimensional information of the real object arranged in the real space, and the position of the display unit, the user's finger is viewed from the display unit. When it is determined that the image is hidden behind the real object, the display unit displays an image showing the user's finger.
  • the information processing apparatus according to any one of (1) to (16).
  • the display control unit The area image is displayed as a grid including one or more lines along the direction and one or more lines along a direction different from the direction.
  • the information processing apparatus according to any one of (1) to (17).
  • An acquisition step to acquire motion information indicating the user's motion A display control step that controls the display of a display unit that can be displayed by superimposing a virtual space on the real space, Including The display control step is A real surface that is a surface in the real space is specified based on the motion information, and a region image showing a virtual object or a region for arranging the real object is a surface in the virtual space corresponding to the physical surface. Displayed on the virtual surface according to the orientation extracted based on the physical surface. Information processing method.
  • An acquisition step to acquire motion information indicating the user's motion A display control step that controls the display of a display unit that can be displayed by superimposing a virtual space on the real space, Let the computer run
  • the display control step is A real surface that is a surface in the real space is specified based on the motion information, and a region image showing a virtual object or a region for arranging the real object is a surface in the virtual space corresponding to the physical surface. Displayed on the virtual surface according to the orientation extracted based on the physical surface.
  • Information processing program for. (21) The acquisition unit Based on the captured image including the user's finger captured by the image pickup unit capable of capturing the user's finger, motion information indicating the user's movement is acquired.
  • the information processing apparatus according to any one of (1) to (18).
  • the acquisition unit Acquisition of motion information indicating the motion of the user based on the light emitted from the controller operated by the user for controlling the information processing apparatus.
  • the information processing apparatus according to any one of (1) to (18).
  • the acquisition unit Based on the direction of the user's line of sight detected by the line-of-sight detection unit that detects the direction of the user's line of sight, motion information indicating the movement of the user is acquired.
  • the information processing apparatus according to any one of (1) to (18).
  • the display control unit The area image is further displayed on the virtual surface corresponding to the other physical surface defined based on the physical surface.
  • the information processing apparatus according to any one of (1) to (18).
  • the display control unit The area image is further displayed on the virtual surface corresponding to the other physical surface connected to the physical surface.
  • the information processing apparatus according to (24) above.
  • the display control unit The area image is further displayed on the virtual surface corresponding to the surface distant from the physical surface in the physical space.
  • the information processing apparatus according to (24) or (25).
  • the display control unit A coordinate space for arranging a real object in the real space is set in the virtual space, and an image showing the set coordinate space is displayed in the virtual space.
  • the information processing apparatus according to any one of (1) to (9).
  • the display control unit A virtual object arranged in the reduced virtual space is moved in the reduced virtual space based on the motion information.
  • the information processing apparatus according to (16) above.
  • the display control unit Three-dimensional information of a real object arranged in the real space is acquired, and a virtual object generated based on the acquired three-dimensional information is arranged in the virtual space.
  • the information processing apparatus according to any one of (1) to (18) or (21) to (28).
  • the display control unit An image showing the user's finger is superimposed on the real space at a position corresponding to the user's finger in the virtual space and displayed on the display unit.
  • the information processing apparatus according to (17) above. (31)
  • the display control unit An image including the user's finger is displayed in the real space with respect to the display unit together with the image of the real object generated based on the three-dimensional information of the real object viewed from the position of the user's finger. Display in a window different from the window that is superimposed and displayed, The information processing apparatus according to (17) above.
  • (32) The display control unit Increasing or reducing the display in the other window according to the user's instructions.

Abstract

本開示に係る情報処理装置は、ユーザの動きを示す動き情報を取得する取得部(100)と、実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御部(100)と、を備える。表示制御部は、動き情報に基づき実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、実体面に対応する仮想空間内の面である仮想面に、実体面に基づき抽出された方位に従い表示させる。

Description

情報処理装置、情報処理方法および情報処理プログラム
 本開示は、情報処理装置、情報処理方法および情報処理プログラムに関する。
 臨場感のある体験を実現する技術として、拡張現実(Augmented Reality:AR)が普及してきている。拡張現実は、AR(Augmented Reality)とも呼ばれ、ユーザを取り巻く現実環境に対する情報の付加、強調または減衰、削除を行い、ユーザから見た実空間を拡張させる技術である。ARは、例えばシースルー型のヘッドマウントディスプレイ(以下、「ARグラス」とも呼ぶ)を用いて実現される。AR技術によれば、ユーザがARグラス越しに観察する実空間の風景に対する仮想オブジェクトの重畳表示、特定の実オブジェクトの強調または減衰表示、特定の実オブジェクトを削除して恰も存在しないかのように見せる表示などが実現される。
 一方、特許文献1には、実空間における対向する2つの側壁と天井と床の4面に鉛直面を示すライン光を、レーザ光を用いて照射するレーザ墨出し器が開示されている。このレーザ墨出し器では、例えば床面に装置を載置することで、床面を基準の平面として、鉛直面を示すライン光を壁面と天井と床の4面に照射することが可能である。例えば内装工事においては、このライン光を基準として、室内への物体の設置や、壁面や床、天井への穴開などの施工作業を実施することができる。
特開2005-010109号公報
 AR技術を用いて、仮想空間内にラインを表示させることは、容易である。しかしながら、従来のAR技術では、ラインを表示させる基準となる平面の設定が難しく、実空間への物体の設置などの基準としての表示を仮想空間内に提示することが困難であった。そのため、実空間における物体の配置などの作業が困難となる場合があった。
 本開示は、実空間における作業をより容易に実行可能とする情報処理装置、情報処理方法および情報処理プログラムを提供することを目的とする。
 本開示に係る情報処理装置は、ユーザの動きを示す動き情報を取得する取得部と、実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御部と、を備え、表示制御部は、動き情報に基づき実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、実体面に対応する仮想空間内の面である仮想面に、実体面に基づき抽出された方位に従い表示させる。
開示に適用可能なARグラスシステムの構成例を示すブロック図である。 開示に適用可能なARグラスシステムの構成例を示すブロック図である。 開示に適用可能なARグラスシステムの構成例を示すブロック図である。 各実施形態に適用可能なARグラスの外観を概略的に示す模式図である。 各実施形態に適用可能なARグラスおよびハンドセンサの機能を説明するための一例の機能ブロック図である。 各実施形態に適用可能なハンドセンサの外観例を示す模式図である。 各実施形態に適用可能な制御部の機能を説明するための一例の機能ブロック図である。 各実施形態に適用可能な、ARグラスによる仮想物体の表示例を示す模式図である。 各実施形態に適用可能な、ARグラスがユーザの頭部の動きに追従するように仮想物体を表示させる仕組みについて説明するための模式図である。 各実施形態に適用可能なARグラスの一例のハードウェア構成を示すブロック図である。 各実施形態に適用可能なハンドセンサの一例のハードウェア構成を示すブロック図である。 第1の実施形態に係るARグラスによる処理を概略的に示す一例のフローチャートである。 第1の実施形態に係る平面の第1の指定方法を説明するための模式図である。 第1の実施形態に係る平面の第1の指定方法の別の例を説明するための模式図である。 第1の実施形態に係る平面の第4の指定方法を説明するための模式図である。 第1の実施形態に掛かる向きの第1の指定方法を説明するための模式図である。 第1の実施形態に掛かる向きの第1の指定方法の別の例を説明するための模式図である。 第1の実施形態に係る向きの第3の指定方法を説明するための模式図である。 第1の実施形態に係る、平面の指定と、領域画像の向きの指定と、を一連の手(手指)の動きにより実行する場合の処理を示す一例のフローチャートである。 第1の実施形態に適用可能な領域画像の表示の具体例を示す模式図である。 第1の実施形態に適用可能な、グリッドを拡張して表示させた例を示す模式図である。 第1の実施形態に適用可能な、グリッドを仮想空間内の全体に拡張して表示させた例を示す模式図である。 第1の実施形態に適用可能な、建築模型において指定された実体面に対する仮想面に対してグリッドを表示させた例を模式的に示す図である。 既存技術による、レーザ光を用いて鉛直面を示すラインを実空間の面に投影する場合の例を模式的に示す図である。 第1の実施形態に係る、グリッドを仮想空間内に表示させる場合の例を模式的に示す図である。 仮想空間において実体面に対応する仮想面にグリッドが表示された実空間に対して物体を配置した様子を模式的に示す図である。 第2の実施形態に係る、物体に対して特徴量に基づき取得した位置および姿勢に応じて、原点と3次元の座標からなる座標空間の例を示す図である。 第2の実施形態に係る、実空間内に配置される各実物体に対して、仮想空間内においてそれぞれ座標空間が対応付けられて表示された例を模式的に示す図である。 第2の実施形態に係る、実物体の位置および姿勢を取得するさらに別の例を説明するための模式図である。 第2の実施形態に係る、一部が変形する実物体に対する座標空間の設定方法を説明するための模式図である。 第2の実施形態の変形例に係る一例の処理を説明するための模式図である。 第3の実施形態に係る動作を概略的に示す模式図である。 第3の実施形態に係る通知のパターンの例を示す模式図である。 第4の実施形態に係る表示の第1の方法を説明するための模式図である。 第4の実施形態に係る表示の第2の方法を説明するための模式図である。 第5の実施形態に係る動作を概略的に示す模式図である。 第6の実施形態に係る縮小仮想空間の表示例を示す模式図である。 第6の実施形態に係る、縮小仮想空間の仮想物体をユーザ操作に応じて移動させる動作を概略的に示す模式図である。
 以下、本開示の実施形態について、図面に基づいて詳細に説明する。なお、以下の実施形態において、同一の部位には同一の符号を付することにより、重複する説明を省略する。
 以下、本開示の実施形態について、下記の順序に従って説明する。
1.本開示の概要
2.実施形態に適用可能な技術
3.第1の実施形態
 3-1.第1の実施形態の処理の概略
 3-2.平面の指定方法
 3-3.領域画像の向きの指定方法
 3-4.領域画像の密度の指定方法
 3-5.領域画像の具体例
 3-6.既存技術との対比
4.第2の実施形態
  4-0-1.仮想空間内への座標空間の表示
  4-0-2.一部が変形する実物体に対する処理
 4-1.第2の実施形態の変形例
5.第3の実施形態
6.第4の実施形態
 6-1.第1の表示方法
 6-2.第2の表示方法
7.第5の実施形態
8.第6の実施形態
[1.本開示の概要]
 先ず、本開示に係る技術の概要について説明する。本開示は、AR(Augmented Reality)技術に関するもので、実空間に仮想空間を重畳して表示可能な、ユーザの頭部に装着して使用する表示部を含むARグラスと、ユーザの動きを示す動き情報を取得する取得部と、を用いる。取得部は、ARグラスにおける機能の一つとして実現される。
 ARグラスにおいて、表示部による表示を制御するための表示制御部は、取得部に取得された動き情報に基づき実空間における面(実体面と呼ぶ)を特定し、仮想空間に対して、特定された実体面に対応する面(仮想面と呼ぶ)を設定する。表示制御部は、仮想面に対して、例えば実物体または仮想物体を配置するための領域を示す領域画像を、当該実体面に基づき抽出された方位に従い表示させる。
 本開示では、このように、ユーザの動きに応じて、実物体または仮想物体を配置するための領域を示す領域画像を表示するための仮想面と、その方位を決定している。そのため、ユーザは、実空間や仮想空間における位置および方位の情報を容易に取得できる。またそれにより、ユーザは、実空間に対する実物体の配置や、仮想空間に対する仮想物体の配置を、より正確に実行することが可能となる。
[2.実施形態に適用可能な技術]
 本開示の各実施形態に係る情報処理装置の説明に先立って、各実施形態に適用可能な技術について説明する。図1A、図1Bおよび図1Cは、本開示に適用可能なARグラスシステムの構成例を示すブロック図である。
 図1Aにおいて、ARグラスシステム1aは、ARグラス10と、ハンドセンサ20と、を含む。ARグラス10は、ユーザの頭部に眼鏡様に装着され、実空間に仮想空間を重畳して表示可能な表示部を含む。ハンドセンサ20は、ユーザの手に装着され、ユーザの手の姿勢、位置および動きを検出できる。ハンドセンサ20は、ARグラス10と無線通信または有線通信といった通信手段により接続され、姿勢、位置および動きの検出結果を、通信手段を介してARグラス10に送信する。また、ARグラス10は、ハンドセンサ20に対する指示などを、この通信手段を介してハンドセンサ20に送信することができる。
 図1Bに示されるARグラスシステム1bは、図1Aの構成に対して、コントローラ11を追加した構成となっている。コントローラ11は、例えばユーザが操作するためのボタンなど操作子が設けられる。ARグラス10と無線通信または有線通信といった通信手段により接続され、例えばユーザ操作に応じた制御信号を、通信手段を介してARグラス10に送信し、ARグラス10の動作を制御する。また、コントローラ11は、実空間においてポイントを指し示すためのビーム光を射出する機能を含ませることができる。
 なお、図1Bでは、ハンドセンサ20とコントローラ11とが別体の構成として示されているが、これはこの例に限定されず、ハンドセンサ20とコントローラ11とを一体的に構成してもよい。
 図1Cに示されるARグラスシステム1cは、図1Aの構成に対して、ARグラス10がインターネットなどのネットワーク2と接続可能とされ、ネットワーク2に接続されるサーバ3とARグラス10との間での通信が可能とされている。この場合、ARグラス10は、サーバ3が有するデータをネットワーク2を介してダウンロードして利用することが可能となる。なお、図1Cに示されるネットワーク2およびサーバ3は、クラウドネットワークであってもよい。
 図2は、各実施形態に適用可能なARグラス10の外観を概略的に示す模式図である。ARグラス10の本体は、一般的には眼鏡型またはゴーグル型のデバイスであり、ユーザの頭部に装着して利用され、ユーザの両目または片目の視野に対するデジタル情報の重畳表示、特定の実物体の像の強調または減衰、特定の実物体の像を削除してその実物体が恰も存在しないかのように見せる、などを実現できる。図2では、ユーザの頭部にARグラス10が装着された様子を示している。
 図2において、ARグラス10は、ユーザの左右の眼の前に、それぞれ左眼用の表示部1201Lと右眼用の表示部1201Rとが配設されている。表示部1201Lおよび1201Rは、透明または半透明とされ、実空間の風景に対する仮想物体の重畳表示、特定の実物体の像の強調または減衰、特定の実物体の像を削除してその実物体像が恰も存在しないかのように見せる、などを可能としている。左右の表示部1201Lおよび1201Rは、例えば独立して表示駆動され、視差画像すなわち仮想物体を3次元情報として表示するようにしてもよい。また、ARグラス10の略中央には、ユーザの視線方向に向けられた外向きカメラ1101が配置されている。
 図3は、各実施形態に適用可能なARグラス10およびハンドセンサ20の機能を説明するための一例の機能ブロック図である。図3において、ARグラス10は、制御部100と、センサ部110と、出力部120と、を含む。制御部100は、このARグラス10全体の動作を制御する。
 センサ部110は、外向きカメラ1101と、内向きカメラ1102と、マイクロホン1103と、姿勢センサ1104と、加速度センサ1105と、方位センサ1106と、を含む。
 外向きカメラ1101は、例えばR(赤色)、G(緑色)およびB(青色)の各色による所謂フルカラーの撮像画像を出力可能なRGBカメラを適用できる。外向きカメラ1101は、当該ARグラス10を装着したユーザの視線方向の撮像を行うように、ARグラス10に配置される。外向きカメラ1101は、例えばユーザの手指の動作を撮像可能である。
 また、外向きカメラ1101は、IR(Infrared)光を発光するIR発光部およびIR光を受講するIR受光部を含むIRカメラ、および、発光タイミングと受光タイミングとの時間差に基づき測距を行うためのTOF(Time Of Flight)カメラと、のうち少なくとも一方をさらに備えていてもよい。外向きカメラ121にIRカメラを用いる場合、手の甲など捕捉の対象となる物体に再帰性反射材を取り付けて、IRカメラにより赤外光を発光させ、再帰性反射材から反射された赤外光を受光するようにできる。
 内向きカメラ1102は、例えばRGBカメラからなり、ARグラス10の内側、より具体的には、ARグラス10を装着したユーザの眼を撮影可能に設置されている。内向きカメラ1102の撮影画像に基づいて、ユーザの視線方向を検出することができる。
 外向きカメラ1101および内向きカメラ1102で撮像された撮像画像の画像信号は、制御部100に転送される。
 マイクロホン1103は、単一の収音素子によるマイクロホンを適用できる。これに限らず、マイクロホン1103は、複数の収音素子からなるマイクロホンアレイであってもよい。マイクロホン1103は、ARグラス10を装着したユーザが発した音声や、ユーザの周囲音を収音する。マイクロホン1103で収音された音に基づく音信号は、制御部100に転送される。
 姿勢センサ1104は、例えば3軸あるいは9軸のジャイロセンサであって、ARグラス10の姿勢、例えばロール(Roll)、ピッチ(Pitch)、ヨー(Yaw)を検出する。加速度センサ1105は、ARグラス10に加わる加速度を検出する。方位センサ1106は、例えば地磁気センサであって、ARグラス10が向く方位を検出する。例えば、加速度センサ1105の検出結果と、方位センサ1106の検出結果とに基づき、ARグラス10の初期位置に対する現在位置を求めることが可能である。これら姿勢センサ1104、加速度センサ1105および方位センサ1106は、IMU(Inertial Measurement Unit)により構成されていてもよい。
 姿勢センサ1104、加速度センサ1105および方位センサ1106それぞれから出力された各センサ信号は、制御部100に転送される。制御部100は、これらのセンサ信号に基づいて、ARグラス10を装着したユーザの頭部の位置姿勢を検出することができる。
 出力部は、表示部1201と、音響出力部1202と、振動提示部1203と、を含む。なお、ここでは、図2に示した左右の表示部1201Lおよび1201Rを表示部1201により代表させている。
 表示部1201は、ARグラス10を装着したユーザの両目または片目の前方に設置される透過型ディスプレイで構成され、仮想世界の表示に利用される。より具体的には、表示部1201は、情報(例えば仮想物体の像)の表示、現実のオブジェクト(実物体)の像の強調または減衰、削除などの表示を行いて、ユーザから見た実空間を拡張させる。表示部1201は、制御部100からの表示制御信号に従い表示動作を行う。また、表示部1201において、実空間像に対して仮想空間像を透過表示する仕組みは、特に限定されない。
 音響出力部1202は、制御部100から供給される音信号を空気振動としての音に変換して出力する単一の発音素子、あるいは、複数の発音素子のアレイを含み、スピーカまたはイヤホンを構成する。音響出力部1202は、ARグラス10において、例えば、ユーザの左右の耳の少なくとも一方に配置される。制御部100は、表示部1201で表示される仮想物体に関する音を音響出力部1202に出力させることができる。これに限らず、制御部100は、その他の種類の音信号による音を音響出力部1202に出力させることもできる。
 振動提示部1203は、制御部100の制御に従い、ハンドセンサ20に対して、ハンドセンサ20を装着するユーザの手指に対して刺激(例えば振動)を与えるための制御信号を生成する。
 通信部130は、ハンドセンサ20と、無線通信または有線通信を介して通信を行う。通信部130は、例えばBluetooth(登録商標)による無線通信を用いてハンドセンサ20と通信を行う。通信部130がハンドセンサと通信を行う通信方式は、Bluetooth(登録商標)に限定されない。また、通信部130は、インターネットなどネットワークを介した通信を実行することができる。一例として、図1Cに示したARグラスシステム1cにおいては、通信部130は、ネットワーク2を介して、サーバ3と通信を行う。
 記憶部140は、制御部100で生成されたデータや、制御部100が用いるデータを、不揮発に記憶することができる。
 図3において、ハンドセンサ20は、姿勢センサ2001と、加速度センサ2002と、方位センサ2003と、振動子2004と、を含む。これらのうち、姿勢センサ2001、加速度センサ2002および方位センサ2003は、それぞれ上述した姿勢センサ1104、加速度センサ1105および方位センサ1106に対応する機能を有するもので、ハンドセンサ20の姿勢、加速度および方位を検出する。後述するが、ハンドセンサ20においては、例えばユーザの人差し指が指す方向に基づき、ハンドセンサ20の方位を検出することができる。
 センサ部110の場合と同様に、これら姿勢センサ2001、加速度センサ2002および方位センサ2003は、IMU(Inertial Measurement Unit)により構成されていてもよい。以下では、姿勢センサ2001、加速度センサ2002および方位センサ2003がIMUにより構成されるものとして説明を行う。
 振動子2004は、上述した振動提示部1203で生成された制御信号が供給され、この制御信号に応じて、当該ハンドセンサ20を装着するユーザの手に対して刺激(この例では振動)を与える動作を行う。
 図4は、各実施形態に適用可能なハンドセンサ20の外観例を示す模式図である。図4の例では、ハンドセンサ20は、それぞれ上述した姿勢センサ2001、加速度センサ2002および方位センサ2003の各機能を実現するIMU201、202および203と、ハンドセンサ制御部204と、を含んで構成される。
 IMU201は、手21の第一指(親指)のMP関節とIP関節との間にベルト211などにより装着される。IMU202および203は、それぞれ、手21の第二指(人差し指)の、MP関節とPIP関節との間、および、PIP関節とDIP関節と、の間にベルト212および213などにより装着される。この第二指に装着される2つのIMU202および203のセンサ信号に基づき、第二指により指し示されている方向を求めることができる。
 より詳細には、制御部100は、各IMU201、202および203から出力される各センサ信号に基づき、第一指と第二指との開き角度、第二指のPIP関節(第2関節)の角度、第一指および第二指の指先の接触の有無などを検出できる。これにより、制御部100は、ユーザの手21における手指の位置姿勢(または、手指が取る形態)や、手指によるジェスチャを認識することができる。
 ハンドセンサ制御部204は、ベルト214などにより手21の掌に巻き付けて装着される。ハンドセンサ制御部204は、ARグラス10と通信を行う通信部(図示しない)と、振動子2004と、を含む。ハンドセンサ制御部204は、IMU201~203から出力された各センサ信号を、通信部によりARグラス10に送信する。また、ハンドセンサ制御部204は、振動子2004を含む。ハンドセンサ制御部204は、振動提示部1203により生成されARグラス10より送信された制御信号に応じて振動子2004を振動させ、当該ハンドセンサ20が装着された手21に対して刺激を与えることができる。
 なお、図4の例では、IMUが第一指および第二指にのみ装着されているが、これはこの例に限定されず、手21の他の指に対して、さらにIMUを装着することもできる。また、図4の例では、ハンドセンサ20がユーザの右手に装着されるように示されているが、これはこの例に限定されない。例えば、ハンドセンサ20は、ユーザの左手に装着してもよいし、ユーザの左右の手にそれぞれ装着してもよい。
 図5は、各実施形態に適用可能な制御部100の機能を説明するための一例の機能ブロック図である。図5において、制御部100は、アプリケーション実行部1001と、頭部位置姿勢検出部1002と、出力制御部1003と、手指位置姿勢検出部1004と、手指ジェスチャ検出部1005と、を含む。
 これらアプリケーション実行部1001、頭部位置姿勢検出部1002、出力制御部1003、手指位置姿勢検出部1004および手指ジェスチャ検出部1005は、後述するARグラス10が含むCPU(Central Processing Unit)により例えば記憶部140に記憶される情報処理プログラムが読み出され実行されることで実現される。これに限らず、アプリケーション実行部1001、頭部位置姿勢検出部1002、出力制御部1003、手指位置姿勢検出部1004および手指ジェスチャ検出部1005の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。
 図5において、アプリケーション実行部1001は、OS(Operating System)が提供する実行環境下で、ARアプリを含むアプリケーションプログラムを実行する。アプリケーション実行部1001は、複数のアプリケーションプログラムを同時に並行して実行してもよい。ARアプリは、例えば動画再生や3Dオブジェクトのビューアなどのアプリケーションである。ARアプリは、ARグラス10を頭部に装着したユーザの視界の中に対する仮想空間の重畳表示、特定の実物体の像の強調または減衰表示、特定の実物体の像を削除して当該実物体が恰も存在しないかのように見せる表示などを実行する。
 さらに、ARアプリは、外向きカメラ1101により取得された撮像画像に基づき、周囲の3次元情報を取得することができる。外向きカメラ1101がTOFカメラを備えている場合には、ARアプリは、TOFカメラの機能を用いて得られた距離情報に基づき周囲の3次元情報を取得することができる。さらに、ARアプリは、マイクロホン1103から出力された音信号を解析して、例えば当該ARグラス10を装着したユーザの発声による指示を取得するようにもできる。さらにまた、ARアプリは、後述する手指ジェスチャ検出部1005により検出されたジェスチャに基づき、ユーザによる指示を取得するようにできる。
 アプリケーション実行部1001は、さらに、表示部1201に対する表示を制御する表示制御信号を生成し、生成した表示制御信号により、ARアプリによる仮想物の表示部1201における表示動作の制御も行う。ARアプリが生成する仮想物体は、ユーザの全周囲にわたって配置される。
 図6は、各実施形態に適用可能な、ARグラス10による仮想物体の表示例を示す模式図である。図6に模式的に示されるように、ARグラス10を頭部に装着したユーザの周囲700に、複数の仮想物体701、702、703、…が配置される。アプリケーション実行部1001は、センサ部110から出力されたセンサ信号に基づき推定されるユーザの頭部の位置または身体の重心位置を基準にして、ユーザの周囲700に各仮想物体701、702、703、…を配置する。この仮想物体701、702、703、…が配置されるユーザの周囲700の空間は、実体を持つ現実の物体(実物体)が存在する実空間に対して、仮想空間と呼ばれる。
 頭部位置姿勢検出部1002は、ARグラス10に搭載されるセンサ部110に含まれる姿勢センサ1104と、加速度センサ1105と、方位センサ1106の各センサ信号に基づいて、ユーザの頭部の位置姿勢を検出し、さらにはユーザの視線方向または視野範囲を認識する。
 出力制御部1003は、ARアプリなどのアプリケーションプログラムの実行結果に基づいて、表示部1201、音響出力部1202、および、振動提示部1203の出力を制御する。例えば、出力制御部1003は、頭部位置姿勢検出部1002の検出結果に基づいてユーザの視野範囲を特定し、視野範囲に配置された仮想物体がARグラス10越しにユーザが観察できるように、すなわちユーザの頭部の動きに追従するように、表示部1201による仮想物体の表示動作を制御する。
 さらに、出力制御部1003は、表示部1201Lおよび1201Rを透過する実空間の像に対して仮想空間の像を重畳させて表示させることができる。すなわち、ARグラス10において制御部100は、出力制御部1003により、実空間に対して仮想空間を重畳して表示部1201Lおよび1201Rに表示させる表示制御を行う表示制御部として機能する。
 図7は、各実施形態に適用可能な、ARグラス10がユーザの頭部の動きに追従するように仮想物体を表示させる仕組みについて説明するための模式図である。図7において、ユーザ800の視線の奥行き方向を示す軸を軸zw、水平方向の軸を軸yw、垂直方向の軸を軸xw軸とし、ユーザの基準軸xwwwの原点位置がユーザの視点位置とする。Roll(ロール)θzは、ユーザの頭部の軸zw軸を中心とする運動、Pitch(ピッチ)θyは、ユーザの頭部の軸yw軸を中心とする運動、Yaw(ヨー)θxは、ユーザの頭部の軸xw軸を中心とする運動に相当する。
 頭部位置姿勢検出部1002は、姿勢センサ1104、加速度センサ1105および方位センサ1106の各センサ信号に基づいて、ユーザ800の頭部のRoll、PitchおよびYawの各方向の動き(θz,θy,θx)や、頭部の平行移動からなる姿勢情報を検出する。出力制御部1003は、ユーザ800の頭部の姿勢に追従するように、仮想物体が配置された実空間に対する表示部1201の表示画角を移動させ、その表示画角に存在する仮想物体の画像を表示部1201で表示する。
 より具体的な例として、出力制御部1003は、領域802aに対する、ユーザ800の頭部運動のRoll成分(θz)に応じた回転、領域802bに対する、ユーザ800の頭部運動のPitch成分(θy)に応じた移動、領域802cに対する、ユーザ800の頭部運動のYaw成分(θx)に応じた移動、などにより、ユーザの頭部の動きを打ち消すように表示画角を移動させる。これにより、表示部1201には、ユーザ800の頭部の位置姿勢に追従して移動した表示画角に配置された仮想物体が表示され、ユーザ800は、ARグラス10越しに、仮想物体が重畳された実空間を観察することができる。
 再び図5を参照して、制御部100の機能について説明する。手指位置姿勢検出部1004は、外向きカメラ1101で撮影した画像の認識結果、あるいは、ハンドセンサ20の各IMU201~203から出力された各センサ信号に基づき、ARグラス10を装着したユーザの手21および手指の位置姿勢を検出する。手指ジェスチャ検出部1005は、外向きカメラ1101で撮影した画像の認識結果、あるいは、ハンドセンサ20の各IMU201~203から出力された各センサ信号に基づき、ARグラス10を装着したユーザの手指によるジェスチャを検出する。ここでいう手指のジェスチャは、手指の取る形態、具体的には第二指のMP関節およびPIP関節の角度や、第一指の指先と第二指の指先との接触の有無などを含む。
 すなわち、ARグラス10において制御部100は、手指位置姿勢検出部1004により、ハンドセンサ20から出力された各センサ信号や、外向きカメラ1101により撮像された撮像画像に基づき、当該ARグラス10を装着したユーザの動きを示す動き情報を取得する取得部として機能する。
 図8は、各実施形態に適用可能なARグラス10の一例のハードウェア構成を示すブロック図である。図8において、ARグラス10は、それぞれバス1520により互いに通信可能に接続された、CPU1500と、ROM(Read Only Memory)1501と、RAM(Random Access Memory)1502と、カメラI/F(インタフェース)1503と、センサI/F1504と、ストレージ装置1505と、表示制御部1506と、オーディオI/F1507と、通信I/F1508と、を含む。このように、ARグラス10は、CPUとメモリ、各種I/Fとを含む、コンピュータ(情報処理装置)としての構成を有する。
 ストレージ装置1505は、例えばフラッシュメモリといった不揮発性の記憶媒体であり、図3を用いて説明した記憶部140の機能を実現する。CPU1500は、ストレージ装置1505やROM1501に予め記憶される情報処理プログラムに従い、RAM1502をワークメモリとして用いて動作し、このARグラス10の全体の動作を制御する。
 カメラI/F1503は、外向きカメラ1101および内向きカメラ1102に対するインタフェースであって、外向きカメラ1101および内向きカメラ1102から出力された画像信号をバス1520に供給する。また、CPU1500が情報処理プログラムに従い生成した、外向きカメラ1101および内向きカメラ1102を制御するための制御信号が、カメラI/F1503を介して外向きカメラ1101および内向きカメラ1102に送信される。
 センサI/F1504は、姿勢センサ1104、加速度センサ1105および方位センサ1106に対するインタフェースであって、姿勢センサ1104、加速度センサ1105および方位センサ1106から出力された各センサ信号が、センサI/F1504を介してバス1520に供給される。
 表示制御部1506は、CPU1500からの命令に従い、表示部1201Lおよび1201Rによる表示動作を制御する。例えば、表示制御部1506は、CPU1500により情報処理プログラムに従い生成された表示制御信号を、表示部1201Lおよび1201Rが表示可能な表示信号に変換して、これら表示部1201Lおよび1201Rに供給する。
 オーディオI/F1507は、マイクロホン1103および音響出力部1202に対するインタフェースである。例えば、オーディオI/F1507は、マイクロホン1103により収音された音に基づくアナログ方式の音信号をデジタル方式の音信号に変換して、バス1520に供給する。また、オーディオI/F1507は、例えば、バス1520を介して供給される、CPU1500により情報処理プログラムに従い生成されたデジタル方式の音信号に基づき、音響出力部1202が再生可能な形式の信号に変換して、音響出力部1202に供給する。
 通信I/F1508は、CPU1500の命令に従い、ARグラス10とハンドセンサ20との間の通信を制御する。また、通信I/F1508は、外部との通信の制御も行うことができる。例えば、通信I/F1508は、上述した図1CのARグラスシステム1cにおけるネットワーク2を介したサーバ3との通信を制御する。
 例えば、CPU1500は、各実施形態に係る情報処理プログラムが実行されることにより、上述した制御部100に含まれるアプリケーション実行部1001と、頭部位置姿勢検出部1002と、出力制御部1003と、手指位置姿勢検出部1004と、手指ジェスチャ検出部1005と、をRAM1502における主記憶領域上に、それぞれ例えばモジュールとして構成する。なお、当該情報処理プログラムは、例えば通信I/F1508を介して外部(例えばサーバ3)から取得し、当該ARグラス10上にインストールすることが可能とされている。
 図9は、各実施形態に適用可能なハンドセンサ20の一例のハードウェア構成を示すブロック図である。図9において、ハンドセンサ20は、CPU2100に対してI/F(インタフェース)2101および2102と、通信I/F2103と、が接続されている。これに限らず、ハンドセンサ20を、図8を用いて説明したARグラス10と同様、各部を互いに通信可能に接続するバスを用いた構成としてもよい。また、上述したARグラス10を、この図9に示すハンドセンサ20と同様に、各部をCPUに直接的に接続する構成とすることも可能である。
 図9の例では、CPU2100は、自身を動作させるためのプログラムが記憶されるROMと、当該プログラムを実行する際のワークメモリとして用いるRAMと、を含んで構成されるものとしている。勿論、これらROMおよびRAMを、CPUに対して外部に接続する構成とすることも可能である。通信I/F2103は、CPU2100の命令に従い、ARグラス10との間の通信を制御する。
 I/F2101は、姿勢センサ2001と、加速度センサ2002と、方位センサ2003と、に対するインタフェースであって、これら姿勢センサ2001、加速度センサ2002および方位センサ2003から出力される各センサ信号は、I/F2101を介してCPU2100に供給される。CPU2100は、各姿勢センサ2001、加速度センサ2002および方位センサ2003から供給された各センサ信号を、通信I/F2103からARグラス10に送信する。
 I/F2102は、振動子2004に対するインタフェースである。例えば、I/F2102は、ARグラス10から送信され通信I/F2103により受信された制御信号に応じてCPU2100により発行された命令に基づき、振動子2004を駆動するための駆動信号を生成し、振動子2004に供給する。
[3.第1の実施形態]
 次に、本開示の第1の実施形態について説明する。
(3-1.第1の実施形態の処理の概略)
 先ず、第1の実施形態に係る情報処理装置としてのARグラス10による処理について、概略的に説明する。図10は、第1の実施形態に係るARグラス10による処理を概略的に示す一例のフローチャートである。図10のフローチャートの処理の実行に先立って、例えば、ユーザがARグラス10を装着し、装着したARグラス10の電源を投入するなどの所定の操作によりARグラス10を起動させる。
 ARグラス10は、ステップS100で、例えば外向きカメラ1101により撮像された撮像画像に基づき、既存技術を用いて周囲の3次元(3D)形状の計測を行う。例えば、ユーザは、ARグラス10を装着した状態で、周囲を見回す。ARグラス10は、その間、外向きカメラ1101により一定時間間隔で撮像を行い、周囲を撮像した複数の撮像画像を取得する。ARグラス10は、取得された撮像画像を解析して、周囲の3次元形状の計測を行う。外向きカメラ1101がTOFカメラを備える場合、ARグラス10は、周囲のデプス情報を得ることができる。ARグラス10は、このデプス情報に基づき、周囲の3次元形状の計測を行う。
 ARグラス10は、周囲の3次元形状の計測結果に基づき、実空間の3次元モデルを生成する。このとき、ARグラス10は、実空間に配置される実物体については、エッジ情報などに基づき独立した3次元モデルの生成が可能とされている。ARグラス10は、周囲の3次元形状を計測した結果に基づき生成した3次元モデルのデータを、例えば記憶部140に記憶する。
 次のステップS101で、ARグラス10は、ユーザの動作に基づき、平面の指定を行う。より具体的には、ARグラス10は、実物体または仮想物体を配置するための領域を示す領域画像を仮想空間に表示させるための、実空間における平面(実体面)を指定し、領域画像の表示に係る平面を特定する。次のステップS102で、ARグラス10は、ユーザの動作に基づき、ステップS101で指定された平面に配置する領域画像の向き(方位)を指定する。次のステップS103で、ARグラス10、ステップS102で指定された領域画像の密度を設定する。
 この図10のフローチャートの処理により、ユーザは、ARグラス10により、実空間における実体面に対応する仮想空間内の面(仮想面)に対して、指定した方位および密度で領域画像を表示させることができる。これにより、ユーザは、実空間に対する実物体の配置を容易に行うことができる。また、領域画像は、ARグラス10により仮想空間内に表示されるため、例えばユーザが現在の位置では視線に対して陰になる部分について、当該部分が見えるように自身の位置を変更することで、ARグラス10は、当該部分に対して領域画像を表示させることが可能である。
 ここで、領域画像は、実物体または仮想物体を配置するための領域を示すことが可能であれば、画像の内容は限定されない。一例として、ステップS102でユーザが指定した向きの線と、当該向きと異なる向き(例えば当該向きに対して直交する向き)の線とを組み合わせたグリッドを示すグリッド画像を、領域画像として用いることができる。これに限らず、領域画像は、実体面の各座標点を示すドットでもよいし、実体面に所定サイズのタイル画像を配列させた画像でもよい。
 また、領域画像の密度は、例えば領域画像がグリッドやドットである場合には、グリッドやドットの間隔である。領域画像がタイル画像である場合には、タイル画像サイズが密度に対応する。
 なお、図10のフローチャートでは、ステップS101の平面の指定と、ステップS102の領域画像の向きの指定とを、互いに独立した動作として示しているが、これはこの例に限定されない。例えば、ステップS101の平面の指定と、ステップS102の領域画像の向きの指定とを、一連の動作とすることも可能である。また、ARグラス10は、ステップS101の動作や、ステップS102の動作を、例えばユーザの手による所定のジェスチャや、ユーザの所定の発声などをトリガとして実行するようにできる。
 以下では、領域画像がグリッドを示すグリッド画像であるものとして説明する。また、グリッドを示すグリッド画像を、単に「グリッド」と呼ぶ。
(3-2.平面の指定方法)
 図10のフローチャートにおけるステップS101の、平面の指定方法について説明する。実体面をARグラス10を用いて指定する方法は、幾つかが考えられる。ここでは、ユーザの手の動きに基づき指定する指定方法(平面の第1の指定方法)と、図1Bの構成においてコントローラ11を用いて指定する指定方法(平面の第2の指定方法)と、ユーザの視線に基づき指定する指定方法(平面の第3の指定方法)と、ARグラス10が自律的に指定する指定方法(平面の第4の指定方法)と、について説明する。
 平面の第1の指定方法について説明する。図11は、第1の実施形態に係る平面の第1の指定方法を説明するための模式図である。図11は、床面300および壁面301を含む実空間を示しており、手21は、ARグラス10を装着したユーザの実体的な手(手首より先の部分)を模式的に示している。手21に対して、ハンドセンサ20に含まれる各部(IMU201~203)と、ハンドセンサ制御部204とが装着されている。
 ユーザは、指定したい平面を手21の手指により指し示す動作を行う。ユーザが手21にハンドセンサ20を装着している場合、IMU202および203が設けられる指(この例では第二指)により指し示す動作を行う。ARグラス10は、ハンドセンサ20から送信される各センサ信号に基づきユーザの手21の動きを検出し、ユーザが指し示す指示先と交差する平面(床面300)を、実体面として指定する。これに限らず、ARグラス10は、外向きカメラ1101により手21の手指などを撮像した撮像画像に基づき手21の手指により指し示した方向を取得することもできる。
 図11の例では、ユーザが指し示す指示先を示す指示線310が点311で床面300と交差している。このとき、ユーザは、点311を指定する動作に限らず、指し示す指示先を、例えば指定したい平面において移動させてもよい。図11において、範囲312は、このようにユーザが指示先を移動させた範囲を模式的に示している。
 図10のフローチャートにおけるステップS100においてARグラス10の周囲の3次元形状が既に計測され、3次元モデルが取得されている。また、指示線310により指し示される方向は、ハンドセンサ20の各IMU201~203から出力される各センサ信号に基づき求めることができる。ARグラス10において制御部100は、これら3次元モデルと指示線310の情報とに基づき、ユーザが指し示す方向の平面(床面300)を特定することができる。
 上述では、平面を遠隔から指定しているが、これはこの例に限定されない。図12は、第1の実施形態に係る平面の第1の指定方法の別の例を説明するための模式図である。図12の例では、ユーザは、指定したい平面320(机上面であるとする)に手21を接触させ、且つ、手21を平面320に接触させた状態を保ちつつ、手21を平面320において移動させる(撫でる)。図12において、範囲313は、このようにして、ユーザが手21を平面320に接触させたまま、平面320を移動させた範囲を模式的に示している。ARグラス10は、このユーザが手21を接触させたまま移動させた平面320を、実体面として指定する。
 平面の第2の指定方法について説明する。図1Bに示されるARグラスシステム1bの場合、コントローラ11から射出されるビーム光を用いて、実体面として指定することができる。例えば、ユーザは、コントローラ11を用いてビーム光により平面を指し示す。ARグラス10は、例えば外向きカメラ1101によりビーム光の射出先を撮像し、撮像画像に基づき、ビーム光が照射された位置を検出する。ARグラス10の周囲の3次元モデルは、図10のフローチャートのステップS100にて既に取得されているため、ARグラス10は、撮像画像に基づき、ビーム光が照射された市を含む平面を特定することができ、特定された平面を、実体面として指定することができる。
 平面の第3の指定方法について説明する。平面の第3の指定方法は、ARグラス10を装着したユーザの視線方向に基づき、実体面として指定する方法である。例えば、ARグラス10は、当該ARグラス10を装着したユーザの眼球を、内向きカメラ1102を用いて撮像する。ARグラス10は、内向きカメラ1102により眼球を撮像した撮像画像に基づき、既存技術を用いてユーザの視線(視線方向)を検出する。ARグラス10は、視線と交差する平面を、実体面として指定する。
 平面の第4の指定方法について説明する。平面の第4の指定方法では、ARグラス10は、当該ARグラス10を装着して立っている平面を、実体面として指定する。
 図13は、第1の実施形態に係る平面の第4の指定方法を説明するための模式図である。図13において、ユーザ30は、ARグラス10を装着して床面300に立っている。ARグラス10は、例えば姿勢センサ1104から出力されたセンサ信号に基づきARグラス10自身の傾きを計測し、計測結果に基づきARグラス10を通る鉛直線314を求める。ARグラス10の周囲の3次元モデルは、図10のフローチャートのステップS100にて既に取得されているため、鉛直線314と交差する平面(図13の例では床面300)を検出することで、実体面として指定することができる。
 なお、ARグラス10は、例えば、ARグラス10上の所定位置を通る鉛直線314を求めることできる。これに限らず、ARグラス10は、ARグラス10が粗着される頭部の中央と推測される位置を通る鉛直線314を求めることも可能である。
(3-3.領域画像の向きの指定方法)
 図10のフローチャートにおけるステップS102の、ステップS101で指定された実空間の平面に対応して仮想空間に表示させる領域画像の、当該実空間における向き(方位)の指定方法について説明する。当該領域画像の実空間における向きを、ARグラス10を用いて指定する指定方法は、幾つかが考えられる。ここでは、ユーザの手の動きに基づき指定する指定方法(向きの第1の指定方法)と、図1Bの構成においてコントローラ11を用いて指定する指定方法(向きの第2の指定方法)と、ARグラス10が自律的に指定する指定方法(向きの第3の指定方法)と、について説明する。
 向きの第1の指定方法について説明する。図14Aおよび図14Bは、第1の実施形態に係る向きの第1の指定方法を説明するための模式図である。図14Aは、図10のフローチャートのステップS101で、実体面として、建築模型330における、地面に相当する平面331を指定した場合の例を模式的に示している。このように、第1の実施形態に係るARグラス10は、建造物などの実物に限らず、模型などに対しても、実体面を指定することが可能である。
 図14Aにおいて、ユーザは、手21の、ハンドセンサ20におけるIMU202および203を装着した指(この例では第二指)により、平面331を指し示しつつ、当該指を領域画像の向きを設定したい方向に移動させる。図14Aの例では、ユーザは、平面331の点314aから点314bに向けて、指を移動させている。すなわち、ユーザは、指を、平面331の点314aから点314bに向けて、平面331をなぞるように移動させる。ARグラス10は、この点314aと点314bとを結ぶ線分に沿った方向を、領域画像の向きとして指定する。
 図14Bは、向きの第1の指定方法の別の例を模式的に示す図である。この向きの第1の指定方法の別の例は、実体面上の特徴部分を利用して、領域画像の向きを指定する例である。平面上の特徴部分は、直線状であれば特に限定されないが、以下では、床面300と壁面301との境界318を利用して、領域画像の向きを指定する場合について説明する。
 図14Bの例では、ユーザは、手21の、ハンドセンサ20におけるIMU202および203を装着した指(この例では第二指)により、先ず床面300と壁面301との境界318における点317aを指し示す。ユーザは、さらに手21を例えば図中に矢印316で示されるように動かして、当該境界318を指し示しつつ、点317aから点317bに向けて、指し示す先で境界318をなぞるように移動させる。ARグラス10は、この点317aと点317bとを結ぶ線分に基づき、境界318に沿った方向を、領域画像の向きとして指定する。
 これはこの例に限定されず、ARグラス10は、外向きカメラ1101により手21を撮像した撮像画像に基づき、手21の指し示す位置が点317aから点317bに移動した動きを検出し、点317aと点317bとを結ぶ線分に基づき、境界318に沿った方向を、領域画像の向きとして指定することができる。
 このように、実体面上の特徴部分を利用して、領域画像の向きを指定する場合、ユーザが指し示す位置に対して、マージンを持たせることができる。例えば、ハンドセンサ20を用いる場合、指し示す位置が境界318上から多少のずれを含んでいても、例えばステップS100で取得された3次元モデルに基づき、指し示された位置の近傍に存在する境界318上の点を指定したものと見做すことが可能である。これは、外向きカメラ1101の撮像画像を用いた場合でも、同様である。
 向きの第2の指定方法について説明する。図1Bに示されるARグラスシステム1bの場合、コントローラ11から射出されるビーム光を用いて、領域画像の向きを指定することができる。例えば、ユーザは、コントローラ11を用いてビーム光により平面を指し示しつつ、ビーム光の照射位置を例えば直線的に移動させる。ARグラス10は、例えば外向きカメラ1101によりビーム光の照射位置を撮像し、撮像画像に基づき、ビーム光が照射された軌跡を検出する。ARグラス10は、軌跡の検出結果に基づき、領域画像の向きを指定する。これは、図14Bを用いて説明した、実体面上の特徴部分を利用して領域画像の向きを指定する例にも適用可能である。
 向きの第3の指定方法について説明する。向きの第3の指定方法では、ステップS101で指定された実空間の平面におけるパターンに基づき領域画像の向きを指定する例である。
 図15は、第1の実施形態に係る向きの第3の指定方法を説明するための模式図である。ARグラス10は、外向きカメラ1101により指定された平面(この例では床面300)を撮像し、撮像画像に含まれる、当該平面おいて一定方向に整列するパターンを検出する。パターンは、例えば、撮像画像から抽出した特徴情報に基づき検出することが可能である。図15では、ARグラス10は、撮像画像に基づき、フローリングの床面300における板の合わせ目319、319、…をパターンとして検出し、検出されたパターンの向きを抽出している。抽出されたパターンの向きを、領域画像の向きとして指定する。
 図15の例では、パターンが、長辺の長さが短辺の長さに対して極めて長い、フローリング様であるものとして示しているが、これはこの例に限定されない。例えば、パターンは、長辺の長さと短辺の長さとの比率が小さいタイル状のパターンであってもよいし、直線を一部に含む、あるいは、直線を全く含まない要素が直線状に整列したパターンであってもよい。
 また、実空間の平面におけるパターンとして、指定された平面のエッジを用いることも可能である。例えば、ARグラス10は、外向きカメラ1101により撮像した撮像画像、あるいは、ステップS100で生成された実空間の3次元モデルに基づき、ステップS101で指定された平面(床面300)のエッジを検出する。平面が床面300の場合、エッジは、図14Bに示した、床面300と壁面301との境界318を適用することが可能である。
(3-4.領域画像の密度の指定方法)
 図10のフローチャートにおけるステップS103の、ステップS102で指定された領域画像の密度の設定方法について説明する。領域画像の密度は、領域画像がグリッドである場合には、グリッドの間隔である。同様に、領域画像がドットの場合は、ドットの間隔、領域画像がタイル画像である場合には、タイル画像のサイズである。
 ARグラス10は、領域画像の密度を、システムが予め有するデフォルト値に基づき設定することができる。これに限らず、ARグラス10は、領域画像の密度を、例えば当該ARグラス10を装着したユーザによるユーザ操作に応じて設定することができる。一例として、ARグラス10は、表示部1201Lおよび1201Rを利用して、あるいは、コントローラ11を用いる場合にはコントローラ11の表示画面に、操作メニューを表示させる。ユーザは、この操作メニューをジェスチャ、音声、あるいは、操作子などにより操作して、領域画像の密度を設定する。
 図16は、第1の実施形態に係る、上述した平面の指定と、領域画像の向きの指定と、を一連の手21(手指)の動きにより実行する場合の処理を示す一例のフローチャートである。なお、ARグラス10は、ユーザの手21の動き、手指が指し示す方向の検出などを、ハンドセンサ20から出力される各センサ信号、あるいは、外向きカメラ1101により撮像された撮像画像に基づき実行する。
 ステップS100は、上述した図10のフローチャートにおけるステップS100と対応する処理であって、ARグラス10は、例えば外向きカメラ1101により撮像された撮像画像に基づき周囲の3次元形状の計測を行い、3次元モデルを取得する。
 次のステップS101-1およびステップS101-2は、上述した図10のフローチャートのステップS101の処理に対応する。ステップS101-1で、ARグラス10は、手21(手指)が実空間における平面を指し示す動作(図11参照)、または、手21が実空間における平面に触れる動作(図12参照)のうち何れかを実行しているか否かを判定する。ARグラス10は、手21が実空間における平面を指し示す動作、および、手21が実空間における平面に触れる動作の何れも実行していないと判定された場合(ステップS101-1、「No」)、処理をステップS101-1に戻す。
 一方、ARグラス10は、ステップS101-1で、手21が実空間における平面を指し示す動作、または、手21が実空間における平面に触れる動作のうち何れかを実行していると判定した場合(ステップS101-2、「Yes」)、処理をステップS101-2に移行させる。ステップS101-2で、ARグラス10は、ステップS101-1で手21が指し示した平面、あるいは、手21で触れた平面を、仮想空間内の領域画像を表示させる平面に対応する実空間の平面として特定する。
 処理は次のステップS102-1に移行する。このステップS102-1と、次のステップS102-2およびステップS102-3は、上述した図10のフローチャートのステップS102の処理に対応する。
 ステップS102-1で、ARグラス10は、手21(手指)により、ステップS101-2で特定された平面をなぞったか否を判定する。ARグラス10は、ステップS101-1で手21により平面を指し示した状態、あるいは、手21が平面に触れている状態を維持しつつ手21が直線的に移動された場合に、平面をなぞったと判定する。ARグラス10は、手21により当該平面をなぞったと判定した場合(ステップS102-1、「Yes」)、処理をステップS102-3に移行させる。
 一方、ARグラス10は、手21により平面がなぞられていないと判定した場合(ステップS102-1、「No」)、処理をステップS102-2に移行させる。ステップS102-2で、ARグラス10は、手21により、ステップS101-2で特定された平面上の線分を指し示しつつなぞったか(直線的に移動させたか)否かを判定する。ARグラス10は、手21により、当該線分を指し示しつつなぞる動作が実行されていないと判定した場合(ステップS102-2、「No」)、処理をステップS102-1に戻す。
 ARグラス10は、ステップS102-2で、当該線分を指し示しつつなぞる動作が実行されたと判定した場合、処理をステップS102-3に移行させる。
 ステップS102-3で、ARグラス10は、ステップS102-1またはステップS102-2で手21が平面をなぞった方向を、ステップS101-2で特定された実空間の平面に対応する仮想空間内の平面に表示させる領域画像の方向(方位)として特定する。
 ステップS102-3で領域画像を表示させる向き(方位)が特定されると、処理がステップS103に移行され、上述した図10のフローチャートのステップS103と同様にして、領域画像の密度を設定する。
 このように、ARグラス10は、領域画像を表示させるための仮想空間内の平面の特定と、特定された仮想空間内の平面に表示させる領域画像の向きと、をユーザの手21の一連の動きに基づき実行することができる。これにより、ユーザは、実空間内の平面に対応する仮想空間内の平面に、容易に領域画像を表示させることができる。
(3-5.領域画像の具体例)
 次に、第1の実施形態に適用可能な領域画像の表示例について説明する。なお、ここでは、領域画像がグリッドであるものとして説明を行う。
 図17は、第1の実施形態に適用可能な領域画像の表示の具体例を示す模式図である。図17の例では、実体面として床面300が指定され、領域画像の向きとして、床面300と壁面301との境界318(図示しない)に沿った方向が指定されている例である。境界318に沿った方向の1以上のグリッド線321aそれぞれと、グリッド線321aと異なる向き(例えばグリッド線321aと直交する向き)に沿った1以上のグリッド線321bそれぞれと、によりグリッドとしての領域画像が仮想空間内に表示される。各グリッド線321aの間隔320aと、各グリッド線321bの間隔320bと、が図10のフローチャートにおけるステップS13の処理で設定された領域画像の密度に相当する、グリッド間隔である。
 図17の例では、グリッドが実体面として指定された床面300に対応する仮想面にのみ、表示されているが、これはこの例に限定されない。例えば、実体面として、さらに別の面(例えば壁面301)を追加で指定することが可能である。この場合、床面300および壁面301それぞれに対応する各仮想面に、グリッドが表示される。
 また、グリッドを表示させる仮想面を拡張することも可能である。この場合、ARグラス10は、例えば、指定された実体面に対応する仮想面に表示されるグリッドを、他の実体面に対応する仮想面に延長して表示させることができる。
 図18は、第1の実施形態に適用可能な、グリッドを拡張して表示させた例を示す模式図である。図18の例では、グリッドを仮想空間の全体に拡張して表示させている。すなわち、図18において、床面300に対応する仮想面に表示されるグリッドが、床面300に接続される壁面301に対応する仮想面に拡張させて表示されている。より具体的には、壁面301に対応する仮想面に、水平方向のグリッド線321cと、垂直方向のグリッド線321dと、からなるグリッドをさらに表示させている。この例では、垂直方向のグリッド線321dは、床面300に対応する仮想面に表示されるグリッドを構成するグリッド線321bと連続した線として表示されている。また、水平方向のグリッド線321cは、グリッド線321aと並行に表示されている。これにより、ユーザは、例えば床面300と壁面301とにおける配置の整合性などを容易に確認することが可能となる。
 グリッドを仮想空間の全体に拡張して表示させる別の例として、仮想空間内の全体にグリッドを表示させることも可能である。図19は、第1の実施形態に適用可能な、グリッドを仮想空間内の全体に拡張して表示させた例を示す模式図である。図19において、床面300に対応する仮想面に表示されるグリッドの各格子点から、当該仮想面に対して垂直に各グリッド線321eを表示させ、壁面301に対応する仮想面に表示されるグリッドの各格子点から、当該仮想面に対して垂直に各グリッド線321fを表示させる。これにより、仮想空間に対して、図10のフローチャートのステップS102で指定された向きに応じた立体格子が表示される。これにより、ユーザは、例えば空間的な配置などを容易に確認することが可能となる。
 また、図14Aを用いて説明した、建築模型330などにも、指定された実体面に対応する仮想面に対してグリッドを表示させることができる。図20は、上述した図14Aと対応する図であって、第1の実施形態に適用可能な、建築模型330において指定された実体面に対応する仮想面に対してグリッドを表示させた例を模式的に示す図である。図20において、実体面として指定された、建築模型330における、地面に相当する平面331に対応する仮想面に対して、例えば互いに直行するグリッド線321aおよび321bからなるグリッドが表示される。なお、図20では、建築模型330に隠れる部分のグリッドを点線にて示している。ユーザは、このグリッドを参照することで、平面331に対する各オブジェクトの配置を容易に行うことができる。
(3-6.既存技術との対比)
 次に、第1の実施形態に係る技術の効果を、既存技術と対比させながら説明する。図21は、既存技術による、レーザ光を用いて鉛直面を示すラインを実空間の面に投影する場合の例を模式的に示す図である。図21のセクション(a)において、床面300に設置されたレーザ光投影装置400(例えば特許文献1のレーザ墨出し器)から射出されたレーザ光の軌跡410が床面300から壁面301にかけて投影されている。
 図21のセクション(b)は、上述したセクション(a)の状態において、レーザ光投影装置400によるレーザ光の光路上に遮蔽物となる物体420が存在する例を示している。レーザ光投影装置400から射出されたレーザ光は、物体420で遮られて、レーザ光投影装置400から見て、物体420の奥側には届かない。したがって、この既存技術は、レーザ光投影装置400が設置された床面300に対して物体420が既に設置されているような状態では、十分に機能を発揮できないおそれがある。
 図22は、第1の実施形態に係る、グリッドを仮想空間内に表示させる場合の例を模式的に示す図である。なお、図22のセクション(a)およびセクション(b)において、ARグラス10を装着したユーザは、それぞれの図の下側、すなわち、図の奥行方向において手前側におり、手前側から奥側を見ているものとする。
 図22のセクション(a)は、床面300に対応する仮想面に、グリッド線321aおよび321bによるグリッドが表示されている状態を模式的に示している。この例では、ユーザの現在位置に対して、物体420と壁面301との間の床面300と、物体420の奥側の壁面301の、物体420に対応する部分とが、物体420の陰になる。ユーザは、現在の位置から、この物体の陰になる部分のグリッドを見ることができない。
 ここで、第1の実施形態に係る技術の場合、グリッドは、ARグラス10の表示部1201Lおよび1201Rにより仮想空間内に表示される。したがって、ユーザは、物体420の周囲の他の位置に移動することで、最初の位置では物体420の陰になっていた位置のグリッドを見ることができるようになる。より具体的には、図22のセクション(b)に示されるように、ユーザが、図22のセクション(a)における位置から、物体420の後ろ側(物体420と壁面301との間)に回り込むことで、セクション(a)において物体420の影になっていた部分のグリッドが仮想空間内に表示され、当該グリッドを見ることができるようになる。
[4.第2の実施形態]
 次に、本開示の第2の実施形態について説明する。第2の実施形態は、上述した第1の実施形態の技術を用いて仮想空間内にグリッドが表示された、当該仮想空間に対応する実空間に対して実物体を配置する際の、仮想空間内の表示に関する。
 図23は、上述した図18のように、仮想空間において実体面に対応する仮想面にグリッドが表示された実空間に対して、実物体430a、430bおよび430cを配置した様子を模式的に示す図である。ここで、各実物体430a、430bおよび430cは、円柱形あるいは楕円柱型など、床面300に対する接地面に直線の辺を持たない形状を有するものとする。例えば、床面300に配置する物体の接地面が直方体など直線の辺を持つ形状であれば、当該物体をグリッドに沿って配置することは容易である。
 しかしながら、図23に示す各実物体430a、430bおよび430cのように、床面300への接地面が直線の辺を持たない形状の場合、各実物体430a、430bおよび430cのどの部分をグリッドに合わせれば良いのか分かり難い。したがって、例えば、これら各実物体430a、430bおよび430cを、向きを揃えて正確に並べて配置することが困難である。
 そこで、第2の実施形態に係るARグラス10は、配置しようとする実物体の特徴量を計測し、計測した特徴量に基づきその実物体の位置および姿勢を取得可能とする。さらに、第2の実施形態に係るARグラス10は、当該実物体に対し、取得された位置および姿勢に基づき原点および座標を設定する。そして、設定した原点および座標により表される座標空間を仮想空間内に表示する。
(4-0-1.仮想空間内への座標空間の表示)
 図24は、第2の実施形態に係る、実物体430aに対して特徴量に基づき取得した位置および姿勢に応じて設定した、原点と3次元の座標(xlocal,ylocal,zlocal)からなる座標空間440aの例を示す図である。ARグラス10は、この座標空間440aを、実物体430aの実空間内での位置および姿勢と関連付けて、仮想空間内に表示する。ユーザがグリッド上に実物体430aを配置する際の当該実物体430aの位置および姿勢の目安として、この座標空間440aを利用可能なようにする。
 実物体430aの位置および姿勢を取得する例として、第1の方法について説明する。ARグラス10は、実物体430aの形状やテクスチャを計測する。例えば、ARグラス10は、先ずユーザが手21に触れている実物体430aを特定する。この場合、ARグラス10は、実物体430aの特定を、ハンドセンサ20から出力される各センサ信号に基づき行ってもよいし、外向きカメラ1101により手21を撮像した撮像画像に基づき行ってもよい。
 次に、ARグラス10は、特定された実物体430aを例えば外向きカメラ1101により撮像し、撮像画像に基づき当該実物体430aをリアルタイムに3次元モデリングして3次元モデルを取得する。また、ARグラス10は、当該実物体430aのある姿勢(例えば3次元モデリングを行った時点での姿勢)を、Roll、PitchおよびYawがそれぞれ「0」である状態とする。ARグラス10は、実物体430aについてこのようにして取得された3次元モデルおよび姿勢を示す情報を登録する。例えば、ARグラス10は、実物体430aを識別する情報と、当該実物体430aの3次元モデルおよび姿勢を示す情報と、を関連付けて記憶部140に記憶する。
 図25は、第2の実施形態に係る、実空間内に配置される各実物体430a、430bおよび430cに対して、仮想空間内においてそれぞれ座標空間440a、440bおよび440cが対応付けられて表示された例を模式的に示す図である。これら各座標空間440a、440bおよび440cは、それぞれ対応する各実物体430a、430bおよび430cに対して特定された各位置および姿勢に応じた位置および向きに表示される。すなわち、各座標空間440a、440bおよび440cは、それぞれ、各実物体430a、430bおよび430cに対するローカル座標系による座標空間である。
 また、ARグラス10は、実物体430aの特徴量を常時計測し、登録された当該実物体430aの3次元モデルが示す形状と比較することにより、現在の実物体430aの位置および姿勢を特定する。ARグラス10は、こうして特定された実物体430aの位置および姿勢の情報に基づき、座標空間440aの表示を更新するようにすると、好ましい。
 なお、仮想空間の座標系と座標空間の座標系との関連付けは、例えば既知の回転および並進を用いた行列演算にて可能である。
 このように、第2の実施形態では、ARグラス10は、実空間内に配置される各実物体に対して、位置および姿勢に基づき原点および座標を取得し、取得された原点および座標に基づき、各実物体に対してそれぞれ座標空間を設定する。そのため、ユーザは、目視では位置や姿勢の特定が困難な形状の実物体を、仮想空間内に表示されるグリッドに合わせて、実空間に容易に配置することが可能となる。
 実物体430aの位置および姿勢を取得する別の例として、第2の方法について説明する。この別の例は、実物体430aの一部のテクスチャをARマーカのようなマーカと見做し、そのマーカの位置および姿勢を検出することで、実物体430aの位置および姿勢を検出する。例えば、ARグラス10は、実物体430aを外向きカメラ1101により撮像し、撮像画像に基づき実物体430aのテクスチャを検出する。検出されたテクスチャの一部を抽出し、抽出された部分をマーカとして用いる。
 実物体430aの位置および姿勢を取得するさらに別の例として、第3の方法について説明する。図26は、第2の実施形態に係る、実物体430aの位置および姿勢を取得するさらに別の例を説明するための模式図である。この第3の方法では、図1Cを用いて説明したARグラスシステム1cにおいて、ARグラス10は、実物体430aを撮像した撮像画像に基づき計測された特徴量をサーバ3に送信し、当該特徴量に対応する3次元モデル431aをサーバ3からダウンロードしてもよい。当該3次元モデル431aは、当該3次元モデル431aに1対1の関係で、座標空間441aが関連付けられている。
 ARグラス10は、サーバ3からダウンロードされた3次元モデル431aと、実物体430aと、を比較することで、現在の実物体430aの位置および姿勢を特定することができる。
(4-0-2.一部が変形する実物体に対する処理)
 次に、一部が変形する実物体に対する処理について説明する。一部が変形する実物体の例として、鉢植えの植物などが挙げられる。鉢植えの植物は、鉢の部分は変形しないが、植物自体は、風などにより位置および姿勢が変化するおそれがある。そのため、実空間に配置する実物体が鉢植えの植物である場合には、植物の部分を位置および姿勢の検出に用いないことが好ましい。
 図27は、第2の実施形態に係る、一部が変形する実物体に対する座標空間440dの設定方法を説明するための模式図である。図27の例では、一部が変形する実物体450の例として、鉢植えの植物を適用している。この実物体450において、鉢部分451は、固定的な形状を有する一方で、植物部分452は、風や振動などにより揺れ、形状が変化する。
 ユーザは、例えばARグラス10を装着して、固定的な形状を有する鉢部分451を手21によりなぞる。このとき、ARグラス10は、例えば、外向きカメラ1101により実物体450の全体を撮像してユーザの手21の動きを検出し、実物体450の、手21の動きに応じて指定される部分(鉢部分451)を、位置および姿勢の検出対象として抽出する。ユーザがハンドセンサ20を装着している場合、ARグラス10は、ハンドセンサ20から出力される各センサ信号に基づき、実物体450における位置および姿勢の検出対象の抽出を行ってもよい。
 さらに、ARグラス10は、実物体450を撮像した撮像画像に対して動き検出処理を行い、実物体450における動き部分を抽出することもできる。この場合、実物体450のうち、抽出された動き部分以外の部分が、実物体450における位置および姿勢の検出対象として抽出される。
 ARグラス10は、実物体450のうち、位置および姿勢の検出対象として抽出されなかった部分(植物部分452)は、無視する。
 ARグラス10は、実物体450における位置および姿勢の検出対象として抽出された鉢部分451について、外向きカメラ1101による撮像画像に基づき特徴量を計測し、位置および姿勢を取得する。ARグラス10は、鉢部分451に対して、取得された位置および姿勢に基づき原点および座標を設定し、設定された原点および座標により表される座標空間44dを、仮想空間内に表示させる。
 このように、第2の実施形態では、ARグラス10は、一部が変形する実物体における変形する部分を無視して位置および姿勢を取得する。そのため、一部が変形する実物体についても座標空間を設定することができ、仮想空間内に表示されるグリッドに合わせて、実空間に容易に配置することが可能となる。
(4-1.第2の実施形態の変形例)
 次に、第2の実施形態の変形例について説明する。上述した第2の実施形態では、実空間に配置された実物体に対応する仮想空間内の位置に、当該実物体の座標空間を表示させていた。これに対して、第2の実施形態の変形例では、仮想空間内に予め座標空間を表示しておく。そして、実物体を、座標空間が表示される仮想空間内の位置に対応する実空間の位置に移動させ、実物体と座標空間とを関連付ける。
 図28は、第2の実施形態の変形例に係る一例の処理を説明するための模式図である。図28において、先ず、仮想空間内の所定位置に原点および座標を設定し、設定された原点および座標に基づき座標空間442aを表示させる。ユーザは、ARグラス10の表示部1201に、実空間に対して重畳されて表示される座標空間442aに基づき、実空間内の実物体430aを、実際に当該座標空間442aの位置まで移動させる。
 ユーザは、座標空間442aの所定位置まで実物体430aを移動させると、当該実物体430aの位置および姿勢を取得し、当該実物体430aを座標空間442aと関連付けて登録する。実物体430aの登録は、例えば、ARグラス10を装着したユーザによる手21のジェスチャ、発声、ARグラス10がコントローラ11を用いる場合には、コントローラ11に対する所定の操作などに応じて行われる。このとき、登録が行われた時点での実物体430aの姿勢を、Roll、PitchおよびYawがそれぞれ「0」の状態(初期状態)と見做すことができる。
[5.第3の実施形態]
 次に、本開示の第3の実施形態について説明する。第3の実施形態では、ARグラス10は、ARグラス10を装着したユーザの手21の位置と、領域画像との位置関係に応じた音や触覚への刺激を、当該ユーザに与えるようにしている。
 図29は、第3の実施形態に係る動作を概略的に示す模式図である。図29は、上述した図20に対応する図であって、建築模型330において指定された実体面に対応する仮想面に対してグリッドが表示されている。
 例えば、ARグラス10を装着し、手21にハンドセンサ20を装着したユーザが、建築模型330によりユーザの視線の陰になる部分に手21を移動させ、グリッドに沿って物体を配置する場合を考える。このとき、ARグラス10は、ハンドセンサ20の各センサ信号に基づきユーザの手21の位置を検出し、手21がグリッドに近付いた場合に、ユーザに対して所定のパターンで通知500を発する。ARグラス10は、例えば、ハンドセンサ20の振動子2004による振動、および、ARグラス10の音響出力部1202から出力される音のうち少なくとも一方を用いて、通知500を発する。
 また、ARグラス10は、検出された手21の位置のグリッドに対する距離に応じて、通知500のパターンを異ならせることができる。さらに、検出された手21の位置が、どの方向のグリッド線に近付いたかによって、通知500のパターンを異ならせることができる。
 図30は、第3の実施形態に係る通知500のパターンの例を示す模式図である。ここでは、通知500がARグラス10の音響出力部1202から出力される音により発せられるものとして説明する。ARグラス10において制御部100は、ハンドセンサ20の各センサ信号に基づきユーザの手21の位置、例えば手21においてIMU202および203が装着される指の指先(この例では第二指の指先)の位置を推測する。これに限らず、制御部100は、ハンドセンサ20の所定部位を手21の位置としてもよい。
 図30において、グリッドの各グリッド線のうち、図中で垂直方向に沿った各グリッド線のうち特定のグリッド線321iと、図中で水平方向に沿った各グリッド線のうち特定のグリッド線321jと、に注目する。また、図30において、位置510a~510eは、それぞれ推測された指先の、グリッド上での位置(指先位置)を示している。さらに、通知500は、各通知501a~501eとしてそれぞれ示されている。各通知501a~501eにおいて、右方向に時間の経過を示している。
 ここで、ARグラス10は、推測された指先位置とグリッド線321iとの距離に応じて出力する第1の音と、推測された指先位置とグリッド線321jとの距離に応じて出力する第2の音と、を異なった音とすることで、通知500のパターンを異ならせる。例えば、ARグラス10は、第1の音の周波数と、第2の音の周波数と、を異ならせる。一例として、ARグラス10は、第1の音の周波数を、第2の音の周波数よりも低くする。この場合、第1の音は例えば「ポ」と聞こえ、第2の音は例えば「ピ」と聞こえる。これにより、ユーザは、指先位置がグリッドに置いて垂直方向に沿ったグリッド線321iと、水平方向に沿ったグリッド線321jとのうち何れに近いかを知ることができる。
 第1の音と第2の音とを異ならせるための要素は、周波数に限られない。例えば、ARグラス10は、第1の音と第2の音との音色(波形)を異ならせてもよい。また、音響出力部1202がユーザの両耳それぞれに対応して設けられる場合には、第1の音の定位と第2の音の定位とを異ならせてもよい。さらに、これら複数の要素を組み合わせて、第1の音と第2の音とを異ならせることもできる。
 ARグラス10は、さらに、推測された指先位置と、グリッド線321iおよび321jとの距離に応じて、第1の音および第2の音が発せられる頻度を変えることで、通知500のパターンを異ならせる。より具体的には、ARグラス10は、推測された指先位置がグリッド線321iに近付くほど、第1の音が発せられる頻度を高くする。同様に、ARグラス10は、推測された指先位置がグリッド線321jに近付くほど、第2の音が発せられる頻度を高くする。
 なお、ARグラス10は、推測された指先位置が、あるグリッド線と、そのグリッド線に並行且つ隣接するグリッド線との中間にある場合、すなわち、指先位置がグリッド線から、当該グリッド線に直交する方向にグリッド間隔の1/2だけ離れた位置である場合には、通知500の音を発しない。
 図30を用いて、より具体的に説明する。位置510aは、グリッド線321iおよび312jの交点位置であり、各グリッド線321iおよび321jと最も近い位置であるといえる。この位置510aが指先位置であると推測された場合、ARグラス10は、通知501aとして示されるように、音響出力部1202から、第1の音「ポ」と、第2の音「ピ」とを、最も高い頻度である第1の頻度で出力する。例えば、ARグラス10は、第1の音を「ポポポポポ…」のように連続的に出力し、第1の音と並列的に、第2の音を「ピピピピピ…」のように連続的に出力する。
 一方、位置510bは、例えばグリッドの中央位置であり、各グリッド線321iおよび321jの何れにも近くない。換言すると、位置510bは、垂直方向に沿った各グリッド線のうち、特定のグリッド線321iとその右隣のグリッド線との中間位置となる。この位置510bが指先位置であると推測された場合、ARグラス10は、第1の音および第2の音の何れも出力しない。
 推測された指先位置が、グリッド線321j上の位置であり、且つ、グリッド線321iから水平方向におけるグリッド間隔の1/2の距離だけ離れた位置である位置510cにある場合には、ARグラス10は、第1の音を出力せず、最も第1の頻度で第2の音を出力する。例えば、ARグラス10は、第2の音のみを「ピピピピピ…」のように連続的に出力する。
 推測された指先位置が、グリッド線321j上の位置であり、且つ、グリッド線321iから水平方向におけるグリッド間隔の1/2より近い距離の位置である位置510dにある場合には、ARグラス10は、第2の音を第1の頻度で出力すると共に、第1の音を第1の頻度に対して低頻度の第2の頻度で出力する。例えば、ARグラス10は、第2の音を「ピピピピピ…」のように連続的に出力し、第2の音と並列的に、第1の音を「ポ、ポ、ポ、…」のように断続的に出力する。
 また、推測された指先位置が、グリッド線321i上の位置であり、且つ、グリッド線321jから垂直方向におけるグリッド間隔の1/2より近い距離の位置である位置510eにある場合には、ARグラス10は、第1の音を高頻度で出力すると共に、第2の音を第2の頻度で出力する。例えば、ARグラス10は、第1の音を「ポポポポポ…」のように連続的に出力し、第1の音と並列的に、第2の音を「ピ、ピ、ピ、…」のように断続的に出力する。
 なお、上述では、通知500として音を用いる例について説明したが、これはこの例に限定されない。すなわち、ARグラス10は、手21の位置(指先位置)と、グリッド線との距離に応じて、ハンドセンサ20に設けられた振動子2004の動作を制御することができる。この場合、異なる方向のグリッド線に対しては、1回の振動そのもののパターンを異ならせることが考えられる。
 このように、第3の実施形態では、ARグラス10により、ユーザに対して、手21とグリッドとの位置関係に応じたパターンで通知500を発する。これにより、ユーザは、ユーザの視線に対して隠れた位置に手21がある場合であっても、手21の位置を概略的に把握でき、その位置での作業などを容易に実行可能となる。
[6.第4の実施形態]
 次に、本開示の第4の実施形態について説明する。第4の実施形態は、ユーザの手21が、ユーザの視線方向において実物体の裏側に回り込んでしまい、実物体の陰に隠れてしまった場合の、ARグラス10に対する手21の像の表示に関する。
(6-1.第1の表示方法)
 先ず、第4の実施形態に係る第1の表示方法について説明する。図31は、第4の実施形態に係る第1の表示方法を説明するための模式図である。図31は、上述した図20に対応する図であって、建築模型330において指定された実体面に対応する仮想面に対してグリッドが表示されている。また、建築模型330の輪郭340と、敷地341とがそれぞれ示されている。敷地341は、ARグラス10において、仮想空間においてグリッドを表示させるために指定された、実空間における平面331に含まれる。ARグラス10を装着したユーザの視線は、図31上で手前から建築模型330の方向に向かい、ユーザは、輪郭340で囲まれた部分の裏側を直接的に見ることができない。
 ここで、ユーザが、ハンドセンサ20を装着した手21(図示しない)により樹木の模型350を掴み、平面331に含まれる領域351に樹木の模型350を配置しようとする場合について考える。領域351は、ユーザから見て敷地341より奥側の領域であって、ユーザからは、建築模型330に遮られて見ることができない。
 ARグラス10は、ハンドセンサ20から出力される各センサ信号に基づき、手21の位置および姿勢を推測する。ARグラス10は、この推測結果に基づき、手21の位置および姿勢を模した虚像22を生成し、生成した虚像22を、推測された手21の位置に対応する仮想空間内の位置に、実空間の像に重畳させて表示させる。このとき、ARグラス10は、虚像22を、実空間の像を透過させないように表示してもよいし、虚像22を、虚像22の位置に見える実空間の像に対して透過するように表示させることもできる。さらに、ARグラス10は、建築模型330により遮られているグリッドも、実空間の像に重畳させて表示させる。
 これにより、ユーザは、実物体に遮られて見ることができない領域における手21の位置を確認することができ、例えばその領域に対する物体の配置をより正確に実行できる。
(6-2.第2の表示方法)
 次に、第4の実施形態に係る第2の表示方法について説明する。図32は、第4の実施形態に係る第2の表示方法を説明するための模式図である。図32は、上述した図31に対応する図であって、ARグラス10を装着したユーザが、ハンドセンサ20を装着した手21により、ユーザから見て建築模型330の裏側に、樹木の模型350を配置する場合の例を示している。なお、図32は、図31に対して、グリッドと、建築模型330の輪郭340および敷地341とが省略されている。
 第4の実施形態に係る第2の方法では、上述した第1の方法と同様に、ARグラス10は、手21に装着されたハンドセンサ20の各センサ信号に基づき、手21の位置および姿勢を取得する。また、ARグラス10は、ユーザの手21に対する視線を遮る実物体(この例では建築模型330)の3次元モデルを取得する。実物体の3次元モデルは、例えば外向きカメラ1101などを用いて予め撮像した撮像画像に基づき生成してもよいし、当該3次元モデルがサーバ3に予め登録されている場合には、サーバ3から取得してもよい。
 ARグラス10は、取得された手21の位置および姿勢と、実物体(建築模型330)の3次元モデルと、に基づき、ユーザ位置からは実物体に遮られて見ることができない部分の画像を生成する。このとき、ARグラス10は、その部分を拡大した拡大画像を生成してもよい。この画像は、手21の位置および姿勢に基づく手21の虚像23を含む。
 ARグラス10は、ARグラス10の視野内に、情報提示用のウィンドウ620を形成し、当該ウィンドウ620内に、生成した画像を表示させる。図32の例では、ウィンドウ620に対して、手21の位置として検出された座標621が表示されると共に、平面331に基づき表示されるグリッドに対応するグリッド線321gおよび321hが表示されている。
 ユーザは、このウィンドウ620に表示される画像を参照することで、例えば、ユーザから見て建築模型330の裏側における、樹木の模型350を領域351に配置する作業の際の位置の微調整などを容易に実行できる。また、ユーザは、ユーザから見た場合の遮蔽物の奥の状態を、ウィンドウ620の画像に基づき確認することができる。この場合、ARグラス10は、ユーザの手21の有無に関わらず、遮蔽物の奥の状態をウィンドウ620に表示させることができる。
 なお、ウィンドウ620内の画像は、所定のユーザ操作などにより拡大および縮小を行うことが可能である。
 この第2の方法によっても、ユーザは、実物体に遮られて見ることができない領域における手21の位置を確認することができ、例えばその領域に対する物体の配置をより正確に実行できる。また、この第2の方法では、ユーザは、ユーザの手21がその位置にあるか否かに関わらず、遮蔽物の奥の状態を確認することが可能である。
[7.第5の実施形態]
 次に、本開示の第5の実施形態について説明する。第5の実施形態では、指定した実物体を仮想空間内で複製して、実物体が複製された複製仮想物体を仮想空間内に配置する。
 図33は、第5の実施形態に係る動作を概略的に示す模式図である。図33は、上述した図23と対応する図であって、実空間内に例えば椅子である実物体430a、430bおよび430cが配置された様子を示している。ここでは、実物体430aを複製対象の物体とする。図33の上側に模式的に示されるように、ユーザは、指先などにより、複製対象の実物体430aを指定する。
 複製対象の実物体430aは、ハンドセンサ20を装着した手21のIMU202および203が設けられる指(例えば第二指)の指先により指定することができる。これに限らず、ARグラス10の外向きカメラ1101によりユーザの手指を撮像し、撮像画像に基づき、複製対象の実物体430aの指定を行うこともできる。
 ユーザは、複製対象の実物体430aを指定すると、ARグラス10に対して指定した実物体430aの複製を指示する。ユーザによる複製の指示は、例えば発声により行ってもよいし、コントローラ11の操作子を操作することで行ってもよい。
 ここで、実物体430aの3次元モデルは、図10のフローチャートのステップS100において既に取得されている。ARグラス10は、複製対象の実物体430aの複製が指示されると、当該実物体430aの3次元モデルに基づき、当該実物体430aを仮想的に複製した仮想実物体430a_copyを生成する(図33の下側図参照)。ARグラス10は、生成した仮想実物体430a_copyを、仮想空間内の、実空間における実物体430aの位置に対応する位置の近傍に配置する。
 ユーザは、仮想空間内でこの実物体430aが複製された仮想実物体430a_copyを移動させることができる。例えば、ユーザは、手指により仮想空間に表示される仮想実物体430a_copyを摘む動作を行い、さらに、摘んだ状態で手指を移動させる。ARグラス10は、外向きカメラ1101により撮像した撮像画像に基づき、この手指にて摘み、移動させる動作を検出すると、仮想空間内において、摘まれた仮想実物体430a_copyを、手指の動きに応じて移動させる。
 第5の実施形態では、このように、実空間における実物体の3次元モデルを複製して、仮想空間内の、当該実物体の位置に対応する位置の近傍に配置するようにしている。例えば、実空間内の実物体は1つしか無いが、その実物体が実空間に複数配置される状態を確認したい場合がある。第5の実施形態を適用することで、ユーザは、恰もその実物体が複数配置されるかのような状態を、容易に確認することが可能である。
[8.第6の実施形態]
 次に、本開示の第6の実施形態について説明する。第6の実施形態では、ARグラス10は、実空間を縮小した仮想空間(縮小仮想空間と呼ぶ)を生成し、実空間に不透過で重畳させて表示させるようにしている。
 図34Aは、第6の実施形態に係る縮小仮想空間の表示例を示す模式図である。なお、図34Aおよび後述する図34Bは、上述した図25に対応する図である。
 ARグラス10は、図10のステップS100で取得された周囲の3次元モデルに基づき、実空間を縮小した仮想空間(縮小仮想空間と呼ぶ)を生成する。ARグラス10は、実空間に対応する仮想空間内に仮想物体が配置されている場合には、その仮想物体を含めて、縮小仮想空間を生成する。そして、ARグラス10は、生成した縮小仮想空間を、実空間に例えば不透過で重畳させて表示させる。
 このとき、第5の実施形態において説明したように、実空間における各実物体430a、430bおよび430cの3次元モデルが既に取得されている。縮小仮想空間内の各実物体430a、430bおよび430cにそれぞれ対応する縮小仮想実物体430a_mini、430b_miniおよび430c_miniは、それぞれ各実物体430a、430bおよび430cの3次元モデルを用いて生成する。
 図34Aでは、縮小仮想空間が実空間に不透過で重畳される領域600に表示された様子が模式的に示されている。ユーザは、ARグラス10に表示される領域600内の縮小仮想空間により、実空間の全体の様子を、仮想空間内に実空間に対応させて配置された縮小仮想実物体430a_mini、430b_miniおよび430c_miniを含めて、容易に把握することが可能となる。
 また、ARグラス10は、縮小仮想空間内の縮小仮想実物体430a_mini、430b_miniおよび430c_miniを、ユーザ操作に応じて縮小仮想空間内で移動させることができる。図34Bは、第6の実施形態に係る。縮小仮想空間の縮小仮想実物体430a_mini、430b_miniおよび430c_miniをユーザ操作に応じて移動させる動作を概略的に示す模式図である。
 一例として、縮小仮想実物体430a_miniを移動させる場合について説明する。ユーザは、領域600に表示される当該縮小仮想実物体430a_miniを、手21の手指により例えば摘む動作を行い、摘んだ状態を維持しつつ、当該縮小仮想実物体430a_miniを、例えば矢印610に示されるように縮小仮想空間内で移動させる。ARグラス10は、外向きカメラ1101によりユーザの手21の動作を撮像し、撮像画像に基づき摘む動作および移動方向などを検出する。
 なお、矢印610は、単に縮小仮想実物体430a_miniの移動を説明するためのものであって、実際に領域600に表示されるオブジェクトではない。
 ここで、縮小仮想空間内で縮小仮想実物体430a_miniを移動させても、実空間内の対応する実物体430aが移動するわけではない。そこで、ARグラス10は、縮小仮想空間内で移動された縮小仮想実物体430a_miniに対応する、実空間の実物体430aに対応する仮想空間内の位置に、縮小仮想空間内での移動(矢印610)を示すオブジェクト(画像)612を表示させる。図34Bの例では、オブジェクト612は、仮想空間内の縮小仮想実物体430a_miniの矢印610で示される移動に対応して実物体430aを移動させる移動方向を示す矢印として表示されている。
 ユーザは、このオブジェクト612によるナビゲーションに応じて、実際に実空間内で実物体430aを移動させることで、領域600に表示される縮小仮想空間内における縮小仮想実物体430a_miniの移動を、実空間内での実物体430aの移動に反映させることができる。このように、縮小仮想空間内での縮小仮想物体の移動を実空間での対応する物体の移動に反映させるためのオブジェクトを表示させることで、ユーザは、実空間内での各物体の配置を容易に決めることが可能となる。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
 なお、本技術は以下のような構成も取ることができる。
(1)
 ユーザの動きを示す動き情報を取得する取得部と、
 実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御部と、
を備え、
 前記表示制御部は、
 前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
情報処理装置。
(2)
 前記取得部は、
 前記ユーザが指し示す動きを示す前記動き情報を取得し、
 前記表示制御部は、
 前記指し示す動きにより指し示された方向と交差する前記実空間内の面を前記実体面として特定する、
前記(1)に記載の情報処理装置。
(3)
 前記取得部は、
 前記ユーザが前記実空間内の物体に接触する動きを示す前記動き情報を取得し、
 前記表示制御部は、
 前記接触する動きにより接触された前記実空間内の面を前記実体面として特定する、
前記(1)に記載の情報処理装置。
(4)
 前記取得部は、
 前記ユーザが前記実空間内で立つ動作を示す前記動き情報を取得し、
 前記表示制御部は、
 前記取得部により前記ユーザが前記立つ動作を示す前記動き情報が取得された場合に、該ユーザの頭部から下ろした鉛直線が交差する前記実空間内の面を前記実体面として特定する、
前記(1)に記載の情報処理装置。
(5)
 前記取得部は、
 前記ユーザが指し示す位置を移動させる動きを示す前記動き情報を取得し、
 前記表示制御部は、
 指し示した位置を前記移動させる動きによる移動の前記実体面における軌跡に基づき、前記方位を抽出する、
前記(1)乃至(4)の何れかに記載の情報処理装置。
(6)
 前記取得部は、
 前記ユーザの手指に装着され、該手指の位置および姿勢を検出するセンサの出力に基づき、前記ユーザの動きを示す動き情報を取得する、
前記(1)乃至(5)の何れかに記載の情報処理装置。
(7)
 前記表示制御部は、
 前記実空間を撮像可能な撮像部により前記実体面が撮像された撮像画像から抽出される特徴情報に基づき前記方位を抽出する、
前記(1)乃至(4)の何れかに記載の情報処理装置。
(8)
 前記表示制御部は、
 前記特徴情報に基づき、前記実体面のエッジに沿った方向を前記方位として抽出する、
前記(7)に記載の情報処理装置。
(9)
 前記表示制御部は、
 前記特徴情報に基づき、前記実体面のパターンに沿った方向を前記方位として抽出する、
前記(7)に記載の情報処理装置。
(10)
 前記表示制御部は、
 前記実空間に配置される実物体に対応する座標空間を前記仮想空間内に設定し、設定した該座標空間を示す画像を、該仮想空間内に表示させる、
前記(1)乃至(9)の何れかに記載の情報処理装置。
(11)
 前記表示制御部は、
 前記動き情報に基づき、前記領域画像が示す前記領域内での前記ユーザの動きが生じた位置を検出し、該ユーザに対して、検出された該位置を示す位置情報に応じた通知を行う、
前記(1)乃至(10)の何れかに記載の情報処理装置。
(12)
 前記表示制御部は、
 音出力部が出力する音を前記通知として用いる、
前記(11)に記載の情報処理装置。
(13)
 前記表示制御部は、
 前記通知として刺激部が前記ユーザの触覚に与える刺激を用いる、
前記(11)または(12)に記載の情報処理装置。
(14)
 前記表示制御部は、
 前記位置情報の示す位置が前記領域の境界に近付くほど、前記通知の頻度を上げる、
前記(11)乃至(13)の何れかに記載の情報処理装置。
(15)
 前記表示制御部は、
 前記位置情報の示す位置が近付く前記領域の境界の前記方位に応じて異なるパターンで前記通知を行う、
前記(11)乃至(14)の何れかに記載の情報処理装置。
(16)
 前記表示制御部は、
 前記実空間の3次元情報に基づき該実空間を縮小した縮小仮想空間を生成して前記実空間に重畳して表示させ、
 前記取得部により、前記縮小仮想空間内に配置される、前記実空間の実物体に対応する仮想物体の前記ユーザによる移動を示す前記動き情報が取得された場合に、該移動を示す情報を、該実空間の該実物体に対応した位置に重畳して表示させる、
前記(1)乃至(15)の何れかに記載の情報処理装置。
(17)
 前記取得部は、
 前記ユーザの手指に装着され、該手指の位置および姿勢を検出するセンサの出力に基づき、前記ユーザの動きを示す動き情報を取得し、
 前記表示制御部は、
 前記センサの出力に基づき取得された前記動き情報と、前記実空間に配置される実物体の3次元情報と、前記表示部の位置と、に基づき、前記ユーザの手指が該表示部から見て該実物体の陰に隠れると判定された場合に、該表示部に対し、該ユーザの手指を示す画像を表示させる、
前記(1)乃至(16)の何れかに記載の情報処理装置。
(18)
 前記表示制御部は、
 前記領域画像を、前記方位に沿った1以上の線と、該方位と異なる方位に沿った1以上の線とを含むグリッドとして表示させる、
前記(1)乃至(17)の何れかに記載の情報処理装置。
(19)
 プロセッサにより実行される、
 ユーザの動きを示す動き情報を取得する取得ステップと、
 実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御ステップと、
を含み、
 前記表示制御ステップは、
 前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
情報処理方法。
(20)
 ユーザの動きを示す動き情報を取得する取得ステップと、
 実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御ステップと、
をコンピュータに実行させ、
 前記表示制御ステップは、
 前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
ための情報処理プログラム。
(21)
 前記取得部は、
 前記ユーザの手指を撮像可能な撮像部により撮像された前記ユーザの手指を含む撮像画像に基づき、前記ユーザの動きを示す動き情報を取得する、
前記(1)乃至(18)の何れかに記載の情報処理装置。
(22)
 前記取得部は、
 当該情報処理装置を制御するための、前記ユーザにより操作されるコントローラから射出される光に基づき前記ユーザの動きを示す動き情報を取得する、
前記(1)乃至(18)の何れかに記載の情報処理装置。
(23)
 前記取得部は、
 前記ユーザの視線の方向を検出する視線検出部により検出された前記ユーザの視線の方向に基づき、前記ユーザの動きを示す動き情報を取得する、
前記(1)乃至(18)の何れかに記載の情報処理装置。
(24)
 前記表示制御部は、
 前記実体面に基づき定義される他の実体面に対応する前記仮想面に、さらに前記領域画像を表示する、
前記(1)乃至(18)の何れかに記載の情報処理装置。
(25)
 前記表示制御部は、
 前記実体面に接続される前記他の実体面に対応する前記仮想面に、さらに前記領域画像を表示する、
前記(24)に記載の情報処理装置。
(26)
 前記表示制御部は、
 前記実体面に対して前記実体空間において離れた面に対応する前記仮想面に、さらに前記領域画像を表示する、
前記(24)または(25)に記載の情報処理装置。
(27)
 前記表示制御部は、
 前記仮想空間内に、前記実空間に実物体を配置するための座標空間を設定し、設定した該座標空間を示す画像を、該仮想空間内に表示させる、
前記(1)乃至(9)の何れかに記載の情報処理装置。
(28)
 前記表示制御部は、
 前記縮小仮想空間内に配置される仮想物体を、前記動き情報に基づき該縮小仮想空間内で移動させる、
前記(16)に記載の情報処理装置。
(29)
 前記表示制御部は、
 前記実空間内に配置される実物体の3次元情報を取得し、取得した該3次元情報に基づき生成した仮想物体を、前記仮想空間に配置する、
前記(1)乃至(18)、または、(21)乃至(28)の何れかに記載の情報処理装置。
(30)
 前記表示制御部は、
 前記ユーザの手指を示す画像を、前記仮想空間の該ユーザの手指に対応する位置に、該実空間と重畳させて前記表示部に表示させる、
前記(17)に記載の情報処理装置。
(31)
 前記表示制御部は、
 前記ユーザの手指を含む画像を、該ユーザの手指の位置から見た、前記実物体の3次元情報に基づき生成した該実物体の画像と共に、前記表示部に対し、前記実空間に仮想空間を重畳して表示するウィンドウとは別のウィンドウに表示させる、
前記(17)に記載の情報処理装置。
(32)
 前記表示制御部は、
 前記別のウィンドウ内の表示を、前記ユーザの指示に応じて拡大または縮小させる、
前記(31)に記載の情報処理装置。
1a,1b,1c ARグラスシステム
3 サーバ
10 ARグラス
11 コントローラ
20 ハンドセンサ
21 手
22,23 虚像
100 制御部
110 センサ部
120 出力部
130 通信部
140 記憶部
201,202,203 IMU
204 ハンドセンサ制御部
300 床面
301 壁面
318 境界
321a,321b,321c,321d,321e,321f,321g,321h,321i,321j グリッド線
330 建築模型
430a,430b,430c 実物体
440a,440b,440c 座標空間
500,501a,501b,501c,501d,501e 通知
600 領域
620 ウィンドウ
1001 アプリケーション実行部
1002 頭部位置姿勢検出部
1003 出力制御部
1004 手指位置姿勢検出部
1005 手指ジェスチャ検出部
1101 外向きカメラ
1102 内向きカメラ
1103 マイクロホン
1104 姿勢センサ
1105 加速度センサ
1106 方位センサ
1201,1201L,1201R 表示部
1202 音響出力部

Claims (20)

  1.  ユーザの動きを示す動き情報を取得する取得部と、
     実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御部と、
    を備え、
     前記表示制御部は、
     前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
    情報処理装置。
  2.  前記取得部は、
     前記ユーザが指し示す動きを示す前記動き情報を取得し、
     前記表示制御部は、
     前記指し示す動きにより指し示された方向と交差する前記実空間内の面を前記実体面として特定する、
    請求項1に記載の情報処理装置。
  3.  前記取得部は、
     前記ユーザが前記実空間内の物体に接触する動きを示す前記動き情報を取得し、
     前記表示制御部は、
     前記接触する動きにより接触された前記実空間内の面を前記実体面として特定する、
    請求項1に記載の情報処理装置。
  4.  前記取得部は、
     前記ユーザが前記実空間内で立つ動作を示す前記動き情報を取得し、
     前記表示制御部は、
     前記取得部により前記ユーザが前記立つ動作を示す前記動き情報が取得された場合に、該ユーザの頭部から下ろした鉛直線が交差する前記実空間内の面を前記実体面として特定する、
    請求項1に記載の情報処理装置。
  5.  前記取得部は、
     前記ユーザが指し示す位置を移動させる動きを示す前記動き情報を取得し、
     前記表示制御部は、
     指し示した位置を前記移動させる動きによる移動の前記実体面における軌跡に基づき、前記方位を抽出する、
    請求項1に記載の情報処理装置。
  6.  前記取得部は、
     前記ユーザの手指に装着され、該手指の位置および姿勢を検出するセンサの出力に基づき、前記ユーザの動きを示す動き情報を取得する、
    請求項1に記載の情報処理装置。
  7.  前記表示制御部は、
     前記実空間を撮像可能な撮像部により前記実体面が撮像された撮像画像から抽出される特徴情報に基づき前記方位を抽出する、
    請求項1に記載の情報処理装置。
  8.  前記表示制御部は、
     前記特徴情報に基づき、前記実体面のエッジに沿った方向を前記方位として抽出する、
    請求項7に記載の情報処理装置。
  9.  前記表示制御部は、
     前記特徴情報に基づき、前記実体面のパターンに沿った方向を前記方位として抽出する、
    請求項7に記載の情報処理装置。
  10.  前記表示制御部は、
     前記実空間に配置される実物体に対応する座標空間を前記仮想空間内に設定し、設定した該座標空間を示す画像を、該仮想空間内に表示させる、
    請求項1に記載の情報処理装置。
  11.  前記表示制御部は、
     前記動き情報に基づき、前記領域画像が示す前記領域内での前記ユーザの動きが生じた位置を検出し、該ユーザに対して、検出された該位置を示す位置情報に応じた通知を行う、
    請求項1に記載の情報処理装置。
  12.  前記表示制御部は、
     音出力部が出力する音を前記通知として用いる、
    請求項11に記載の情報処理装置。
  13.  前記表示制御部は、
     前記通知として刺激部が前記ユーザの触覚に与える刺激を用いる、
    請求項11に記載の情報処理装置。
  14.  前記表示制御部は、
     前記位置情報の示す位置が前記領域の境界に近付くほど、前記通知の頻度を上げる、
    請求項11に記載の情報処理装置。
  15.  前記表示制御部は、
     前記位置情報の示す位置が近付く前記領域の境界の前記方位に応じて異なるパターンで前記通知を行う、
    請求項11に記載の情報処理装置。
  16.  前記表示制御部は、
     前記実空間の3次元情報に基づき該実空間を縮小した縮小仮想空間を生成して前記実空間に重畳して表示させ、
     前記取得部により、前記縮小仮想空間内に配置される、前記実空間の実物体に対応する仮想物体の前記ユーザによる移動を示す前記動き情報が取得された場合に、該移動を示す情報を、該実空間の該実物体に対応した位置に重畳して表示させる、
    請求項1に記載の情報処理装置。
  17.  前記取得部は、
     前記ユーザの手指に装着され、該手指の位置および姿勢を検出するセンサの出力に基づき、前記ユーザの動きを示す動き情報を取得し、
     前記表示制御部は、
     前記センサの出力に基づき取得された前記動き情報と、前記実空間に配置される実物体の3次元情報と、前記表示部の位置と、に基づき、前記ユーザの手指が該表示部から見て該実物体の陰に隠れると判定された場合に、該表示部に対し、該ユーザの手指を示す画像を表示させる、
    請求項1に記載の情報処理装置。
  18.  前記表示制御部は、
     前記領域画像を、前記方位に沿った1以上の線と、該方位と異なる方位に沿った1以上の線とを含むグリッドとして表示させる、
    請求項1に記載の情報処理装置。
  19.  プロセッサにより実行される、
     ユーザの動きを示す動き情報を取得する取得ステップと、
     実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御ステップと、
    を含み、
     前記表示制御ステップは、
     前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
    情報処理方法。
  20.  ユーザの動きを示す動き情報を取得する取得ステップと、
     実空間に仮想空間を重畳して表示可能な表示部に対する表示制御を行う表示制御ステップと、
    をコンピュータに実行させ、
     前記表示制御ステップは、
     前記動き情報に基づき前記実空間内の面である実体面を特定し、仮想物体または実物体を配置させるための領域を示す領域画像を、前記実体面に対応する前記仮想空間内の面である仮想面に、前記実体面に基づき抽出された方位に従い表示させる、
    ための情報処理プログラム。
PCT/JP2021/018224 2020-05-21 2021-05-13 情報処理装置、情報処理方法および情報処理プログラム WO2021235316A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/998,578 US20230214004A1 (en) 2020-05-21 2021-05-13 Information processing apparatus, information processing method, and information processing program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-088930 2020-05-21
JP2020088930 2020-05-21

Publications (1)

Publication Number Publication Date
WO2021235316A1 true WO2021235316A1 (ja) 2021-11-25

Family

ID=78708374

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/018224 WO2021235316A1 (ja) 2020-05-21 2021-05-13 情報処理装置、情報処理方法および情報処理プログラム

Country Status (2)

Country Link
US (1) US20230214004A1 (ja)
WO (1) WO2021235316A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014045683A1 (ja) * 2012-09-21 2014-03-27 ソニー株式会社 制御装置および記憶媒体
WO2016134299A1 (en) * 2015-02-20 2016-08-25 Sony Computer Entertainment Inc. Magnetic tracking of glove fingertips with peripheral devices
JP2016526222A (ja) * 2013-05-30 2016-09-01 スミス, チャールズ, アンソニーSMITH, Charles, Anthony Hudオブジェクト設計および表示方法。
JP2017536618A (ja) * 2014-11-25 2017-12-07 マイクロソフト テクノロジー ライセンシング,エルエルシー ウェアラブル可視化デバイスのための仮想測定ツール
WO2018043135A1 (ja) * 2016-08-31 2018-03-08 ソニー株式会社 情報処理装置、情報処理方法、並びにプログラム
WO2018131238A1 (ja) * 2017-01-16 2018-07-19 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2019204560A (ja) * 2019-09-05 2019-11-28 株式会社リコー プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101374353B1 (ko) * 2012-10-18 2014-03-17 광주과학기술원 음향 재생 장치
JP6160154B2 (ja) * 2013-03-22 2017-07-12 セイコーエプソン株式会社 頭部装着型表示装置を利用した情報表示システム、頭部装着型表示装置を利用した情報表示方法、および、頭部装着型表示装置
JP2018137505A (ja) * 2017-02-20 2018-08-30 セイコーエプソン株式会社 表示装置およびその制御方法
JP6933727B2 (ja) * 2017-12-19 2021-09-08 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置、画像処理方法、およびプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014045683A1 (ja) * 2012-09-21 2014-03-27 ソニー株式会社 制御装置および記憶媒体
JP2016526222A (ja) * 2013-05-30 2016-09-01 スミス, チャールズ, アンソニーSMITH, Charles, Anthony Hudオブジェクト設計および表示方法。
JP2017536618A (ja) * 2014-11-25 2017-12-07 マイクロソフト テクノロジー ライセンシング,エルエルシー ウェアラブル可視化デバイスのための仮想測定ツール
WO2016134299A1 (en) * 2015-02-20 2016-08-25 Sony Computer Entertainment Inc. Magnetic tracking of glove fingertips with peripheral devices
WO2018043135A1 (ja) * 2016-08-31 2018-03-08 ソニー株式会社 情報処理装置、情報処理方法、並びにプログラム
WO2018131238A1 (ja) * 2017-01-16 2018-07-19 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2019204560A (ja) * 2019-09-05 2019-11-28 株式会社リコー プログラム

Also Published As

Publication number Publication date
US20230214004A1 (en) 2023-07-06

Similar Documents

Publication Publication Date Title
JP6316387B2 (ja) 広範囲同時遠隔ディジタル提示世界
US20230090043A1 (en) Virtual reality system and method
CN107004279B (zh) 自然用户界面相机校准
JP6343718B2 (ja) ジェスチャインタフェース
JP2022512600A (ja) 任意の場所における場所特有の仮想コンテンツのレンダリング
US20160210781A1 (en) Building holographic content using holographic tools
Piekarski Interactive 3d modelling in outdoor augmented reality worlds
KR20170082907A (ko) 프로젝션 기반 증강현실 제공장치 및 그 방법
US20180225837A1 (en) Scenario extraction method, object locating method and system thereof
CN105378801A (zh) 全息图快照网格
CN105190703A (zh) 使用光度立体来进行3d环境建模
US10146332B2 (en) Information processing device, information processing system, block system, and information processing method
JP7073481B2 (ja) 画像表示システム
WO2015048890A1 (en) System and method for augmented reality and virtual reality applications
CN104637080B (zh) 一种基于人机交互的三维绘图系统及方法
US10471343B2 (en) Information processing apparatus, information processing system, assembled device, and information processing method
KR101960929B1 (ko) 기초 응급 구조 훈련 시뮬레이션 시스템
CN113448343A (zh) 用于设定飞行器的目标飞行路径的方法、系统和程序
JP2009258884A (ja) ユーザインタフェイス
US10130883B2 (en) Information processing device and information processing method
WO2021235316A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2005527872A (ja) 3次元コンピュータモデルと相互作用するための方法および装置
KR20210042476A (ko) 프로젝션 기술을 이용한 증강현실 제공방법 및 시스템
WO2018074054A1 (ja) 表示制御装置、表示制御方法及びプログラム
KR102256607B1 (ko) 다중 콘텐츠 표현이 가능한 다중 가상현실 콘텐츠 제공 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21807552

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21807552

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP