PHOTOMOSAIC FLOOR MAPPING
First Claim
1. A method for providing a floorplan from images captured by a floor- traversing robot, comprising:
- providing a camera mounted in the robot sufficiently high in a robot housing to provide an angled view downward at a floor;
capturing a series of images of the floor with the camera;
determining a location of the robot for each of the images;
tagging each of the series of images with a location of the robot at the time of image capture;
cropping each of the images to identify at least one segment in each of the images;
transforming the segment from a robot camera perspective view to a planar view;
populating the floorplan with each of the segments at the robot location in the planar view, with an offset corresponding to a difference between the robot position and the position of the segment on the floor;
displaying the floorplan to a user; and
accepting a user input on the floorplan for modifying an operating characteristic of the robot.
2 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method is disclosed for a robot (e.g., cleaning robot) to produce a bird'"'"'s eye view (planar) map by transforming from a robot camera view and stitching together images tagged by location. The planar map can then be presented on a user interface as a floorplan, showing the location of objects (such as rugs). A camera is mounted in the cleaning robot sufficiently high in the cleaning robot housing to provide an angled view downward at a floor. The camera'"'"'s field of view is captured as an image, and a portion or segment of that image is cropped. The cropped segment is transformed from the camera perspective to a planar view (before or after cropping), and is combined with other images to form a map of a floorplan.
11 Citations
16 Claims
-
1. A method for providing a floorplan from images captured by a floor- traversing robot, comprising:
-
providing a camera mounted in the robot sufficiently high in a robot housing to provide an angled view downward at a floor; capturing a series of images of the floor with the camera; determining a location of the robot for each of the images; tagging each of the series of images with a location of the robot at the time of image capture; cropping each of the images to identify at least one segment in each of the images; transforming the segment from a robot camera perspective view to a planar view; populating the floorplan with each of the segments at the robot location in the planar view, with an offset corresponding to a difference between the robot position and the position of the segment on the floor; displaying the floorplan to a user; and accepting a user input on the floorplan for modifying an operating characteristic of the robot. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for providing a floorplan from images captured by a floor- traversing robot, comprising:
-
providing a camera mounted in the robot sufficiently high in a robot housing to provide an angled view downward at a floor; capturing a series of images of the floor with the camera; providing a lens in front of the robot camera; applying a distortion algorithm to the series of images to correct for the image distortion due to the lens; determining a location of the robot for each of the images; tagging each of the series of images with a location of the robot at the time of image capture; detecting tilting of the robot beyond a first threshold; correcting the image pixel position or discarding the image; cropping each of the images to identify at least one segment in each of the images; capturing segments for an area that is the same size or larger than a minimum resolution of the floorplan; transforming the segment from a robot camera perspective view to a planar view; populating the floorplan with each of the segments at the robot location in the planar view by utilizing the known manufactured height of the camera off the floor and known downward angle of the camera to correlate an image pixel position with a planar floor position in the floorplan, with an offset corresponding to a difference between the robot position and the position of the segment on the floor; capturing overlapping segments; adjusting alignment adjustment by matching an overlapping portion of one segment with an overlapping portion of an adjacent segment; displaying the floorplan to a user; and accepting a user input on the floorplan for modifying an operating characteristic of the robot.
-
-
11. A system for providing a floorplan from images, comprising:
-
a floor-traversing robot; a robot housing of the floor-traversing robot; a motor mounted in the housing for moving the floor-traversing robot; a battery connected to provide electrical power to the motor; a camera mounted in the robot sufficiently high in the robot housing to provide an angled view downward at a floor; a processor mounted in the robot; a memory in the robot; a localization module in the robot; non-transitory, computer-readable code in the memory having instructions for capturing a series of images of the floor with the camera, determining a location of the robot for each of the images from data provided by the localization module, and tagging each of the series of images with a location of the robot at the time of image capture; non-transitory, computer-readable code having instructions for cropping each of the images to identify at least one segment in each of the images, transforming the segment from a robot camera perspective view to a planar view, populating the floorplan with each of the segments at the robot location in the planar view, with an offset corresponding to a difference between the robot position and the position of the segment on the floor, displaying the floorplan to a user, and accepting a user input on the floorplan for modifying an operating characteristic of the robot. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification