IP Library Granted Patent US 12,682,665
Granted Patent B2
US 12,682,665 · App. 18/526,629 · Granted Jul 14, 2026

Separation of objects in images from three-dimensional cameras

Inventors: Abhinai Srivastava (Palo Alto, CA); Mukul Dhankhar (Palo Alto, CA)
Assignee: Mashgin Inc.
G06V20/653G01B11/245G06T7/11G06T7/174G06T7/194G06T17/00G06T17/10G06V20/20H04N23/60G06T2200/04G06T2200/08G06T2207/10024G06T2207/10028G06T2207/20221G06V10/245
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 12,682,665
App. No.
18/526,629
Filed
Dec 1, 2023
Granted
Jul 14, 2026
Kind
B2
Examiner
LI, RUIPING
Art Unit
2676
USPC
382/154
Abstract

Methods, systems, and programs are presented for simultaneous recognition of objects within a detection space utilizing three-dimensional (3D) cameras configured for capturing 3D images of the detection space. One system includes the 3D cameras, calibrated based on a pattern in a surface of the detection space, a memory, and a processor. The processor combines data of the 3D images to obtain pixel data and removes, from the pixel data, background pixels of the detection space to obtain object pixel data associated with objects in the detection space. Further, the processor creates a geometric model of the object pixel data, the geometric model including surface information of the objects in the detection space, generates one or more cuts in the geometric model to separate objects and obtain respective object geometric models, and performs object recognition to identify each object in the detection space based on the respective object geometric models.

Claims (32)

1 . A method comprising:

capturing a set of images depicting a set of objects;

determining a point cloud associated with the set of objects, wherein the point cloud comprises a set of points;

determining a set of planar cuts based on a topographical representation from a single predetermined perspective of the point cloud;

determining a set of distinct point clusters within the point cloud using the set of planar cuts, each point cluster of the set of distinct point clusters comprising a subset of the set of points;

identifying object pixel data, from the set of images, based on each point cluster within the set of distinct point clusters; and

determining an object identity based on the respective object pixel data associated with each point cluster of the set of distinct point clusters.

2 . The method of claim 1 , wherein determining an object identity based on the respective object pixel data associated with each point cluster further comprises matching the point cluster with a stored 3D representation of a generic object, the generic object associated with the object identity.

3 . The method of claim 2 , wherein the stored 3D representation of the generic object is stored within a database additionally storing a 3D representation of a generic object bundle comprising multiple copies of the generic object.

4 . The method of claim 1 , wherein determining an object identity based on the respective object pixel data associated with each point cluster comprises extracting a set of image features from the object pixel data and determining the object identity based on the set of image features.

5 . The method of claim 1 , wherein identifying the set of point clusters is performed at least in part with a classifier.

6 . The method of claim 1 , wherein determining an object identity based on the respective object pixel data associated with each point cluster comprises identifying text from the respective object pixel data associated with each point cluster and using the identified text to determine the object identity.

7 . The method of claim 1 , wherein a planar cut is determined by identifying a cut line based on geometric features associated with the topographical representation and orthogonally extending the cut line through the point cloud.

8 . The method of claim 1 , wherein each pair of abutting point clusters is separated by a single planar cut.

9 . A system comprising:

a set of cameras, configured to capture a set of images of a set of objects; and

a processing system, configured to:

determine a point cloud based on the set of images, wherein the point cloud comprises a set of points;

determine a set of distinct point clusters within the point cloud using a set of planar cuts, wherein each of the set of distinct point clusters comprises a subset of the set of points, wherein the set of planar cuts are determined based on a topographical representation from a single predetermined perspective of the point cloud;

identify object pixel data from the set of images based on each point cluster, wherein each point cluster is within the set of distinct point clusters; and

determine an object identity based on the respective object pixel data associated with each point cluster of the set of distinct point clusters.

10 . The system of claim 9 , wherein the processing system is further configured to remove a set of background points from the point cloud based on 3D locations of the background points within the set of background points.

11 . The system of claim 10 , wherein the system further comprises a base element associated with a visual pattern, and wherein removing the set of background points from the point cloud comprises removing points corresponding to the visual pattern.

12 . The system of claim 9 , wherein the set of cameras comprises at least three cameras.

13 . The system of claim 9 , wherein the processing system is further configured to generate an invoice based on the object identity.

14 . The system of claim 9 , wherein determining an object identity based on the respective object pixel data associated with each point cluster comprises matching a 3D object model generated from the object pixel data with a stored 3D representation of a generic object, the generic object associated with the object identity.

15 . The system of claim 9 , wherein determining an object identity based on the respective object pixel data associated with each point cluster comprises extracting a set of features from the object pixel data and determining the object identity based on the set of features.

16 . The system of claim 9 , wherein determining the object identity is performed at least in part with a classifier.

17 . The system of claim 9 , wherein a planar cut from the set of planar cuts is determined by identifying a cut line in the single predetermined perspective from a direction parallel to a vertical axis of the point cloud, and orthogonally extending the cut line through the point cloud.

18 . The system of claim 9 , wherein each pair of point clusters is separated by one vertical planar cut.

19 . The method of claim 4 , wherein determining an object identity based on the respective object pixel data associated with each point cluster further comprises extracting a set of volumetric features based on the point cluster and determining the object identity based on the set of volumetric features.

20 . The method of claim 1 , wherein the topographical representation consists of representations of a set of top surfaces of the set of objects.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2023
From: SRIVASTAVA, ABHINAI
To: MASHGIN INC.
Reel/Frame 065736/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2023
From: DHANKHAR, MUKUL
To: MASHGIN INC.
Reel/Frame 065736/0486 →
Continuity (5)
Continuation 17667279 · Feb 8, 2022
Continuation 16923674 · Jul 8, 2020
Continuation 15685455 · Aug 24, 2017
Continuation In Part 15497730 · Apr 26, 2017
Related Publication 20240104946A1 · Mar 28, 2024
References Cited (51)
US 6295367B1 · Crabtree et al. · 2001 [cited by applicant]
US 6990228B1 · Wiles et al. · 2006 [cited by applicant]
US 9258550B1 · Sieracki et al. · 2016 [cited by applicant]
US 9327406B1 · Hinterstoisser et al. · 2016 [cited by applicant]
US 10467454B2 · Srivastava et al. · 2019 [cited by applicant]
US 10628695B2 · Srivastava et al. · 2020 [cited by applicant]
US 11481751B1 · Chaubard · 2022 [cited by applicant]
US 11756017B1 · Catoe et al. · 2023 [cited by applicant]
US 20030080190A1 · Tsikos et al. · 2003 [cited by applicant]
US 20050052535A1 · Hamadi · 2005 [cited by applicant]
US 20050088529A1 · Geng · 2005 [cited by applicant]
US 20050163382A1 · Herley · 2005 [cited by applicant]
US 20050189411A1 · Ostrowski et al. · 2005 [cited by applicant]
US 20060043174A1 · Banavar et al. · 2006 [cited by applicant]
US 20060208169A1 · Breed et al. · 2006 [cited by applicant]
US 20080252985A1 · Zhu et al. · 2008 [cited by applicant]
US 20090059270A1 · Opalach et al. · 2009 [cited by applicant]
US 20090268967A1 · Simon et al. · 2009 [cited by applicant]
US 20100059589A1 · Goncalves et al. · 2010 [cited by applicant]
US 20100166294A1 · Marrion et al. · 2010 [cited by applicant]
US 20100217678A1 · Goncalves · 2010 [cited by applicant]
US 20100232681A1 · Fujieda et al. · 2010 [cited by applicant]
US 20130010081A1 · Tenney et al. · 2013 [cited by applicant]
US 20130223673A1 · Davis et al. · 2013 [cited by applicant]
US 20130314541A1 · Lord et al. · 2013 [cited by applicant]
US 20140034731A1 · Gao et al. · 2014 [cited by applicant]
US 20140036630A1 · Herwig · 2014 [cited by applicant]
US 20150009214A1 · Lee et al. · 2015 [cited by applicant]
US 20150023555A1 · Okamura et al. · 2015 [cited by applicant]
US 20150066201A1 · Wubbena et al. · 2015 [cited by applicant]
US 20150109451A1 · Dhankhar · 2015 [cited by applicant]
US 20150310601A1 · Rodriguez et al. · 2015 [cited by applicant]
US 20160063821A1 · Macintosh et al. · 2016 [cited by applicant]
US 20160110913A1 · Kosoy et al. · 2016 [cited by applicant]
US 20160269714A1 · Rhemann et al. · 2016 [cited by applicant]
US 20160364634A1 · Davis et al. · 2016 [cited by applicant]
US 20170054965A1 · Raab et al. · 2017 [cited by applicant]
US 20170220887A1 · Fathi · 2017 [cited by examiner]
US 20170278308A1 · Bleiweiss et al. · 2017 [cited by applicant]
US 20180103209A1 · Fischler et al. · 2018 [cited by applicant]
US 20180314877A1 · Srivastava et al. · 2018 [cited by applicant]
US 20220230216A1 · Buibas et al. · 2022 [cited by applicant]
US 20240135353A1 · Gao et al. · 2024 [cited by applicant]
DE 19536294A1 · 1997 [cited by applicant]
DE 102014111656A1 · 2016 [cited by applicant]
JP 2009042082A · 2009 [cited by applicant]
JP 2013186548A · 2013 [cited by applicant]
WO 2012128754A1 · 2012 [cited by applicant]
WO 2018200090A1 · 2018 [cited by applicant]
Kats et al: “Hierarchical Mesh Decomposition using Fuzzy Clustering and Cuts”, ACM, 2003 (Year: 2003). [cited by examiner]
Schoeler et al: “Constrained Planar Cuts—Object Partitioning for Point Clouds”, 2015. (Year: 2015). [cited by examiner]