Synchronization of image data from multiple three-dimensional cameras for image recognition
First Claim
1. A method comprising, during an active session:
- capturing, by a plurality of three-dimensional (3D) cameras in a top section of a checkout apparatus, 3D images of a region over a surface of a base in the checkout apparatus, the surface comprising a pattern, and wherein the checkout apparatus comprises a post section connecting the base to the top section in a spaced relationship, each 3D camera from the plurality of 3D cameras defining a camera coordinate system, each 3D image comprising pixel data having three coordinates in the camera coordinate system, wherein the 3D images comprise 3D pixel object data of an object on the surface and the pattern;
for each 3D camera, analyzing, by one or more processors, the 3D image to determine a location of the pattern relative to the respective 3D camera, wherein the pattern is indicates a common 3D coordinate system shared by the 3D cameras;
for each 3D camera, calibrating the respective 3D camera during the active session, comprising determining a coordinate transformation function to convert pixel data in the 3D image from the camera coordinate system of the 3D camera to the common 3D coordinate system shared by the 3D cameras, the coordinate transformation function being determined based on the identified location of the pattern in the respective 3D image and the common 3D coordinate system;
for the captured 3D images, transforming, by the one or more processors, the 3D pixel object data to the common 3D coordinate system, using the coordinate transformation function, to obtain transformed 3D pixel object data, wherein the transformed 3D pixel object data for the plurality of 3D cameras is defined for the same common 3D coordinate system;
combining, by the one or more processors, the transformed 3D pixel object data from the captured 3D images to obtain a composite 3D pixel object data for the object; and
performing, by the one or more processors, object recognition of the object on the surface based on an appearance of the object described in the composite 3D pixel object data.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer programs are presented for object recognition performed by electronic devices. One method includes an operation for capturing three-dimensional (3D) images of a region over a surface using 3D cameras, the surface having a pattern and each 3D camera defining a respective camera coordinate system. For each camera, the 3D image is analyzed to identify a location of the pattern indicating an origin of a common coordinate system, and a coordinate transformation function is defined to convert data to the common coordinate system. Each 3D camera captures a 3D object image of an object on the surface that includes 3D object data. The 3D object data is transformed to the common coordinate system to obtain transformed 3D object data. The 3D object data is combined to obtain a composite 3D object data, and object recognition of the object is performed based on the composite 3D object data.
-
Citations
23 Claims
-
1. A method comprising, during an active session:
-
capturing, by a plurality of three-dimensional (3D) cameras in a top section of a checkout apparatus, 3D images of a region over a surface of a base in the checkout apparatus, the surface comprising a pattern, and wherein the checkout apparatus comprises a post section connecting the base to the top section in a spaced relationship, each 3D camera from the plurality of 3D cameras defining a camera coordinate system, each 3D image comprising pixel data having three coordinates in the camera coordinate system, wherein the 3D images comprise 3D pixel object data of an object on the surface and the pattern; for each 3D camera, analyzing, by one or more processors, the 3D image to determine a location of the pattern relative to the respective 3D camera, wherein the pattern is indicates a common 3D coordinate system shared by the 3D cameras; for each 3D camera, calibrating the respective 3D camera during the active session, comprising determining a coordinate transformation function to convert pixel data in the 3D image from the camera coordinate system of the 3D camera to the common 3D coordinate system shared by the 3D cameras, the coordinate transformation function being determined based on the identified location of the pattern in the respective 3D image and the common 3D coordinate system; for the captured 3D images, transforming, by the one or more processors, the 3D pixel object data to the common 3D coordinate system, using the coordinate transformation function, to obtain transformed 3D pixel object data, wherein the transformed 3D pixel object data for the plurality of 3D cameras is defined for the same common 3D coordinate system; combining, by the one or more processors, the transformed 3D pixel object data from the captured 3D images to obtain a composite 3D pixel object data for the object; and performing, by the one or more processors, object recognition of the object on the surface based on an appearance of the object described in the composite 3D pixel object data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 21, 22, 23)
-
-
11. A system comprising:
-
a base having a surface, the surface comprising a pattern; a top section; a post section supporting the top section in a spaced relationship relative to the base; a plurality of three-dimensional (3D) cameras, in the top section, for capturing 3D images of a region over the surface and below the top section, each 3D camera from the plurality of 3D cameras defining a camera coordinate system, wherein each 3D image comprises 3D pixel object data of an object on the surface and the pattern; a memory comprising instructions; and one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the one or more computer processors to perform operations comprising, during an active session; for each 3D camera, analyzing the 3D image to determine a location of the pattern that indicates an origin of a common 3D coordinate system shared by the 3D cameras; for each 3D camera, calibrating the respective 3D camera during the active session, comprising determining a coordinate transformation function to convert pixel data in the 3D image from the camera coordinate system of the 3D camera to the common 3D coordinate system shared by the 3D cameras, the coordinate transformation function being determined based on a location of the origin relative to the respective 3D camera, wherein the location of the origin is determined based on the identified location of the pattern in the 3D image; for the captured 3D images, transforming the 3D pixel object data to the common 3D coordinate system, using the coordinate transformation function, to obtain transformed 3D pixel object data, wherein the transformed 3D pixel object data for the plurality of 3D cameras is defined for the same common 3D coordinate system; combining the transformed 3D pixel object data from the captured 3D images to obtain a composite 3D pixel object data for the object; and performing object recognition of the object on the surface based on an appearance of the object described in the composite 3D pixel object data. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A non-transitory machine-readable storage medium including instructions that, when executed by a machine, cause the machine to perform operations comprising, during an active session:
-
capturing, by a plurality of three-dimensional (3D) cameras in a top section of a checkout apparatus, 3D images of a region over a surface of a base in the checkout apparatus, the surface comprising a pattern, wherein the checkout apparatus comprises a post section connecting the base to the top section in a spaced relationship, each 3D camera from the plurality of 3D cameras defining a camera coordinate system, each 3D image comprising pixel data having three coordinates in the camera coordinate system, wherein the 3D images comprise 3D pixel object data of an object on the surface and the pattern; for each 3D camera, analyzing, by one or more processors, the 3D image to determine a location of the pattern relative to the respective 3D camera, wherein the pattern is associated with a common 3D coordinate system shared by the 3D cameras; for each 3D camera, calibrating the respective 3D camera during the active session, comprising determining a coordinate transformation function to convert pixel data in the 3D image from the camera coordinate system of the 3D camera to the common 3D coordinate system shared by the 3D cameras, the coordinate transformation function being determined based on the identified pattern in the respective 3D image and the common 3D coordinate system; for the captured 3D images, transforming, by the one or more processors, the 3D pixel object data to the common 3D coordinate system, using the coordinate transformation function, to obtain transformed 3D pixel object data, wherein the transformed 3D pixel object data for the plurality of 3D cameras is defined for the same common 3D coordinate system; combining, by the one or more processors, the transformed 3D pixel object data from the captured 3D images to obtain a composite 3D pixel object data for the object; and performing, by the one or more processors, object recognition of the object on the surface based on an appearance of the object described in the composite 3D pixel object data. - View Dependent Claims (17, 18, 19, 20)
-
Specification