WO2019123530A1 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

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

Info

Publication number
WO2019123530A1
WO2019123530A1 PCT/JP2017/045523 JP2017045523W WO2019123530A1 WO 2019123530 A1 WO2019123530 A1 WO 2019123530A1 JP 2017045523 W JP2017045523 W JP 2017045523W WO 2019123530 A1 WO2019123530 A1 WO 2019123530A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual
manipulator
information
user
information processing
Prior art date
Application number
PCT/JP2017/045523
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 PCT/JP2017/045523 priority Critical patent/WO2019123530A1/ja
Priority to US16/766,097 priority patent/US11385759B2/en
Priority to JP2019559894A priority patent/JP6959991B2/ja
Publication of WO2019123530A1 publication Critical patent/WO2019123530A1/ja

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5375Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for graphically or textually suggesting an action, e.g. by displaying an arrow indicating a turn in a driving game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • 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
    • 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/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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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
    • 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/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

Definitions

  • the present invention relates to an information processing apparatus, an information processing method, and a program.
  • There is an information processing apparatus which arranges a virtual object (for example, a block or the like) in a virtual space and performs a process of stacking blocks in the virtual space by a user operation.
  • a virtual object for example, a block or the like
  • a virtual finger (manipulator) corresponding to the user's finger is displayed in the virtual space, and the user's operation changes the position of the manipulator and the posture (bending condition) of the finger.
  • the user's operation changes the position of the manipulator and the posture (bending condition) of the finger.
  • judging whether a finger has pinched a virtual block in the virtual space and judging that it is pinching it synchronizes the motion of the manipulator with the motion of the pinched virtual block, as if it were as if
  • the present invention has been made in view of the above-described circumstances, and an object thereof is to provide an information processing apparatus, an information processing method, and a program capable of improving the operability of a user.
  • the present invention for solving the problems of the conventional example is an information processing apparatus which arranges a virtual object in a virtual space, generates an image in the virtual space, and presents the image to the user, the operation from the user And a manipulator display unit for displaying a virtual manipulator for operating the virtual object in the virtual space according to the information representing the received operation, and the virtual manipulator And determining means for determining the magnitude of the virtual force to be applied to the virtual object, and presenting means for presenting the information representing the determined magnitude of the force to the user. is there.
  • the operability of the user can be improved.
  • An information processing system is a system including a computer device such as a home game machine, for example, and as shown in FIG. 1, an information processing apparatus 1 such as a home game machine main body And an operation device 20 connected to the information processing apparatus 1.
  • the operation device 20 is gripped by at least one of the left hand or the right hand of the user.
  • the operation device 20 may be fixed to the user's hand by a belt or the like.
  • the operation device 20 includes a circuit unit including the control unit 21, the storage unit 22, the operation interface 23, the sensor unit 24, and the communication unit 25, as schematically illustrated in FIG. 2. Be done.
  • the operation device 20 includes a gripping unit 211 gripped by the user, an operation unit 212, and a finger motion detection unit 213, as illustrated in FIG.
  • the gripping portion 211 is substantially in the shape of a polygonal column in an example of the present embodiment.
  • the operation unit 212 is formed continuously from the gripping unit 211, and includes a button or the like in the example of FIG.
  • the finger motion detection unit 213 is one of the sensors included in the sensor unit 24. When the user grips the device main body 210, the finger motion detection unit 213 obtains information on the degree of bending of the user's finger and obtains information on the detection result. Output.
  • the information on the bending degree of the finger may be, for example, information on the angle of the joint of the finger.
  • the joint here is not an actual joint of the user, but is modeled as that there is only one joint between the base of the finger and the fingertip, and the angle of the joint assumed to be between the base of the finger and the fingertip It is good to estimate There are widely known methods such as estimation using a bone model, and such estimation can be adopted, and thus detailed description thereof will be omitted.
  • the finger motion detection unit 213 may double as the operation unit 212.
  • the size of the operation device 20 is such that when the user naturally grips the device body 210, one end thereof is located slightly outside the position where the tip of the user's thumb (so-called thumb) reaches, and the other end However, the size slightly extends from the base of the little finger (the position corresponding to the MP joint) to a slight extent.
  • the operation device 20 may be fixed to the user's hand with a belt or the like (not shown) so that the operation device 20 does not fall even if the user opens the hand with the operation device 20 attached.
  • the control unit 21 is a program control device such as a CPU, and operates according to a program stored in the storage unit 22.
  • the control unit 21 is information indicating the content of the operation performed by the user on the button operation unit 231 or the like of the operation unit 212 via the operation interface 23, or the bending condition of the user's finger detected by the sensor unit 24.
  • the information on the information is output to the information processing apparatus 1 via the communication unit 25 as the information of the operation.
  • the control unit 21 controls the respective units of the operation device 20 in accordance with the information received from the information processing apparatus 1 via the communication unit 25.
  • the storage unit 22 is a memory device or the like, and holds a program executed by the control unit 21.
  • the program may be provided stored in a computer readable non-transitory storage medium and copied to the storage unit 22.
  • the storage unit 22 also operates as a work memory of the control unit 21.
  • the operation interface 23 outputs, to the control unit 21, information indicating the content of the operation performed by the user on the button operation unit 231 or the like provided in the operation unit 212.
  • the sensor unit 24 includes at least one sensor including a finger motion detection unit 213, and outputs information output from each sensor to the control unit 21.
  • the finger movement detection unit 213 is configured by an infrared sensor, measures the distance from the device body 210 to the fingertip of each finger, and estimates the bending degree of each finger by the distance. It may be.
  • the finger motion detection unit 213 may be a depth camera or the like, and may estimate the degree of bending of each finger by measuring the distance from the device body 210 to each point of each finger.
  • the finger motion detection unit 213 may be an analog switch (a switch that outputs information representing the pressed amount in multiple stages) provided for each finger related to the operation. In this case, the information on the bending degree of the corresponding finger is estimated and output based on the pressing amount of the corresponding analog switch.
  • the sensor unit 24 may also include other sensors such as an acceleration sensor.
  • the communication unit 25 is a wired interface such as a USB interface or a wireless interface such as Bluetooth (registered trademark), and outputs various information to the information processing apparatus 1 in accordance with an instruction input from the control unit 21. .
  • the information processing apparatus 1 includes a control unit 11, a storage unit 12, an interface unit 13, and an output unit 14.
  • the control unit 11 is a program control device such as a CPU, and operates in accordance with a program stored in the storage unit 12.
  • the control unit 11 executes processing of arranging a virtual object in a virtual space, generating an image in the virtual space, and presenting the image to the user.
  • the control unit 11 accepts information representing an operation from the user from the operation device 20, and in accordance with the information representing the accepted operation, a virtual object in a virtual space generated by processing of the game application or the like. Display a virtual manipulator to manipulate the.
  • the control unit 11 determines the magnitude of the virtual force that the virtual manipulator gives to the virtual object, and presents the user with information indicating the determined magnitude of the force.
  • the contents of specific processing of the control unit 11 will be described in detail later.
  • the storage unit 12 is a memory device or the like, and holds a program executed by the control unit 11. This program may be provided stored in a computer readable non-transitory storage medium and copied to the storage unit 12. The storage unit 12 also operates as a work memory of the control unit 11.
  • the interface unit 13 is connected to the operation device 20 wirelessly or by wire, receives information related to the user's operation from the operation device 20, and outputs the information to the control unit 11.
  • the output unit 14 has, for example, an interface such as an HDMI (registered trademark) interface for outputting an image or the like to a home television or a head mounted display.
  • the output unit 14 outputs information of a video to be displayed according to an instruction input from the control unit 11.
  • the control unit 11 functionally has a virtual space setting processing unit 111, an operation receiving unit 112, an operation display unit 113, a determination processing unit 114, and a presentation processing unit 115, as exemplified in FIG. And an image generation unit 116.
  • the virtual space setting processing unit 111 sets information of a virtual space (virtual space) such as a game space in the process of processing an application program such as a game application, for example.
  • this virtual space is a three-dimensional space.
  • the virtual space setting processing unit 111 generates information indicating placement of the instructed virtual object at a position instructed by the application program in the virtual space.
  • a widely known method can be adopted for an example of information in such a virtual space, and thus the detailed description is omitted here.
  • the operation accepting unit 112 accepts information output from the operation device 20 and representing an operation from the user. In an example of the present embodiment, this information includes information representing the degree of bending of at least a part of the user's finger.
  • the operation receiving unit 112 may also receive information on the position of the user holding the operation device 20 and the posture of the hand (for example, the normal direction of the palm).
  • the information related to the movement of the position of the user's hand may be acquired by detecting the movement of the operation device 20 using, for example, a camera (not shown), or based on the result of detection by an acceleration sensor or the like included in the operation device 20. You may get it.
  • the operation display unit 113 displays a virtual manipulator for operating a virtual object in the virtual space set by the virtual space setting processing unit 111 according to the information indicating the operation received by the operation receiving unit 112.
  • the manipulator may be a three-dimensional model that represents the user's hand or finger.
  • the manipulator has cylindrical shape portions F1 and F2... Having one joint corresponding to at least a part of the user's finger, and a flat plate shape, It includes the part H corresponding to the hand.
  • the operation display unit 113 receives the position, shape, and posture of the manipulator in the virtual space, the information related to the virtual object in the virtual space set by the virtual space setting processing unit 111, and the operation accepted by the operation receiving unit 112. Determined based on the information to be expressed.
  • the operation display unit 113 corresponds to the part H corresponding to the hand.
  • the position and posture (normal direction of a relatively wide surface of the circumscribed rectangular parallelepiped) are set based on the information on the position and posture of the user's hand.
  • the operation display unit 113 temporarily determines the postures (angles of joints) of the portions F1 and F2... Corresponding to the user's finger among the manipulators according to the bending degree of the corresponding user's finger.
  • the operation display unit 113 sets the position and orientation of the portion H corresponding to the hand of the manipulator in the virtual space based on the information related to the position and orientation of the user's hand, and corresponds to the portion F1 corresponding to the user's finger.
  • the shape (angle of joint) of F2 ... is temporarily set as being equal to the bending degree of the corresponding user's finger.
  • the position of the tip (the end on the side different from the hand H side) does not collide with the object disposed in the virtual space
  • the angle of the joints in the portion determined to be is kept equal to the temporarily determined degree of bending of the corresponding user's finger.
  • the operation display unit 113 is a joint of a portion (referred to as Fn) in which it is determined that the position of the tip of the portion F1, F2... Corresponding to the user's finger collides with the object placed in the virtual space
  • the angle of the angle F is changed to an angle at which the tip of the portion Fn contacts an object disposed in the virtual space.
  • the operation display unit 113 sets the horizontal angle from the angle F ⁇ n equal to the bending degree of the corresponding user's finger temporarily determined until the position of the tip of the portion Fn does not collide with the position of the object placed in the virtual space.
  • the angle is changed by a predetermined angle ⁇ to the side closer to (180 degrees). Then, the operation display unit 113 sets the angle of the joint when the position of the tip of the portion Fn does not collide with the object arranged in the virtual space as the angle of the joint of the portion Fn.
  • the determination processing unit 114 determines the magnitude of a virtual force that the virtual manipulator set by the operation display unit 113 applies to a virtual object in contact with the manipulator.
  • a virtual force that the virtual manipulator set by the operation display unit 113 applies to a virtual object in contact with the manipulator.
  • the manipulator has the part H corresponding to the user's hand and the parts F1 and F2... Corresponding to the fingers as illustrated in FIG.
  • the presentation processing unit 115 presents, to the user, information indicating the magnitude of the force determined by the determination processing unit 114.
  • the presentation processing unit 115 performs color processing in accordance with the values f1, f2, ... of the magnitudes of forces determined by the determination processing unit 114 for each of the portions F1, F2, ... corresponding to the fingers of the manipulator.
  • the chroma Cs, the lightness Cb, and the hue Ch are previously determined, and the lightness value Cbn of the portion Fn is determined to be the value of the corresponding force magnitude
  • Cbn Cb0 + ⁇ fn by using fn.
  • the image generation unit 116 sets the virtual object in the virtual space set by the virtual space setting processing unit 111 and the position, posture, and shape of the operation display unit 113, and the presentation processing unit 115 determines the color.
  • the virtual manipulator is rendered as an image of a predetermined field of view as viewed from a virtual camera disposed at a predetermined position in the virtual space, and an image is generated.
  • the control unit 11 outputs the image generated by the image generation unit 116 to a display or a head mounted display via the output unit 14 to present the image in the virtual space to the user.
  • the control unit 11 determines the force calculated by the determination processing unit 114.
  • the position and posture of the virtual object may be changed according to the size of the lens and the contact angle with the manipulator. For example, when a portion of the manipulator is in contact with a virtual object at only one place, the virtual object is moved in the direction of force, assuming that a force is applied to the portion.
  • the portion of the manipulator is in contact with a virtual object at two or more locations, it is determined that the virtual object is captured by the manipulator, and the position of the virtual object is adjusted according to the movement amount of the manipulator Move (indicates grabbing and moving).
  • the present embodiment has the above configuration and operates as follows.
  • the user wears, for example, a head mount display, and wears an operation device 20 including a sensor that measures the degree of bending of a finger on at least one of the left and right hands.
  • the information processing apparatus 1 generates an image to be displayed on a head mounted display.
  • the information processing apparatus 1 renders and outputs an image in a virtual space as an image viewed from a predetermined visual field. This field of view may be changed according to the position and angle of the head mounted display.
  • the information processing apparatus 1 arranges virtual objects in the virtual space to be displayed, for example, as processing of a game application.
  • the information processing apparatus 1 also arranges a virtual manipulator corresponding to the user's hand in this virtual space (initialization process: S1).
  • the information processing apparatus 1 receives the information from the operation device 20, for example.
  • the information on the movement amount of the hand is received (S2), and the position of the manipulator in the virtual space is moved and set by the movement amount corresponding to the movement amount of the hand (S3).
  • the operation device 20 when the user bends the finger so as to grasp the virtual object with the finger, information on the bending degree of the finger is detected by the operation device 20 and output to the information processing apparatus 1.
  • the information processing apparatus 1 receives the information on the degree of bending of the finger (S4), and the angle of the joint of the portion corresponding to each finger of the manipulator is received on the basis of the information on the degree of bending of the corresponding finger received in step S4. Setting (S5).
  • the information processing apparatus 1 determines a collision with a virtual object in the virtual space for the portion corresponding to each finger of the manipulator (S6), and when it is determined that a collision occurs (S6: Yes) In order to correct the angle of the joint corresponding to the finger of the manipulator determined to have collided, the angle of the joint corresponding to the state in which the surface of the virtual object is touched is corrected (S7).
  • the information processing apparatus 1 changes the color of the portion of the manipulator corresponding to each finger according to the angle set based on the information on the bending degree of the corresponding finger and the angle corrected in step S7. (S8). For example, it is set to a color of lightness proportional to the difference of these angles.
  • the processes S7 and S8 are not performed.
  • the portion is set to a predetermined color (initial color).
  • the information processing device 1 repeats the processes S5 to S8 for each portion corresponding to each finger of the manipulator.
  • the information processing apparatus 1 renders and generates an image in the virtual space after the setting, and outputs the image to the head mounted display to present it to the user (S9).
  • the information processing apparatus 1 corrects the angle of the joint until the joint angle F ⁇ n with which the object X is touched is reached.
  • the information processing apparatus 1 changes the color of the portion Fn related to the corresponding joint of the manipulator according to the difference ⁇ n ⁇ F ⁇ n (FIG. 7 (a)). If the user actually changes the degree of bending of the finger and stretches the finger (opens the joint), this angle difference ⁇ n -F ⁇ n becomes smaller, and if it is determined that there is no collision, this angle is subsequently determined. The difference of is "0". In this case, the color of the part Fn related to the corresponding joint of the manipulator is a predetermined color before the change (FIG. 7 (b)). In FIG. 7, for the convenience of illustration, the change in color is indicated by hatching.
  • the user can know how much (virtual) force he / she is holding a virtual object, and the details The force can be adjusted to improve the operability of the user.
  • the presentation processing unit 115 of the control unit 11 presents to the user information representing the magnitude of the force determined by the determination processing unit 114. Therefore, for each of the parts F1 and F2.
  • the color is set according to the values f1, f2, ... of the magnitudes of the forces determined by the determination processing unit 114.
  • the present embodiment is not limited to this.
  • the presentation processing unit 115 for each of the parts F1 and F2 corresponding to the finger of the manipulator instead of the color, in accordance with the value f1 of the magnitude of the force determined by the determination processing unit 114 , You may change the texture.
  • control unit 11 may change the density (repetition period) of the texture in accordance with the value f1, f2 of the magnitude of the force determined by the determination processing unit 114.
  • the presentation processing unit 115 of the control unit 11 may change the transparency for each of the portions F1 and F2... Corresponding to the fingers of the manipulator, instead of or together with the color or the texture.
  • the presentation processing unit 115 of the control unit 11 periodically changes the color for each of the parts F1, F2... Corresponding to the fingers of the manipulator, and the magnitude of the force determined by the determination processing unit 114 It may be determined according to the values f1, f2,. For example, when the force fn is increased, the change period of the color of the portion Fn corresponding to the finger of the corresponding manipulator is set to be short.
  • the user grasps the virtual object with how much (virtual) force by referring to the color of the displayed part of the manipulator and the change period, texture, and transparency of the displayed part It can be known whether it is in the state, and the operability of the user can be improved.
  • the presentation processing unit 115 of the control unit 11 presents to the user information representing the magnitude of the force determined by the determination processing unit 114, so that each of the parts F1, F2.
  • the presentation processing unit 115 The face of the virtual object (at least one of the virtual objects in contact with the portions F1, F2... Corresponding to the fingers of the manipulator, instead of or in addition to the colors of the portions F1, F2.
  • the change cycle of color, texture, transparency, and color of part) may be made different.
  • the part Fn is determined according to the value f1, f2.
  • the size (volume), shape, etc. of may be changed.
  • presentation processing unit 115 presents information representing the magnitude of the force determined by determination processing unit 114, the size of the portion of the virtual object with which the corresponding manipulator is in contact.
  • the size of the area for changing the color, texture or transparency may be made different.
  • the presentation processing unit 115 determines the magnitude of the corresponding force among the portions F1 and F2... Corresponding to the fingers of the manipulator. For each of the values fn not “0” (the one determined to collide with the object when the joint angle is determined based on the degree of bending of the user's finger), the virtual object closest to the portion is Find the area of the face.
  • the surface of the closest object may be the surface in contact when it is determined that the operation display unit 113 has collided.
  • the presentation processing unit 115 changes the color, texture, or transparency of the portion F corresponding to the finger of the manipulator or the portion of the virtual object in contact with the portion according to the determined area, the sizes of the regions are different.
  • the presentation processing unit 115 makes the color (or texture, transparency, etc.) of the range of the radius r centering on the tip of the portion F corresponding to the finger of the manipulator different according to the magnitude of the force.
  • the value is proportional to the area of the surface of the virtual object closest to the part F.
  • the presentation processing unit 115 is used instead of changing the color, texture, or transparency of the portion F corresponding to the finger of the manipulator or the portion of the virtual object with which the portion contacts.
  • a gauge a magnitude of force
  • the display position of the gauge may be the hand portion H of the manipulator.
  • the presentation processing unit 115 may instruct the operation device 20 to present information to the user instead of changing the image to be presented to the user.
  • the operation device 20 incorporates vibration elements such as a voice coil motor (VCM), an eccentric motor (ERM), and a speaker.
  • VCM voice coil motor
  • ECM eccentric motor
  • speaker a speaker
  • the presentation processing unit 115 transmits, to the operation device 20, information related to the magnitude of the force determined by the determination processing unit 114 for each finger.
  • the control unit 21 of the operation device 20 controls the vibration mode of the vibration element such as the VCM according to the magnitude of the force represented by the received information.
  • the control of the vibration mode here is, as an example, the control of changing the amplitude such as increasing the amplitude as the magnitude of the force represented by the received information is larger, or the greater the magnitude of the force represented by the received information, There is control to change the vibration period, such as shortening the vibration period.
  • the vibration may be intermittently performed, and the length of time during which the vibration is not performed may be controlled according to the magnitude of the force represented by the received information.
  • the magnitude of the sound and the vibration, the frequency, the tempo of the vibration (period of intermittent vibration) and the like fluctuate,
  • the operation device 20 may include the vibration element for each finger of the user (at least each finger corresponding to each finger portion of the manipulator displayed by the information processing device 1).
  • the user grips the operation device 20 by arranging each finger at a position to which the vibration of each vibration element is transmitted.
  • control part 21 of the operation device 20 receives the information which concerns on the magnitude
  • the user can know, for each finger, how much (virtual) a user is holding a virtual object through the state of vibration, and the detailed force Can be adjusted to improve the operability of the user.
  • the operation device 20 may be provided with a heating element (a device capable of controlling the heat generation temperature by an electrical signal output) instead of or together with the vibration element.
  • the control unit 21 of the operation device 20 transmits information related to the magnitude of the force determined by the determination processing unit 114 for each finger.
  • the control unit 21 of the operation device 20 controls the heat generation temperature of the heating element according to the magnitude of the force represented by the received information.
  • the heating element is also provided at each position where the user's finger is disposed, and the finger corresponding to the control unit 21 is assigned to each finger according to the information on the magnitude of the corresponding force included in the received information.
  • the heating temperature of the heating element may be controlled.
  • the virtual manipulator has a shape having a hand part and a finger part to simulate the shape of the user's hand, but the present embodiment is not limited to this, and opening and closing is possible
  • the opening degree of the gripping tool may be determined according to the degree of bending of the user's finger as a shape imitating a possible gripping tool. As an example, this opening degree may be determined according to a statistic such as an average value of information on bending degree of each finger of the user.
  • the information processing apparatus 1 is virtually determined by the difference between the opening degree determined according to the degree of bending of the user's finger and the corrected opening degree as a result of the collision determination with the object in the virtual space. Determines the magnitude of virtual force that the manipulator applies to a virtual object.

Abstract

仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する。またユーザからの操作を表す情報を受け入れ、当該受け入れた操作を表す情報に応じ、仮想空間内に、仮想的な物体を操作する仮想的なマニピュレータを表示し、この仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定して、当該決定した力の大きさを表す情報をユーザに提示する。

Description

情報処理装置、情報処理方法、及びプログラム
 本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
 仮想的な空間内に仮想的な物体(例えばブロック等)を配して、ユーザの操作によりブロックを仮想空間内で積み上げさせる処理等を行わせる情報処理装置がある。
 このとき、例えばユーザの手指に相当する仮想的な手指(マニピュレータ)を仮想空間内に表示して、ユーザの操作により、このマニピュレータの位置や指の姿勢(曲げ具合)を変化させつつ、マニピュレータの指が仮想空間内で仮想的なブロックをつまんだか否かを判断し、つまんだと判断している間は、当該マニピュレータの動きとつままれた仮想的なブロックの動きとを同期させて、あたかも仮想空間内でブロックをつかんで移動させているかのような表示を行わせる方法が知られている。
 しかしながら、上記従来の操作インタフェースでは、仮想空間内でのユーザの視野から見たときの仮想的な物体とマニピュレータの見え方が現実と相違することや、仮想的な物体を仮想的につまんだときに、ユーザに対してつまんだことを表すフィードバックを与えることが必ずしも容易でないため、ユーザは、対象物を実際につまんだことになっているのか、どのくらいの力でつまんでいるのかを知ることができず、操作性が低いという問題点があった。
 本発明は上記実情に鑑みて為されたもので、ユーザの操作性を向上できる情報処理装置、情報処理方法、及びプログラムを提供することを、その目的の一つとする。
 上記従来例の問題点を解決する本発明は、仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する情報処理装置であって、ユーザからの操作を表す情報を受け入れる受入手段と、当該受け入れた操作を表す情報に応じ、前記仮想空間内に、前記仮想的な物体を操作する仮想的なマニピュレータを表示するマニピュレータ表示手段と、前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する決定手段と、前記決定した力の大きさを表す情報をユーザに提示する提示手段と、を有することとしたものである。
 本発明によると、ユーザの操作性を向上できる。
本発明の実施の形態に係る情報処理装置の構成例を表すブロック図である。 本発明の実施の形態に係る情報処理装置に接続される操作デバイスの構成例を表すブロック図である。 本発明の実施の形態に係る情報処理装置に接続される操作デバイスの概要例を表す説明図である。 本発明の実施の形態に係る情報処理装置の例を表す機能ブロック図である。 本発明の実施の形態に係る情報処理装置が表示する仮想的なマニピュレータの例を表す説明図である。 本発明の実施の形態に係る情報処理装置の動作例を表すフローチャート図である。 本発明の実施の形態に係る情報処理装置による情報提示の例を表す説明図である。
 本発明の実施の形態について図面を参照しながら説明する。なお、以下の説明において各部の大きさやその比、配置等は一例であり、本実施の形態の例は、図示等した大きさや比率、配置に限られるものではない。
 本発明の実施の形態に係る情報処理システムは、例えば家庭用ゲーム機等のコンピュータ機器を含むシステムであり、図1に例示するように、家庭用ゲーム機本体等の情報処理装置1と、この情報処理装置1に接続された操作デバイス20とを含む。
 操作デバイス20は、ユーザの左手または右手の少なくとも一方に把持される。またこの操作デバイス20は、ユーザの手にベルト等で固定されてもよい。
 この操作デバイス20は、図2にその概要を例示するように、制御部21と、記憶部22と、操作インタフェース23と、センサ部24と、通信部25とを含んだ回路部を備えて構成される。
 この操作デバイス20は、その外形の概要を図3に例示するように、ユーザにより把持される把持部211と、操作部212と、指動作検出部213とを含む。把持部211は、本実施の形態の一例では実質的に多角形柱状をなしている。操作部212は、把持部211から連続して形成されており、図2の例では、ボタン等を含む。指動作検出部213は、センサ部24に含まれるセンサの一つであり、ユーザが当該デバイス本体210を把持したときに、ユーザの指の曲げ具合の情報を得て、その検出結果の情報を出力する。なお、ここで指の曲げ具合の情報は、例えば指の関節の角度に関する情報でよい。ここでの関節は、ユーザの実際の関節ではなく、指の付け根と指先との間に一つだけ関節があるものとしてモデル化し、この指の付け根と指先との間にあるとした関節の角度を推定するものでよい。このような推定は、ボーンモデルによる推定など、広く知られた方法があり、それらを採用できるので、ここでの詳しい説明は省略する。なお、この指動作検出部213は、操作部212を兼ねてもよい。
 またこの操作デバイス20の大きさは、ユーザが自然にデバイス本体210を把持したときに、その一方端がユーザの親指(いわゆる親指)の先端が到達する位置よりやや外側に位置し、その他方端が、小指の付け根(MP関節に相当する位置)からやや突出する位置にある程度の大きさとする。なお操作デバイス20は、操作デバイス20を装着した状態でユーザが手を開いても落下しないよう、ユーザの手に、ベルト等(不図示)で固定されてもよい。
 本実施の形態の制御部21は、CPU等のプログラム制御デバイスであり、記憶部22に格納されたプログラムに従って動作する。本実施の形態ではこの制御部21は、操作インタフェース23を介してユーザが操作部212のボタン操作部231等においてした操作の内容を表す情報や、センサ部24が検出したユーザの指の曲げ具合に関する情報を、操作の情報として通信部25を介して情報処理装置1へ出力する。またこの制御部21は、通信部25を介して情報処理装置1から受信した情報に従い、操作デバイス20の各部をコントロールする。
 記憶部22は、メモリデバイス等であり、制御部21によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部22に複写されたものであってもよい。またこの記憶部22は、制御部21のワークメモリとしても動作する。
 操作インタフェース23は、操作部212に備えられたボタン操作部231等に対してユーザが行った操作の内容を表す情報を制御部21に出力する。センサ部24は、指動作検出部213を含む少なくとも一つのセンサを含み、各センサが出力する情報を制御部21に出力する。
 本実施の形態の一例では、指動作検出部213は、赤外線センサで構成され、デバイス本体210から、各指の指先までの距離を測定し、当該距離により各指の曲げ具合を推定するものであってもよい。また、この指動作検出部213は、デプスカメラ等であり、デバイス本体210から、各指の各点までの距離を測定することで、各指の曲げ具合を推定するものであってもよい。さらに別の例では、指動作検出部213は、操作に係る指ごとに設けられたアナログスイッチ(多段階で押下された量を表す情報を出力するスイッチ)であってもよい。この場合、対応するアナログスイッチの押下量に基づいて、対応する指の曲げ具合の情報が推定されて出力される。また、センサ部24は、加速度センサ等、他のセンサを含んでもよい。
 通信部25は、USBインタフェース等の有線インタフェースや、ブルートゥース(登録商標)等の無線インタフェースであり、制御部21から入力される指示に従い、種々の情報を情報処理装置1に対して出力している。
 情報処理装置1は、図1に例示したように、制御部11と、記憶部12と、インタフェース部13と、出力部14とを含んで構成されている。制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態では制御部11は、例えばゲームアプリケーションの処理として、仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する処理を実行している。またこの制御部11は、操作デバイス20から、ユーザからの操作を表す情報を受け入れ、当該受け入れた操作を表す情報に応じ、上記ゲームアプリケーションの処理等で生成する仮想空間内に、仮想的な物体を操作する仮想的なマニピュレータを表示する。そして制御部11は、この仮想的なマニュピレータが上記仮想的な物体に対して与える仮想的な力の大きさを決定し、当該決定した力の大きさを表す情報をユーザに提示する。この制御部11の具体的な処理の内容については、後に詳しく述べる。
 記憶部12は、メモリデバイス等であり、制御部11によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部12に複写されたものであってもよい。またこの記憶部12は、制御部11のワークメモリとしても動作する。
 インタフェース部13は、操作デバイス20に無線又は有線にて接続され、操作デバイス20からユーザの操作に係る情報を受け入れ、制御部11に出力する。出力部14は、例えばHDMI(登録商標)インタフェース等、家庭用テレビジョンや、ヘッドマウントディスプレイに対して映像等を出力するインタフェースを有する。この出力部14は、制御部11から入力される指示に従い、表示するべき映像の情報を出力する。
 次に、情報処理装置1の制御部11の動作について説明する。この制御部11は、機能的には図4に例示するように、仮想空間設定処理部111と、操作受入部112と、操作表示部113と、決定処理部114と、提示処理部115と、画像生成部116とを含んで構成される。
 仮想空間設定処理部111は、例えばゲームアプリケーションなどのアプリケーションプログラムの処理の過程で、ゲーム空間等の仮想的な空間(仮想空間)の情報を設定する。本実施の形態の例では、この仮想空間は三次元的な空間であるものとする。具体的にこの仮想空間設定処理部111は、仮想空間内のアプリケーションプログラムによって指示される位置に、指示された仮想的な物体を配置することを表す情報を生成する。このような仮想空間内の情報の例については広く知られた方法を採用できるのでここでの詳しい説明は省略する。
 操作受入部112は、操作デバイス20が出力する、ユーザからの操作を表す情報を受け入れる。本実施の形態の一例において、この情報には、ユーザの、少なくとも一部の指についての曲げ具合を表す情報を含む。またこの操作受入部112は、操作デバイス20を保持するユーザの手の位置と手の姿勢(手の平の法線方向など)とに関する情報を受け入れてもよい。このユーザの手の位置の移動に関する情報は、例えば図示しないカメラ等によって操作デバイス20の移動を検出することで取得してもよいし、操作デバイス20が備える加速度センサ等による検出の結果に基づいて取得してもよい。
 操作表示部113は、操作受入部112が受け入れた操作を表す情報に応じて、仮想空間設定処理部111が設定した仮想空間内に、仮想的な物体を操作する仮想的なマニピュレータを表示する。
 具体的にこのマニピュレータは、ユーザの手や指を表す三次元的なモデルであってもよい。この例では、マニピュレータには、図5に例示するように、ユーザの指の少なくとも一部に対応する、一つの関節を有する筒状の形状部分F1,F2…及び、扁平な板状をなす、手に相当する部分Hを含む。
 操作表示部113は、仮想空間内のマニピュレータの位置、形状及び姿勢を、仮想空間設定処理部111が設定した仮想空間内の仮想的な物体に係る情報と、操作受入部112が受け入れた操作を表す情報とに基づいて決定する。一例として、マニピュレータが図5に例示したように、ユーザの手に相当する部分Hと、各指に対応する部分F1,F2…を有する場合、操作表示部113は、手に相当する部分Hの位置及び姿勢(外接直方体の比較的広い面の法線方向)を、ユーザの手の位置及び姿勢に関する情報に基づいて設定する。また、操作表示部113は、マニピュレータのうちユーザの指に相当する部分F1,F2…の姿勢(関節の角度)を、対応するユーザの指の曲げ具合に応じて仮に決定する。
 すなわち操作表示部113は、仮想空間内で、マニピュレータの手に相当する部分Hの位置及び姿勢を、ユーザの手の位置及び姿勢に関する情報に基づいて設定し、ユーザの指に相当する部分F1,F2…の形状(関節の角度)を、対応するユーザの指の曲げ具合と等しいものとして仮に設定する。そして操作表示部113は、この設定を行ったとき、ユーザの指に相当する部分F1,F2…の先端と、仮想空間内に配された物体との位置が衝突する(同じ位置を占めることとなる)か否かを調べる。操作表示部113は、ユーザの指に相当する部分F1,F2…のうち、その先端(手H側とは異なる側の端部)と、仮想空間内に配された物体との位置が衝突しないと判断した部分の関節の角度については、仮に決定した対応するユーザの指の曲げ具合と等しい角度のままとする。
 一方、操作表示部113は、ユーザの指に相当する部分F1,F2…のうち、その先端と、仮想空間内に配された物体との位置が衝突すると判断した部分(Fnとする)の関節の角度については、当該部分Fnの先端が仮想空間内に配された物体に接触する角度に変更する。一例として操作表示部113は、当該部分Fnの先端が仮想空間内に配された物体との位置が衝突しない状態となるまで、仮に決定した対応するユーザの指の曲げ具合と等しい角度Fθnから水平(180度)に近い側へ所定の角度Δθずつ変更する。そして、操作表示部113は、当該部分Fnの先端が仮想空間内に配された物体との位置が衝突しない状態となったときの関節の角度を、当該部分Fnの関節の角度とする。
 決定処理部114は、操作表示部113が設定した仮想的なマニュピレータが、当該マニピュレータに接触している仮想的な物体に対して与える仮想的な力の大きさを決定する。本実施の形態の一例として、マニピュレータが図5に例示したように、ユーザの手に相当する部分Hと、各指に対応する部分F1,F2…を有する場合、この決定処理部114は、ユーザの指に相当する部分F1,F2…ごとに、それぞれの関節の角度Fθ1,Fθ2…と、当該部分F1,F2…のそれぞれに対応するユーザの指の曲げ具合の情報θ1,θ2…との差、
f1=θ1-Fθ1、
f2=θ2-Fθ2、…
を、マニュピレータが、当該マニピュレータに接触している仮想的な物体に対して与える仮想的な力の大きさとしてそれぞれ求める。
 提示処理部115は、決定処理部114が決定した力の大きさを表す情報をユーザに提示する。本実施の形態の一例では、提示処理部115は、マニピュレータの指に対応する部分F1,F2…ごとに、決定処理部114が決定した力の大きさの値f1,f2…に応じて、色を設定する。例えば、この色は、彩度Cs、明度Cb、色相Chのうち、彩度Cs、色相Chは予め定めておき、部分Fnの明度の値Cbnを、決定された対応する力の大きさの値fnを用いて、Cbn=Cb0+αfnと定める。ここでCb0は、f=0(物体に触れていない状態)での値とし、αは適宜実験的に定める。
 画像生成部116は、仮想空間設定処理部111が設定した仮想空間内の仮想的な物体と、操作表示部113がその位置や姿勢、形状を設定し、提示処理部115にて色が決定された仮想的なマニピュレータとを、仮想空間内の所定の位置に配した仮想的なカメラから見た、所定の視野の画像としてレンダリングし、画像を生成する。
 制御部11は、この画像生成部116が生成した画像を、出力部14を介してディスプレイや、ヘッドマウントディスプレイに出力して、ユーザに仮想空間内の画像を提示する。また、制御部11は、操作表示部113が設定したマニピュレータと、仮想空間設定処理部111が設定した仮想空間内の仮想的な物体とが接触しているときには、決定処理部114が求めた力の大きさとマニピュレータとの接触角度等に応じて、仮想的な物体の位置及び姿勢を変更してもよい。例えば、マニピュレータの部分が一ヶ所だけで仮想的な物体に接しているときには、当該部分に力が加わったとして、力の方向に仮想的な物体を移動させる。また、マニピュレータの部分が二ヶ所以上、仮想的な物体に接しているときには、マニピュレータにより仮想的な物体が捉まれていると判断して、マニピュレータの移動量に合わせて仮想的な物体の位置を移動する(つかんで移動している状態を表す)。
[動作]
 本実施の形態は、以上の構成を備えており、次のように動作する。ユーザは、例えばヘッドマウントディスプレイを装着し、左右の手の少なくとも一方には、指の曲げ具合を測定するセンサを備えた操作デバイス20を装着するものとする。
 情報処理装置1は、ヘッドマウントディスプレイに対して表示させる画像を生成する。本実施の形態では、この情報処理装置1は、仮想空間内の画像を所定の視野から見た像としてレンダリングして出力するものとする。この視野はヘッドマウントディスプレイの位置、角度に応じて変更されてもよい。
 情報処理装置1は、図6に例示するように、表示の対象とする仮想空間内に、例えばゲームアプリケーションの処理として、仮想的な物体を配する。また情報処理装置1は、ユーザの手に対応する仮想的なマニピュレータをこの仮想空間内に配する(初期化処理:S1)。
 ここでユーザが仮想空間内の画像を参照して、仮想空間内の仮想的な物体をつかむため、仮想的な物体の方向に手を移動すると、情報処理装置1は、例えば操作デバイス20から当該手の移動量に関する情報を受け入れて(S2)、当該手の移動量に応じた移動量だけ、仮想空間内のマニピュレータの位置を移動して設定する(S3)。
 またユーザが仮想的な物体を指でつかむべく、指を曲げていくと、当該指の曲げ具合の情報が操作デバイス20により検出されて情報処理装置1に出力される。情報処理装置1は、指の曲げ具合の情報を受け入れて(S4)、マニピュレータの、各指に対応する部分の関節の角度を、処理S4で受け入れた、対応する指の曲げ具合の情報に基づいて設定する(S5)。このとき、情報処理装置1は、マニピュレータの各指に対応する部分について、仮想空間内の仮想的な物体との衝突を判定し(S6)、衝突していると判定したとき(S6:Yes)には、仮想的な物体の面に触れている状態となる関節の角度まで、衝突したと判定したマニピュレータの指に対応する部分の関節の角度を補正する(S7)。
 情報処理装置1は、マニピュレータの、各指に対応する部分の色を、対応する指の曲げ具合の情報に基づいて設定した角度と、処理S7にて補正した後の角度とに応じて変更する(S8)。例えば、これらの角度の差に比例した明度の色に設定する。
 なお、処理S6において指に対応する部分が仮想空間内の仮想的な物体と衝突していないと判断したとき(処理S6:No)は、処理S7,S8は行わない。このとき、当該部分は、予め定められた色(初期の色)に設定される。情報処理装置1は、処理S5からS8をマニピュレータの各指に対応する部分ごとに繰り返す。
 そして情報処理装置1は、当該設定後の仮想空間内の画像をレンダリングして生成し、ヘッドマウントディスプレイに出力してユーザに提示する(S9)。
 このように本実施の形態では、図7に例示するように、指の曲げ具合に応じて設定されたマニピュレータの当該指に対応する部分Fnの関節の角度がθnであるときに仮想空間内の仮想的な物体Xと衝突すると判定されると、情報処理装置1は、当該物体Xに触れる関節角度Fθnとなるまで、関節の角度を補正する。
 従ってユーザが指示した角度θnまでは、仮想的なマニピュレータの関節の角度は変更されず、その差θn-Fθnが生じることとなる。本実施の形態の情報処理装置1は、この差θn-Fθnによって、マニピュレータの対応する関節に係る部分Fnの色を変更する(図7(a))。ユーザが実際に指の曲げ具合を変えて指を伸ばしていく(関節を開いていく)と、この角度の差θn-Fθnは小さくなり、衝突しないと判定される角度となると、以降はこの角度の差は「0」となる。この場合、マニピュレータの対応する関節に係る部分Fnの色は変更前の予め定められた色となる(図7(b))。なお、図7では図示の都合上、色の変化をハッチングで示している。
 ユーザは表示されたマニピュレータの部分の色を参照することで、自らがどの程度の(仮想的な)力で仮想的な物体を把持している状態となっているかを知ることができ、詳細な力の調整が可能となってユーザの操作性を向上できる。
[提示方法の他の例]
 ここまでの説明では、制御部11の提示処理部115は、決定処理部114が決定した力の大きさを表す情報をユーザに提示するため、マニピュレータの指に対応する部分F1,F2…ごとに、決定処理部114が決定した力の大きさの値f1,f2…に応じて、色を設定することとしていた。しかしながら本実施の形態はこれに限られない。例えば、提示処理部115は、色に代えて、あるいは色とともにマニピュレータの指に対応する部分F1,F2…ごとに、決定処理部114が決定した力の大きさの値f1,f2…に応じて、テクスチャを変更してもよい。
 一例として、制御部11は、テクスチャの密度(繰り返し周期)を、決定処理部114が決定した力の大きさの値f1,f2…に応じて変更すればよい。
 また、制御部11の提示処理部115は、色またはテクスチャに代えて、あるいはそれらの少なくとも一方とともに、マニピュレータの指に対応する部分F1,F2…ごとに、透過度を変更してもよい。
 さらに制御部11の提示処理部115は、マニピュレータの指に対応する部分F1,F2…ごとに、色を周期的に変更させ、その色の変更周期を、決定処理部114が決定した力の大きさの値f1,f2…に応じて決定してもよい。例えば力fnが大きくなると、対応するマニピュレータの指に対応する部分Fnの色の変更周期が短くなるように設定する。
 これらによっても、ユーザは表示されたマニピュレータの部分の色やその変更周期、テクスチャ、透過度を参照することで、自らがどの程度の(仮想的な)力で仮想的な物体を把持している状態となっているかを知ることができ、ユーザの操作性を向上できる。
 さらにここまでの例では、制御部11の提示処理部115は、決定処理部114が決定した力の大きさを表す情報をユーザに提示するため、マニピュレータの指に対応する部分F1,F2…ごとに、決定処理部114が決定した力の大きさの値f1,f2…に応じて、色等を設定することとしていたが本実施の形態はこれに限られず、提示処理部115は、マニピュレータの指に対応する部分F1,F2…の色等に代えて、あるいはそれとともに、マニピュレータの指に対応する部分F1,F2…が接触している仮想的な物体の面(仮想的な物体の少なくとも一部)の色、テクスチャ、透過度、色の変更周期を異ならせてもよい。
 さらに本発明の実施の形態の別の例では、マニピュレータの指に対応する部分F1,F2…ごとに、決定処理部114が決定した力の大きさの値f1,f2…に応じて当該部分Fnの大きさ(体積)や形状等を変更してもよい。
[情報の提示態様の他の例]
 また本実施の形態では、提示処理部115が、決定処理部114により決定された力の大きさを表す情報を提示するにあたり、対応するマニピュレータが接触している仮想的な物体の部分の大きさにより、色、テクスチャまたは透過度を変化させる領域の大きさを異ならせてもよい。
 例えば仮想空間内の仮想的な物体が多面体(ポリゴン等)で表されている場合に、提示処理部115は、マニピュレータの指に対応する部分F1,F2…のうち、対応する力の大きさの値fnが「0」でないもの(ユーザの指の曲げ具合に基づいて関節角度を決定したときに、物体と衝突すると判定されたもの)のそれぞれについて、当該部分に最も近接する仮想的な物体の面の面積を求める。ここで、最も近接する物体の面は、操作表示部113が衝突したと判定したときに接触していた面とすればよい。
 提示処理部115は、当該求めた面積に応じて、マニピュレータの指に対応する部分Fまたは当該部分が接触する仮想的な物体の部分の色、テクスチャまたは透過度を変化させる領域の大きさを異ならせる。例えば、提示処理部115は、マニピュレータの指に対応する部分Fの先端部分を中心とする半径rの範囲の色(またはテクスチャ、透過度等)を力の大きさによって異ならせ、この半径rを、当該部分Fに最も近接する仮想的な物体の面の面積に比例した値とする。
 これによると、マニピュレータの指に相当する部分の先端のどの程度の範囲の色が変更されるかによって、ユーザは、つかもうとしている物体の面の大きさを知ることが可能となる。
[ゲージによる表示]
 さらに本実施の形態の一例では、提示処理部115は、マニピュレータの指に対応する部分Fまたは当該部分が接触する仮想的な物体の部分の色、テクスチャまたは透過度を変化させるのに代えて、またはそれとともに、対応する部分の近傍(対応する部分から予め定めた距離の範囲にある位置)に、決定処理部114により決定された、対応する力の大きさを表すゲージ(力の大きさに応じて伸縮するバー、または力の大きさに応じて色の変わる範囲が制御される円グラフ状のゲージ)を表示してもよい。あるいは、このゲージの表示位置は、マニピュレータの手の部分Hであってもよい。
[操作デバイスに対して情報提示する例]
 さらに本実施の形態のある例では、提示処理部115は、ユーザに提示する画像を変更するのではなく、操作デバイス20に対して、ユーザに情報を提示するよう指示してもよい。
 この例では、操作デバイス20がVCM(Voice Coil Motor)や、偏心モーター(ERM:Eccentric Rotating Mass)、スピーカー等の振動素子を内蔵しているものとする。
 この例に係る提示処理部115は、操作デバイス20に対して、指ごとに決定処理部114が決定した力の大きさに係る情報を送信する。操作デバイス20の制御部21は受信した情報が表す力の大きさに応じて、VCM等の振動素子の振動態様を制御する。
 ここでの振動態様の制御は、一例として、受信した情報が表す力の大きさが大きいほど、振幅を大きくするなど振幅を変更する制御や、受信した情報が表す力の大きさが大きいほど、振動の周期を短くするなど、振動周期を変更する制御等がある。また、振動を断続的に行い、振動していない時間の長さを、受信した情報が表す力の大きさに応じて制御することとしてもよい。これによると、情報処理装置1において決定した力の大きさに係る情報に応じて、音や振動の大きさ、周波数、振動のテンポ(断続的振動の周期)等が変動するので、ユーザは振動の状態を通じて、自らがどの程度の(仮想的な)力で仮想的な物体を把持している状態となっているかを知ることができ、詳細な力の調整が可能となってユーザの操作性を向上できる。
 また操作デバイス20は、振動素子をユーザの指ごと(少なくとも情報処理装置1が表示するマニピュレータの各指の部分に対応する指ごと)に備えていてもよい。この場合、例えば、ユーザは、各振動素子の振動が伝達される位置にそれぞれの指を配して操作デバイス20を把持する。
 そして操作デバイス20の制御部21はマニピュレータの指の部分ごとに決定処理部114が決定した力の大きさに係る情報を受信して、当該情報に応じて、対応する指が配された位置に振動を伝達する振動素子の振動の振幅、周波数、あるいは断続的な振動を与える場合の断続的振動の周期を変更する。この場合、ユーザは、指ごとに、振動の状態を通じて、自らがどの程度の(仮想的な)力で仮想的な物体を把持している状態となっているかを知ることができ、詳細な力の調整が可能となってユーザの操作性を向上できる。
 また、ここでは振動をさせる場合を例として説明したが、操作デバイス20は振動素子に代えて、あるいはこれとともに、発熱素子(電気的信号出力により発熱温度を制御可能なデバイス)を備えてもよい。この場合、操作デバイス20の制御部21は、指ごとに決定処理部114が決定した力の大きさに係る情報を送信する。操作デバイス20の制御部21は受信した情報が表す力の大きさに応じて、当該発熱素子の発熱温度を制御する。この発熱素子も、ユーザの指が配される位置ごとに設けられ、制御部21が対応する指に対して、受信した情報に含まれる、対応する力の大きさの情報に応じて、指ごとに発熱素子の発熱温度を制御してもよい。
[マニピュレータの他の例]
 また、ここまでの説明では、仮想的なマニピュレータは、ユーザの手の形状を模して、手の部分と指の部分とを有する形状としたが、本実施の形態はこれに限られず、開閉可能なつかみ具を模した形状として、つかみ具の開度をユーザの指の曲げ具合に応じて決定してもよい。一例としてこの開度は、ユーザの各指の曲げ具合の情報の平均値等の統計量に応じて決定してもよい。
 この例では、情報処理装置1は、ユーザの指の曲げ具合に応じて決定した開度と、仮想空間内の物体との衝突判定の結果、補正された開度との差によって、仮想的なマニュピレータが仮想的な物体に対して与える仮想的な力の大きさを決定する。
 1 情報処理装置、11 制御部、12 記憶部、13 インタフェース部、14 出力部、20 操作デバイス、21 制御部、22 記憶部、23 操作インタフェース、24 センサ部、25 通信部、111 仮想空間設定処理部、112 操作受入部、113 操作表示部、114 決定処理部、115 提示処理部、116 画像生成部、210 デバイス本体、211 把持部、212 操作部、213 指動作検出部。

 

Claims (9)

  1.  仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する情報処理装置であって、
     ユーザからの操作を表す情報を受け入れる受入手段と、
     当該受け入れた操作を表す情報に応じ、前記仮想空間内に、前記仮想的な物体を操作する仮想的なマニピュレータを表示するマニピュレータ表示手段と、
     前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する決定手段と、
     前記決定した力の大きさを表す情報をユーザに提示する提示手段と、
    を有する情報処理装置。
  2.  請求項1記載の情報処理装置であって、
     前記受入手段は、ユーザから、ユーザの各指の曲げ角度の情報を、操作を表す情報として受け入れ、
     前記マニピュレータ表示手段は、ユーザの少なくとも一部の指に対応するマニピュレータを表示する手段であって、前記受入手段が受け入れた情報で表される指ごとの曲げ角度の情報と、前記仮想空間内に配された前記仮想的な物体との衝突判定結果とに基づいて、対応するマニピュレータの姿勢を決定して表示し、
     前記決定手段は、前記マニピュレータ表示手段が決定したマニピュレータの姿勢と、対応する指の曲げ角度の情報とに基づいて、前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する情報処理装置。
  3.  請求項2記載の情報処理装置であって、
     前記決定手段は、前記マニピュレータ表示手段が決定したマニピュレータの姿勢と、対応する指の曲げ角度の情報との差に基づいて、前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する情報処理装置。
  4.  請求項1から3のいずれか一項に記載の情報処理装置であって、
     前記提示手段は、
     前記決定した力の大きさを表す情報を、当該情報に応じて、対応するマニピュレータまたは当該マニピュレータが接触している前記仮想的な物体の部分の色、テクスチャ、透過度、色変更の周期を異ならせることにより提示する情報処理装置。
  5.  請求項4に記載の情報処理装置であって、
     前記提示手段が前記決定した力の大きさを表す情報を、当該情報に応じて、対応するマニピュレータまたはマニピュレータが接触している前記仮想的な物体の部分の色、テクスチャ、透過度、色変更の周期を異ならせることにより提示する場合、当該対応するマニピュレータが接触している仮想的な物体の部分の大きさにより、色、テクスチャまたは透過度を変化させる領域の大きさを異ならせる情報処理装置。
  6.  請求項1から5のいずれか一項に記載の情報処理装置であって、
     前記提示手段は、
     前記決定した力の大きさを表す情報を、出力する音声により提示する情報処理装置。
  7.  請求項1から6のいずれか一項に記載の情報処理装置であって、
     ユーザが操作するコントローラに通信可能に接続されており、
     前記提示手段は、前記コントローラに対して、前記決定した力の大きさを表す情報を提示させる指示を出力する情報処理装置。
  8.  仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する情報処理装置を用い、
     受入手段が、ユーザからの操作を表す情報を受け入れる工程と、
     表示手段が、当該受け入れた操作を表す情報に応じ、前記仮想空間内に、前記仮想的な物体を操作する仮想的なマニピュレータを表示する工程と、
     決定手段が、前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する工程と、
     提示手段が、前記決定した力の大きさを表す情報をユーザに提示する工程と、
    を有する情報処理方法。
  9.  コンピュータを、
     仮想空間内に仮想的な物体を配し、当該仮想空間内の画像を生成してユーザに提示する手段と、
     ユーザからの操作を表す情報を受け入れる受入手段と、
     当該受け入れた操作を表す情報に応じ、前記仮想空間内に、前記仮想的な物体を操作する仮想的なマニピュレータを表示するマニピュレータ表示手段と、
     前記仮想的なマニュピレータが前記仮想的な物体に対して与える仮想的な力の大きさを決定する決定手段と、
     前記決定した力の大きさを表す情報をユーザに提示する提示手段と、
    として機能させるプログラム。

     
PCT/JP2017/045523 2017-12-19 2017-12-19 情報処理装置、情報処理方法、及びプログラム WO2019123530A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2017/045523 WO2019123530A1 (ja) 2017-12-19 2017-12-19 情報処理装置、情報処理方法、及びプログラム
US16/766,097 US11385759B2 (en) 2017-12-19 2017-12-19 Information processing apparatus, information processing method, and program
JP2019559894A JP6959991B2 (ja) 2017-12-19 2017-12-19 情報処理装置、情報処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/045523 WO2019123530A1 (ja) 2017-12-19 2017-12-19 情報処理装置、情報処理方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2019123530A1 true WO2019123530A1 (ja) 2019-06-27

Family

ID=66993188

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/045523 WO2019123530A1 (ja) 2017-12-19 2017-12-19 情報処理装置、情報処理方法、及びプログラム

Country Status (3)

Country Link
US (1) US11385759B2 (ja)
JP (1) JP6959991B2 (ja)
WO (1) WO2019123530A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11181972B2 (en) * 2017-10-26 2021-11-23 Sony Interactive Entertainment Inc. Image processing apparatus, image processing method, and program
EP3566823A1 (en) * 2018-05-11 2019-11-13 Siemens Aktiengesellschaft Method, apparatus and system for robotic programming
WO2019224994A1 (ja) * 2018-05-25 2019-11-28 株式会社メルティンMmi 動き検出装置
US10332367B1 (en) * 2018-10-17 2019-06-25 Capital One Services, Llc Systems and methods for using haptic vibration for inter device communication
KR20210069491A (ko) * 2019-12-03 2021-06-11 삼성전자주식회사 전자 장치 및 이의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006259926A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> 作業指示システムとそのプログラム
JP2008165488A (ja) * 2006-12-28 2008-07-17 Fujitsu Ltd 組立操作性評価装置、方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2195227C (en) * 1994-07-19 2002-10-29 Junji Furusho Virtual reality and telereality system
JP3539645B2 (ja) 1995-02-16 2004-07-07 株式会社日立製作所 遠隔手術支援装置
US6407679B1 (en) * 1998-07-31 2002-06-18 The Research Foundation Of The State University Of New York System and method for entering text in a virtual environment
US6827579B2 (en) * 2000-11-16 2004-12-07 Rutgers, The State University Of Nj Method and apparatus for rehabilitation of neuromotor disorders
US7683889B2 (en) * 2004-12-21 2010-03-23 Microsoft Corporation Pressure based selection
GB2467461B (en) * 2007-09-14 2012-03-07 Nat Inst Of Advanced Ind Scien Virtual reality environment generating apparatus and controller apparatus
US8875041B1 (en) * 2011-08-19 2014-10-28 Google Inc. Methods and systems for providing feedback on an interface controlling a robotic device
US10627904B2 (en) * 2014-02-07 2020-04-21 Ultrahaptics IP Two Limited Systems and methods of determining interaction intent in three-dimensional (3D) sensory space
WO2016205143A1 (en) * 2015-06-14 2016-12-22 Sony Interactive Entertainment Inc. Gloves that include haptic feedback for use with hmd systems
US10572054B2 (en) * 2016-10-28 2020-02-25 Nanning Fugui Precision Industrial Co., Ltd. Interface control method for operation with one hand and electronic device thereof
US11069148B2 (en) * 2018-01-25 2021-07-20 Facebook Technologies, Llc Visualization of reconstructed handstate information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006259926A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> 作業指示システムとそのプログラム
JP2008165488A (ja) * 2006-12-28 2008-07-17 Fujitsu Ltd 組立操作性評価装置、方法及びプログラム

Also Published As

Publication number Publication date
JP6959991B2 (ja) 2021-11-05
JPWO2019123530A1 (ja) 2020-07-27
US11385759B2 (en) 2022-07-12
US20200356235A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
WO2019123530A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN108621156B (zh) 机器人控制装置、机器人系统、机器人以及机器人控制方法
JP7427358B2 (ja) ロボットシステム、物品の製造方法、制御方法、制御プログラム、および記録媒体
TW201707895A (zh) 機器人系統
KR102171538B1 (ko) 정보 처리 시스템, 조작 장치, 및 조작 장치 제어 방법
WO2019077652A1 (ja) 情報処理システム、コントローラデバイス、及び情報処理装置
JP7057389B2 (ja) 情報処理装置、制御方法、プログラム、及び記憶媒体
JP7339806B2 (ja) 制御システム、ロボットシステム及び制御方法
EP2865496A1 (en) Latency smoothing for teleoperations system
US11813518B2 (en) Information processing system, controller apparatus, information processing apparatus, and program
EP3489804A1 (en) Haptic accessory apparatus
JP7049069B2 (ja) ロボットシステム及びロボットシステムの制御方法
JP2024015086A (ja) ロボットシステム、制御方法、物品の製造方法、制御プログラム、記録媒体
US20230142242A1 (en) Device for Intuitive Dexterous Touch and Feel Interaction in Virtual Worlds
JP2018110625A (ja) ゲームシステム、ゲームプログラム、情報処理装置およびゲーム制御方法
JP6661783B2 (ja) 情報処理システム、情報処理装置、制御方法、及びプログラム
US20220134571A1 (en) Display Control Method, Display Program, And Robot System
KR102251308B1 (ko) 햅틱 컨트롤러 및 이를 이용한 햅틱 피드백 제공 시스템 및 방법
CN117251058B (zh) 一种多信息体感交互系统的控制方法
JP7319813B2 (ja) 力覚提示システム、力覚提示装置、及びプログラム
WO2023189422A1 (ja) 制御装置、制御方法、触覚提示システム及びプログラム製品
EP3660631A1 (en) Variable curvature interactive devices
JP2022033934A (ja) ロボットシステム及びロボットシステムの制御方法
JP6314410B2 (ja) ロボット制御装置、ロボットシステム、ロボット、ロボット制御方法、及びプログラム
CN112621740A (zh) 具备具有操作部的机器人的机器人系统以及控制机器人的方法

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: 17935221

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019559894

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17935221

Country of ref document: EP

Kind code of ref document: A1