Patentable/Patents/US-10776978
US-10776978

Method for the automated identification of real world objects

PublishedSeptember 15, 2020
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A method is provided for the automated identification of real world objects. The invention, implementable via various means such as a processing system, method, or data structure in a recording medium such as memory or as a self-contained electronic circuit, has wide ranging applicability to numerous fields such as in a user interface for gaming systems, like Kinect, or immersive environments such as remote surgical operations, and other medical diagnostic applications. Similarly, our method can be utilized in artificial intelligence application for automated robotic identification of targets, such as drone assisted search and rescue missions, and the enablement of patent protection against unlawful replication on 3D printers. The method of the invention includes the steps of creating a 3D representation for the real world object to be identified, segmenting the newly created 3D representation according to potential identities, alignment of minimal, unique representations for said potential identities to the corresponding segments of the newly created 3D representation, and then the analysis of said alignments to determine which potential identity correctly identifies the real world object to be identified.

Patent Claims
4 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method of representing objects, the method comprising: representing a to be represented object as an ordered collection of object components, each component comprising one or more portions, each portion represented by one or more points, each point represented as machine-readable data; separately representing each to be represented object component over a plurality of scales, each scale defined over a range of values, such that a resolution of the to be represented object component is determined by a scale representation of the component, wherein each portion of each component represented at a particular scale is included or not according to what may be reproduced within the applicable scale; obtaining a known object from an object library, the known object from an object library comprising a plurality of features; obtaining components of the known object, each component of the known object represented at the same scale; grouping the components of the to be represented object according to a working configuration of the known object from an object library; selecting a minimal set of components of the to be represented object, the union of which minimal set of components corresponds to the plurality of features of the known object from an object library; changing a size of the known object from an object library to correspond to the size resulting from the grouping of components of the to be represented object; comparing the known object from an object library with the minimal set of components of the to be represented object by applying a minimization function to the compared known object from an object library, wherein applying a minimization function to the compared known object from an object library converts the known object to a connected graph and applies a single round least squares operation thereto; associate by correspondence each point of each portion of the minimal set of components of the to be represented object with one or more data points of the known object from an object library after the known object from the object library has been processed by the minimization function; using the associated points to orient the known object to the orientation of the to be represented object components; wherein orienting the known object from an object library to the orientation of the to be represented object components comprises identifying intermediate data points of the known object from an object library as joint data points, identifying a center of mass of said joint data points by identifying intersections at the to be represented object components connected at respective joint data points, and moving said joint data points to the geocentric center of a bisecting polytope defined over each said intersection.

2

2. A method of automatically rigging skeletons, also referred to as skeletal representations, to models, the method comprising: representing a model, also referred to as an object, as an ordered collection of skeletal components, each skeletal component comprising one or more portions, each portion represented by one or more points, each point represented as machine-readable data, where the totality of the skeletal components is also known as a skeleton; obtaining a known skeletal representation of an object from an object library, the known representation skeleton form an object library comprising a plurality of features; obtaining components of the skeleton; grouping the components of the object according to a working configuration of the known skeleton from an object library; changing a size of the known skeleton from an object library to correspond to the size resulting from the grouping of components of the object; associate by correspondence each point of each portion of the skeleton of the object with one or more data points of the known skeleton from an object library after the known skeleton from the object library has been processed by a minimization function; using the associated points to orient the known skeleton to the orientation of the object components; wherein orienting the known skeleton from an object library to the orientation of the object components comprises identifying intermediate data points of the known skeleton from an object library as joint data points, identifying a center of mass of said joint data points by defining intersections between a line connecting data points, and moving said joint data points to the geocentric center of a bisecting polytope defined over each said intersection.

3

3. The method of claim 2 , further comprising a method of automatically rigging a model also referred to as the to-be-rigged model, to a skeleton, also referred to as a skeletal representation or animation skeleton, the method comprising: representing a model as: a collection of meshes defined over a finite set of model point values, where a point value can be interpreted as a location in at least two-dimensional space, and a finite set of line segments that connect model points; said collection of meshes collectively known as the to-be-rigged model mesh, or the to-be-rigged model meshes, a skeletal representation defined over a finite set of skeletal components called bones may be included in the model, but is not required to be included in the model; each skeletal component included in the model comprising one or more portions, each portion represented by one or more points, each point represented as machine-readable data, where the skeleton is defined over the totality of the skeletal components being utilized to represent an object, and various aspects of an object, where each skeletal component may, but is not required to be, represented by a line segment or ray; and where, if a skeletal representation is defined, each point belonging to a mesh in a model is assigned to one or more skeletal components in the skeletal representation belonging to the model; utilizing a model library, where the model library is composed of a finite set of models and structured such that a computational device can retrieve: a single model and the identity of, or unique identifier for, the model; a set of models and the identities of, or unique identifiers for, each model in the set of models; the meshes from a model and the identity of, or unique identifier for, the model; a set of meshes from a set of models and the identities of, or unique identifiers for, each model in the set of models; the skeletal representation for a model and the identity of, or unique identifier for, the model; a set of skeletal representations from a set of models and the identities of, or unique identifiers for, each model in the set of models; obtaining a known skeletal representation of an object from the model library, the known skeletal representation from the model library comprising a plurality of skeletal components, or skeletal components; obtaining skeletal components of the skeletal representation; grouping the to-be-rigged model meshes according to a working configuration of the known skeletal representation from the model library; changing a size of the known skeletal representation from the model library to correspond to the size resulting from the grouping of the meshes of the to-be-rigged model; performing said rigging by: associating by correspondence each point belonging to the to-be-rigged model to one or more skeletal components, or bones, of a known skeletal representation from a known model belonging to the model library according to a minimization function such as a least squares fitting operation; using the associated points to orient the skeletal components, or skeletal components, of the known skeletal representation to the orientation of the to-be-rigged model meshes; and wherein said rigging is performed by orienting the known skeletal representation from the model library to the orientation of the to-be-rigged model meshes, wherein said orienting is comprised of identifying intermediate data points of the known skeletal representation from the model library as joint data points, where said ioint data points lie at the intersection of two or more skeletal components, identifying a center of mass of said joint data points by defining intersections between a line segment representation for the skeletal components connecting joint data points, and moving said joint data points to the geocentric center of a bisecting polytope defined over each said intersection.

4

4. The method of claim 1 , further comprising a method of automatically identifying an object, also referred to as the to-be-identified object, the method comprising: a machine readable representation of the to-be-identified object, where said machine readable representation is either supplied as a mesh, a point cloud, or some other machine interpretable form, such as a list of data values, that can be converted into a point cloud; automatically rigging the object to a set of potential skeletal representations from a model library where: said rigging is performed by: associating by correspondence each point belonging to the to-be-rigged model to one or more skeletal components, or bones, of a known skeletal representation from a known model belonging to the model library according to a minimization function such as a least squares fitting operation; using the associated points to orient the skeletal components, or skeletal components, of the known skeletal representation to the orientation of the to-be-rigged model meshes; the model library is composed of a finite set of models and structured such that a computational device can retrieve models and their associated identities; performing the object identification by evaluating the effectiveness of the automatic rigging performed according to the method of claim 3 ; completing the object identification by returning the identity of, or unique identifier for, the model from the model library whose associated skeletal representation was chosen by the prior evaluation to be the identity for the supplied machine representation of the to-be-identified object.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

April 8, 2013

Publication Date

September 15, 2020

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Method for the automated identification of real world objects” (US-10776978). https://patentable.app/patents/US-10776978

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.