Patents by Inventor Gary Bradski

Gary Bradski has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20170039613
    Abstract: Disclosed herein is an augmented reality (AR) system that provides information about purchasing alternatives to a user who is about to purchase an item or product (e.g., a target product) in a physical retail location. In some variations, offers to purchase the product and/or an alternative product are provided by the merchant and/or competitors via the AR system. An offer negotiation server (ONS) aggregates offer data provided various external parties (EPs) and displays these offers to the user as the user is considering the purchase of a target product. In some variations, an AR system may be configured to facilitate the process of purchasing items at a retail location.
    Type: Application
    Filed: June 24, 2016
    Publication date: February 9, 2017
    Inventors: Adrian KAEHLER, Gary BRADSKI, Prasanna KRISHNASAMY, Doug LEE
  • Patent number: 9492924
    Abstract: Example embodiments provide for robotic apparatuses that facilitate moving objects within an environment, such as to load or unload boxes or to construct or deconstruct pallets (e.g., from a container or truck bed). One example apparatus includes a horizontal conveyor and a robotic manipulator that are both provided on a moveable cart. A first end of the robotic manipulator is mounted to the moveable cart and a second end of the robotic manipulator has an end effector, such as a grasper. The apparatus also includes a control system configured to receive sensor data indicative of an environment containing a plurality of objects, and then cause the robotic manipulator to place an object from the plurality of objects on the horizontal conveyor.
    Type: Grant
    Filed: June 15, 2016
    Date of Patent: November 15, 2016
    Assignee: Industrial Perception, Inc.
    Inventors: Gary Bradski, Steve Croft, Kurt Konolige, Ethan Rublee, Troy Straszheim, John Zevenbergen
  • Publication number: 20160288324
    Abstract: Example embodiments provide for robotic apparatuses that facilitate moving objects within an environment, such as to load or unload boxes or to construct or deconstruct pallets (e.g., from a container or truck bed). One example apparatus includes a horizontal conveyor and a robotic manipulator that are both provided on a moveable cart. A first end of the robotic manipulator is mounted to the moveable cart and a second end of the robotic manipulator has an end effector, such as a grasper. The apparatus also includes a control system configured to receive sensor data indicative of an environment containing a plurality of objects, and then cause the robotic manipulator to place an object from the plurality of objects on the horizontal conveyor.
    Type: Application
    Filed: June 15, 2016
    Publication date: October 6, 2016
    Applicant: Industrial Perception, Inc.
    Inventors: Gary Bradski, Steve Croft, Kurt Konolige, Ethan Rublee, Troy Straszheim, John Zevenbergen
  • Publication number: 20160221187
    Abstract: Example embodiments may relate to methods and systems for selecting a grasp point on an object. In particular, a robotic manipulator may identify characteristics of a physical object within a physical environment. Based on the identified characteristics, the robotic manipulator may determine potential grasp points on the physical object corresponding to points at which a gripper attached to the robotic manipulator is operable to grip the physical object. Subsequently, the robotic manipulator may determine a motion path for the gripper to follow in order to move the physical object to a drop-off location for the physical object and then select a grasp point, from the potential grasp points, based on the determined motion path. After selecting the grasp point, the robotic manipulator may grip the physical object at the selected grasp point with the gripper and move the physical object through the determined motion path to the drop-off location.
    Type: Application
    Filed: April 7, 2016
    Publication date: August 4, 2016
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee, Troy Straszheim, Hauke Strasdat, Stefan Hinterstoisser, Steve Croft, John Zevenbergen
  • Patent number: 9393686
    Abstract: Example embodiments provide for robotic apparatuses that facilitate moving objects within an environment, such as to load or unload boxes or to construct or deconstruct pallets (e.g., from a container or truck bed). One example apparatus includes a horizontal conveyor and a robotic manipulator that are both provided on a moveable cart. A first end of the robotic manipulator is mounted to the moveable cart and a second end of the robotic manipulator has an end effector, such as a grasper. The apparatus also includes a control system configured to receive sensor data indicative of an environment containing a plurality of objects, and then cause the robotic manipulator to place an object from the plurality of objects on the horizontal conveyor.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: July 19, 2016
    Assignee: Industrial Perception, Inc.
    Inventors: Gary Bradski, Steve Croft, Kurt Konolige, Ethan Rublee, Troy Straszheim, John Zevenbergen
  • Patent number: 9333649
    Abstract: Example embodiments may relate to methods and systems for selecting a grasp point on an object. In particular, a robotic manipulator may identify characteristics of a physical object within a physical environment. Based on the identified characteristics, the robotic manipulator may determine potential grasp points on the physical object corresponding to points at which a gripper attached to the robotic manipulator is operable to grip the physical object. Subsequently, the robotic manipulator may determine a motion path for the gripper to follow in order to move the physical object to a drop-off location for the physical object and then select a grasp point, from the potential grasp points, based on the determined motion path. After selecting the grasp point, the robotic manipulator may grip the physical object at the selected grasp point with the gripper and move the physical object through the determined motion path to the drop-off location.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: May 10, 2016
    Assignee: Industrial Perception, Inc.
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee, Troy Straszheim, Hauke Strasdat, Stefan Hinterstoisser, Steve Croft, John Zevenbergen
  • Publication number: 20160089791
    Abstract: Example systems and methods allow for dynamic updating of a plan to move objects using a robotic device. One example method includes determining a virtual environment by one or more processors based on sensor data received from one or more sensors, the virtual environment representing a physical environment containing a plurality of physical objects, developing a plan, based on the virtual environment, to cause a robotic manipulator to move one or more of the physical objects in the physical environment, causing the robotic manipulator to perform a first action according to the plan, receiving updated sensor data from the one or more sensors after the robotic manipulator performs the first action, modifying the virtual environment based on the updated sensor data, determining one or more modifications to the plan based on the modified virtual environment, and causing the robotic manipulator to perform a second action according to the modified plan.
    Type: Application
    Filed: December 10, 2015
    Publication date: March 31, 2016
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee, Troy Straszheim, Hauke Strasdat, Stefan Hinterstoisser
  • Publication number: 20160084642
    Abstract: Example methods and systems for determining 3D scene geometry by projecting patterns of light onto a scene are provided. In an example method, a first projector may project a first random texture pattern having a first wavelength and a second projector may project a second random texture pattern having a second wavelength. A computing device may receive sensor data that is indicative of an environment as perceived from a first viewpoint of a first optical sensor and a second viewpoint of a second optical sensor. Based on the received sensor data, the computing device may determine corresponding features between sensor data associated with the first viewpoint and sensor data associated with the second viewpoint. And based on the determined corresponding features, the computing device may determine an output including a virtual representation of the environment that includes depth measurements indicative of distances to at least one object.
    Type: Application
    Filed: December 7, 2015
    Publication date: March 24, 2016
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee
  • Patent number: 9238304
    Abstract: Example systems and methods allow for dynamic updating of a plan to move objects using a robotic device. One example method includes determining a virtual environment by one or more processors based on sensor data received from one or more sensors, the virtual environment representing a physical environment containing a plurality of physical objects, developing a plan, based on the virtual environment, to cause a robotic manipulator to move one or more of the physical objects in the physical environment, causing the robotic manipulator to perform a first action according to the plan, receiving updated sensor data from the one or more sensors after the robotic manipulator performs the first action, modifying the virtual environment based on the updated sensor data, determining one or more modifications to the plan based on the modified virtual environment, and causing the robotic manipulator to perform a second action according to the modified plan.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: January 19, 2016
    Assignee: Industrial Perception, Inc.
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee, Troy Straszheim, Hauke Strasdat, Stefan Hinterstoisser
  • Patent number: 9233470
    Abstract: Example methods and systems for determining 3D scene geometry by projecting patterns of light onto a scene are provided. In an example method, a first projector may project a first random texture pattern having a first wavelength and a second projector may project a second random texture pattern having a second wavelength. A computing device may receive sensor data that is indicative of an environment as perceived from a first viewpoint of a first optical sensor and a second viewpoint of a second optical sensor. Based on the received sensor data, the computing device may determine corresponding features between sensor data associated with the first viewpoint and sensor data associated with the second viewpoint. And based on the determined corresponding features, the computing device may determine an output including a virtual representation of the environment that includes depth measurements indicative of distances to at least one object.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: January 12, 2016
    Assignee: Industrial Perception, Inc.
    Inventors: Gary Bradski, Kurt Konolige, Ethan Rublee
  • Patent number: 9227323
    Abstract: Methods and systems for recognizing machine-readable information on three-dimensional (3D) objects are described. A robotic manipulator may move at least one physical object through a designated area in space. As the at least one physical object is being moved through the designated area, one or more optical sensors may determine a location of a machine-readable code on the at least one physical object and, based on the determined location, scan the machine-readable code so as to determine information associated with the at least one physical object encoded in the machine-readable code. Based on the information associated with the at least one physical object, a computing device may then determine a respective location in a physical environment of the robotic manipulator at which to place the at least one physical object. The robotic manipulator may then be directed to place the at least one physical object at the respective location.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: January 5, 2016
    Assignee: Google Inc.
    Inventors: Kurt Konolige, Ethan Rublee, Gary Bradski
  • Patent number: 9102055
    Abstract: Methods and systems for detecting and reconstructing environments to facilitate robotic interaction with such environments are described. An example method may involve determining a three-dimensional (3D) virtual environment representative of a physical environment of the robotic manipulator including a plurality of 3D virtual objects corresponding to respective physical objects in the physical environment. The method may then involve determining two-dimensional (2D) images of the virtual environment including 2D depth maps. The method may then involve determining portions of the 2D images that correspond to a given one or more physical objects. The method may then involve determining, based on the portions and the 2D depth maps, 3D models corresponding to the portions. The method may then involve, based on the 3D models, selecting a physical object from the given one or more physical objects. The method may then involve providing an instruction to the robotic manipulator to move that object.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: August 11, 2015
    Assignee: Industrial Perception, Inc.
    Inventors: Kurt Konolige, Ethan Rublee, Stefan Hinterstoisser, Troy Straszheim, Gary Bradski, Hauke Strasdat
  • Patent number: 7783114
    Abstract: Provided are a method, system, and computer readable medium for training and using classification components on multiple processing units. A plurality of processing units each has a memory including one of a plurality of subsets of a set of data points. At least two of the processing units have different subsets of data points. A plurality of classification components are executed by the processing units. Classification components executing at the processing units are trained, wherein each classification component is trained with the subset of data points in the memory of the processing unit that is executing the classification component. One of the classification components is transferred to an additional processing unit of the processing units to train the transferred classification component using the subset of data points in the memory at the additional processing unit in response to training the classification component with the subset of data points.
    Type: Grant
    Filed: August 22, 2006
    Date of Patent: August 24, 2010
    Assignee: Intel Corporation
    Inventors: Gary Bradski, Jason C. Chuang
  • Patent number: 7630942
    Abstract: In some embodiments, multi-core stochastic discrimination is generally presented. In this regard, a method is introduced comprising providing random regions of a feature space to parallel cores, testing each random region for enrichment in parallel, recording coverage for each data point in each enriched random region in parallel, and calculating an overall average coverage for each data point among the enriched random regions. Other embodiments are also disclosed and claimed.
    Type: Grant
    Filed: February 28, 2007
    Date of Patent: December 8, 2009
    Assignee: Intel Corporation
    Inventor: Gary Bradski
  • Publication number: 20080208773
    Abstract: In some embodiments, multi-core stochastic discrimination is generally presented. In this regard, a method is introduced comprising providing random regions of a feature space to parallel cores, testing each random region for enrichment in parallel, recording coverage for each data point in each enriched random region in parallel, and calculating an overall average coverage for each data point among the enriched random regions. Other embodiments are also disclosed and claimed.
    Type: Application
    Filed: February 28, 2007
    Publication date: August 28, 2008
    Inventor: Gary Bradski
  • Publication number: 20080050014
    Abstract: Provided are a method, system, and computer readable medium for training and using classification components on multiple processing units. A plurality of processing units each has a memory including one of a plurality of subsets of a set of data points. At least two of the processing units have different subsets of data points. A plurality of classification components are executed by the processing units. Classification components executing at the processing units are trained, wherein each classification component is trained with the subset of data points in the memory of the processing unit that is executing the classification component. One of the classification components is transferred to an additional processing unit of the processing units to train the transferred classification component using the subset of data points in the memory at the additional processing unit in response to training the classification component with the subset of data points.
    Type: Application
    Filed: August 22, 2006
    Publication date: February 28, 2008
    Inventors: Gary Bradski, Jason C. Chuang
  • Publication number: 20070233435
    Abstract: A method and apparatus for boosted linear modeling of non-linear time series. An embodiment of a method includes receiving a series of data elements, where the series of data elements is a time series and where the time series has a non-linearity. One or more decision trees are generated for the data elements, with the decision tree models dividing the time series into a plurality of data groups. Further, each of the data groups is modeled as a linear function.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 4, 2007
    Inventor: Gary Bradski
  • Publication number: 20060179020
    Abstract: In one embodiment, the present invention includes a method of successively splitting an analog function into high and low ranges and calculating a binary mask for these ranges to obtain a plurality of data regions at a plurality of split levels, and training binary classifiers on the plurality of data regions of at least one of the split levels. In such manner, binary classifiers may be used to classify an analog function. Other embodiments are described and claimed.
    Type: Application
    Filed: December 6, 2004
    Publication date: August 10, 2006
    Inventor: Gary Bradski
  • Publication number: 20060179021
    Abstract: In one embodiment, a method includes converting unsupervised data into supervised data using multiple processes and training multiple supervised classifiers with the supervised data of the processes. In such manner, supervised classifiers may be used to classify unsupervised data. Affinity measures may be determined and data clustered using the resulting trained classifiers. Other embodiments are described and claimed.
    Type: Application
    Filed: December 6, 2004
    Publication date: August 10, 2006
    Inventor: Gary Bradski
  • Publication number: 20060179019
    Abstract: For a first feature of a dataset having a plurality of features, training a classifier to predict the first feature in terms of other features in the data set to obtain a trained classifier; scrambling the values of a second feature in the data set to obtain a scrambled data set, executing the trained classifier on the scrambled data set, determining predictive importance of the second feature in predicting the first feature based at least in part on the accuracy of the trained classifier in predicting the first feature when executed with the scrambled data set and creating a graph of the data set in which each of the first and the second features is a node of the graph and a label on an edge between the first node and the second node is based at least in part on the predictive importance of the first feature in terms of the second feature.
    Type: Application
    Filed: November 19, 2004
    Publication date: August 10, 2006
    Inventor: Gary Bradski