Methods, systems and robots for processing omni-directional image data
First Claim
1. A method for processing omni-directional image data comprising:
- receiving omni-directional image data, wherein the omni-directional image data is representative of a panoramic field of view;
segmenting, by one or more processors, the omni-directional image data into a plurality of image slices, wherein each image slice of the plurality of image slices is representative of at least a portion of the panoramic field of view of the omni-directional image data;
calculating a slice descriptor for each image slice of the plurality of image slices;
generating a current sequence of slice descriptors, wherein the current sequence of slice descriptors includes the calculated slice descriptor for each image slice of the plurality of image slices;
accessing a reference sequence of slice descriptors in a data storage device;
determining whether the current sequence of slice descriptors matches the reference sequence of slice descriptors;
determining a difference between the current sequence of slice descriptors and the reference sequence of slice descriptors in response to the current sequence of slice descriptors not matching the reference sequence of slice descriptors; and
determining a current orientation based on the difference and a known orientation associated with the reference sequence,wherein determining whether the current sequence of slice descriptors matches the reference sequence of slice descriptors comprises determining whether an order of the reference sequence of slice descriptors matches an order of the current sequence of slice descriptors.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and robots for processing omni-directional image data are disclosed. A method includes receiving omni-directional image data representative of a panoramic field of view and segmenting, by one or more processors, the omni-directional image data into a plurality of image slices. Each image slice of the plurality of image slices is representative of at least a portion of the panoramic field of view of the omni-directional image data. The method further includes calculating a slice descriptor for each image slice of the plurality of image slices and generating a current sequence of slice descriptors. The current sequence of slice descriptors includes the calculated slice descriptor for each image slice of the plurality of image slices.
12 Citations
20 Claims
-
1. A method for processing omni-directional image data comprising:
-
receiving omni-directional image data, wherein the omni-directional image data is representative of a panoramic field of view; segmenting, by one or more processors, the omni-directional image data into a plurality of image slices, wherein each image slice of the plurality of image slices is representative of at least a portion of the panoramic field of view of the omni-directional image data; calculating a slice descriptor for each image slice of the plurality of image slices; generating a current sequence of slice descriptors, wherein the current sequence of slice descriptors includes the calculated slice descriptor for each image slice of the plurality of image slices; accessing a reference sequence of slice descriptors in a data storage device; determining whether the current sequence of slice descriptors matches the reference sequence of slice descriptors; determining a difference between the current sequence of slice descriptors and the reference sequence of slice descriptors in response to the current sequence of slice descriptors not matching the reference sequence of slice descriptors; and determining a current orientation based on the difference and a known orientation associated with the reference sequence, wherein determining whether the current sequence of slice descriptors matches the reference sequence of slice descriptors comprises determining whether an order of the reference sequence of slice descriptors matches an order of the current sequence of slice descriptors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An omni-directional image data processing system comprising:
-
one or more processors; a non-transitory memory component communicatively coupled to the one or more processors; a data storage device; and machine readable instructions stored in the non-transitory memory component that cause the omni-directional image data processing system to perform at least the following when executed by the one or more processors; receive omni-directional image data, wherein the omni-directional image data is representative of a panoramic field of view; segment the omni-directional image data into a plurality of image slices, wherein each image slice of the plurality of image slices is representative of at least a portion of the panoramic field of view of the omni-directional image data; calculate a slice descriptor for each image slice of the plurality of image slices; generate a current sequence of slice descriptors, wherein the current sequence of slice descriptors includes the calculated slice descriptor for each image slice of the plurality of image slices; access a reference sequence of slice descriptors in the data storage device; determine whether the current sequence of slice descriptors matches the reference sequence of slice descriptors; determine a difference between the current sequence of slice descriptors and the reference sequence of slice descriptors in response to the current sequence of slice descriptors not matching the reference sequence of slice descriptors; and determine a current orientation based on the difference and a known orientation associated with the reference sequence, wherein whether the current sequence of slice descriptors matches the reference sequence of slice descriptors is determined by determining whether an order of the reference sequence of slice descriptors matches an order of the current sequence of slice descriptors. - View Dependent Claims (15, 16, 18)
-
-
17. A robot comprising:
-
one or more processors; one or more image capture devices communicatively coupled to the one or more processors; a non-transitory memory component communicatively coupled to the one or more processors; a data storage device; and machine readable instructions stored in the non-transitory memory component that cause the robot to perform at least the following when executed by the one or more processors; receive omni-directional image data from the one or more image capture devices, wherein the omni-directional image data is representative of a panoramic field of view; segment the omni-directional image data into a plurality of image slices, wherein each image slice of the plurality of image slices is representative of at least a portion of the panoramic field of view of the omni-directional image data; calculate a slice descriptor for each image slice of the plurality of image slices; generate a current sequence of slice descriptors, wherein the current sequence of slice descriptors includes the calculated slice descriptor for each image slice of the plurality of image slices; access a reference sequence of slice descriptors in the data storage device; determine whether the current sequence of slice descriptors matches the reference sequence of slice descriptors; determine a difference between the current sequence of slice descriptors and the reference sequence of slice descriptors in response to the current sequence of slice descriptors not matching the reference sequence of slice descriptors; and determine a current orientation based on the difference and a known orientation associated with the reference sequence, wherein whether the current sequence of slice descriptors matches the reference sequence of slice descriptors is determined by determining whether an order of the reference sequence of slice descriptors matches an order of the current sequence of slice descriptors. - View Dependent Claims (19, 20)
-
Specification