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

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

Info

Publication number
WO2020031767A1
WO2020031767A1 PCT/JP2019/029614 JP2019029614W WO2020031767A1 WO 2020031767 A1 WO2020031767 A1 WO 2020031767A1 JP 2019029614 W JP2019029614 W JP 2019029614W WO 2020031767 A1 WO2020031767 A1 WO 2020031767A1
Authority
WO
WIPO (PCT)
Prior art keywords
moving object
robot
information processing
user
moving
Prior art date
Application number
PCT/JP2019/029614
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/250,539 priority Critical patent/US20210294414A1/en
Publication of WO2020031767A1 publication Critical patent/WO2020031767A1/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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0016Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the operator's input device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/169Holistic features and representations, i.e. based on the facial image taken as a whole
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems

Definitions

  • the present technology relates to an information processing apparatus, an information processing method, and a program related to a moving object such as an autonomous robot.
  • Patent Document 1 describes that an image of a virtual object is superimposed on an optical image of a real object located in a real space by using an HMD (Head Mounted Display) based on AR technology.
  • Patent Document 1 discloses that, by moving a virtual object so as to actively guide the line of sight of a user wearing an HMD, which one of the plurality of virtual objects is directed to the line of sight by the user as an operation target. It is described that a user is identified and that interaction with a user is made favorable.
  • the moving object When controlling the moving object, there may be an intermediate object between the moving object and the user. In this case, there is a possibility that the user may erroneously determine that the user is gazing at the moving object although the user is gazing at the intermediate object. This erroneous determination may cause the moving object to perform an action contrary to the user's intention.
  • an information processing apparatus even when an intermediate object exists between a user and a moving object, an information processing apparatus, an information processing method, and an information processing method that can appropriately determine whether or not a user is gazing at a moving object Provide a program.
  • An information processing device includes a moving object control unit.
  • the moving object control unit when it is determined that an intermediate object exists between the user existing in the real space and the moving object having the moving mechanism, the relative position of the moving object and the intermediate object viewed from the user.
  • the moving object is controlled so that the positional relationship is changed, and the moving object is controlled based on the user's line of sight information acquired after the relative positional relationship is changed.
  • the moving object since the moving object is controlled such that the relative positional relationship between the moving object and the intermediate object as viewed from the user is changed, a change in the user's line of sight when the relative positional relationship changes. Are more easily detected. As a result, the accuracy of determining whether the user is gazing at the moving object is improved. Therefore, the action of the moving object performed based on the determination result is an action suitable for the situation, and natural communication between the user and the moving object becomes possible.
  • the moving object control unit may be configured such that, after the relative positional relationship is changed, the moving object is located outside of the user's line of sight just before the relative positional relationship is changed. , The moving object may be controlled.
  • a change in the user's line of sight is easily detected, and the accuracy of determining whether the user is gazing at the moving object is improved.
  • the movement of the moving object as viewed from the user is a movement that moves to the near side or the far side.
  • the moving object control unit may control the moving object such that the moving object is located on a virtual straight line orthogonal to the line of sight after the relative positional relationship is changed. According to such a configuration, it is easier to detect a change in the user's line of sight, and the accuracy of determining whether the user is gazing is improved.
  • the plurality of users are present, and the moving object control unit is configured to, after the relative positional relationship is changed, change the line of sight of each of the plurality of users immediately before the moving object changes the relative positional relationship.
  • the moving object may be controlled so as to be positioned other than in the line of sight.
  • the moving object control unit may control the moving object such that an action of the moving object acting to change the relative positional relationship is not similar to an action of the intermediate object as viewed from the user. Good. According to such a configuration, a change in the user's line of sight is easily detected, and the accuracy of determining whether or not the user is gazing is improved.
  • the moving object control unit may control the moving object to move in a direction different from a moving direction of the intermediate object as viewed from the user. In this manner, the moving object may be caused to execute an action of moving in a direction different from the moving direction of the intermediate object as an action that is not similar to the action of the intermediate object.
  • the moving object control unit may control the moving object by using a predicted position of the intermediate object that is predicted based on a temporal change in past position information of the moving intermediate object.
  • the moving object control unit executes an action that is different from the action of the moving object that was executed immediately before the relative positional relation is changed, and the relative positional relation is changed.
  • the moving object may be controlled. According to such a configuration, a change in the user's line of sight is easily detected, and the accuracy of determining whether the user is gazing at the moving object is improved.
  • the moving object control unit moves the moving object in a moving direction different from the moving direction of the moving object that was executed immediately before the relative positional relationship was changed, and the relative positional relationship changed.
  • the moving object may be controlled so as to be controlled.
  • the moving object control unit moves the moving object in a direction different by 180 degrees from a moving direction of the moving object immediately before the relative positional relationship is changed, so that the relative positional relationship is changed.
  • the moving object may be controlled.
  • the moving object control unit may control the moving object such that the moving object moves at a speed at which the user can follow the moving object with a line of sight, and the relative positional relationship is changed. Good. According to such a configuration, the user can follow the moving object with his / her eyes by natural eye movement.
  • the moving object may be a moving object having the moving mechanism.
  • the moving object may be configured to be movable on the ground.
  • the moving object may be configured to be able to fly.
  • the information processing device may be the moving object including the moving mechanism and the moving object control unit.
  • the moving object may include an indicator indicating that the user is waiting for an instruction. According to such a configuration, the user can be alerted to watch the moving object by the indicator.
  • the moving object includes an image acquiring unit that acquires image information of a surrounding environment, and the moving object control unit controls the moving object based on the user's line of sight information acquired using the image information. Is also good.
  • the image acquisition unit may include a depth sensor.
  • distance information from the moving object to each object can be obtained as surrounding environment information, and more accurate person detection, object detection, face detection, gaze detection, and the like can be performed from the image information.
  • the information processing method is configured such that, when it is determined that an intermediate object exists between a user existing in a real space and a moving object having a moving mechanism, the moving object and the intermediate object viewed from the user are determined.
  • the moving object is controlled so that the relative positional relationship of the user is changed, and the moving object is controlled based on the user's line of sight information acquired after the relative positional relationship is changed.
  • a program when determining that an intermediate object exists between a user existing in a real space and a moving object having a moving mechanism, a relative relationship between the moving object and the intermediate object viewed from the user. Controlling the moving object so that a relative positional relationship is changed, and controlling the moving object based on the user's line of sight information acquired after the relative positional relationship is changed. And causing the information processing apparatus to execute the processing including the processing.
  • FIG. 2 is a diagram illustrating a state in which an autonomous behavior robot is used as the information processing device according to the first embodiment of the present technology.
  • FIG. 2 is a block diagram illustrating a configuration of the autonomous behavior robot. It is a flowchart explaining an example of the gaze determination in the said autonomous behavior robot.
  • FIG. 7 is a diagram (part 1) for describing a first action for gaze determination by the autonomous action robot.
  • FIG. 9 is a diagram (part 2) for describing a first action for gaze determination by the autonomous action robot.
  • FIG. 9 is a diagram (part 3) for explaining a first action for gaze determination by the autonomous action robot.
  • FIG. 10 is a diagram (part 4) for explaining a first action for gaze determination by the autonomous action robot.
  • FIG. 11 is a view (No.
  • FIG. 9 is a diagram (part 1) for explaining a first action for gaze determination by the autonomous action robot when a moving object is present around;
  • FIG. 10 is a diagram (part 2) for explaining a first action for gaze determination by the autonomous action robot when a moving object is present around it.
  • FIG. 9 is a diagram (part 3) for explaining a first action for gaze determination by the autonomous action robot when a moving object exists around the object. It is a figure for explaining judgment of movement of a surrounding moving object.
  • FIG. 3 is a diagram illustrating an example of a hardware configuration of the autonomous behavior robot. It is a figure for explaining the 1st action for gaze judgment by the autonomous action robot in a 2nd embodiment.
  • FIG. 11 is a diagram (part 1) for explaining a first action for gaze determination by the autonomous action robot in the third embodiment. It is FIG. (2) for demonstrating the 1st action for gaze determination by the autonomous action robot in 3rd Embodiment. It is FIG. (3) for demonstrating the 1st action for gaze determination by the autonomous action robot in 3rd Embodiment. It is FIG. (4) for demonstrating the 1st action for gaze determination by the autonomous action robot in 3rd Embodiment.
  • FIG. 1 is a diagram for explaining how to use an autonomous behavior robot as an information processing device.
  • a living room 60 which is a real space
  • users U1 to U3 there are users U1 to U3 and an autonomous behavior robot 1 as an information processing device.
  • a sofa 61, a table 62, and a television 63 which are stationary objects that the user does not move much, are arranged.
  • the autonomous behavior robot 1 (hereinafter, simply referred to as a robot), which is a moving object as a moving object, is a robot that supports life as a human partner and places importance on communication with humans, and exists in a real space. It is a moving object.
  • the robot 1 is configured to determine whether or not the user is gazing at the robot 1 and to perform an appropriate action on the user based on the gazing determination result.
  • the robot 1 can perform some action on the user gazing at the robot 1 and can perform natural communication with the user. Become.
  • the robot 1 performs an action of continuing the action performed immediately before the gazing determination, for example. Thereby, execution of an unnatural behavior for a user who is not paying attention to the robot 1 is suppressed.
  • the robot 1 performs any action on the user, after performing an action that calls attention to the user, some action is performed. Can be executed, and natural communication with the user can be performed.
  • a spherical autonomous robot which is configured to be capable of autonomous traveling on the ground is exemplified, but is not limited thereto. It may be a moving object having a moving mechanism that can move on the ground or in the air, for example, a pet robot or a humanoid robot imitating an animal such as a dog or a cat, or a flying type configured to be able to fly in the air It may be a robot.
  • FIG. 2 is a block diagram illustrating a configuration of the robot 1 according to the present embodiment.
  • the robot 1 as an information processing apparatus includes a control unit 10, an input / output unit 40, an environment map database 30, an action database 31, a data storage unit 32, a storage unit 33, And a mechanism 34.
  • the moving mechanism 34 is a moving unit that moves the robot 1 that is a moving object in the real space under the control of the robot control unit 15 of the control unit 10 described below.
  • the moving mechanism 34 includes a leg type moving mechanism, a wheel moving mechanism, an endless track type moving mechanism, a propeller moving mechanism, and the like.
  • a robot equipped with a leg-type moving mechanism, a wheel moving mechanism, and an endless track moving mechanism can move on the ground.
  • a robot equipped with a propeller moving mechanism can move by flying in the air.
  • the moving mechanism includes a moving unit that moves the robot, and a driving unit that drives the moving unit.
  • the leg type moving mechanism is used for, for example, a humanoid robot, a pet type robot, and the like.
  • the leg-type moving mechanism has a leg as a moving unit and an actuator as a driving unit for driving the leg.
  • a dog-type pet robot typically includes a head unit, a torso unit, a leg unit (for four legs), and a tail unit.
  • the actuator includes a joint of the leg unit (for four legs), a connection between each of the leg units and the body unit, a connection between the head unit and the body unit, and a connection between the tail unit and the body unit. It is provided in the connection part.
  • the movement of the robot is controlled by controlling the drive of each actuator.
  • the wheel moving mechanism has wheels as moving units and motors as driving means for driving the wheels.
  • the main body of the robot 1 is moved on the ground by rotating and driving the wheels attached to the main body of the robot 1.
  • a robot 1 having a wheel moving mechanism will be described as an example.
  • the endless track type moving mechanism has an endless track as a moving unit and a motor as driving means for driving the endless track.
  • the main body of the robot 1 is moved on the ground surface by the rotational drive of the endless track attached to the main body of the robot 1.
  • the propeller moving mechanism has a propeller as a moving unit for moving the robot, and an engine and a battery as driving means for driving the propeller.
  • the first action of the robot 1 is controlled based on the surrounding environment information acquired by various sensors constituting the input / output unit 40.
  • the first action is an action for a gaze determination process.
  • the first action is controlled so that the relative positional relationship between the robot 1 and the intermediate object as viewed from the user is changed.
  • the intermediate object is an object existing between the user existing in the real space and the robot 1.
  • the robot 1 is controlled to execute the second action. Specifically, gaze determination processing is performed to determine whether or not the user is gazing at the robot 1 based on a change in the user's gaze at the time of executing the first action of the robot 1 calculated based on the user's gaze information. Based on the result of the gaze determination, the robot 1 is controlled so as to execute the second action.
  • the input / output unit 40 includes a camera (imaging device) 41 forming an input unit, a depth sensor 42, a microphone 43, and a touch sensor 44, a speaker 45 forming an output unit, and an LED (Light Emitting Diode) indicator 46.
  • a camera imaging device
  • various imaging devices such as an RGB camera, a monochrome camera, an infrared camera, a polarization camera, and an event-based camera (Event-based camera) may be employed.
  • the event-based camera is a camera that outputs an image only when a change in luminance or the like occurs between images.
  • the camera 41 as an image acquisition unit is a camera that captures the surrounding real space.
  • the camera 41 acquires an RGB image, a monochrome image, an infrared image, a polarization image, a difference image, and the like according to the type of the image sensor. Image information obtained as a result of shooting is supplied to the control unit 10.
  • the number of cameras 41 may be one or more.
  • the camera 41 is mounted on the top of the robot 1, for example.
  • the depth sensor 42 as an image acquisition unit acquires distance information from the depth sensor 42 to the object.
  • the acquired three-dimensional distance image information is supplied to the control unit 10.
  • the depth sensor 42 is mounted, for example, on the top of the robot 1.
  • the object includes a person such as a user and an object other than the person.
  • a person is a movable object that can move.
  • the objects other than the person include stationary objects such as the sofa 61, the table 62, and the television 63 which are fixed in the real space without being moved much by the user, and moving objects other than the person.
  • Examples of moving objects other than persons include animals such as dogs and cats, cleaning robots, and typically small objects such as plastic bottles and cups that can be easily moved by the user.
  • a known sensor can be used as the depth sensor 42.
  • a method of irradiating infrared rays or the like and measuring the distance to the target object from the time until the reflected light of the irradiating infrared light returns, irradiating a pattern with infrared rays etc., and distorting the pattern from the pattern reflected on the target object Or a method of matching images captured by a stereo camera and measuring the distance to the target object from parallax between the images.
  • the microphone 43 collects surrounding sounds. The collected sound information is supplied to the control unit 10.
  • the touch sensor 44 detects a user's contact with the robot 1. The sensed contact information is supplied to the control unit 10.
  • the speaker 45 outputs an audio signal that is a robot control signal received from the control unit 10.
  • the LED indicator 46 as an indicator, lighting of the LED is controlled based on a light emission signal which is a robot control signal received from the control unit 10.
  • the LED indicator 46 forms emotions and the like of the robot by a combination of blinking and lighting of the LEDs, and notifies the user U of the situation of the robot 1.
  • the robot 1 when the robot 1 is performing any action on the user U, the robot 1 can make the user look as if the user is looking at it by illuminating a part of the LED indicator 46. Also, by changing the lighting color, emotions such as emotions, emotions, and so on can be presented to the user. Also, the robot 1 can notify the user that the instruction is waiting by blinking the LED indicator 46 while waiting for the instruction from the user.
  • the LED indicator 46 may be provided on the entire surface of the spherical robot 1 or may be provided partially. In the present embodiment, as shown in FIG. 1, the robot 1 partially has two LED indicators 46 on its surface.
  • the robot 1 may include, as an output unit, a display such as an LCD (Liquid Crystal Display) that displays an image.
  • a display such as an LCD (Liquid Crystal Display) that displays an image. This allows the user to be presented with information such as emotions and situations of the robot to the user via a desired image display.
  • LCD Liquid Crystal Display
  • the control unit 10 controls a series of processes related to gaze determination.
  • the control unit 10 includes a three-dimensional sensing unit 11, a voice information acquisition unit 12, a self-position estimation unit 13, an environment map creation unit 14, a robot control unit 15 as a moving object control unit, an object detection unit 16, , A face and line-of-sight detection unit 17, a line-of-sight determination unit 18, an intermediate object presence / absence determination unit 19, a gaze determination unit 20, and an object position prediction unit 21.
  • the three-dimensional sensing unit 11 integrates the image information acquired by the camera 41 and the three-dimensional distance image information acquired by the depth sensor 42, and constructs a three-dimensional shape of the surrounding environment.
  • the three-dimensional shape of the surrounding environment may be constructed by outputting three-dimensional coordinates as a group of points using a three-dimensional laser scanner.
  • the audio information acquisition unit 12 acquires audio information collected by the microphone 43.
  • the self-position estimating unit 13 calculates the feature points of the appearance of the object stored in the data storage unit 32 described later, and the three-dimensional coordinates of the feature points of the object extracted from the three-dimensional shape constructed by the three-dimensional sensing unit 11. Is estimated, the position of the robot 1 on which the camera 41 and the depth sensor 42 are mounted is estimated. That is, the self-position estimating unit 13 estimates the position in the room where the self (robot 1) existing in the living room 60 exists.
  • sensors other than cameras such as an IMU (Inertial Measurement Unit) and a GPS (Global Positioning System), are provided. By integrating these sensor information, a more accurate self-position estimation is performed. Is also good.
  • IMU Inertial Measurement Unit
  • GPS Global Positioning System
  • the object detection unit 16 detects a person region and an object region other than a person from the three-dimensional shape constructed by the three-dimensional sensing unit 11.
  • a method of recognizing a person region a method of recognizing HOG (Histograms of Oriented Gradients) features and SVM (Support Vector machine) using image information, a recognition method using a convolutional neural network, or the like can be used. Further, by detecting a person using three-dimensional distance image information in addition to image information, more accurate detection can be performed.
  • HOG Heistograms of Oriented Gradients
  • SVM Small Vector machine
  • an unknown object may be detected from a three-dimensional shape, the detected object may be classified using shape information, and the object may be recognized. Further, the object shape to be detected may be classified using an object recognition technique based on the shape feature amount, assuming that the object shape is known, and more accurate object detection can be performed.
  • the environment map creating unit 14 includes a three-dimensional shape constructed by the three-dimensional sensing unit 11, an estimated position of the robot 1 estimated by the self-position estimating unit 13, and a person area and a person detected by the object detecting unit 16. Based on the object area, an environment map expressing the position of the robot 1 existing in the real space, the position of each object, and the like is created.
  • the environment map creation unit 14 creates an environment map that represents the positions of the robot 1, the person, and the object other than the person at certain time intervals.
  • the created environment map is accumulated in the environment map database 30 in time series.
  • the self-position estimation of the robot 1 and the creation of the environment map can be performed simultaneously using a technique called Visual SLAM (Simultaneous Localization And Mapping).
  • an environment map as correct answer data may be registered in the environment map database 30 in advance.
  • the self-position of the robot 1 may be estimated by referring to the environment map of the correct data and the three-dimensional shape constructed by the three-dimensional sensing unit 11.
  • an environment map expressing a real space in which only a stationary object having no moving object exists is registered in the environment map database 30 as correct data in advance, and is constructed by the environment map of the correct data and the three-dimensional sensing unit 11.
  • the person region and the moving object region other than the person may be detected from the background difference with the three-dimensional shape.
  • the face and line of sight detection unit 17 detects a face region from the person region output from the object detection unit 16 and detects the face direction and line of sight of the person.
  • a known method using the image feature amount of image information can be used for detecting the face area. Further, by performing detection using three-dimensional distance image information in addition to image information, more accurate detection can be performed.
  • ⁇ ⁇ A known method can be used for detecting the direction of the face.
  • the direction of the face can be detected by detecting the direction of the nose and the direction of the chin.
  • a known method can be used for detecting the line of sight. For example, the gaze of a person can be detected from the distance between the inner corner of the eye and the center of the iris using image information. Further, a corneal reflection method for detecting a line of sight using infrared light can also be used. In the corneal reflection method, an image of the user's eye portion is captured by irradiating infrared light, and the reflection position of infrared light on the eyeball cornea of the detection target user in the image obtained by the imaging, that is, the infrared light The gaze direction can be detected from the positional relationship between the luminescent spot of and the pupil of the detection target user.
  • the gaze determination unit 18 determines whether the person detected from the three-dimensional shape is facing the robot 1 based on the detection result of the face and the gaze detection unit 17 or the gaze of the person is directed toward the robot 1. Is determined.
  • the intermediate object presence / absence determination unit 19 determines whether or not the robot 1 is gazing using the environment map. Is determined.
  • the intermediate object indicates an object located between the robot 1 and the person whose gaze is to be determined.
  • the intermediate object is a real object existing in the real space.
  • the intermediate object may be a person or an object other than a person. Further, the intermediate object may be a stationary object or a moving object.
  • the gaze determination unit 20 determines whether or not a person to be a gaze determination target (hereinafter, may be referred to as a target person) is gazing at the robot 1.
  • the robot 1 executes a first action under the control of a robot control unit 15 described later for gaze determination.
  • the gaze determination unit 20 determines whether the target person is gazing at the robot 1 based on a change in the line of sight of the target person during the first action of the robot 1, that is, from the start to the end of the first action. Is determined.
  • the gaze determination unit 20 acquires the line-of-sight information of the target person from the start to the end of the first action of the robot 1 from the face and line-of-sight detection unit 17 in chronological order, and based on the information. Then, the change of the line of sight of the target person, that is, the line of sight is calculated.
  • the gaze determination unit 20 is based on the movement trajectory of the robot 1 from the start to the end of the first action, the calculated line-of-sight trajectory of the target person, and distance information between the target person and the robot 1 acquired from the depth sensor 42. Next, it is determined whether or not there is a correlation between the movement locus of the robot 1 and the line of sight of the target person, and whether or not the target person is gazing at the robot 1 is determined.
  • the gaze determination unit 20 determines that the target person is gazing at the robot 1 when determining that there is a correlation. On the other hand, if it is determined that there is no correlation, the gaze determination unit 20 determines that the target person is not watching the robot 1.
  • the object position prediction unit 21 predicts the position of each object at a time after the current time from the temporal change of the past position information of the moving object including the person obtained based on the environment map accumulated in time series.
  • the robot control unit 15 controls a first action performed by the robot 1 for the gaze determination and a second action performed by the robot 1 based on the result of the gaze determination.
  • a control signal related to the behavior of the robot 1 generated by the robot control unit 15 is referred to as a robot control signal.
  • the first action is an action executed by the robot 1 to determine whether or not the target person is gazing at the robot 1.
  • the second action is executed by the robot 1 based on a change in the line of sight of the target person at the time of executing the first action, which is calculated using the line of sight information of the target person acquired after the execution of the first action.
  • the change of the line of sight is detected by the above-mentioned gaze determination unit 20.
  • the second action is performed by the robot 1 based on the line-of-sight information of the target person acquired after the execution of the first action.
  • the robot control signal is supplied to the control signal of the moving mechanism 34 relating to the behavior of the robot 1, the light-emitting signal of the LED indicator 46 relating to notification of the emotion and the situation of the robot 1, and the speaker 45 relating to the sound from the robot 1. And the like.
  • the robot control unit 15 When the intermediate object presence / absence determination unit 19 determines that there is no intermediate object, the robot control unit 15 generates a first action robot control signal for gaze determination by a prescribed process described later.
  • the robot control unit 15 changes the relative positional relationship between the robot 1 as the moving object and the intermediate object as viewed from the target user. First, a robot control signal of the first action is generated.
  • the robot control unit 15 when the intermediate object is a moving object, the robot control unit 15 generates a robot control signal of the first action in consideration of the position of the intermediate object predicted by the object position prediction unit 21.
  • the user U3 exists as an intermediate object between the user U1 and the robot 1.
  • the face direction of the user U1 is facing the robot 1, whether the user U1 is gazing at the robot 1 or the user U3, or whether neither is gazing at the user U1 Is difficult to determine based on the line-of-sight information of the user U1.
  • the first action is performed so that the relative positional relationship between the robot 1 and the user U3 as viewed from the user U1 is changed. Be executed. Then, it is determined whether or not the user U1 is gazing at the robot 1 by detecting how the line of sight of the user U3 changes due to the first action of the robot 1.
  • the first action of the robot 1 is basically different from the action of the robot 1 immediately before the first action is executed, and the robot 1 reaches the first action.
  • the second target position which is the position, is a position other than in the line of sight of the line of sight of the user (target person), and the line of sight angle difference of the user (target person) following the line of sight of the robot 1 is within 30 degrees / second.
  • Speed is controlled.
  • immediately before the first action is executed it means immediately before the relative positional relationship between the robot and the intermediate object as viewed from the user is changed.
  • the first action reaches the second target position it means immediately after the execution of the first action and after the relative positional relationship has been changed.
  • the first action of the robot 1 is controlled within a range that does not collide with an object including a person around the robot 1 or a wall, and is controlled so as to move toward a space where the object does not exist as much as possible.
  • a virtual straight line (for example, a straight line denoted by reference symbol L in FIGS. 7 to 10) passes through the robot 1 and is substantially parallel to the ground surface of the robot 1, and the camera 41 and the depth sensor 42 mounted on the robot 1 It is set to the height near the mounting position of.
  • the camera 41 and the depth sensor 42 play a role of “eyes” in the robot 1, and the virtual straight line L is set at a height corresponding to the line of sight of the robot 1.
  • the robot 1 executes an action of moving in a direction different from the traveling direction in the immediately preceding action as an action different from the action immediately before the first action.
  • the action different from the immediately preceding action is an action in which the user's attention is easily directed to the robot 1. This makes it easier to determine whether the robot 1 is simply moving at random or is moving to receive an instruction from the user.
  • the LED indicator 46 may not be turned on in the action immediately before, but the LED indicator 46 may be turned on in the first action.
  • the user may move while rotating as an action different from the immediately preceding action. If the moving object is a dog-type pet-type robot, it may move while waving its tail as an action different from the action immediately before.
  • the robot 1 moves in the line of sight of the target person, in other words, the line of sight of the line of sight of the target person and an extension of the line of sight
  • the movement of the robot 1 as viewed from the target person moves to the near side or the back side. Movement.
  • the line of sight of the user who follows the robot 1 with eyes does not change much, and it is difficult to make a gaze determination.
  • the line-of-sight vector is a directed line segment from the eyes of the target person toward the robot 1, and is line-of-sight information of the target person.
  • a second target position to be reached by the first action is set on a virtual straight line orthogonal to the line-of-sight vector of the target person, and the robot is moved toward the second target position.
  • the change in the line of sight of the target person becomes large, so that the change in the line of sight becomes easier to detect.
  • the accuracy of the gaze determination process can be further improved.
  • the second target position does not necessarily have to be on a virtual straight line orthogonal to the line of sight of the target person, and is preferably not on the line of sight.
  • the intermediate object that is almost positioned on the line of sight of the target person will be displaced from the line of sight of the target person. It becomes easy to detect whether the line of sight of the target person is directed at the intermediate object or the robot 1.
  • the target person can follow the movement of the robot 1 with natural eye movements. It becomes possible.
  • the relative positional relationship between the robot 1 and the intermediate object viewed from the target person changes regardless of whether the intermediate object moves or not.
  • the first action of the robot 1 is controlled so as to be performed.
  • the intermediate object is a moving object
  • the first action of the robot 1 is controlled so as not to be similar to the action of the intermediate object. Thereby, the accuracy of the gaze determination is improved.
  • FIG. 1 an example is shown in which the user U1 as the target person performs the first action of sitting on the sofa 61 and standing still, and the robot 1 moving, but in the case where the target person is moving. May perform a first action of stopping the robot 1 so that the relative positional relationship between the robot 1 and the intermediate object as viewed from the target person is changed.
  • the second action of the robot 1 is an action executed by the robot 1 on the target person using the action database 31 based on the result of the gaze determination and the surrounding situation.
  • the surrounding situation includes behavior information and state information of the target person, and these information can be obtained from the line-of-sight information of the target person.
  • the behavior information is information relating to behavior, such as reading a book, watching TV, or listening to music.
  • the status information is information relating to the status of the user being happy, sad, or busy.
  • the action information is, for example, extracting a feature point from image information acquired from the camera 41 and tracking the extracted feature point to recognize what kind of action a person is taking (action recognition processing). Can be obtained.
  • the state information is obtained by, for example, analyzing the movement of the eyes and eyebrows from the image information acquired by the camera 41, analyzing the tone of the voice from the audio information acquired by the microphone 43, or using the analysis results of both. It can be obtained by recognizing the state of the user being happy, sad, busy, etc. (state recognition processing). Further, the content of the utterance of the user may be recognized from the voice information acquired by the microphone 43, and the state of the user may be recognized accordingly.
  • the robot 1 when it is determined that the user is gazing at the robot 1 in the gaze determination, the robot 1 approaches the user and turns on the LED indicator 46 to express joy based on the action database 31.
  • the user performs some kind of action on the user, such as playing music or playing music.
  • the robot 1 when it is determined in the gaze determination that the user is not gazing at the robot 1, as an example of the second behavior, the robot 1 performs an action of moving to the first target position immediately before the gazing determination. I do.
  • an action suitable for the surrounding situation may be executed.
  • the robot 1 receives or has information to notify the user such as an incoming mail, not only the notification of the incoming call by turning on the LED indicator 46 but also the approach of the user and generation of a sound from the speaker 45 by approaching the user.
  • a second action that calls attention may be performed. Note that the behavior example is not limited to these.
  • the environment map database 30 includes information on objects such as the position and shape of objects other than the person recognized indoors such as the sofa 61, the table 62, and the television 63, spatial information such as a wall position, and information on a person such as a user. Is accumulated in a time series.
  • the action database 31 includes an action model that defines what action the robot 1 should perform when the surroundings are in a certain situation, and a movement mechanism 34 of the robot 1 that causes the robot 1 to execute the action.
  • An action content definition file is registered.
  • each database is built in the robot 1, which is an information processing device, but may be built on a cloud server.
  • the database is constructed on the cloud server, various information acquired by the input / output unit 40 is converted into information excluding privacy so that the user and the place of the house cannot be specified, and transmitted to the cloud server.
  • the data storage unit 32 stores information such as feature points and feature amounts of the appearance of an object used when performing self-position estimation and detecting a person or an object.
  • the storage unit 33 includes a memory device such as a RAM and a non-volatile recording medium such as a hard disk drive.
  • the storage unit 33 causes the robot 1 as an information processing apparatus to execute a series of information processing related to gaze determination described below. Store the program.
  • FIG. 3 is a flowchart of an information processing method related to gaze determination performed by the robot 1 as an information processing device.
  • the three-dimensional sensing unit 11 constructs a three-dimensional shape of the surrounding environment (S1).
  • the self-position estimating unit 13 estimates the position of the robot 1 using the three-dimensional shape of the surrounding environment (S2), and the environment map creating unit 14 creates an environment map (S3).
  • the object detection unit 16 detects a person region and an object region other than a person. Furthermore, a face area is detected from the detected person area by the face and line-of-sight detection unit 17, and the direction and line of sight of the person's face are detected (S4).
  • areas of the users U1, U2, and U3 are detected as person areas, and areas of the sofa 61, the television 63, the table 62, and the horse 66 are detected as object areas other than the person.
  • the detection of the face direction and the line of sight of the person is performed in all of the extracted person regions of the persons U1 to U3.
  • the gaze determination unit 18 faces the robot 1 based on the face and the gaze detection result of each person by the face and gaze detection unit 17, or the gaze is directed to the robot 1. It is determined whether or not there is a person who is estimated to be watching the robot 1 (S5).
  • the intermediate object presence / absence determination unit 19 determines whether an intermediate object exists between the robot 1 and a person (target person) presumed to be watching the robot 1. If it is determined in S6 that there is no intermediate object (No), the process proceeds to S8. If it is determined in S6 that an intermediate object exists (Yes), the process proceeds to S7. In the example shown in FIG. 1, a user U3 riding on a wooden horse 66 exists as an intermediate object between the robot 1 and the user U1.
  • the robot control unit 15 generates a robot control signal related to a first action executed to determine whether the user is gazing at the robot 1 or not.
  • the robot 1 is controlled based on the robot control signal and performs a first action.
  • the robot 1 is controlled so that the prescribed first action is executed. A method for generating the prescribed first action will be described later.
  • the robot control unit 15 generates a robot control signal related to a first action executed to determine whether or not the user whose gaze determination target is gazing at the robot 1.
  • the robot 1 is controlled based on the robot control signal and performs a first action.
  • the robot control unit 15 causes the robot 1 to determine the relative position between the robot 1 viewed from the target user U1 and the user U3 riding the wooden horse 66.
  • a robot control signal related to the first action of the robot 1 is generated so that the dynamic positional relationship is changed.
  • a method of generating the first action when an intermediate object exists will be described later.
  • the gaze determination unit 20 calculates a change in the gaze of the target person at the time of performing the first action based on the time-series gaze detection result, and determines whether or not the person being the gaze determination target is gazing at the robot 1. Is performed (S9).
  • the gaze determination is performed as described above.
  • the robot control unit 15 controls the robot in accordance with the second action so as to take any action on the target person.
  • a signal is generated, and the second behavior of the robot 1 is controlled based on the robot control signal.
  • the robot control unit 15 moves to the first target position of the action immediately before the gaze determination processing.
  • the robot 1 is controlled so as to execute the second action of performing the action.
  • FIGS. 4 to 10 are diagrams illustrating a method of generating the first action.
  • 4 to 8 are schematic views of the living room 60, which is a real space, as viewed from above.
  • a circle represents a user U
  • a square represents an obstacle such as a stationary object other than a fixed person such as a sofa 61, a table 62, and a television 63
  • a triangle represents the robot 1.
  • FIG. 4 shows a state where the robot 1 is located at the position P (Tk) at the time Tk and is moving toward the first target position Ptarget1.
  • the robot 1 is moving to the first target position Ptarget1, at the time Tm (Tk ⁇ Tm), at the position P (Tm), the face and the gaze detection unit 17 perform gaze. 64 are detected.
  • This line of sight 64 is the line of sight of the user U1 immediately before the start of the first action.
  • the robot control unit 15 controls the robot 1 and the user U1 measured by the depth sensor 42, as shown in FIG. Based on the distance information and the line-of-sight vector (line-of-sight information) of the line of sight 64, an area 67 in which the user U1 can naturally follow the line of sight of the robot 1 is estimated.
  • the area 67 in which the line of sight can be followed is indicated by a dot pattern.
  • the region 67 is set such that the line-of-sight angle difference of the target person who follows the line of sight of the robot 1 is within a range of 30 degrees / second or less.
  • the virtual straight line L extending in the direction orthogonal to the line-of-sight vector of the line of sight 64 is calculated by the robot control unit 15.
  • the robot control unit 15 is a region 67 that can follow the line of sight and is on the virtual straight line L, and the moving direction of the first action is the moving direction immediately before the first action.
  • the second target position Ptarget2 is set so as to be different from the moving direction from a certain position P (Tm) to the first target position Ptarget1.
  • the robot control unit 15 generates a robot control signal of the first action of the robot 1 to arrive at the time Tn from the position P (Tm) to the second target position Ptarget2.
  • the second target position Ptarget2 is the same as the position P (Tn) of the robot 1 at the time Tn.
  • the robot 1 moves so as to reach the second target position Ptarget2 at the time Tn according to the generated robot control signal of the first action.
  • the robot control unit 15 performs the first based on the line-of-sight information of the target person until the robot 1 detected by the line-of-sight determination unit 18 starts from the position P (Tm) and reaches the second target position Ptarget2. Of the user's line of sight at the time of the execution of the action, and determines whether or not the target person is gazing at the robot 1.
  • the method of calculating the second target position Ptarget2 that defines the first action for performing the gaze determination process will be described with reference to FIG. 9, and the method of calculating the arrival time at the second target position Ptarget2 will be described with reference to FIG. 10. Will be explained.
  • the position of the robot 1 at the time Tm is P (Tm)
  • the motion vector from the P (Tm) of the robot 1 toward the first target position Ptarget1 is M (Tm)
  • the line-of-sight vector of the line of sight 64 is Gz ( Tm).
  • the motion vector of the robot 1 from P (Tm) toward the second target position Ptarget2 is M ′ (Tm).
  • Tn Tn> Tm.
  • the position is located in an area 67 that can follow the line of sight, is on a virtual straight line L orthogonal to the line of sight vector Gz (Tm), and has the maximum angle between M (Tm) and M ′ (Tm). Is calculated as the second target position Ptarget2.
  • the angle formed is ⁇ .
  • the velocity vector ⁇ P (Tn) of the robot 1 from P (Tm) to the second target position Ptarget2 is Can be expressed as
  • the angular velocity ⁇ (Tn) of the line-of-sight vector of the robot 1 from P (Tm) to the second target position Ptarget2 is Can be expressed as
  • the arrival time of the robot 1 at the second target position Ptarget2 can be calculated.
  • the second target position Ptarget2 is set such that the moving direction of the first action is different from the immediately preceding moving direction in an area 67 that can follow the line of sight and does not collide with the object or the wall during the first action.
  • the first position is set so that the relative positional relationship between the robot 1 and the intermediate object as viewed from the target person is changed.
  • the behavior is controlled to be the first behavior defined above.
  • the second action that defines the first action as follows so that the relative positional relationship between the robot 1 and the intermediate object viewed from the target person is changed. Is set.
  • the object position prediction unit 21 based on the past time-series position information of the intermediate object obtained based on the environment map accumulated in time series by the object position prediction unit 21, the position of the intermediate object at the time Tn after the current time Tm. Is predicted.
  • the relative position relationship between the intermediate object and the robot 1 as viewed from the target person at the time Tn is determined by the robot control unit 15 at the current time Tm.
  • the second target position Ptarget2 of the robot 1 at the time Tn is set so as to be different from the relative positional relationship between the intermediate object and the robot 1 as viewed from the person.
  • the second target position Ptarget2 can be set on a virtual straight line L orthogonal to the direction of the line of sight of the target person's line of sight 64, it is set on the virtual straight line L.
  • the second action that defines the first action is as follows so that the relative positional relationship between the robot 1 and the intermediate object as viewed from the target person is changed. Is set.
  • the position of the target person at the time Tn after the current time Tm is predicted by the object position prediction unit 21 from the past time-series position information of the target person obtained based on the environment map accumulated in the time series. Is done.
  • the second target position Ptarget2 is set in consideration of the predicted position of the intermediate object at the time Tn and the predicted position of the target person at the time Tn.
  • the first action of the robot 1 is controlled so as not to be similar to the action of the intermediate object. In this way, by controlling the first action of the moving object to be an action that is not similar to the action of the intermediate object, it is possible to more accurately determine the gaze of the target person.
  • the user U3 riding the wooden horse 66 which is an intermediate object, is a moving object that swings back and forth repeatedly. It is predicted that the position will be determined by the action of swinging back and forth. Based on this prediction result, the first action of the robot 1 is controlled to move in a straight line so as not to resemble the action of the user U3 riding the wooden horse 66 swinging back and forth.
  • the moving objects existing around the robot 1 include objects other than the target person, and also include intermediate objects.
  • FIGS. 11 to 14 are diagrams for explaining a method of generating the first action
  • FIGS. 11 to 13 are schematic views of a living room 60, which is a real space, as viewed from above.
  • FIG. 14 is a diagram illustrating a method of calculating a second target position that defines a first action that is not similar to the action of a surrounding moving object.
  • a circle represents a user U
  • a square represents a stationary object
  • a triangle represents the robot 1
  • a hexagon represents surrounding moving objects.
  • the cleaning robot 65 will be described as an example of a moving object around the person other than the person whose gaze is to be determined.
  • the past movement of the cleaning robot 65 is acquired by the object position prediction unit 21 based on the environment map accumulated in time series.
  • black dots and dashed arrows indicate velocity vectors 75 indicating past movements of the cleaning robot 65.
  • the movement of the cleaning robot 65 at a time later than the current time is predicted by the object position prediction unit 21 based on the environment map accumulated in chronological order.
  • the dotted line indicates the predicted speed vector 69 of the predicted cleaning robot 65. It is assumed that the robot 1 has its own speed vector 68 as control information.
  • the robot controller 15 uses the user U1 based on the positional relationship information between the robot 1 and the user U1 measured by the depth sensor 42 and the positional relationship information between the user U1 and the cleaning robot 65.
  • a temporary line-of-sight vector 70 directed to the robot 1 and a temporary line-of-sight vector (hereinafter referred to as a temporary line-of-sight vector) 71 directed to the cleaning robot 65 of the user U1 are calculated.
  • the hexagon indicated by the dotted line in FIG. 14 is the cleaning robot 65 at the current time Tk, and the reference line vector at this time is denoted by reference numeral 71.
  • the hexagon illustrated by the solid line is the cleaning robot 65 ′ at time Tk + 1 after the current time, and the reference line vector at this time is denoted by reference numeral 71 ′.
  • the triangle indicated by the dotted line is the robot 1 at the current time Tk, and the reference line vector at this time is denoted by reference numeral 70.
  • the triangle shown by the solid line is the robot 1 'at time Tk + 1 after the current time, and the reference line vector at this time is denoted by reference numeral 70'.
  • the position of the triangle illustrated by the solid line is a second target position Ptarget2 that defines the first action of the robot 1.
  • the temporary line-of-sight vector 70 As shown in FIG. 14, based on the speed vector 68 of the robot 1, the predicted speed vector 69 of the cleaning robot 65, the temporary line-of-sight vector 70, and the temporary line-of-sight vector 71, the temporary line-of-sight vector between the current time Tk and the time Tk + 1.
  • the similarity between the time series change from 70 to the tentative gaze vector 70 'and the time series change from the tentative gaze vector 71 to the tentative gaze vector 71' is calculated, and the first similarity is calculated to be lower than the threshold value.
  • a robot control signal for the action is generated.
  • the provisional line-of-sight vector 70 'at time Tk + 1 is calculated, and the angle ⁇ r between the provisional line-of-sight vector 70' and the provisional line-of-sight vector 70 at time Tk is calculated.
  • a temporary line-of-sight vector 71 'at time Tk + 1 is calculated, and an angle ⁇ a between the temporary line-of-sight vector 71' and the temporary line-of-sight vector 71 at time Tk is calculated.
  • the similarity is low, and it can be determined that the actions of the robot 1 and the cleaning robot 65 are not similar.
  • the first action is an action that is not similar to the action of the surrounding moving object, and thus it is possible to more significantly detect a change in the line of sight of the person whose gaze is to be determined. Thereby, the accuracy of determining whether or not the target person is gazing at the robot 1 is improved.
  • a threshold determined by the eye-gaze estimation accuracy for example, an angular resolution or less
  • the cleaning robot (surrounding moving object) 65 is calculated from past movement information of the cleaning robot (surrounding moving object) 65 so as to be a first action that is not similar to the action of the cleaning robot 65 that is a moving object around the robot 1.
  • the movement angle ( ⁇ a) of the tentative gaze vector of the gaze of the user when it is assumed that the user gazes at the cleaning robot 65 is calculated.
  • the position of the robot 1 at the time Tk is set such that the difference between the moving angle ( ⁇ r) of the temporary line-of-sight vector of the user's line of sight and ⁇ a when the user is assumed to be gazing at the robot 1 is higher than a threshold value.
  • a second target position Ptarget2 is set based on the temporary line-of-sight vector at time Tk. Accordingly, the moving object is controlled to move in a direction different from the moving direction of the intermediate object as viewed from the user, and performs an action that is not similar to the intermediate object.
  • a CPU Central Processing Unit 51 controls the overall operation of a general-purpose computer.
  • a ROM Read Only Memory 53 stores a program or data describing a part or all of a series of processes.
  • a RAM Random Access Memory 52 temporarily stores programs, data, and the like used by the CPU 51 during execution of processing.
  • the CPU 51, the RAM 52, and the ROM 53 are mutually connected via the bus 57.
  • the interface 57, the drive 55, and the storage unit 56 are further connected to the bus 57.
  • the interface 54 performs data input / output with the input / output unit 40 such as a camera, a depth sensor, a microphone, a touch sensor, a speaker, or an LED indicator.
  • the interface 54 inputs and outputs data to and from the moving mechanism 34.
  • the drive 55 is provided in a general-purpose computer as needed, and drives a removable medium.
  • the removable medium is a recording medium for recording a program that can be executed by a computer, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the storage unit 56 includes, for example, a hard disk and stores programs and data.
  • a program stored in the ROM 53, the storage unit 56, or the removable media attached to the drive 55 shown in FIG. 15 is read into the RAM 52 at the time of execution, and is executed by the CPU 51. .
  • the position of the robot 1 is controlled so that the movement path suitable for the gaze determination is obtained even when an intermediate object exists between the person to be gaze-determined and the robot 1. Therefore, accurate gaze determination processing can be performed. Thereby, based on the gaze determination result, the robot 1 can execute more appropriate action for the user, and natural communication becomes possible.
  • FIG. 16 is a schematic view of a living room 60, which is a real space, as viewed from above.
  • an area 67 that satisfies the condition that the action is different from the action immediately before the first action is performed and the speed at which the sight angle difference of the user who follows the sight of the robot 1 is within 30 degrees / second.
  • a second vector at a position farthest from the position where the robot 1 exists immediately before the first action is executed, on a vector in the opposite direction that is different from the motion vector immediately before the execution of the first action by 180 degrees. May be set, and the first action may be controlled.
  • the motion vector M (Tm) at the current time Tm is on the motion vector M ′ (Tm) obtained by rotating the motion vector M (Tm) by 180 degrees, and is within the region 67 where the user can naturally follow the line of sight.
  • the second target position Ptarget2 is set at a position farthest from the current position. That is, the moving direction of the first action of the robot 1 is changed by 180 degrees opposite to the moving direction of the action performed immediately before.
  • the user's line-of-sight vector when the estimation accuracy of the user's line-of-sight vector is low, the user's line-of-sight vector is not facing the robot 1 but may be watching the robot 1.
  • the user when it is difficult to estimate a virtual straight line from the gaze vector of each of a plurality of existing users, when a large number of moving objects are present, and when it is difficult to estimate an action different from them, the user can easily follow the gaze, and Gaze determination is facilitated. Therefore, it is possible to improve the accuracy of the gaze gaze determination.
  • ⁇ Third embodiment> the case where the gaze determination target is a single person has been described as an example.
  • a case where there are a plurality of persons whose gaze determination is to be performed will be described with reference to FIGS. Note that the description of the same processing as that performed when only one person is the gaze determination target may be omitted.
  • the same components as those described above are denoted by the same reference numerals, and description thereof may be omitted.
  • a description will be given focusing on how to obtain a virtual straight line when there are a plurality of users.
  • FIGS. 17 to 20 are schematic views of living room 60, which is a real space, as viewed from above.
  • living room 60 two users U1 and U2 are sitting on the sofa 61.
  • the two users U1 and U2 are the persons to be gaze-determined.
  • FIG. 17 shows a state where the robot 1 is located at the position P (Tk) at the time Tk and is moving toward the first target position Ptarget1.
  • the face and gaze detection unit 17 outputs The gaze 164 and the gaze 165 from the user U2 are detected.
  • the line of sight 164 (165) is the line of sight of the user U1 (user U2) immediately before the start of the first action.
  • the gaze determination unit 18 determines that neither the gaze 164 of the user U1 nor the gaze 165 of the user U2 is directed at the robot 1, the gaze determination processing is not performed.
  • the gaze determination processing is performed on a person who is likely to be directed to the line of sight.
  • a series of processes related to the gaze determination process described in the first embodiment is performed.
  • the robot control unit 15 causes the depth sensor 42, as shown in FIG. Based on the measured distance information between the robot 1 and the user U1 and the gaze vector of the gaze 164, an area 167 where the user U1 can naturally follow the gaze of the robot 1 is estimated.
  • an area 168 where the user U2 can naturally follow the line of sight of the robot 1 is estimated.
  • the robot control unit 15 estimates a common area 169 where the estimated area 167 where the user U1 can follow the line of sight and an area 168 where the user U2 can follow the line of sight.
  • the common area 169 in which it is estimated that both the users U1 and U2 can follow the line of sight is shown by a dot pattern.
  • the virtual straight line L1 orthogonal to the line-of-sight vector of the line of sight 164 is estimated by the robot control unit 15, as shown in FIG.
  • a virtual straight line L2 orthogonal to the line-of-sight vector of the line of sight 165 is estimated.
  • a virtual straight line L3 that bisects an angle between the virtual straight line L1 and the virtual straight line L2 that intersect with each other is obtained.
  • the robot control unit 15 sets the motion vector from the position P (Tm) to the first target position Ptarget1 within the common area 169 where both the users U1 and U2 can follow the line of sight and on the virtual straight line L3.
  • the second target position Ptarget2 is set so that the angle formed by the motion vector from the position P (Tm) to the second target position Ptarget2 is maximized.
  • the robot control unit 15 generates a control signal of the first action of the robot 1 to reach the time Tn from the position P (Tm) to the second target position Ptarget2.
  • the second target position Ptarget2 is other than the gaze vector of the gaze of each of the plurality of gaze determination targets immediately before the start of the first action and an extension of the gaze vector. Is set to
  • K Assume that there are k (k is an integer of 3 or more) gaze determination target persons, and there are k virtual straight lines orthogonal to the line-of-sight vectors of each target person.
  • An angle bisector formed by two adjacent virtual straight lines can be drawn by k-1 lines.
  • k-2 bisectors at angles formed by adjacent bisectors can be drawn. By repeating this, one bisector is finally obtained, and this is a virtual straight line L3.
  • the robot 1 may perform the first action described in the second embodiment.
  • Embodiments of the present technology are not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present technology.
  • the present invention is not limited to this.
  • the user wears a head mounted display (HMD), and the robot 1 as a real object is displayed in a display image presented to the user by the HMD.
  • HMD head mounted display
  • the present technology can also be applied when a virtual intermediate object exists between the user wearing the robot and the robot 1.
  • the HMD examples include a see-through HMD, a video see-through HMD, and a retinal projection HMD.
  • the display image control unit of the HMD can display an image in which the image of the virtual object is superimposed on the optical image of the real object located in the real space based on AR (Augmented Reality) technology. Is controlled.
  • control unit 10 of the robot 1 When applied to an HMD, the control unit 10 of the robot 1 is configured to be able to acquire information such as the position and shape of the intermediate object at the current time from the display image control unit of the HMD. However, the control unit 10 of the robot 1 cannot control the movement of the intermediate object. The movement of the virtual intermediate object in the display image presented by the HMD is controlled by the display image control unit of the HMD.
  • the control unit 10 of the robot 1 may be configured to be able to acquire the behavior information of the intermediate object at a time later than the current time, or may not be able to acquire the behavior information.
  • control unit 10 can acquire the action information of the intermediate object at a time later than the current time from the control unit of the HMD, the control signal of the first action of the robot 1 for the gaze determination is determined using the action information. Generated.
  • control unit 10 predicts the action after the current time from the action of the past intermediate object, as in the first embodiment.
  • a control signal of a first action for gaze determination is generated using the prediction result.
  • the line of sight of the user may be detected by a line of sight detecting unit mounted on the HMD. This will be described below.
  • the display image is displayed on the HMD, and the user looks at it with the left and right eyes.
  • the HMD is provided with an infrared LED, an infrared camera or a PSD (Position Sensitive Detector) sensor, and an image analyzer as a line-of-sight detection unit.
  • a PSD Position Sensitive Detector
  • the infrared LED irradiates infrared rays to the left and right eyes of the user.
  • An infrared camera or PSD sensor captures each of the user's left and right eyes and supplies the data to the image analysis device.
  • the image analysis device specifies the reflection position of the infrared light on the cornea and the position of the pupil from the captured images of the left and right eyes, and specifies the user's line of sight from the positional relationship.
  • the method of detecting the line of sight is not limited to this.
  • a general method such as a technique of photographing the left and right eyes with a visible light camera and identifying the line of sight from the positional relationship between the inner eye and the iris may be employed.
  • control unit 10 that performs a series of processes related to gaze determination is mounted on the robot 1.
  • the control unit 10 is on a cloud server or another device.
  • a cloud server or another device is the information processing device.
  • a part of the control unit 10 may be on the cloud server or another device, and the other may be on the robot 1.
  • the present technology can have the following configurations.
  • An information processing apparatus comprising: a moving object control unit that controls the moving object based on the user's line of sight information acquired after the relative positional relationship is changed.
  • the moving object control unit may be configured such that, after the relative positional relationship is changed, the moving object is located outside of the user's line of sight just before the relative positional relationship is changed. And an information processing device for controlling the moving object.
  • the moving object control unit is configured such that, after the relative positional relationship is changed, the moving object is located in a direction other than the visual line direction of each of the plurality of users immediately before the relative positional relationship is changed.
  • the moving object control unit controls the moving object such that the behavior of the moving object acting to change the relative positional relationship is not similar to the behavior of the intermediate object as viewed from the user. apparatus.
  • the moving object control unit executes an action that is different from the action of the moving object that was executed immediately before the relative positional relation is changed, and the relative positional relation is changed.
  • the moving object control unit moves the moving object in a moving direction different from the moving direction of the moving object that was executed immediately before the relative positional relationship was changed, and the relative positional relationship changed.
  • the moving object control unit moves the moving object in a direction different by 180 degrees from a moving direction of the moving object immediately before the relative positional relationship is changed, so that the relative positional relationship is changed.
  • an information processing device for controlling the moving object for controlling the moving object.
  • the moving object control unit controls the moving object so that the moving object moves at a speed at which the user can follow the line of sight of the moving object, and the relative positional relationship is changed. apparatus.
  • the information processing apparatus is the moving object including the moving mechanism and the moving object control unit.
  • the moving object includes an image acquisition unit that acquires image information of a surrounding environment, The information processing apparatus, wherein the moving object control unit controls the moving object based on the user's line of sight information acquired using the image information.
  • the information processing apparatus is an information processing device including a depth sensor.
  • Robots moving objects, information processing devices, autonomous robots
  • 3D sensing unit 13
  • Self position estimating unit 14
  • Environment map creating unit 15

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Optics & Photonics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Ophthalmology & Optometry (AREA)
  • Electromagnetism (AREA)
  • Manipulator (AREA)

Abstract

【課題】ユーザと移動オブジェクトとの間に中間オブジェクトが存在しても、ユーザが移動オブジェクトを注視しているか否かの適切な判別を可能とする情報処理装置、情報処理方法、及びプログラムを提供する。 【解決手段】情報処理装置は、移動オブジェクト制御部を具備する。上記移動オブジェクト制御部は、実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に中間オブジェクトが存在すると判定されると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御し、上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御する。

Description

情報処理装置、情報処理方法、及びプログラム
 本技術は、自律行動ロボット等の移動オブジェクトに係る情報処理装置、情報処理方法、及びプログラムに関する。
 特許文献1には、HMD(Head Mounted Display)を用いて、AR技術に基づき、実空間に位置する実オブジェクトの光学像に対して仮想オブジェクトの画像を重畳させることが記載されている。特許文献1には、HMDを装着するユーザの視線を能動的に誘導するように仮想オブジェクトを移動させることで、複数の仮想オブジェクトから、ユーザが操作対象として視線を向けていた仮想オブジェクトがどれであるかを特定し、ユーザとの間のインタラクションを好適にすることが記載されている。
国際公開第2017/187708号
 昨今、自律行動ロボット等の移動オブジェクトとユーザとの自然なコミュニケーションの実現が望まれている。この自然なコミュニケーションの実現のために、ユーザが移動オブジェクトを注視しているか否かを判定することが必要となる場合がある。
 なお、移動オブジェクトを制御する際、移動オブジェクトとユーザとの間に中間オブジェクトが存在する場合がある。この場合、ユーザは中間オブジェクトを注視しているにも関わらず、ユーザが移動オブジェクトを注視していると誤って判定される可能性がある。この誤判定は、移動オブジェクトにユーザの意図に反した行動を実行させる可能性がある。
 そこで、本開示では、ユーザと移動オブジェクトとの間に中間オブジェクトが存在しても、ユーザが移動オブジェクトを注視しているか否かの適切な判別を可能とする情報処理装置、情報処理方法、及びプログラムを提供する。
 本技術の一形態に係る情報処理装置は、移動オブジェクト制御部を具備する。
 上記移動オブジェクト制御部は、実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に中間オブジェクトが存在すると判定されると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御し、上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御する。
 このような構成によれば、ユーザから見た移動オブジェクトと中間オブジェクトの相対的な位置関係が変更されるように移動オブジェクトが制御されるので、相対的な位置関係変更時のユーザの視線の変化がより検出されやすくなる。この結果、ユーザが移動オブジェクトを注視しているか否かの判定精度が向上する。従って、その判定結果に基づいて実行される移動オブジェクトの行動は状況に適した行動となり、ユーザと移動オブジェクトとの自然なコミュニケーションが可能となる。
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが、上記相対的な位置関係が変更される直前の上記ユーザの視線の視線方向上以外に位置するように、上記移動オブジェクトを制御してもよい。
 このような構成によれば、ユーザの視線の変化が検出しやすくなり、ユーザが移動オブジェクトを注視しているか否かの判定精度が向上する。
 例えば、移動オブジェクトが第1の行動として視線方向上に移動した場合、ユーザからみて移動オブジェクトの動きは手前側又は奥側に移動する動きとなる。この場合、移動オブジェクトを目で追うユーザの視線の変化の検出は難しい。従って、視線方向上以外に、移動オブジェクトを移動させることにより、移動オブジェクトを目で追うユーザの視線の変化が検出しやすくなる。
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが上記視線方向に直交する仮想直線上に位置するように、上記移動オブジェクトを制御してもよい。
 このような構成によれば、よりユーザの視線の変化が検出しやすくなり、注視しているか否かの判定精度が向上する。
 上記ユーザは複数存在し、上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが上記相対的な位置関係が変更される直前の複数の上記ユーザそれぞれの視線の視線方向上以外に位置するように、上記移動オブジェクトを制御してもよい。
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更されるように行動する上記移動オブジェクトの行動が、上記ユーザからみて上記中間オブジェクトの行動と類似しないように上記移動オブジェクトを制御してもよい。
 このような構成によれば、ユーザの視線の変化が検出しやすくなり、注視しているか否かの判定精度が向上する。
 上記移動オブジェクト制御部は、上記ユーザからみて上記中間オブジェクトの移動方向とは異なる方向に移動するように上記移動オブジェクトを制御してもよい。
 このように、中間オブジェクトの行動と類似しない行動として、中間オブジェクトの移動方向と異なる方向に移動する行動を移動オブジェクトに実行させてもよい。
 上記移動オブジェクト制御部は、移動する上記中間オブジェクトの過去の位置情報の経時変化を基に予測した上記中間オブジェクトの予測位置を用いて、上記移動オブジェクトを制御してもよい。
 このような構成によれば、中間オブジェクトが移動オブジェクトであっても、中間オブジェクトの行動を予測することにより、ユーザの視線の変化が検出しやすい行動を移動オブジェクトに実行させることができる。
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前に実行されていた上記移動オブジェクトの行動と異なる行動を実行し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御してもよい。
 このような構成によれば、ユーザの視線の変化が検出しやすくなり、ユーザが移動オブジェクトを注視しているか否かの判定精度が向上する。
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前に実行されていた上記移動オブジェクトの移動方向と異なる移動方向に移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御してもよい。
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前の上記移動オブジェクトの移動方向と180度異なる方向に移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御してもよい。
 このような構成によれば、ユーザの視線方向の推定精度が低いとき、ユーザの視線が移動オブジェクトの方を向いてはいないが、移動オブジェクトを見ている可能性があるとき、複数存在するユーザそれぞれの視線方向から仮想直線の推定が困難なとき、多数の移動オブジェクトが存在し、それらと異なる行動の推定が困難なとき等であっても、ユーザが視線追従しやすく、かつ、ユーザの視線の変化が検出しやすくなる。
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記ユーザが上記移動オブジェクトを視線追従可能な速さで移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御してもよい。
 このような構成によれば、ユーザは、自然な眼球運動により移動オブジェクトを目で追うことが可能となる。
 上記移動オブジェクトは上記移動機構を有する移動体であってもよい。
 上記移動オブジェクトは地上を移動可能に構成されてもよい。
 上記移動オブジェクトは飛行可能に構成されてもよい。
 上記情報処理装置は、上記移動機構と上記移動オブジェクト制御部を備える上記移動オブジェクトであってもよい。
 上記移動オブジェクトは、上記ユーザからの指示待ちを示すインジケータを備えても良い。
 このような構成によれば、ユーザに対して、インジケータにより移動オブジェクトを注視するように注意を促すことができる。
 上記移動オブジェクトは、周囲の環境の画像情報を取得する画像取得部を備え、上記移動オブジェクト制御部は、上記画像情報を用いて取得した上記ユーザの視線情報に基づいて上記移動オブジェクトを制御してもよい。
 上記画像取得部はデプスセンサを含んでも良い。
 これにより周囲の環境情報として、移動オブジェクトから各オブジェクトまでの距離情報を得ることができ、画像情報から、より高精度な人物検出、物体検出、顔検出、視線検出等を行うことができる。
 本技術の一形態に係る情報処理方法は、実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御し、上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御する。
 本技術の一形態に係るプログラムは、実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御するステップと、上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御するステップを含む処理を情報処理装置に実行させる。
 以上のように、本技術によれば、実空間にそれぞれ存在するユーザと移動オブジェクトとのより自然なコミュニケーションが可能となる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本技術の第1の実施形態に係る情報処理装置としての自律行動ロボットを使用する様子を説明する図である。 上記自律行動ロボットの構成を示すブロック図である。 上記自律行動ロボットにおける注視判定の一例を説明するフロー図である。 上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その1)である。 上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その2)である。 上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その3)である。 上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その4)である。 上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その5)である。 注視判定時の上記自律行動ロボットの第1の行動により到達する第2の目標位置の算出方法を説明するための図である。 注視判定時の上記自律行動ロボットの第1の行動により到達する第2の目標位置への到達時間の算出方法を説明するための図である。 周囲に移動オブジェクトが存在する場合の上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その1)である。 周囲に移動オブジェクトが存在する場合の上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その2)である。 周囲に移動オブジェクトが存在する場合の上記自律行動ロボットによる注視判定のための第1の行動を説明するための図(その3)である。 周囲の移動オブジェクトの動きの判定を説明するための図である。 上記自律行動ロボットのハードウェア構成の一例を示した図である。 第2の実施形態における自律行動ロボットによる注視判定のための第1の行動を説明するための図である。 第3の実施形態における自律行動ロボットによる注視判定のための第1の行動を説明するための図(その1)である。 第3の実施形態における自律行動ロボットによる注視判定のための第1の行動を説明するための図(その2)である。 第3の実施形態における自律行動ロボットによる注視判定のための第1の行動を説明するための図(その3)である。 第3の実施形態における自律行動ロボットによる注視判定のための第1の行動を説明するための図(その4)である。
<第1の実施形態>
 (概略構成)
 まず、図1を参照して本技術の一実施形態に係る情報処理装置について説明する。図1は、情報処理装置としての自律行動ロボットを使用する様子を説明する図である。
 図1に示すように、例えば実空間である居間60に、ユーザU1~U3と、情報処理装置としての自律行動ロボット1が存在する。居間60には、ユーザがあまり移動させない静止オブジェクトであるソファ61、テーブル62、及びテレビ63が配置されている。
 移動オブジェクトとしての移動体である自律行動ロボット1(以下、単にロボットと称する。)は、例えば、人間のパートナーとして生活を支援する、人間とのコミュニケーションを重視したロボットであり、実空間に存在する移動オブジェクトである。
 ロボット1は、ユーザがロボット1を注視しているか否かを判定し、この注視判定結果に基づいて、ユーザに対して適切な行動を行うように構成される。
 例えばユーザがロボット1を注視していると判定されると、ロボット1は、自身を注視しているユーザに対して何等かの行動を実行することができ、ユーザとの自然なコミュニケーションが可能となる。
 一方、ユーザがロボット1を注視していないと判定されると、ロボット1は、例えば、注視判定直前に実行されていた行動を続けるという行動を実行する。これにより、ロボット1に注意を向けていないユーザに対して不自然な行動を実行することが抑制される。また、ユーザがロボット1を注視していないと判定されたが、ロボット1がユーザに対して何らかの行動を実行する場合、ユーザに対して注意を喚起する行動を実行した後に、何等かの行動を実行することができ、ユーザとの自然なコミュニケーションが可能となる。
 ここでは、移動オブジェクトとして、地上を自律走行可能に構成される球型の形態の自律行動型ロボットを例にあげるが、これに限定されない。地上や空中を移動可能な移動機構を備えた移動オブジェクトであってもよく、例えばイヌやネコといった動物に模したペット型ロボットやヒト型ロボットでもよいし、空中を飛行可能に構成された飛行型ロボットでもよい。
 (ロボットの構成)
 図2は、本実施形態のロボット1の構成を示すブロック図である。
 図2に示すように、情報処理装置としてのロボット1は、制御部10と、入出力部40と、環境マップデータベース30と、行動データベース31と、データ記憶部32と、記憶部33と、移動機構34と、を有する。
 移動機構34は、後述する制御部10のロボット制御部15による制御の下で、移動オブジェクトであるロボット1を実空間内で移動させる移動手段である。
 移動機構34には、脚式移動機構、車輪移動機構、無限軌道型移動機構、プロペラ移動機構等がある。脚式移動機構、車輪移動機構、無限軌道型移動機構を備えるロボットは、地上を移動可能である。プロペラ移動機構を備えるロボットは空中を飛行して移動可能である。
 移動機構は、ロボットを移動させる移動部と、当該移動部を駆動する駆動手段を有する。
 脚式移動機構は、例えばヒト型ロボット、ペット型ロボットなどに用いられる。脚式移動機構は、移動部としての脚部と、当該脚部を駆動する駆動手段としてのアクチュエータを有する。
 例えばイヌ型ペット型ロボットは、典型的には、頭部ユニットと、胴体部ユニットと、脚部ユニット(4脚分)と、尻尾部ユニットとを備える。アクチュエータは、脚部ユニット(4脚分)の関節部、脚部ユニットのそれぞれと胴体部ユニットとの連結部、頭部ユニットと胴体部ユニットとの連結部、尻尾部ユニットと胴体部ユニットとの連結部に設けられる。各アクチュエータを駆動制御することによりロボットの移動が制御される。
 車輪移動機構は、移動部としての車輪と、当該車輪を駆動する駆動手段としてのモータを有する。ロボット1の本体に取り付けられた車輪の回転駆動によりロボット1の本体を接地面上で移動させる。本実施形態では、車輪移動機構を備えたロボット1を例にあげて説明する。
 無限軌道型移動機構は、移動部としての無限軌道と、当該無限軌道を駆動する駆動手段としてのモータを有する。ロボット1の本体に取り付けられた無限軌道の回転駆動によりロボット1の本体を接地面上で移動させる。
 プロペラ移動機構は、ロボットを移動させる移動部としてのプロペラと、当該プロペラを駆動する駆動手段としてのエンジンやバッテリーを有する。
 ロボット1では、入出力部40を構成する各種センサにより取得された周囲の環境情報を基に、ロボット1の第1の行動が制御される。第1の行動は、注視判定処理のための行動である。第1の行動は、ユーザからみたロボット1と中間オブジェクトの相対的な位置関係が変更されるように制御される。中間オブジェクトとは、実空間に存在するユーザとロボット1との間に存在するオブジェクトである。
 そして、相対的な位置関係が変更された後に取得されるユーザの視線情報に基づいて、ロボット1が第2の行動を実行するように制御される。具体的には、ユーザの視線情報に基づいて算出されるロボット1の第1の行動実行時のユーザの視線の変化からユーザがロボット1を注視しているか否かの注視判定処理が行われる。その注視判定の結果に基づき、ロボット1が第2の行動を実行するように制御される。
 入出力部40は、入力部を構成するカメラ(撮像装置)41、デプスセンサ42、マイク43、及びタッチセンサ44と、出力部を構成するスピーカ45及びLED(Light Emitting Diode)インジケータ46とを有する。なお、カメラ41として、RGBカメラ、モノクロカメラ、赤外線カメラ、偏光カメラ、イベントベースカメラ(Event-based camera)など、様々な撮像装置が採用されてよい。なお、イベントベースカメラは、画像間に輝度などの変化が生じた場合にのみ画像を出力するカメラである。
 画像取得部としてのカメラ41は、周囲の実空間を撮影するカメラである。カメラ41は、イメージセンサの種類に応じて、RGB画像、モノクロ画像、赤外画像、偏光画像、差分画像などを取得する。撮影の結果として得られる画像情報は制御部10に供給される。カメラ41は、1つだけでもよく、複数でもよい。カメラ41は、例えばロボット1の頂部に搭載される。
 画像取得部としてのデプスセンサ42は、デプスセンサ42からオブジェクトまでの距離情報を取得する。取得された3次元距離画像情報は制御部10に供給される。デプスセンサ42は、例えばロボット1の頂部に搭載される。
 オブジェクトには、ユーザ等の人物の他、人物以外のオブジェクトが含まれる。人物は移動可能な移動オブジェクトである。
 人物以外のオブジェクトには、ユーザがあまり移動させないで実空間に固定されるソファ61、テーブル62、テレビ63といった静止オブジェクトの他、人物以外の移動オブジェクトが含まれる。
 人物以外の移動オブジェクトの例としては、イヌ、ネコ等の動物、掃除ロボット、ユーザによって移動が容易なペットボトルやコップといった典型的には小型のオブジェクトが含まれる。
 デプスセンサ42としては公知のものを使用することができる。例えば、赤外線等を照射し、照射した赤外線の反射光が戻るまでの時間から対象のオブジェクトまでの距離を測定する方法、赤外線等でパターンを照射し、対象のオブジェクトに映ったパターンの歪みから対象のオブジェクトまでの距離を測定する方法、またはステレオカメラにて撮像した画像をマッチングし、画像同士の視差から対象のオブジェクトまでの距離を測定する方法などを用いることができる。
 マイク43は、周囲の音声を集音する。集音された音声情報は制御部10に供給される。
 タッチセンサ44は、ユーザのロボット1への接触を感知する。感知された接触情報は制御部10に供給される。
 スピーカ45は、制御部10から受信したロボット制御信号である音声信号を出力する。
 インジケータとしてのLEDインジケータ46では、制御部10から受信したロボット制御信号である発光信号に基づいてLEDの点灯が制御される。LEDインジケータ46では、LEDの点滅の組み合わせや点灯のタイミングによりロボットの感情等を形成し、また、ロボット1の状況をユーザUに対して報知する。
 例えば、ロボット1は、ユーザUに対して何等かの行動を実行しているときは、LEDインジケータ46の一部を光らせることで、ユーザに視線を向けているように見せることができる。
 また、点灯する色を変えることによって喜怒哀楽等の感情をユーザに対して提示することができる。
 また、ロボット1は、ユーザからの指示を待っている間はLEDインジケータ46を点滅させることで、指示待ちであることをユーザに知らせることができる。
 LEDインジケータ46は、球状のロボット1の全面に設けられていてもよいし、部分的に設けられていてもよい。本実施形態では、図1に示すように、ロボット1は、その表面に部分的に、2つのLEDインジケータ46を備えている。
 ロボット1は、出力部として、LCD(Liquid Crystal Display)等の画像を表示するディスプレイを備えてもよい。これにより、所望の画像表示を介して、ユーザにロボットの感情や状況等の情報をユーザに提示することができる。
 制御部10は、注視判定に係る一連の処理を制御する。
 制御部10は、3次元センシング部11と、音声情報取得部12と、自己位置推定部13と、環境マップ作成部14と、移動オブジェクト制御部としてのロボット制御部15と、オブジェクト検出部16と、顔及び視線検出部17と、視線判定部18と、中間オブジェクトの有無判定部19と、注視判定部20と、オブジェクト位置予測部21と、を含んでもよい。
 3次元センシング部11は、カメラ41により取得された画像情報と、デプスセンサ42により取得された3次元距離画像情報とを統合し、周囲の環境の3次元形状を構築する。
 周囲の環境の3次元形状は、レーザによる3次元スキャナにより3次元座標を点群として出力し、構築してもよい。
 音声情報取得部12は、マイク43により集音された音声情報を取得する。
 自己位置推定部13は、後述するデータ記憶部32に記憶されているオブジェクトの外観の特徴点と、3次元センシング部11で構築された3次元形状から抽出したオブジェクトの特徴点の3次元座標とを照合することで、カメラ41及びデプスセンサ42が搭載されているロボット1の自己位置を推定する。すなわち、自己位置推定部13は、居間60に存在する自分自身(ロボット1)が部屋のどの位置に存在するかを推定する。
 また、カメラ及びデプスセンサに加えて、IMU(Inertial Measurement Unit )やGPS(Global Positioning System)等のカメラ以外のセンサを設け、これらのセンサ情報を統合して、更に高精度の自己位置推定を行ってもよい。
 オブジェクト検出部16は、3次元センシング部11で構築された3次元形状から、人物領域と、人物以外のオブジェクト領域を検出する。
 人物領域を検出する手法としては、画像情報を用いて、HOG(Histograms of Oriented Gradients)特徴量とSVM(Support Vector machine)で認識する手法、畳み込みニューラルネットワークを用いた認識手法等を用いることができる。
 また、画像情報に加え、3次元距離画像情報を用いて人物検出することにより、更に高精度な検出をすることができる。
 人物以外のオブジェクト領域を検出する手法としては、3次元形状から未知のオブジェクトを検出し、検出したオブジェクトを、形状情報を用いて分類し、オブジェクトを認識してもよい。
 また、検出対象のオブジェクト形状を既知のものとして、形状特徴量に基づく物体認識技術を用いて分類してもよく、より高精度なオブジェクトの検出を行うことができる。
 環境マップ作成部14は、3次元センシング部11で構築された3次元形状、自己位置推定部13で推定されたロボット1の推定位置、及び、オブジェクト検出部16で検出された人物領域及び人物以外のオブジェクト領域に基づいて、実空間内に存在するロボット1の位置、各オブジェクトの位置等を表現する環境マップを作成する。
 環境マップ作成部14は、ある一定の時間毎に、ロボット1、人物、人物以外のオブジェクトの位置を表現する環境マップを作成する。作成された環境マップは、時系列に環境マップデータベース30に蓄積される。
 ロボット1の自己位置推定と環境マップの作成は、Visual SLAM(Simultaneous Localization And Mapping)と呼ばれる技術を用いて同時に行うことができる。
 また、環境マップデータベース30には、正解データとしての環境マップが予め登録されていてもよい。
 この正解データの環境マップと、3次元センシング部11で構築された3次元形状とを参照することにより、ロボット1の自己位置を推定してもよい。
 また、例えば、移動オブジェクトが存在しない静止オブジェクトのみが存在する実空間が表現された環境マップが正解データとして環境マップデータベース30に予め登録され、この正解データの環境マップと3次元センシング部11で構築された3次元形状との背景差分から、人物領域及び人物以外の移動オブジェクト領域を検出してもよい。
 顔及び視線検出部17は、オブジェクト検出部16から出力された人物領域から顔領域を検出し、当該人物の顔の向き及び視線を検出する。
 顔領域の検出には、画像情報の画像特徴量(Facial Appearance)を用いた公知の方法を使用することができる。更に、画像情報に加え、3次元距離画像情報を用いて検出することにより、更に高精度な検出をすることができる。
 顔の向きの検出には公知の方法を使用することができる。例えば、鼻の向きや顎の向きを検出することにより顔の向きを検出することができる。
 視線の検出には、公知の方法を使用することができる。例えば、画像情報を用いて、目頭と黒目の中心との距離から人物の視線を検出することができる。
 また、赤外光を利用して視線の検出を行う角膜反射法を用いることもできる。角膜反射法では、赤外光が照射されてユーザの目の部分の画像が撮影され、撮影により得られた画像における、検出対象ユーザの眼球角膜上の赤外光の反射位置、すなわち赤外光の輝点と、検出対象のユーザの瞳孔との位置関係から視線方向を検出することができる。
 視線判定部18は、顔及び視線検出部17の検出結果に基づき、3次元形状から検出された人物がロボット1の方に顔を向けているか、人物の視線がロボット1の方に向けられているかを判定する。
 中間オブジェクトの有無判定部19は、環境マップを用いて、ロボット1を注視しているか否かを判定する注視判定対象となる人物(ユーザ)とロボット1との間に、オブジェクトが存在するか否かを判定する。
 中間オブジェクトは、注視判定対象となる人物とロボット1との間に位置するオブジェクトを指す。本実施形態では、中間オブジェクトが実空間に存在する実オブジェクトである例をあげる。中間オブジェクトは、人物であってもよいし、人物以外のオブジェクトであってもよい。また、中間オブジェクトは、静止オブジェクトであってもよいし、移動オブジェクトであってもよい。
 注視判定部20は、注視判定対象となる人物(以下、対象人物と称する場合がある。)がロボット1を注視しているか否かを判定する。
 ロボット1は、注視判定のために、後述するロボット制御部15による制御のもと第1の行動を実行する。注視判定部20により、ロボット1の第1の行動時、すなわち、第1の行動の開始時から終了時までの対象人物の視線の変化を基に、対象人物がロボット1を注視しているか否かが判定される。
 対象人物がロボット1を注視している場合、ユーザの眼球運動はロボット1の動きに追従する。
 本実施形態では、注視判定部20は、ロボット1の第1の行動の開始時から終了時までの対象人物の視線情報を、顔及び視線検出部17から時系列に取得し、これを基に、対象人物の視線の変化、すなわち視線軌跡を算出する。
 注視判定部20は、第1の行動の開始時から終了時までのロボット1の移動軌跡と、算出した対象人物の視線軌跡と、デプスセンサ42から取得した対象人物とロボット1との距離情報を基に、ロボット1の移動軌跡と対象人物の視線軌跡との相関性の有無を判定して、対象人物がロボット1を注視しているか否かを判定する。
 注視判定部20は、相関性有りと判定すると対象人物がロボット1を注視していると判定する。一方、注視判定部20は、相関性なしと判定すると対象人物はロボット1を注視していないと判定する。
 オブジェクト位置予測部21は、時系列に蓄積された環境マップを基に得られる人物を含む移動オブジェクトの過去の位置情報の経時変化から、現在時刻以降の時刻の各オブジェクトの位置を予測する。
 ロボット制御部15は、注視判定のためにロボット1が実行する第1の行動と、注視判定結果に基づいてロボット1が実行する第2の行動を制御する。ロボット制御部15により生成されるロボット1の行動に係る制御信号をロボット制御信号と称する。
 第1の行動は、対象人物がロボット1を注視しているか否かを判定するためにロボット1により実行される行動である。
 第2の行動は、ロボット1により、第1の行動実行後に取得される対象人物の視線情報を用いて算出される第1の行動実行時の対象人物の視線の変化を基に実行される。視線の変化の検出は、上述の注視判定部20により行われる。また、第2の行動は、ロボット1により、第1の行動実行後に取得される対象人物の視線情報に基づいて行われる。
 ロボット制御信号には、ロボット1の行動に係る移動機構34の制御信号と、ロボット1の感情や状況等の報知に係るLEDインジケータ46の発光信号と、ロボット1からの発音に係るスピーカ45に供給される音声信号等がある。
 ロボット制御部15は、中間オブジェクトの有無判定部19により中間オブジェクトなしと判定されると、後述する規定の処理によって、注視判定のための第1の行動のロボット制御信号を生成する。
 ロボット制御部15は、中間オブジェクトの有無判定部19により中間オブジェクト有りと判定されると、対象のユーザから見た移動オブジェクトとしてのロボット1と中間オブジェクトとの相対的な位置関係が変更されるように第1の行動のロボット制御信号を生成する。
 更に、中間オブジェクトが移動オブジェクトである場合は、ロボット制御部15は、オブジェクト位置予測部21により予測された中間オブジェクトの位置も加味して、第1の行動のロボット制御信号を生成する。
 例えば、図1に示す例では、ユーザU3は、ユーザU1とロボット1との間に、中間オブジェクトとして存在する。このような状況では、ユーザU1の顔の向きがロボット1の方を向いていたとしても、ユーザU1がロボット1とユーザU3のどちらを注視しているのか、或いは、どちらも注視していないのかを、ユーザU1の視線情報を基に判定することが難しい。
 そこで、ロボット1により、ユーザU1がロボット1を注視しているか否かを判定するため、ユーザU1からみたロボット1とユーザU3との相対的な位置関係が変更されるように第1の行動が実行される。
 そして、ロボット1の第1の行動によってユーザU3の視線がどのように変化するかを検出することによって、ユーザU1がロボット1を注視しているか否かが判定される。
 本実施形態では、ロボット1の第1の行動は、基本的には、第1の行動が実行される直前のロボット1の行動と異なる行動であって、第1の行動によりロボット1が到達する位置である第2の目標位置がユーザ(対象人物)の視線の視線方向上以外の位置であって、ロボット1を視線追従するユーザ(対象人物)の視線角度差分が30度/秒以内となる速さ、となるように制御される。
 尚、ここで、第1の行動が実行される直前は、ユーザからみたロボットと中間オブジェクトの相対的な位置関係が変更される直前を指す。また、第1の行動が第2の目標位置に到達するときは、第1の行動の実行直後であり、相対的な位置関係が変更された後を指す。
 更に、ロボット1の第1の行動は、ロボット1の周囲の人物も含むオブジェクトや壁に衝突しない範囲で制御され、オブジェクトができるだけ存在しない空間にむかって移動するように制御される。
 基本的な第1の行動の生成方法の詳細については、規定の第1の行動の生成方法として後述する。
 ここでは、ユーザ(対象人物)の視線方向上ではない位置として、ユーザの視線方向と直交する仮想直線上の位置を例にあげる。仮想直線(例えば、図7~図10において符号Lが付されている直線)は、ロボット1を通り、ロボット1の接地面に対し略平行であり、ロボット1に装着されるカメラ41やデプスセンサ42の装着位置付近の高さに設定される。カメラ41やデプスセンサ42は、ロボット1において「目」の役割を果たしており、仮想直線Lはロボット1の目線にあわせた高さに設定される。
 第1の行動が、直前のロボット1の行動と異なる行動となるように制御されることにより、ロボットの移動経路に対する対象人物の視線の変化を検出しやすくなる。また、直前の行動と異なる行動となるように制御されることにより、対象人物に対し、ロボット1に対しての注意を促して視線方向の動きを誘発することができる。これにより、注視判定処理の精度をより向上させることができる。
 本実施形態では、ロボット1は、第1の行動の直前の行動と異なる行動として、直前の行動における進行方向と異なる方向に移動する行動を実行する。
 直前の行動と異なる行動としては、ユーザからの注意がロボット1に向きやすい行動であることが好ましい。これにより、ロボット1が単にランダムに移動しているだけなのか、或いは、ユーザから指示を受けるために移動しているかを判別しやすくなる。
 第1の行動の直前の行動と異なる行動の他の例として、直前の行動ではLEDインジケータ46を点灯していなかったものを、第1の行動ではLEDインジケータ46を点灯するようにしてもよい。
 更に他の例として、直前の行動と異なる行動として、回転しながら移動してもよい。
 また、移動オブジェクトがイヌ型ペット型ロボットであれば、直前の行動と異なる行動として、尻尾を振りながら移動してもよい。
 また、第1の行動が、第1の行動を実行する直前の対象人物の視線方向と直交する方向への移動となるように制御されることにより、対象人物の視線の変化が大きくなる。
 例えば、対象人物の視線方向上、換言すると、対象人物の視線の視線ベクトル及び当該視線ベクトルの延長線上でロボット1が移動した場合、対象人物からみたロボット1の動きは手前側又は奥側に移動する動きとなる。この場合、ロボット1を目で追うユーザの視線はあまり変化せず、注視判定することが難しい。ここで、視線ベクトルとは、対象人物の目からロボット1に向かう有向線分であり、対象人物の視線情報である。
 従って、ユーザがロボット1を注視している場合、対象人物の視線ベクトルと直交する仮想直線上に第1の行動により到達する第2の目標位置を設定し、第2の目標位置に向かってロボット1を移動させることにより、対象人物の視線の変化が大きくなるので、視線の変化が検出しやすくなる。これにより、注視判定処理の精度をより向上させることができる。
 尚、第2の目標位置は必ずしも対象人物の視線方向と直交する仮想直線上でなくてもよく、視線方向上でないことが好ましい。
 このように、対象人物の視線方向上でない位置に第2の目標位置を設定することにより、対象人物の視線上にほぼ位置していた中間オブジェクトが対象人物の視線上からはずれることになるため、対象人物の視線が中間オブジェクトに向けられているか、或いは、ロボット1に向けられているかが検出しやすくなる。
 また、第1の行動が、対象人物の視線角度差分が30度/秒以内となる速さに制御されることにより、対象人物は、自然な眼球運動でロボット1の動きを目で追うことが可能となる。
 更に、対象人物とロボット1との間に中間オブジェクトが存在する場合には、中間オブジェクトが移動する、移動しないにかかわらず、対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるようにロボット1の第1の行動が制御される。
 また、中間オブジェクトが移動オブジェクトである場合は、ロボット1の第1の行動は、中間オブジェクトの行動と類似しないように制御されることが好ましい。これにより、注視判定の精度が向上する。
 ここでは、図1に示すように、対象人物であるユーザU1はソファ61に座って静止し、ロボット1は移動するという第1の行動を実行する例を挙げるが、対象人物が動いている場合は、対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるようにロボット1が静止するという第1の行動を実行するようにしてもよい。
 ロボット1の第2の行動は、注視判定結果及び周囲の状況に基づいて、行動データベース31を用いて、対象人物に対してロボット1により実行される行動である。周囲の状況には、対象人物の行動情報や状態情報が含まれ、これら情報は対象人物の視線情報等から取得できる。
 行動情報は、本を読んでいる、テレビを見ている、音楽を聞いているといった、行動に係る情報である。
 状態情報は、ユーザの嬉しそう、悲しそう、忙しそうといった状態に係る情報である。
 行動情報は、例えば、カメラ41から取得された画像情報から特徴点を抽出し、抽出した特徴点をトラッキングすることによって、人物がどのような行動をしているかを認識する(行動認識処理)ことにより、取得できる。
 状態情報は、例えば、カメラ41で取得した画像情報から目や眉の動きを解析する、又は、マイク43で取得した音声情報から声の調子を解析する、或いは、これら双方の解析結果を用いて、ユーザの嬉しそう、悲しそう、忙しそう等の状態を認識する(状態認識処理)ことにより、取得できる。また、マイク43で取得した音声情報からユーザの発話の内容が認識されてもよく、これによりユーザの状態が認識されてもよい。
 第2の行動の一例として、注視判定でユーザはロボット1を注視していると判定された場合、行動データベース31に基づいて、ロボット1はユーザに近づく、LEDインジケータ46を点灯して喜びを表現する、音楽を流す等の発音をする、といったユーザに対して何等かの行動を実行する。
 一方、注視判定でユーザはロボット1を注視していないと判定されたときは、第2の行動の一例として、ロボット1は、注視判定の直前の第1の目標位置に移動するという行動を実行する。或いは、周囲の状況に適した行動を実行するようにしてもよい。例えば、ロボット1が、メール着信などユーザに通知すべき情報を受信もしくは持っている場合、LEDインジケータ46の点灯による着信通知だけでなく、ユーザに近づき、スピーカ45から音を発生するなど、ユーザの注意を喚起する第2の行動を実行してもよい。
 尚、行動例はこれらに限定されない。
 環境マップデータベース30には、ソファ61、テーブル62、テレビ63といった室内で認識された人物以外のオブジェクトの位置や形状等の物体に関する情報、壁の位置などの空間情報、ユーザ等の人物に係る情報が表現された環境マップが時系列に蓄積される。
 環境マップデータベース30に時系列に蓄積された環境マップを基に、人物や人物以外の移動オブジェクトの位置変化を追跡することにより、人物や人物以外の移動オブジェクトの移動軌跡等の移動情報を得ることができる。
 行動データベース31には、ロボット1が、周囲がどのような状況のときにどのような行動を実行すべきかを規定した行動モデルと、その行動をロボット1に実行させるためのロボット1の移動機構34の動きを規定した行動毎のモーションファイルや、そのときロボット1が発音すべき音声の音声信号が格納されたサウンドファイル、LEDインジケータ46により提示する発光に係る発光信号が格納されたファイルなどの各種行動内容規定ファイルが登録されている。
 本実施形態においては、各データベースは、情報処理装置であるロボット1に構築されるが、クラウドサーバ上に構築されてもよい。
 データベースをクラウドサーバ上で構築する場合、入出力部40で取得される各種情報は、ユーザや家の場所等が特定できないようにプライバシーを排除した情報に変換されてクラウドサーバへ送信される。
 データ記憶部32には、自己位置推定、人物や物体の検出を行う際に使用するオブジェクトの外観の特徴点や特徴量等の情報が格納されている。
 記憶部33は、RAM等のメモリデバイス、及びハードディスクドライブ等の不揮発性の記録媒体を含み、次に説明する注視判定に係る一連の情報処理を、情報処理装置であるロボット1に実行させるためのプログラムを記憶する。
 (注視判定に係る情報処理方法)
 図3は、情報処理装置であるロボット1により行われる注視判定に係る情報処理方法のフロー図である。
 まず、注視判定処理がスタートすると、3次元センシング部11により、周囲の環境の3次元形状が構築される(S1)。
 次に、自己位置推定部13により、周囲の環境の3次元形状を用いてロボット1の位置が推定され(S2)、環境マップ作成部14により環境マップが作成される(S3)。
 次に、環境マップを基に、オブジェクト検出部16により、人物領域及び人物以外の物体領域が検出される。更に、検出された人物領域から顔及び視線検出部17により顔領域が検出され、当該人物の顔の向き及び視線が検出される(S4)。
 例えば図1に示す例では、人物領域としてユーザU1、U2、U3の領域が検出され、人物以外のオブジェクト領域としてソファ61、テレビ63、テーブル62、木馬66の領域が検出される。
 また、人物の顔の向き及び視線の検出は、抽出された人物U1~U3の人物領域全てで行われる。
 次に、視線判定部18により、顔及び視線検出部17による各人物の顔の向き及び視線の検出結果を基に、ロボット1の方に顔が向いている、又は、視線がロボット1に向かっている、すなわちロボット1を見ていると推定される人物がいるか否かが判定される(S5)。
 S5で人物がいないと判定されると(No)、S1に戻り、処理が繰り返される。
 S5で人物がいると判定されると(Yes)、S6に進む。図1に示す例では、検出されたユーザU1の視線から、ユーザU1がロボット1を見ていると推定され、ユーザU1が注視判定処理の対象の人物となる。
 S6では、中間オブジェクトの有無判定部19により、ロボット1を見ていると推定される人物(対象人物)とロボット1との間に中間オブジェクトが存在するか否かが判定される。
 S6で中間オブジェクトが存在しないと判定されると(No)、S8に進む。
 S6で中間オブジェクトが存在すると判定されると(Yes)、S7に進む。
 図1に示す例では、ロボット1とユーザU1との間に中間オブジェクトとして木馬66に乗ったユーザU3が存在する。
 S8では、ロボット制御部15により、ユーザがロボット1を注視しているか否かを判定するために実行する第1の行動に係るロボット制御信号が生成される。ロボット1は、当該ロボット制御信号に基づいて制御され、第1の行動を実行する。
 中間オブジェクトが存在しない場合においては、規定の第1の行動が実行されるようにロボット1は制御される。規定の第1の行動の生成方法については後述する。
 S7では、ロボット制御部15により、注視判定対象であるユーザがロボット1を注視しているか否かを判定するために実行する第1の行動に係るロボット制御信号が生成される。ロボット1は、当該ロボット制御信号に基づいて制御され、第1の行動を実行する。
 詳細には、S7では、中間オブジェクトが存在する場合においては、図1に示すように、ロボット制御部15により、対象人物であるユーザU1から見たロボット1と木馬66に乗るユーザU3との相対的な位置関係が変更されるように、ロボット1の第1の行動に係るロボット制御信号が生成される。中間オブジェクトが存在する場合の第1の行動の生成方法については後述する。
 次に、顔及び視線検出部17により、第1の行動の開始時から終了時までの間の対象人物(ここではユーザU1)の顔の向き及び視線が随時検出される。注視判定部20により、時系列の視線検出結果を基に第1の行動実行時の対象人物の視線の変化が算出され、注視判定対象である人物がロボット1を注視しているか否かが判定される(S9)。
 以上のように、注視判定が行われる。
 注視判定ステップ(S9)で対象人物はロボット1を注視していると判定されると、ロボット制御部15により、当該対象人物に対して何等かの行動を起こすよう第2の行動に係るロボット制御信号が生成され、当該ロボット制御信号に基づいてロボット1の第2の行動が制御される。
 一方、注視判定ステップ(S9)で注視判定対象である人物はロボット1を注視していないと判定されると、ロボット制御部15により、注視判定処理の直前の行動の第1の目標位置に移動するという第2の行動を実行するようにロボット1は制御される。
 (注視判定のための規定の第1の行動の生成方法の一例)
 次に、図4~図10を用いて、上述した注視判定処理のS8で制御されるロボット1の規定の第1の行動の生成方法の一例について説明する。
 図4~図10は、第1の行動を生成する方法を説明する図である。図4~図8は実空間である居間60を上から見た模式図となっている。図中、丸はユーザUを表し、四角はソファ61、テーブル62、テレビ63といった固定された人物以外の静止オブジェクト等の障害物を表し、三角はロボット1を表す。
 図4は、ロボット1が、時刻Tkに位置P(Tk)に位置し、第1の目標位置Ptarget1に向かって移動している様子を示す。
 次に、図5に示すように、ロボット1が第1の目標位置Ptarget1へ移動している途中、時刻Tm(Tk<Tm)に、位置P(Tm)で、顔及び視線検出部17により視線64が検出される。この視線64は、第1の行動開始直前におけるユーザU1の視線である。
 視線判定部18により、ユーザU1の視線64がロボット1に向けられていると判定されると、ロボット制御部15により、図6に示すように、デプスセンサ42で測定されたロボット1とユーザU1との距離情報及び視線64の視線ベクトル(視線情報)を基に、ユーザU1が自然にロボット1を視線追従できる領域67が推定される。
 図6では、視線追従できる領域67をドットパターンで示している。領域67は、ロボット1を視線追従する対象人物の視線角度差分が30度/秒以内となる速さの範囲となるように設定される。
 次に、ロボット制御部15により、図7に示すように、視線64の視線ベクトルに対して直交する方向に延在する仮想直線Lが算出される。
 次に、ロボット制御部15により、図8に示すように、視線追従できる領域67であり、仮想直線L上であり、第1の行動の移動方向が、第1の行動の直前の移動方向である位置P(Tm)から第1の目標位置Ptarget1へ向かう移動方向と異なるように、第2の目標位置Ptarget2が設定される。
 次に、ロボット制御部15により、位置P(Tm)から第2の目標位置Ptarget2に時刻Tnに到達するというロボット1の第1の行動のロボット制御信号が生成される。第2の目標位置Ptarget2と、ロボット1の時刻Tnの位置となる位置P(Tn)とは同じである。
 ロボット1は、生成された第1の行動のロボット制御信号に従って、時刻Tnに第2の目標位置Ptarget2に到達するように移動する。ロボット制御部15は、視線判定部18により検出されたロボット1が位置P(Tm)から出発して第2の目標位置Ptarget2に到達するまでの間の対象人物の視線情報を基に、第1の行動実行時のユーザの視線の変化を算出し、対象人物がロボット1を注視しているか否かを判定する。
 注視判定処理を行うための第1の行動を規定する第2の目標位置Ptarget2の算出方法について図9を用いて説明し、第2の目標位置Ptarget2への到達時刻の算出方法について図10を用いて説明する。
 図において、時刻Tmにおけるロボット1の位置をP(Tm)とし、ロボット1のP(Tm)から第1の目標位置Ptarget1に向かう動きベクトルをM(Tm)とし、視線64の視線ベクトルをGz(Tm)とする。P(Tm)から第2の目標位置Ptarget2に向かうロボット1の動きベクトルをM´(Tm)とする。ロボット1が第2の目標位置Ptarget2に到達する時間をTn(Tn>Tm)とする。
 図9に示すように、視線追従できる領域67にあり、視線ベクトルGz(Tm)に直交する仮想直線L上にあり、M(Tm)とM´(Tm)とのなす角が最大となる位置を、第2の目標位置Ptarget2として算出する。
 図10において、ユーザU1から第2の目標位置Ptarget2を見た視線の予測される視線ベクトルGz(Tn)と、ユーザU1から位置P(Tm)を見た視線の視線ベクトルGz(Tm)とのなす角をθとする。
 図10に示すように、P(Tm)から第2の目標位置Ptarget2に向かうロボット1の速度ベクトルδP(Tn)は、
Figure JPOXMLDOC01-appb-M000001

と表せる。
 P(Tm)から第2の目標位置Ptarget2に向かうロボット1の視線ベクトルの角速度δθ(Tn)は、
Figure JPOXMLDOC01-appb-M000002

と表せる。
 人間の眼球運動の追従性を考慮し、
Figure JPOXMLDOC01-appb-M000003

を満たすように、Tnを求めることにより、ロボット1の第2の目標位置Ptarget2への到達時刻を算出することができる。
 尚、ロボット1が、算出した現在位置P(Tm)から第2の目標位置Ptarget2までの移動経路を時刻Tmから時刻Tnの間に移動する際、オブジェクトや壁に衝突すると予測される場合は、視線追従できる領域67であって、第1の行動時にオブジェクトや壁に衝突しない範囲で、第1の行動の移動方向が、直前の移動方向と異なるように第2の目標位置Ptarget2が設定される。
(中間オブジェクトが存在する場合の注視判定のための第1の行動の生成方法の一例)
 対象人物とロボット1との間に中間オブジェクトが存在する場合には、第1の行動が実行される直前のロボット1の行動と異なる行動であって、第1の行動時にロボット1がオブジェクトや壁に衝突しない範囲で、ロボット1を視線追従可能な領域67内で対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるように、第1の行動を規定する第2の目標位置及び第2の目標位置への到達時刻が設定される。中間オブジェクトは、移動する、移動しないにかかわらない。
 具体的には、対象人物が静止し、中間オブジェクトが静止オブジェクトである場合では、対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるようにするために、第1の行動は、上記の規定の第1の行動となるように制御される。
 対象人物が静止し、中間オブジェクトが移動する場合では、対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるように、次のように第1の行動を規定する第2の目標位置Ptarget2は設定される。
 すなわち、オブジェクト位置予測部21により、時系列に蓄積された環境マップを基に得られる中間オブジェクトの過去の時系列の位置情報を基に、現在時刻Tmより後の時刻Tnでの中間オブジェクトの位置が予測される。
 そして、ロボット制御部15により、時刻Tnでの中間オブジェクトの予測位置を基に、時刻Tnでの対象人物から見た中間オブジェクトとロボット1との相対的な位置関係が、現在時刻Tmでの対象人物から見た中間オブジェクトとロボット1との相対的な位置関係と異なるように、ロボット1の時刻Tnでの第2の目標位置Ptarget2が設定される。
 ここで、第2の目標位置Ptarget2を、対象人物の視線64の視線方向と直交する仮想直線L上に設定できる場合は、仮想直線L上に設定する。
 対象人物と中間オブジェクトのいずれもが移動する場合では、対象人物から見たロボット1と中間オブジェクトの相対的な位置関係が変更されるように、次のように第1の行動を規定する第2の目標位置Ptarget2は設定される。
 すなわち、オブジェクト位置予測部21により、時系列に蓄積された環境マップを基に得られる対象人物の過去の時系列の位置情報から、現在時刻Tmより後の時刻Tnでの対象人物の位置が予測される。そして、時刻Tnでの中間オブジェクトの予測位置、対象人物の時刻Tnでの予測位置を加味して、第2の目標位置Ptarget2が設定される。
 また、中間オブジェクトが移動オブジェクトである場合は、ロボット1の第1の行動は、中間オブジェクトの行動と類似しないように制御されることが好ましい。このように、移動オブジェクトの第1の行動を、中間オブジェクトの行動と類似しない行動となるように制御することにより、対象人物の注視判定をより精度よく行うことができる。
 図1に示す例では、中間オブジェクトである木馬66に乗ったユーザU3は前後に繰り返し揺れる移動オブジェクトであり、オブジェクト位置予測部21により、現在時刻Tmより後の時刻Tnでの中間オブジェクトの位置は前後に揺れる行動によって決定される位置になると予測される。この予測結果を基に、ロボット1の第1の行動は、木馬66に乗ったユーザU3の前後に揺れる行動と類似しないように、直線に移動するように制御される。
 以下に、ロボット1の周囲に存在する移動オブジェクトの行動と類似しない第1の行動の生成方法について説明する。ロボット1の周囲に存在する移動オブジェクトには対象人物以外のオブジェクトが含まれ、中間オブジェクトも含まれる。
 (周囲の移動オブジェクトの行動と類似しない第1の行動の生成方法の一例)
 図11~図14を用いて、ロボット1の周囲に存在する移動オブジェクトの行動と類似しない第1の行動の生成方法の一例について説明する。
 図11~図14は、第1の行動を生成する方法を説明する図であり、図11~図13は実空間である居間60を上から見た模式図となっている。図14は、周囲の移動オブジェクトの行動と類似しない第1の行動を規定する第2の目標位置の算出方法を説明する図である。
 図上、丸はユーザUを表し、四角は静止オブジェクトを表し、三角はロボット1を表し、六角形は周囲の移動オブジェクトを表す。ここでは、注視判定対象の人物以外の周囲の移動オブジェクトとして掃除ロボット65を例にあげて説明する。
 図11に示すように、オブジェクト位置予測部21により、時系列に蓄積された環境マップを基に、掃除ロボット65の過去の動きが取得される。図11~図13上、黒点及び破線の矢印は、掃除ロボット65の過去の動きを示す速度ベクトル75を示す。
 次に、図12に示すように、オブジェクト位置予測部21により、時系列に蓄積された環境マップを基に、現在時刻よりも後の時刻での掃除ロボット65の動きが予測される。図上、点線は、予測された掃除ロボット65の予測速度ベクトル69を示す。尚、ロボット1は、自身の速度ベクトル68を制御情報として持っているとする。
 次に、図13に示すように、ロボット制御部15により、デプスセンサ42で計測されたロボット1とユーザU1との位置関係情報、ユーザU1と掃除ロボット65との位置関係情報を基に、ユーザU1のロボット1に向けられる仮の視線ベクトル70と、ユーザU1の掃除ロボット65に向けられる仮の視線ベクトル(以下、仮視線ベクトルと称す。)71が算出される。
 図14上、点線で図示された六角形は、現在時刻Tkにおける掃除ロボット65であり、このときの仮視線ベクトルには符号71が付されている。実線で図示された六角形は、現在時刻より後の時刻Tk+1における掃除ロボット65´であり、このときの仮視線ベクトルには符号71´が付されている。
 図14上、点線で図示された三角形は、現在時刻Tkにおけるロボット1であり、このときの仮視線ベクトルには符号70が付されている。実線で図示された三角形は、現在時刻より後の時刻Tk+1におけるロボット1´であり、このときの仮視線ベクトルには符号70´が付されている。実線で図示された三角形の位置は、ロボット1の第1の行動を規定する第2の目標位置Ptarget2となる。
 図14に示すように、ロボット1の速度ベクトル68、掃除ロボット65の予測速度ベクトル69、仮視線ベクトル70、仮視線ベクトル71を基に、現在時刻Tkから時刻Tk+1の間での、仮視線ベクトル70から仮視線ベクトル70´への時系列変化と、仮視線ベクトル71から仮視線ベクトル71´への時系列変化との相似性を計算し、閾値よりも低い相似性となるように、第1の行動のロボット制御信号が生成される。
 具体的には、ロボット1において、時刻Tk+1における仮視線ベクトル70´を算出し、この仮視線ベクトル70´と時刻Tkにおける仮視線ベクトル70とのなす角θrを算出する。同様に、掃除ロボット65において、時刻Tk+1における仮視線ベクトル71´を算出し、この仮視線ベクトル71´と時刻Tkにおける仮視線ベクトル71とのなす角θaを算出する。
 θrとθaとの差が、ユーザの視線推定精度により決まる閾値、例えば角度分解能より低い場合は、相似性が低く、ロボット1と掃除ロボット65の行動が類似していないと判定することができる。
 従って、ロボット1の周囲に移動オブジェクトが存在する場合は、θrとθaとの差が閾値より高くなるように、第1の行動に係るロボット制御信号が生成される。これにより、第1の行動が周囲の移動オブジェクトの行動と類似しない行動となるので、注視判定対象の人物の視線の変化をより顕著に検出することが可能となる。これにより、対象人物がロボット1を注視しているか否かの判定精度が向上する。
 一方、θrとθaとのを差が、視線推定精度により決まる閾値、例えば角度分解能以下である場合は、相似性が高く、ロボット1と掃除ロボット65の行動が類似していると判定することができる。この場合、ユーザU1の視線の変化に基づくユーザU1の注視判定が難しいと考えられる。
 このように、ロボット1の周囲の移動オブジェクトである掃除ロボット65の行動と類似しない第1の行動となるように、まず、掃除ロボット(周囲の移動オブジェクト)65の過去の移動情報から算出された掃除ロボット65の時刻Tkから時刻Tk+1の間の予測移動軌跡を基に、ユーザが掃除ロボット65を注視していると想定したときのユーザの視線の仮視線ベクトルの移動角度(θa)が算出される。
 次に、ユーザがロボット1を注視していると想定したときのユーザの視線の仮視線ベクトルの移動角度(θr)とθaとの差が閾値より高くなるように、時刻Tkにおけるロボット1の位置及び時刻Tkでの仮視線ベクトルを基に、第2の目標位置Ptarget2が設定される。
 これにより、移動オブジェクトは、ユーザからみて中間オブジェクトの移動方向とは異なる方向に移動するように制御され、中間オブジェクトと類似しない行動を実行する。
 (ハードウェア構成)
 上述した注視判定に係る一連の処理を、ハードウェアで実現するかソフトウェアで実現するかは問わない。一連の処理又はその一部をソフトウェアで実行させる場合には、ソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれたコンピュータ、又は例えば図15に示した汎用コンピュータなどを用いて実行される。
 図15において、CPU(Central Processing Unit)51は、汎用コンピュータの動作全般を制御する。ROM(Read Only Memory)53には、一連の処理の一部又は全部を記述したプログラム又はデータが格納される。RAM(Random Access Memory)52には、処理の実行時にCPU51により用いられるプログラムやデータなどが一時的に記憶される。
 CPU51、RAM52、ROM53は、バス57を介して相互に接続される。バス57には更に、インターフェース54、ドライブ55、記憶部56が接続される。
 インターフェース54は、例えばカメラ、デプスセンサ、マイク、タッチセンサ、スピーカ、又はLEDインジケータ等の入出力部40との間でデータ入出力を行う。また、インターフェース54は、移動機構34との間でデータの入出力を行う。
 ドライブ55は、必要に応じて汎用コンピュータに設けられ、リムーバブルメディアを駆動する。リムーバブルメディアは、コンピュータによって実行可能な状態とされるプログラムを記録する記録媒体であり、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等である。
 記憶部56は、例えばハードディスクからなり、プログラムやデータを記憶する。
 一連の処理を実行する場合には、例えば図15に示したROM53、記憶部56、又はドライブ55に装着されたリムーバブルディアに格納されたプログラムが、実行時にRAM52に読み込まれ、CPU51によって実行される。
 以上のように、本実施形態においては、注視判定対象の人物とロボット1との間に中間オブジェクトが存在していても、注視判定に適した移動経路となるようにロボット1の位置が制御されるので、精度のよい注視判定処理を行うことができる。これにより、注視判定結果に基づいて、ロボット1はユーザに対してより適切な行動を実行することができ、自然なコミュニケーションが可能となる。
<第2の実施形態>
 第1の実施形態では、注視判定のための第1の行動のロボット制御信号生成において、第2の目標位置がユーザの視線ベクトルと直交する仮想直線L上に設定する例をあげたが、これに限定されない。
 以下、具体的な例を、図16を用いて説明し、上述と同様の構成については同様の符号を付し、説明を省略する場合がある。図16は、実空間である居間60を上から見た模式図となっている。
 本実施形態のように、第1の行動が実行される直前の行動と異なる行動で、ロボット1を視線追従するユーザの視線角度差分が30度/秒以内となる速さという条件を満たす領域67であって、第1の行動実行直前の動きベクトルと180度異なる反対方向のベクトル上であって、第1の行動が実行される直前にロボット1が存在する位置から最も離れた位置に第2の目標位置Ptarget2が設定されて、第1の行動が制御されてもよい。
 図16に示すように、本実施形態では、現在時刻Tmでの動きベクトルM(Tm)を180度回転した動きベクトルM´(Tm)上であって、ユーザが自然に視線追従できる領域67内であって、現在位置から最も離れた位置に、第2の目標位置Ptarget2が設定される。すなわち、ロボット1の第1の行動の移動方向は、その直前に行われていた行動の移動方向と180度反対に変化させたものとなる。
 本実施形態のこのような手法を用いることにより、ユーザの視線ベクトルの推定精度が低いとき、ユーザの視線ベクトルがロボット1の方を向いてはいないが、ロボット1を見ている可能性があるとき、複数存在するユーザそれぞれの視線ベクトルから仮想直線の推定が困難なとき、多数の移動オブジェクトが存在し、それらと異なる行動の推定が困難なとき等に、ユーザが視線追従しやすく、かつ、注視判定しやすくなる。従って、視線注視判定の精度を向上させることができる。
<第3の実施形態>
 上述の実施形態においては、注視判定対象の人物が一人の場合を例にあげて説明した。本実施形態では注視判定対象の人物が複数いる場合について、図17~図20を用いて説明する。尚、注視判定対象の人物が一人の場合に行われる処理と同様の処理については説明を省略する場合がある。また、上述と同様の構成については同様の符号を付し、説明を省略する場合がある。ここでは、ユーザが複数存在する場合の仮想直線の求め方を中心に説明する。
 図17~図20は、いずれも実空間である居間60を上から見た模式図となっている。居間60では、2人のユーザU1、U2がソファ61に座っている。ここでは、2人のユーザU1、U2が、注視判定対象の人物となる。
 図17は、ロボット1が、時刻Tkに位置P(Tk)に位置し、第1の目標位置Ptarget1に向かって移動している様子を示す。
 次に、図18に示すように、ロボット1の移動途中、ロボット1が時刻Tm(Tk<Tm)に位置P(Tm)に位置するときに、顔及び視線検出部17により、ユーザU1からの視線164とユーザU2からの視線165が検出される。視線164(165)は、第1の行動開始直前におけるユーザU1(ユーザU2)の視線である。
 視線判定部18により、ユーザU1の視線164及びユーザU2の視線165のいずれもがロボット1に向けられていないと判定されると、注視判定処理は行われない。
 視線判定部18により、ユーザU1の視線164、ユーザU2の視線165のいずれか一方のみがロボット1に向けられていると判定されると、視線を向けていると思われる人物を注視判定処理の対象人物として、第1の実施形態に記載の注視判定処理に係る一連の処理が行われる。
 視線判定部18により、ユーザU1の視線164及びユーザU2の視線165のいずれもがロボット1に向けられていると判定されると、ロボット制御部15により、図19に示すように、デプスセンサ42で測定されたロボット1とユーザU1との距離情報及び視線164の視線ベクトルを基に、ユーザU1が自然にロボット1を視線追従できる領域167が推定される。
 同様に、デプスセンサ42で測定されたロボット1とユーザU2との距離情報及び視線165の視線ベクトルを基に、ユーザU2が自然にロボット1を視線追従できる領域168が推定される。
 次に、ロボット制御部15により、推定されたユーザU1が視線追従できる領域167と、ユーザU2が視線追従できる領域168とが重なり合う共通領域169が推定される。図19では、ユーザU1及びU2の双方が視線追従できると推定される共通領域169をドットパターンで示している。
 次に、ロボット制御部15により、図20に示すように、視線164の視線ベクトルに対して直交する仮想直線L1が推定される。同様に、視線165の視線ベクトルに対して直交する仮想直線L2が推定される。
 次に、互いに交差する仮想直線L1と仮想直線L2とのなす角を二等分する仮想直線L3が求められる。
 次に、ロボット制御部15により、ユーザU1及びU2の双方が視線追従できる共通領域169内であり、仮想直線L3上であり、位置P(Tm)から第1の目標位置Ptarget1への動きベクトルと位置P(Tm)から第2の目標位置Ptarget2への動きベクトルとのなす角が最大となるように、第2の目標位置Ptarget2が設定される。
 次に、ロボット制御部15により、位置P(Tm)から第2の目標位置Ptarget2に時刻Tnに到達するというロボット1の第1の行動の制御信号が生成される。
 このように、注視判定対象人物が複数いる場合は、第2の目標位置Ptarget2は、第1の行動開始直前の複数の各注視判定対象物それぞれの視線の視線ベクトル及び当該視線ベクトルの延長線上以外に設定される。
 ここでは、注視判定対象人物が2人の場合について説明したが、注視判定対象人物が3人以上の場合、上述の仮想直線L3は次のように求めることができる。
 注視判定対象人物がk(kは3以上の整数)人存在し、各対象人物の視線ベクトルと直交する仮想直線がk本あるとする。隣り合う2本の仮想直線がなす角の二等分線はk-1本引くことができる。更に、このk-1本の二等分線について、隣り合う二等分線がなす角の二等分線はk-2本引くことができる。これをくり返すことにより最終的に1本の二等分線が求められ、これが仮想直線L3となる。
 尚、複数存在するユーザそれぞれの視線ベクトルから仮想直線の推定が困難なときは、第2の実施形態で説明した第1の行動をロボット1に実行させればよい。
<その他の実施形態>
 本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、上述の実施形態においては、中間オブジェクトが実空間に存在する例をあげたが、これに限定されない。
 一例として、ユーザが頭部装着型の表示装置(HMD:Head Mounted Display)を装着し、HMDによりユーザに対して提示される表示画像中に、実オブジェクトであるロボット1が映し出され、更に、HMDを装着しているユーザとロボット1との間に仮想の中間オブジェクトが存在する場合にも本技術を適用することができる。
 HMDの一例としては、例えば、シースルー型HMD、ビデオシースルー型HMD、及び網膜投射型HMDが挙げられる。これらのHMDでは、HMDの表示画像制御部により、AR(Augmented Reality:拡張現実)技術に基づき、実空間に位置する実オブジェクトの光学像に対して仮想オブジェクトの画像が重畳された画像が表示可能に制御される。
 HMDに適用される場合、ロボット1の制御部10は、HMDの表示画像制御部から、中間オブジェクトの現在時刻での位置、形状等の情報を取得可能に構成される。しかし、ロボット1の制御部10は、中間オブジェクトの動きの制御を行うことはできない。HMDにより提示される表示画像中の仮想の中間オブジェクトの動きはHMDの表示画像制御部によって制御される。
 尚、ロボット1の制御部10は、中間オブジェクトの現在時刻より後の時刻の行動情報を取得できるように構成してもよいし、取得できないように構成してもよい。
 制御部10により、HMDの制御部から現在時刻より後の時刻の中間オブジェクトの行動情報を取得できる場合、この行動情報を用いて、注視判定のためのロボット1の第1の行動の制御信号が生成される。
 現在時刻より後の時刻の中間オブジェクトの行動情報を取得可能できない場合、第1の実施形態と同様に、制御部10により、過去の中間オブジェクトの行動から現在時刻より後の行動が予測され、この予測結果を用いて注視判定のための第1の行動の制御信号が生成される。
 ユーザがHMDを装着する場合、ユーザの視線は、HMDに搭載される視線検出部により検出されてもよい。以下説明する。
 HMDには表示画像が表示され、ユーザは左右の目でそれを見ている。HMDには、視線検出部として、赤外線LED、赤外線カメラ又はPSD(Position Sensitive Detector)センサ、及び画像解析装置が設けられる。
 赤外線LEDはユーザの左右の目それぞれに赤外線を照射する。赤外線カメラまたはPSDセンサはユーザの左右の目それぞれを撮影し、そのデータを画像解析装置に供給する。画像解析装置は、左右の目の撮影画像から、赤外線の角膜における反射位置と瞳孔の位置とを特定し、その位置関係からユーザの視線を特定する。
 尚、視線を検出する手法はこれに限らず、例えば可視光カメラで左右の目を撮影し、そのうち目頭と虹彩の位置関係から視線を特定する技術など一般的な手法を採用してもよい。
 また、上述の実施形態においては、注視判定に係る一連の処理を行う制御部10がロボット1に搭載されている例をあげたが、制御部10がクラウドサーバ上や他の機器にあってもよく、この場合、クラウドサーバや他の機器が情報処理装置となる。また、制御部10の一部がクラウドサーバ上や他の機器にあり、他がロボット1にあっても良い。
 なお、本技術は以下のような構成もとることができる。
 (1)
 実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に中間オブジェクトが存在すると判定されると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御し、上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御する移動オブジェクト制御部
 を具備する情報処理装置。
 (2)
  上記(1)に記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが、上記相対的な位置関係が変更される直前の上記ユーザの視線の視線方向上以外に位置するように、上記移動オブジェクトを制御する
 情報処理装置。
 (3)
 上記(1)又は(2)に記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが上記視線方向に直交する仮想直線上に位置するように、上記移動オブジェクトを制御する
 情報処理装置。
 (4)
 上記(1)から(3)のいずれか1つに記載の情報処理装置であって、
 上記ユーザは複数存在し、
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更された後に、上記移動オブジェクトが上記相対的な位置関係が変更される直前の複数の上記ユーザそれぞれの視線の視線方向上以外に位置するように、上記移動オブジェクトを制御する
 情報処理装置。
 (5)
 上記(1)から(4)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記相対的な位置関係が変更されるように行動する上記移動オブジェクトの行動が、上記ユーザからみて上記中間オブジェクトの行動と類似しないように上記移動オブジェクトを制御する
 情報処理装置。
 (6)
 上記(1)から(5)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記ユーザからみて上記中間オブジェクトの移動方向とは異なる方向に移動するように上記移動オブジェクトを制御する
 情報処理装置。
 (7)
 上記(1)から(6)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、移動する上記中間オブジェクトの過去の位置情報の経時変化を基に予測した上記中間オブジェクトの予測位置を用いて、上記移動オブジェクトを制御する
 情報処理装置。
 (8)
 上記(1)から(7)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前に実行されていた上記移動オブジェクトの行動と異なる行動を実行し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御する
 情報処理装置。
 (9)
 上記(1)から(8)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前に実行されていた上記移動オブジェクトの移動方向と異なる移動方向に移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御する
 情報処理装置。
 (10)
 上記(1)から(9)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記相対的な位置関係が変更される直前の上記移動オブジェクトの移動方向と180度異なる方向に移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御する
 情報処理装置。
 (11)
 上記(1)から(10)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクト制御部は、上記移動オブジェクトが、上記ユーザが上記移動オブジェクトを視線追従可能な速さで移動し、上記相対的な位置関係が変更されるように、上記移動オブジェクトを制御する
 情報処理装置。
 (12)
 上記(1)から(11)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクトは上記移動機構を有する移動体である
 情報処理装置。
 (13)
 上記(12)に記載の情報処理装置であって、
 上記移動体は地上を移動可能に構成される
 情報処理装置。
 (14)
 上記(12)に記載の情報処理装置であって、
 上記移動体は飛行可能に構成される
 情報処理装置。
 (15)
 上記(1)から(14)のいずれか1つに記載の情報処理装置であって、
 上記情報処理装置は、上記移動機構と上記移動オブジェクト制御部を備える上記移動オブジェクトである
 情報処理装置。
 (16)
 上記(1)から(15)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクトは、上記ユーザからの指示待ちを示すインジケータを備える
 情報処理装置。
 (17)
 上記(1)から(16)のいずれか1つに記載の情報処理装置であって、
 上記移動オブジェクトは、周囲の環境の画像情報を取得する画像取得部を備え、
 上記移動オブジェクト制御部は、上記画像情報を用いて取得した上記ユーザの視線情報に基づいて上記移動オブジェクトを制御する
 情報処理装置。
 (18)
 上記(17)に記載の情報処理装置であって、
 上記画像取得部はデプスセンサを含む
 情報処理装置。
 (19)
 実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御し、
 上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御する
 情報処理方法。
 (20)
 実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、上記ユーザから見た上記移動オブジェクトと上記中間オブジェクトの相対的な位置関係が変更されるように上記移動オブジェクトを制御するステップと、
 上記相対的な位置関係が変更された後に取得される上記ユーザの視線情報に基づいて、上記移動オブジェクトを制御するステップ
 を含む処理を情報処理装置に実行させるためのプログラム。
 1…ロボット(移動オブジェクト、情報処理装置、自律行動ロボット)
 11…3次元センシング部
 13…自己位置推定部
 14…環境マップ作成部
 15…ロボット制御部(移動オブジェクト制御部)
 16…オブジェクト検出部
 17…顔及び視線検出部(視線検出部)
 18…視線判定部
 20…注視判定部
 34…移動機構
 41…カメラ(画像取得部)
 42…デプスセンサ(画像取得部、デプスセンサ)
 46…LEDインジケータ(インジケータ)
 60…居間(実空間)
 64、164,165…ユーザの視線
 66…木馬(中間オブジェクト)
 L、L1、L2、L3…仮想直線
 U1…ユーザ
 U3…ユーザ(中間オブジェクト)

Claims (20)

  1.  実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に中間オブジェクトが存在すると判定されると、前記ユーザから見た前記移動オブジェクトと前記中間オブジェクトの相対的な位置関係が変更されるように前記移動オブジェクトを制御し、前記相対的な位置関係が変更された後に取得される前記ユーザの視線情報に基づいて、前記移動オブジェクトを制御する移動オブジェクト制御部
     を具備する情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記相対的な位置関係が変更された後に、前記移動オブジェクトが、前記相対的な位置関係が変更される直前の前記ユーザの視線方向上以外に位置するように、前記移動オブジェクトを制御する
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記相対的な位置関係が変更された後に、前記移動オブジェクトが前記視線方向に直交する仮想直線上に位置するように、前記移動オブジェクトを制御する
     情報処理装置。
  4.  請求項2に記載の情報処理装置であって、
     前記ユーザは複数存在し、
     前記移動オブジェクト制御部は、前記相対的な位置関係が変更された後に、前記移動オブジェクトが前記相対的な位置関係が変更される直前の複数の前記ユーザそれぞれの視線の視線方向上以外に位置するように、前記移動オブジェクトを制御する
     情報処理装置。
  5.  請求項2に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記相対的な位置関係が変更されるように行動する前記移動オブジェクトの行動が、前記ユーザからみて前記中間オブジェクトの行動と類似しないように前記移動オブジェクトを制御する
     情報処理装置。
  6.  請求項5に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記ユーザからみて前記中間オブジェクトの移動方向とは異なる方向に移動するように前記移動オブジェクトを制御する
     情報処理装置。
  7.  請求項6に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、移動する前記中間オブジェクトの過去の位置情報の経時変化を基に予測した前記中間オブジェクトの予測位置を用いて、前記移動オブジェクトを制御する
     情報処理装置。
  8.  請求項5に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記移動オブジェクトが、前記相対的な位置関係が変更される直前に実行されていた前記移動オブジェクトの行動と異なる行動を実行し、前記相対的な位置関係が変更されるように、前記移動オブジェクトを制御する
     情報処理装置。
  9.  請求項8に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記移動オブジェクトが、前記相対的な位置関係が変更される直前に実行されていた前記移動オブジェクトの移動方向と異なる移動方向に移動し、前記相対的な位置関係が変更されるように、前記移動オブジェクトを制御する
     情報処理装置。
  10.  請求項9に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記移動オブジェクトが、前記相対的な位置関係が変更される直
    前の前記移動オブジェクトの移動方向と180度異なる方向に移動し、前記相対的な位置関係が変更されるように、前記移動オブジェクトを制御する
     情報処理装置。
  11.  請求項8に記載の情報処理装置であって、
     前記移動オブジェクト制御部は、前記移動オブジェクトが、前記ユーザが前記移動オブジェクトを視線追従可能な速さで移動し、前記相対的な位置関係が変更されるように、前記移動オブジェクトを制御する
     情報処理装置。
  12.  請求項11に記載の情報処理装置であって、
     前記移動オブジェクトは前記移動機構を有する移動体である
     情報処理装置。
  13.  請求項12に記載の情報処理装置であって、
     前記移動体は地上を移動可能に構成される
     情報処理装置。
  14.  請求項12に記載の情報処理装置であって、
     前記移動体は飛行可能に構成される
     情報処理装置。
  15.  請求項13又は請求項14に記載の情報処理装置であって、
     前記情報処理装置は、前記移動機構と前記移動オブジェクト制御部を備える前記移動オブジェクトである
     情報処理装置。
  16.  請求項15に記載の情報処理装置であって、
     前記移動オブジェクトは、前記ユーザからの指示待ちを示すインジケータを備える
     情報処理装置。
  17.  請求項16に記載の情報処理装置であって、
     前記移動オブジェクトは、周囲の環境の画像情報を取得する画像取得部を備え、
     前記移動オブジェクト制御部は、前記画像情報を用いて取得した前記ユーザの視線情報に基づいて前記移動オブジェクトを制御する
     情報処理装置。
  18.  請求項17に記載の情報処理装置であって、
     前記画像取得部はデプスセンサを含む
     情報処理装置。
  19.  実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、前記ユーザから見た前記移動オブジェクトと前記中間オブジェクトの相対的な位置関係が変更されるように前記移動オブジェクトを制御し、
     前記相対的な位置関係が変更された後に取得される前記ユーザの視線情報に基づいて、前記移動オブジェクトを制御する
     情報処理方法。
  20.  実空間に存在するユーザと移動機構を有する移動オブジェクトとの間に、中間オブジェクトが存在すると判定すると、前記ユーザから見た前記移動オブジェクトと前記中間オブジェクトの相対的な位置関係が変更されるように前記移動オブジェクトを制御するステップと、
     前記相対的な位置関係が変更された後に取得される前記ユーザの視線情報に基づいて、前記移動オブジェクトを制御するステップ
     を含む処理を情報処理装置に実行させるためのプログラム。
PCT/JP2019/029614 2018-08-09 2019-07-29 情報処理装置、情報処理方法、及びプログラム WO2020031767A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/250,539 US20210294414A1 (en) 2018-08-09 2019-07-29 Information processing apparatus, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-149839 2018-08-09
JP2018149839 2018-08-09

Publications (1)

Publication Number Publication Date
WO2020031767A1 true WO2020031767A1 (ja) 2020-02-13

Family

ID=69415221

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/029614 WO2020031767A1 (ja) 2018-08-09 2019-07-29 情報処理装置、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US20210294414A1 (ja)
WO (1) WO2020031767A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021192410A1 (ja) * 2020-03-25 2021-09-30 株式会社Jvcケンウッド 音声出力制御装置、音声出力システム、音声出力制御方法およびプログラム
WO2023188004A1 (ja) * 2022-03-29 2023-10-05 株式会社ソニー・インタラクティブエンタテインメント コンピュータシステム、方法およびプログラム
JP7424156B2 (ja) 2020-03-25 2024-01-30 株式会社Jvcケンウッド コンテンツ出力制御装置、コンテンツ出力システム、コンテンツ出力制御方法およびプログラム
JP7443877B2 (ja) 2020-03-25 2024-03-06 株式会社Jvcケンウッド 音声出力制御装置、音声出力システム、音声出力制御方法およびプログラム
JP7447602B2 (ja) 2020-03-25 2024-03-12 株式会社Jvcケンウッド コンテンツ出力制御装置、コンテンツ出力システム、コンテンツ出力制御方法およびプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3882730B1 (en) * 2019-01-22 2023-04-19 Honda Motor Co., Ltd. Accompanying mobile body
WO2020217727A1 (ja) * 2019-04-22 2020-10-29 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US11501794B1 (en) * 2020-05-15 2022-11-15 Amazon Technologies, Inc. Multimodal sentiment detection
JP2022108136A (ja) * 2021-01-12 2022-07-25 本田技研工業株式会社 作業機

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008254122A (ja) * 2007-04-05 2008-10-23 Honda Motor Co Ltd ロボット
JP2010015194A (ja) * 2008-06-30 2010-01-21 Ihi Corp 自律移動ロボット装置及び自律移動ロボット装置の制御方法
JP2014149603A (ja) * 2013-01-31 2014-08-21 Toyota Motor Corp 移動体

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9744665B1 (en) * 2016-01-27 2017-08-29 X Development Llc Optimization of observer robot locations

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008254122A (ja) * 2007-04-05 2008-10-23 Honda Motor Co Ltd ロボット
JP2010015194A (ja) * 2008-06-30 2010-01-21 Ihi Corp 自律移動ロボット装置及び自律移動ロボット装置の制御方法
JP2014149603A (ja) * 2013-01-31 2014-08-21 Toyota Motor Corp 移動体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021192410A1 (ja) * 2020-03-25 2021-09-30 株式会社Jvcケンウッド 音声出力制御装置、音声出力システム、音声出力制御方法およびプログラム
JP7424156B2 (ja) 2020-03-25 2024-01-30 株式会社Jvcケンウッド コンテンツ出力制御装置、コンテンツ出力システム、コンテンツ出力制御方法およびプログラム
JP7443877B2 (ja) 2020-03-25 2024-03-06 株式会社Jvcケンウッド 音声出力制御装置、音声出力システム、音声出力制御方法およびプログラム
JP7447602B2 (ja) 2020-03-25 2024-03-12 株式会社Jvcケンウッド コンテンツ出力制御装置、コンテンツ出力システム、コンテンツ出力制御方法およびプログラム
WO2023188004A1 (ja) * 2022-03-29 2023-10-05 株式会社ソニー・インタラクティブエンタテインメント コンピュータシステム、方法およびプログラム

Also Published As

Publication number Publication date
US20210294414A1 (en) 2021-09-23

Similar Documents

Publication Publication Date Title
WO2020031767A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN111989537B (zh) 用于在无约束环境中检测人类视线和手势的系统和方法
US10362429B2 (en) Systems and methods for generating spatial sound information relevant to real-world environments
JP6572943B2 (ja) ロボット、ロボットの制御方法及びプログラム
US20230305530A1 (en) Information processing apparatus, information processing method and program
JP5318623B2 (ja) 遠隔操作装置および遠隔操作プログラム
JP7120254B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP6134895B2 (ja) ロボット制御システム、ロボット制御プログラムおよび説明ロボット
US20230005481A1 (en) Information processor, information processing method, and program
US20200110968A1 (en) Identification device, robot, identification method, and storage medium
US20200269421A1 (en) Information processing device, information processing method, and program
JP2024009862A (ja) 情報処理装置、情報処理方法、およびプログラム
KR20140009900A (ko) 로봇 제어 시스템 및 그 동작 방법
JP6902777B2 (ja) 行動誘導システム及び行動誘導方法
WO2021005878A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2020525956A (ja) コンピュータ媒介現実用の表示装置
US11485021B2 (en) Robot, robot control method, and recording medium
EP3738726B1 (en) Animal-shaped autonomous moving body, method of operating animal-shaped autonomous moving body, and program
Debnath et al. Detection and controlling of drivers' visual focus of attention
JP7480706B2 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2020166373A1 (ja) 情報処理装置および情報処理方法
US20230206622A1 (en) Information processing device, information processing method, and program
Beaumont ABC Wheelchair
JP2020204826A (ja) 学習装置、ロボットシステムおよび学習方法

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP