IP Library Granted Patent US 11,062,472
Granted Patent B1
US 11,062,472 · App. 16/821,504 · Granted Jul 13, 2021

Transporter segmentation for data capture system

Inventors: Charles Burton Swope (Coral Springs, FL); Stanko Jelavic (Davie, FL); Bassam S. Arshad (Wheeling, IL); Paul Seiter (Port Jefferson Station, NY); Chinmay Nanda (Port Jefferson Station, NY)
Assignee: Zebra Technologies Corporation
G06T7/62G06Q10/083G06T7/0004G06T7/80G06T2207/10028G06T2210/12
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 11,062,472
App. No.
16/821,504
Granted
Jul 13, 2021
Kind
B1
Abstract

A server includes: a memory storing calibration data; and a processor connected with the memory, the processor configured to: obtain a point cloud depicting a capture volume containing a transporter having a body and a holder carrying an object to be dimensioned; obtain a set of positions associated with the transporter; based on the set of positions and the calibration data: generate side cutting planes corresponding to sides of the body of the transporter; generate a front cutting plane corresponding to a forward surface of a mast of the holder; and discard points between the side cutting planes and the front cutting plane to obtain a first portion of the point cloud; based on the calibration data, select a second portion of the point cloud from the first portion, excluding a base of the holder; and dimension the object based on the second portion of the point cloud.

Claims (77)

1. A server, comprising:

a memory storing calibration data;

a processor connected with the memory, the processor configured to:

obtain a point cloud depicting a capture volume containing a transporter having a body and a holder carrying an object to be dimensioned;

obtain a set of positions associated with the transporter;

based on the set of positions and the calibration data:

generate side cutting planes corresponding to sides of the body of the transporter;

generate a front cutting plane corresponding to a forward surface of a mast of the holder; and

discard points between the side cutting planes and the front cutting plane to obtain a first portion of the point cloud;

based on the calibration data, select a second portion of the point cloud from the first portion, excluding a base of the holder; and

dimension the object based on the second portion of the point cloud; and

a communications interface;

wherein the processor is further configured, in order to obtain the point cloud, to receive initial point clouds from a plurality of capture nodes via the communications interface, and combine the initial point clouds to generate the point cloud, and

wherein the processor is configured, in order to select the second portion, to:

generate a bounding box containing the object and the base, based on the first portion;

identify a lower surface of the base based on the bounding box;

generate an upper surface of the base according to the calibration data; and

discard points between the lower surface and the upper surface.

2. The server of claim 1 , wherein the processor is configured, in order to generate the front cutting plane, to:

determine a tilt of the mast based on the set of positions and the calibration data; and

generate the front cutting plane corresponding to the forward surface of the mast according to the tilt of the mast.

3. The server of claim 1 , wherein the processor is configured, in order to generate the side cutting planes, to:

generate a first of the side cutting planes according to the set of positions; and

generate a second of the side cutting planes based on the first side cutting plane and the calibration data.

4. The server of claim 1 , wherein the processor is configured, in order to generate the side cutting planes, to:

generate first and second side cutting planes corresponding to the sides of the body of the transporter; and

generate third and fourth side cutting planes corresponding to forward angled portions between the mast of the holder and the sides of the body of the transporter.

5. The server of claim 1 , wherein the processor is configured, to identify the lower surface of the bounding box, to:

determine point densities for each of a plurality of slices adjacent to a lower surface of the bounding box; and

select the lower surface of the base corresponding to the one of the slices with the greatest point density.

6. The server of claim 1 , wherein the processor is further configured to:

identify a base center point in the bounding box, the base center point corresponding to a center line of the body of the transporter;

generate side surfaces corresponding to sides of the base according to the base center point and the calibration data; and

discard points between the lower surface, the upper surface, and the side surfaces.

7. The server of claim 1 , wherein the processor is configured to identify the lower surface of the base with a predefined angle relative to the front cutting plane.

8. The server of claim 1 , wherein the processor is further configured, in order to dimension the object, to:

generate a bounding box corresponding to the object from the second portion of the point cloud;

determine point densities for each of a plurality of slices adjacent to a surface of the bounding box;

select an updated bounding box surface corresponding to the one of the slices with the greatest point density; and

the determination of point densities and selection of an updated bounding box surface for each remaining surface of the bounding box.

9. A method, comprising:

storing calibration data;

obtaining a point cloud depicting a capture volume containing a transporter having a body and a holder carrying an object to be dimensioned;

obtaining a set of positions associated with the transporter;

based on the set of positions and the calibration data:

generating side cutting planes corresponding to sides of the body of the transporter;

generate a front cutting plane corresponding to a forward surface of a mast of the holder; and

discarding points between the side cutting planes and the front cutting plane to obtain a first portion of the point cloud excluding the body of the transporter and the mast of the holder;

based on the calibration data, selecting a second portion of the point cloud from the first portion, excluding a base of the holder; and

dimensioning the object based on the second portion of the point cloud,

wherein obtaining the point cloud includes receiving initial point clouds from a plurality of capture nodes via a communications interface, and combining the initial point clouds to generate the point cloud, and

wherein selecting the second portion includes:

generating a bounding box containing the object and the base, based on the first portion;

identifying a lower surface of the base based on the bounding box;

generating an upper surface of the base according to the calibration data; and

discarding points between the lower surface and the upper surface.

10. The method of claim 9 , wherein generating the front cutting plane comprises:

determining a tilt of the mast based on the set of positions and the calibration data; and

generating the front cutting plane corresponding to the forward surface of the mast according to the tilt of the mast.

11. The method of claim 9 , wherein generating the side cutting planes comprises:

generating a first of the side cutting planes according to the set of positions; and

generating a second of the side cutting planes based on the first side cutting plane and the calibration data.

12. The method of claim 9 , wherein generating the side cutting planes comprises:

generating first and second side cutting planes corresponding to the sides of the body of the transporter; and

generating third and fourth side cutting planes corresponding to forward angled portions between the mast of the holder and the sides of the body of the transporter.

13. The method of claim 9 , wherein to identify the lower surface of the base based on the bounding box comprises:

determine point densities for each of a plurality of slices adjacent to a lower surface of the bounding box; and

select the lower surface of the base corresponding to the one of the slices with the greatest point density.

14. The method of claim 9 , further comprising:

identifying a base center point in the bounding box, the base center point corresponding to a center line of the body of the transporter;

generating side surfaces corresponding to sides of the base according to the base center point and the calibration data; and

discarding points between the lower surface, the upper surface, and the side surfaces.

15. The method of claim 9 , further comprising generating the lower surface with a predefined angle relative to the cutting plane.

16. The method of claim 9 , wherein dimensioning the object includes:

generating a bounding box corresponding to the object from the second portion of the point cloud;

determining point densities for each of a plurality of slices adjacent to a surface of the bounding box; and

selecting an updated bounding box surface corresponding to the one of the slices with the greatest point density.

Assignments (4)
SECURITY INTEREST Recorded Apr 12, 2021
From: ZEBRA TECHNOLOGIES CORPORATION
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 056472/0063 →
RELEASE OF SECURITY INTEREST - 364 - DAY Recorded Mar 5, 2021
From: JPMORGAN CHASE BANK, N.A.
To: ZEBRA TECHNOLOGIES CORPORATION; LASER BAND, LLC; TEMPTIME CORPORATION
Reel/Frame 056036/0590 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2020
From: SWOPE, CHARLES BURTON; JELAVIC, STANKO; ARSHAD, BASSAM S.; SEITER, PAUL; NANDA, CHINMAY
To: ZEBRA TECHNOLOGIES CORPORATION
Reel/Frame 053660/0953 →
SECURITY INTEREST Recorded Sep 1, 2020
From: ZEBRA TECHNOLOGIES CORPORATION; LASER BAND, LLC; TEMPTIME CORPORATION
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 053841/0212 →