IP Library Granted Patent US 12,315,301
Granted Patent B2
US 12,315,301 · App. 18/417,414 · Granted May 27, 2025

Engagement detection and attention estimation for human-robot interaction

Inventors: Sean Kirmani (San Francisco, CA); Michael Quinlan (Sunnyvale, CA); Sarah Coe (San Francisco, CA)
Assignee: Google LLC
G06V40/23B25J9/163B25J9/1697G05B13/0265G06V10/40G06V20/10G06V40/103
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,315,301
App. No.
18/417,414
Granted
May 27, 2025
Kind
B2
Abstract

A method includes receiving, from a camera disposed on a robotic device, a two-dimensional (2D) image of a body of an actor and determining, for each respective keypoint of a first subset of a plurality of keypoints, 2D coordinates of the respective keypoint within the 2D image. The plurality of keypoints represent body locations. Each respective keypoint of the first subset is visible in the 2D image. The method also includes determining a second subset of the plurality of keypoints. Each respective keypoint of the second subset is not visible in the 2D image. The method further includes determining, by way of a machine learning model, an extent of engagement of the actor with the robotic device based on (i) the 2D coordinates of keypoints of the first subset and (ii) for each respective keypoint of the second subset, an indicator that the respective keypoint is not visible.

Claims (44)

1. A computer-implemented method comprising:

receiving, from a camera of a robotic device, (i) a first image of a body of an actor and (ii) a second image of the body of the actor that has been captured after the first image, wherein at least one of the first image or the second image visually indicates whether the actor is speaking;

receiving, from a microphone of the robotic device, audio data representing an utterance generated by the actor and associated with at least one of the first image or the second image;

determining (i) for each respective keypoint of a first subset of a plurality of keypoints, coordinates of the respective keypoint within the first image and (ii) for each respective keypoint of a second subset of the plurality of keypoints, coordinates of the respective keypoint within the second image, wherein the plurality of keypoints represent a corresponding plurality of predetermined body locations, and wherein at least one of the first subset of the plurality of keypoints or the second subset of the plurality of keypoints comprises a plurality of keypoints on a head of the actor that visually indicate whether the actor is speaking; and

determining, using a machine learning model, an extent of engagement of the actor with the robotic device based on (i) the coordinates of each respective keypoint of the first subset and the second subset and (ii) the audio data.

2. The computer-implemented method of claim 1 , wherein one or more keypoints of the plurality of keypoints on the head of the actor that indicate a direction in which a gaze of the actor is pointed while the actor generates the utterance.

3. The computer-implemented method of claim 1 , wherein each respective keypoint of the first subset is visible in the first image, and wherein the method further comprises:

determining a third subset of the plurality of keypoints, wherein each respective keypoint of the third subset is not visible in the first image, and wherein the machine learning model is configured to determine the extent of engagement of the actor with the robotic device further based on, for each respective keypoint of the third subset, an indication that the respective keypoint is not visible in the first image.

4. The computer-implemented method of claim 3 , wherein the indication that the respective keypoint of the third subset is not visible in the first image comprises one or more of (i) a binary variable set to a first value or (ii) coordinates of the respective keypoint set to a value outside of a coordinate range corresponding to an area of the first image, and wherein the indication that the respective keypoint of the first subset is visible in the first image comprises one or more of (i) the binary variable set to a second value or (ii) coordinates of the respective keypoint set to a value inside of the coordinate range corresponding to the area of the first image.

5. The computer-implemented method of claim 1 , wherein each respective keypoint of the first subset is visible in the first image, wherein each respective keypoint of the second subset is visible in the second image, and wherein the machine learning model is configured to determine the extent of engagement further based on (i), for each respective keypoint of the first subset, an indication that the respective keypoint is visible in the first image and (i), for each respective keypoint of the second subset, an indication that the respective keypoint is visible in the second image.

6. The computer-implemented method of claim 1 , wherein the machine learning model has been trained using a plurality of training images of a plurality of actors, wherein each respective training image of the plurality of training images is associated with a label indicating a corresponding extent of engagement, wherein each respective image has been captured by the camera or a second camera disposed on a second robotic device, and wherein the second camera approximates a perspective of the camera by being positioned on the second robotic device within at least one of (i) a threshold height relative to a height of the camera on the robotic device or (ii) a threshold angular displacement relative to an angular position of the camera on the robotic device.

7. The computer-implemented method of claim 1 , further comprising:

based on the extent of engagement of the actor with the robotic device, determining one or more operations to perform by the robotic device to interact with the actor; and

executing the one or more operations.

8. The computer-implemented method of claim 1 , further comprising:

based on the extent of engagement of the actor with the robotic device, determine at least one of (i) a start point of an interaction of the actor with the robotic device or (i) an end point of the interaction.

9. The computer-implemented method of claim 1 , wherein at least one of the first image or the second image also represents a second body of a second actor, and wherein the method further comprises:

determining, using the machine learning model, a second extent of engagement of the second actor with the robotic device;

comparing the extent of engagement of the second actor with the robotic device to the extent of engagement of the actor with the robotic device; and

determining, based on results of the comparing, a direction in which to orient the robotic device.

10. The computer-implemented method of claim 1 , wherein the extent of engagement of the actor with the robotic device is selected from a group comprising an engaged state, a borderline state, and a disengaged state.

11. The computer-implemented method of claim 10 , further comprising:

determining, based on the extent of engagement of the actor with the robotic device, a transition from a current state to a next state, wherein, when the current state is the borderline state, a probability of transition to the next state is conditioned on a prior state such that (i) when the prior state is the engaged state, the next state is biased towards being the disengaged state and (ii) when the prior state is the disengaged state, the next state is biased towards being the engaged state.

12. The computer-implemented method of claim 10 , further comprising:

when the extent of engagement of the actor with the robotic device comprises the borderline state, causing the robotic device to perform an operation indicating an intent to interact with the actor.

13. The computer-implemented method of claim 1 , wherein the corresponding plurality of predetermined body locations comprise one or more locations on limbs, one or more locations on a torso, and one or more locations on the head.

14. The computer-implemented method of claim 1 , wherein the first image represents a first subset of the body of the actor, and wherein the method further comprises:

based on the first image, adjusting a pose of the camera to capture a second subset of the body of the actor, wherein the second subset is greater than the first subset, and wherein the second image represents the second subset of the body of the actor.

15. The computer-implemented method of claim 1 , wherein the plurality of keypoints on the head of the actor comprise two or more of: an eye keypoint, a nose keypoint, a mouth keypoint, or an ear keypoint.

16. A system comprising:

a processor; and

a non-transitory computer readable medium having stored thereon instructions that, when executed by the processor, cause the processor to perform operations comprising:

receiving, from a camera of a robotic device, (i) a first image of a body of an actor and (ii) a second image of the body of the actor that has been captured after the first image, wherein at least one of the first image or the second image visually indicates whether the actor is speaking;

receiving, from a microphone of the robotic device, audio data representing an utterance generated by the actor and associated with at least one of the first image or the second image;

determining (i) for each respective keypoint of a first subset of a plurality of keypoints, coordinates of the respective keypoint within the first image and (ii) for each respective keypoint of a second subset of the plurality of keypoints, coordinates of the respective keypoint within the second image, wherein the plurality of keypoints represent a corresponding plurality of predetermined body locations, and wherein at least one of the first subset of the plurality of keypoints or the second subset of the plurality of keypoints comprises a plurality of keypoints on a head of the actor that visually indicate whether the actor is speaking; and

determining, using a machine learning model, an extent of engagement of the actor with the robotic device based on (i) the coordinates of each respective keypoint of the first subset and the second subset and (ii) the audio data.

17. The system of claim 16 , wherein the plurality of keypoints on the head of the actor comprise two or more of: an eye keypoint, a nose keypoint, a mouth keypoint, or an ear keypoint.

18. The system of claim 16 , wherein the machine learning model has been trained using a plurality of training images of a plurality of actors, wherein each respective training image of the plurality of training images is associated with a label indicating a corresponding extent of engagement, wherein each respective image has been captured by the camera or a second camera disposed on a second robotic device, and wherein the second camera approximates a perspective of the camera by being positioned on the second robotic device within at least one of (i) a threshold height relative to a height of the camera on the robotic device or (ii) a threshold angular displacement relative to an angular position of the camera on the robotic device.

19. A non-transitory computer readable medium having stored thereon instructions that, when executed by a computing device, cause the computing device to perform operations comprising:

receiving, from a camera of a robotic device, (i) a first image of a body of an actor and (ii) a second image of the body of the actor that has been captured after the first image, wherein at least one of the first image or the second image visually indicates whether the actor is speaking;

receiving, from a microphone of the robotic device, audio data representing an utterance generated by the actor and associated with at least one of the first image or the second image;

determining (i) for each respective keypoint of a first subset of a plurality of keypoints, coordinates of the respective keypoint within the first image and (ii) for each respective keypoint of a second subset of the plurality of keypoints, coordinates of the respective keypoint within the second image, wherein the plurality of keypoints represent a corresponding plurality of predetermined body locations, and wherein at least one of the first subset of the plurality of keypoints or the second subset of the plurality of keypoints comprises a plurality of keypoints on a head of the actor that visually indicate whether the actor is speaking; and

determining, using a machine learning model, an extent of engagement of the actor with the robotic device based on (i) the coordinates of each respective keypoint of the first subset and the second subset and (ii) the audio data.

20. The non-transitory computer readable medium of claim 19 , wherein the machine learning model has been trained using a plurality of training images of a plurality of actors, wherein each respective training image of the plurality of training images is associated with a label indicating a corresponding extent of engagement, wherein each respective image has been captured by the camera or a second camera disposed on a second robotic device, and wherein the second camera approximates a perspective of the camera by being positioned on the second robotic device within at least one of (i) a threshold height relative to a height of the camera on the robotic device or (ii) a threshold angular displacement relative to an angular position of the camera on the robotic device.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2025
From: GOOGLE LLC
To: GDM HOLDING LLC
Reel/Frame 071465/0754 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2024
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 068927/0386 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2024
From: KIRMANI, SEAN; QUINLAN, MICHAEL; COE, SARAH
To: X DEVELOPMENT LLC
Reel/Frame 066215/0663 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2024
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 066363/0881 →
Continuity (3)
Continuation 17815361 · Jul 27, 2022
Continuation 16707835 · Dec 9, 2019
Related Publication 20240153314A1 · May 9, 2024
References Cited (25)
US 20180225805A1 · Brandt · 2018 [cited by examiner]
Gaschler, A., Jentzsch, S., Giuliani, M., Huth, K., de Ruiter, J. and Knoll, A., Oct. 2012. Social behavior recognition using body posture and head pose for human-robot interaction. In 2012 IEEE/RSJ International Confer… [cited by examiner]
A 2019 guide to human pose estimation with deep learning, Sudharshan Chandra Babu, Apr. 19, 2019. [cited by examiner]
Reddy, N.D., Vo, M. and Narasimhan, S.G., 2019. Occlusion-net: 2d/3d occluded keypoint localization using graph networks. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 7326-73… [cited by examiner]
Ognjen (Oggi) Rudovic, Jaeryoung Lee, miles Dai, Bjorn Schuller and Rosalind W. Picard, Personalized Machine Learning For Robot Perception of Affect and Engagement in Autism Therapy, arXiv:1802.1186v1 [cs.OR] Feb. 4, 20… [cited by examiner]
Vaufreydaz, D., Johal, W. and Combe, C., 2016. Starting engagement detection towards a companion robot using multimodal features. Robotics and Autonomous Systems, 75, pp. 4-16. [cited by examiner]
Bi Ge, “Detecting Engagement Levels For Autism Intervention Therapy Using RGB-D Camera,” Georgia Institute of Technology Thesis, 2016, 49 Pages. [cited by applicant]
Di Nuovo et al., “Deep Learning Systems for Estimating Visual Attention in Robot-Assisted Therapy of Children with Autism and Intellectual Disability,” Robotics, 2018, 21 pages, vol. 7, No. 25. [cited by applicant]
Figueroa-Angulo et al. “Compound Hidden Markov Model for Activity Labelling,” International Journal of Intelligence Science, Published Oct. 2015, pp. 177-195. [cited by applicant]
Foster et al., “Automatically Classifying User Engagement for Dynamic Multi-party Human-Robot Interaction,” International Journal of Social Robotics, Published Jul. 20, 2017, 16 Pages. [cited by applicant]
Gaschler et al., “Social behavior recognition using body u posture and head pose for human-robot interaction,” In 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2012, pp. 2128-2133. [cited by applicant]
Hadfield et al., “A Deep Learning Approach for Multi-View Engagement Estimation of Children in a Child-Robot Joint Attention task,” arXiv, Published Dec. 1, 2018, 7 Pages. [cited by applicant]
Khamassi et al., “Robot fast adaptation to changes in human engagement during simulated dynamic social interaction with active exploration in parameterized reinforcement learning,” IEEE Transactions On Cognitive And Dev… [cited by applicant]
Khamassi et al., “A framework for robot learning during child-robot interaction with human engagement as reward signal,” Proceedings of the 27th IEEE International Symposium on Robot and Human Interactive Communication,… [cited by applicant]
Mehta et al., “Monocular 3D Human Pose Estimation In The Wild Using Improved CNN Supervision,” arXiv:1611.09813v5, Oct. 4, 2017, 16 Pages. [cited by applicant]
Mollaret et al.,“A Multi-modal Perception based Assistive Robotic System for the Elderly,” Computer Vision and Image Understanding, Published Mar. 2016, 42 Pages. [cited by applicant]
Noda et al., “Multimodal integration learning of robot behavior using deep neural networks,” Robotics and Autonomous Systems, 2014, pp. 721-736, vol. 62. [cited by applicant]
Panteleris et al., “Using a single RGB frame for real time 3D hand pose estimation in the wild,” arXiv:1712.03866v1, Published Dec. 11, 2017, 10 Pages. [cited by applicant]
Qureshi et al.,“Show, Attend and Interact: Perceivable Human-Robot Social Interaction through Neural Attention Q-Network,” arXiv:1702.08626v1, Published Feb. 28, 2017, 7 Pages. [cited by applicant]
Reddy et al., “Occlusion-net: 2d/3d occluded keypoint localization using graph networks,” In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019, pp. 7326-7335. [cited by applicant]
Rudovic et al., “Personalized machine learning for robot perception of affect and engagement in autism therapy,” Science Robotics, Published Jun. 27, 2018, 21 Pages, vol. 3. [cited by applicant]
Rudovic et al., “Personalized Machine Learning For Robot Perception of Affect and Engagement in Autism Therapy,” arXiv:1802.1186v1 [cs.OR] Feb. 4, 2018. [cited by applicant]
Rudovic et al.,“Measuring Engagement in Robot-Assisted Autism Therapy: A Cross-Cultural Study,” Frontiers in Robotics and AI, Published Jul. 2017, 17 Pages. [cited by applicant]
Sidner et al., “Explorations in engagement for humans and robots, Artificial Intelligence,” 2005, pp. 140-164, vol. 166. [cited by applicant]
Sudharshan Candra Babu, A 2019 guide to Human Pose Estimation with Deep Learning, Nanonets.com, Published Apr. 2019, 29 Pages, https://nanonets.com/blog/human-pose-estimation-2d-guide/. [cited by applicant]
Cited By (1)
US 12,658,188