IP Library Granted Patent US 12710759
Granted Patent B2
US 12710759 · App. 19/212,068 · Granted Aug 18, 2026

Door opening detection for a mobile robot

Inventors: Brad Steiner (Boston, MA); Derek McColl (Melrose, MA)
Assignee: Piaggio Fast Forward Inc.
G05D1/24
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 12710759
App. No.
19/212,068
Granted
Aug 18, 2026
Kind
B2
Abstract

Methods are disclosed that allow a robot, equipped with sensors and processors, to develop maps of its surroundings as it moves through a human environment, and to use these maps to detect and identify open doors, which it can then move through. Robots are disclosed to develop and use such maps to detect and identify open doors and move therethrough.

Claims (47)

1 . A method of detecting an open doorway by a robot in a current spatial position and orientation, the robot configured with a set of processors coupled to a set of sensors and a system for locomotion, the method comprising:

determining by the set of processors, based on data from the set of sensors, the current spatial position and orientation of the robot;

generating by the set of processors, using the set of sensors, a current occupancy map of a current area surrounding the robot, wherein the current occupancy map includes a current set of obstacles and a set of unobstructed views;

analyzing by the set of processors the current occupancy map to identify a potential open doorway in a potential door location;

retrieving by the set of processors, from a memory unit of the set of processors, a prior occupancy map previously stored by the set of processors, wherein the prior occupancy map is directed to a prior area then surrounding the robot in its prior spatial position, and includes a prior set of obstacles and a prior set of unobstructed views;

analyzing by the set of processors the current occupancy map and the prior occupancy map to identify the potential door location in the prior occupancy map; and

analyzing by the set of processors the potential door location in the prior occupancy map to determine that an obstacle is present in the prior occupancy map at the potential door location, and, in response thereto, identifying the potential open doorway as an open doorway and the potential door location as a door location.

2 . The method of claim 1 , further comprising repeating, in each of a plurality of successive sensor frames, the processes of generating the current occupancy map, analyzing the current occupancy map, retrieving the prior occupancy map, analyzing the current occupancy map and the prior occupancy map, and analyzing the potential door location.

3 . The method of claim 2 , further comprising performing the repeating at a frame rate of at least one frame every ten seconds.

4 . The method of claim 3 , further comprising performing the repeating at a frame rate of at least 10 frames per second.

5 . The method of claim 3 , further comprising performing the repeating at a frame rate of to at least 60 frames per second.

6 . The method of claim 1 , wherein identifying the potential open doorway as an open doorway and the potential door location as a door location includes:

with respect to the current occupancy map, determining, by the set of processors, distances and angles from the current spatial position and orientation of the robot to the current set of obstacles and unobstructed views;

with respect to the prior occupancy map, determining, by the set of processors, distances and angles from the current spatial position and orientation of the robot to the prior set of obstacles and unobstructed regions, and

analyzing the distances and angles to the current set of obstacles and unobstructed views in relation to the distances and angles to the prior set of obstacles and unobstructed views in order to determine if the obstacle is present on the prior occupancy map at the potential door location.

7 . The method of claim 6 , wherein analyzing the distances and angles to the current set of obstacles and unobstructed views in relation to the distances and angles to the prior set of obstacles and unobstructed views includes using machine learning.

8 . The method of claim 6 , wherein determining the distances and angles from the current spatial position to the current set of obstacles and unobstructed views includes raycasting from the current spatial position on the current occupancy map, and

wherein determining the distances and angles from the current spatial position to the prior set of obstacles and unobstructed views includes raycasting from the current spatial position on the prior occupancy map.

9 . The method of claim 1 , further comprising cropping the prior occupancy map and the current occupancy map to reduce the area around the current spatial position of the robot.

10 . The method of claim 1 , further comprising denoising by the set of processors the current occupancy map before analyzing the current occupancy map and denoising by the set of processors the prior occupancy map before analyzing the prior occupancy map.

11 . The method of claim 10 , wherein denoising by the set of processors further includes using, by the set of processors, computer vision techniques selected from the group consisting of erosion, dilation, connected component analysis, and combinations thereof.

12 . The method of claim 1 , wherein analyzing by the set of processors the current occupancy map to identify a potential open doorway in a potential door location further includes determining if a gap between obstacles is between a minimum and a maximum width and determining if no obstacles are detected for a threshold distance extending outward from the potential door location in a direction away from the current spatial position.

13 . A robot comprising:

a system for locomotion;

a set of sensors;

a set of processors communicatively coupled to the system for locomotion and the set of sensors and configured to:

determine, based on data from the set of sensors, a current spatial position and orientation of the robot;

generate, using the set of sensors, a current occupancy map of a current area surrounding the robot, wherein the current occupancy map includes a current set of obstacles and a set of unobstructed views;

analyze the current occupancy map to identify a potential open doorway in a potential door location;

retrieve, from a memory unit of the set of processors, a prior occupancy map previously stored by the set of processors, wherein the prior occupancy map is directed to a prior area then surrounding the robot, and includes a prior set of obstacles and a prior set of unobstructed views;

analyze the current occupancy map and the prior occupancy map to identify the potential door location in the prior occupancy map;

analyze the potential door location in the prior occupancy map to determine if an obstacle is present in the prior occupancy map at the potential door location; and

identify, in response to determining that the obstacle is present in the prior occupancy map at the potential door location, the potential open doorway as an open doorway and the potential door location as a door location.

14 . The robot of claim 13 , wherein the set of processors is configured to repeatedly, in each of a plurality of successive frames, generate the current occupancy map, analyze the current occupancy map, retrieve the prior occupancy map, analyze the current occupancy map and the prior occupancy map, and analyze the potential door location.

15 . The robot of claim 14 , wherein a frame rate is at least one frame every ten seconds.

16 . The robot of claim 15 , wherein the frame rate is at least 10 frames per second.

17 . The robot of claim 15 , wherein the frame rate is at least 60 frames per second.

18 . The robot of claim 13 , wherein to identify the potential open doorway as an open doorway and the potential door location as a door location the set of processors is configured to:

with respect to the current occupancy map, determine distances and angles from the current spatial position and orientation of the robot to the current set of obstacles and unobstructed views;

with respect to the prior occupancy map, determine distances and angles from the current spatial position and orientation of the robot to the prior set of obstacles and unobstructed regions; and

analyze the distances and angles to the current set of obstacles and unobstructed views in relation to the distances and angles to the prior set of obstacles and unobstructed views in order to determine if the obstacle is present on the prior occupancy map at the potential door location.

19 . The robot of claim 18 , wherein the set of processors is configured to use machine learning to analyze the distances and angles to the current set of obstacles and unobstructed view in relation to the distances and angles to the prior set of obstacles and unobstructed views.

20 . The robot of claim 18 , wherein to determine the distances and angles from the current spatial position to the prior set of obstacles and unobstructed views the set of processors is configured to raycast from the current spatial position on the current occupancy map, and wherein to determine the distances and angles from the current spatial position to the prior obstacles and unobstructed views the set of processors is configured to raycast from the current spatial position on the prior occupancy map.

21 . The robot of claim 13 , wherein the set of processors is configured to crop the prior occupancy map and the current occupancy map to reduce an area around the current spatial position of the robot.

22 . The robot of claim 13 , wherein the set of processors is configured to denoise the current occupancy map before analyzing the current occupancy map and denoise the prior occupancy map before analyzing the prior occupancy map.

23 . The robot of claim 22 , wherein to denoise the current occupancy map and the prior occupancy map the set of processors is configured to use computer vision techniques selected from the group consisting of erosion, dilation, connected component analysis, and combinations thereof.

24 . The robot of claim 13 , wherein to analyze the current occupancy map to identify a potential open doorway in a potential door location the set of processors is configured to determine whether a gap between obstacles is between a minimum and a maximum width and determine whether any obstacles are detected for a threshold distance extending outward from the potential door location in a direction away from the current spatial position.