Patents by Inventor Michael Hemmer

Michael Hemmer 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: 20200265552
    Abstract: Techniques of compressing level of detail (LOD) data involve defining a cost metric that predicts how much computing resources are necessary to decode and render a mesh at a given LOD. The cost metric may be optimized by a selection of a LOD reduction process of a plurality of processes at each LOD reduction step. For each process of the plurality of processes, the LOD is reduced according to that process and the resulting reduced LOD is evaluated according to the cost metric. Each such process at that LOD reduction step produces a respective LOD, which includes a mesh, one or more texture atlases, and/or other attributes. The LOD produced by the process having the lowest value of the cost metric at a reduction step is the LOD that is input into the next LOD reduction step.
    Type: Application
    Filed: February 19, 2019
    Publication date: August 20, 2020
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10733766
    Abstract: Methods and apparatus to encode and/or decode normals of geometric representations of surfaces are disclosed herein. An example method includes receiving a plurality of points, each point representing a normal to the surface and being arranged within a tile; generating a plurality of regions within the tile, each region including points of the plurality of points; retrieving a first and second point, the first point representing a first normal and the second point representing a second normal, the first point being outside of a specified baseline region; performing a point transformation operation on the first point to produce a transformed first point of the baseline region and performing the point transformation on the second point to produce a transformed second point; generating a difference between the transformed first point and the transformed second point to produce a difference value; and encoding the difference value.
    Type: Grant
    Filed: March 31, 2017
    Date of Patent: August 4, 2020
    Assignee: GOOGLE, LLC
    Inventors: Michael Hemmer, Lauren DeNaut
  • Publication number: 20200198140
    Abstract: Techniques and systems are disclosed for using swept volume profile data cached in association with a PRM to improve various aspects of motion planning for a robot. In some implementations, a first probabilistic road map representing possible paths to be travelled by a robot within a physical area is generated. An initial path for the robot within the first probabilistic road map is determined. Data indicating a second probabilistic road map representing a path to be travelled by a movable object within the physical area is obtained. A potential obstruction associated with one or more edges included in the subset of edges is detected. An adjusted path for the robot within the first probabilistic road map is then determined based on the potential obstruction.
    Type: Application
    Filed: December 21, 2018
    Publication date: June 25, 2020
    Inventors: Jean-Francois Dupuis, Keegan Go, Michael Hemmer
  • Patent number: 10692248
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include determining priority values associated with collapse of each edge of a plurality of edges. The method may further include selecting a first edge from the plurality of edges, determining adjusted priority values of edges in a vicinity of the selected first edge, selecting a second edge from remaining edges of the plurality of edges after the selecting of the first edge, and collapsing the selected edges such that vertex split information is generated that is based on the collapsing of the selected edges. In some implementations, the method may further include entropy encoding of the vertex split information.
    Type: Grant
    Filed: April 12, 2018
    Date of Patent: June 23, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10659789
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include determining a priority value for each edge of a plurality of edges, the priority value of an edge of the plurality of edges determined based on an error metric value and an estimated encoding cost associated with the edge. The method may further include determining a set of edges for collapse, the set of edges determined from the plurality of edges based on the priority values and collapsing the set of edges and generating vertex split information. In some implementations, the method may include entropy encoding the vertex split information.
    Type: Grant
    Filed: April 12, 2018
    Date of Patent: May 19, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10654389
    Abstract: A headrest for a motor vehicle, including a base part for attachment to a backrest of a vehicle seat, a head part for contact with a head of a vehicle occupant, and an adjusting device between the base part and the head part for causing a substantially linear adjustment of the head part between a minimum and a maximum position. The adjusting device has an intermediate part and several pivot levers which pivot synchronously during adjustment and form a first articulated parallelogram between the head part and intermediate part and a second articulated parallelogram between the intermediate part and base part. The adjusting device includes a synchronizing lever for setting a relative orientation of the head part with respect to the base part during adjustment and wherein the headrest further has a latching device for fixing the headrest in a latching manner relative to the base part.
    Type: Grant
    Filed: February 24, 2017
    Date of Patent: May 19, 2020
    Assignee: Jifeng Automotive Interior GmbH
    Inventors: Michael Hemmer, Denis Quandt, Jürgen Hürtgen, Christoph Seidel, Rolf Steinmetz
  • Patent number: 10657675
    Abstract: An encoder includes a processor and a memory. The encoder generates a first plurality of levels of detail (LODs) and associated first type of vertex split records, each of the first type of vertex split records associated with an LOD of the first plurality of LODs is generated using a first type of collapse operator. The encoder initiates a switch from using the first type of collapse operator to a second type of collapse operator in response to a switching condition being satisfied. The encode further a second plurality of LODs and associated second type of vertex split records, each of the second type of vertex split records associated with a LOD of the second plurality of LODs is generated using the second type of collapse operator.
    Type: Grant
    Filed: March 6, 2018
    Date of Patent: May 19, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10643352
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include identifying a pair of partitioning vertices to be connected to a split vertex associated with a collapse of an edge, creating the split vertex by collapsing the edge, encoding partitioning vertex information associated with the pair of partitioning vertices, the encoding of the partitioning vertex information based on an ordering of vertices of an umbrella of the split vertex, and the ordering of vertices of the umbrella determined based on a geometric shape and connectivity of the umbrella, and generating vertex split information that includes the partitioning vertex information. In another example implementation, the method may include entropy encoding the vertex split information prior to being transmitted.
    Type: Grant
    Filed: April 12, 2018
    Date of Patent: May 5, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Publication number: 20200098137
    Abstract: An encoder may perform a method of compressing texture coordinates using texture atlas. In one example implementation, the method may include predicting texture coordinates of a corner of a triangle, the triangle being one of a plurality of triangles of a geometric mesh, the predicting based on a corresponding texture atlas and local information associated with the corner. The method further includes determining a residual vector based on the predicted texture coordinates, performing entropy encoding of the residual vector along with residual vectors of other corners of the geometric mesh, and generating compressed data based on the entropy encoding.
    Type: Application
    Filed: September 26, 2018
    Publication date: March 26, 2020
    Inventors: Michael Hemmer, Pierre Alliez
  • Publication number: 20200099954
    Abstract: Compressing a frame of video includes receiving a frame of a video, identifying a three dimensional (3D) object in the frame, matching the 3D object to a stored 3D object, compressing the frame of the video using a color prediction scheme based on the 3D object and the stored 3D object, and storing the compressed frame with metadata, the metadata identifying the 3D object, indicating a position of the 3D object in the frame of the video and indicating an orientation of the 3D object in the frame of the video.
    Type: Application
    Filed: September 26, 2018
    Publication date: March 26, 2020
    Inventors: Michael Hemmer, Ameesh Makadia
  • Publication number: 20200064613
    Abstract: A system, apparatus and method and method for controlling interoperation between a resonant scanner and a movable stage. The movable stage being employed to position a specimen for optical scanning by the resonant scanner. The invention providing high resolution scanning of specimen tissue at a rate of ten times or more faster than other known methods of optically scanning a specimen.
    Type: Application
    Filed: October 25, 2019
    Publication date: February 27, 2020
    Inventors: KEITH AARON HADLEY, JASON WILLIAM FAULRING, PAUL MICHAEL HEMMER, JAMES VINCENT MASSARO
  • Patent number: 10553035
    Abstract: In one general aspect, a method can include receiving, by processing circuitry of a computer configured to represent information related to a three-dimensional object, a plurality of vertices of a triangular mesh representing the three-dimensional object, the triangular mesh including a plurality of faces, each if the plurality of faces including three vertices of the plurality of vertices; generating a traversal order for the vertices of the triangular mesh based on valences of the plurality of vertices; producing an array of errors between predicted vertices and vertices of the plurality of vertices, the array of errors being arranged in a sequence based on the traversal order; and performing a compression operation on the array of differences to produce a compressed error array, the compressed error array producing the plurality of vertices of the triangular mesh in response to a decompression operation.
    Type: Grant
    Filed: June 2, 2017
    Date of Patent: February 4, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Ondrej Stava
  • Patent number: 10553015
    Abstract: An encoder includes a processor and a memory. The memory includes code as instructions that cause the processor to receive geometric data and a viewpoint associated with the geometric data, and quantize the geometric data based on the viewpoint using a plurality of view-dependent quantization values each having a quantized distance based on a proximity to the viewpoint.
    Type: Grant
    Filed: March 31, 2017
    Date of Patent: February 4, 2020
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Stephan Friedrichs
  • Publication number: 20200027246
    Abstract: A method includes receiving geometric data to be encoded, generating a signature for the geometric data based on the at least one property associated with the geometric data, enumerating a set of first options, enumerating a set of second options, encoding the geometric data using the enumerated first option and the enumerated second option, decoding the encoded geometric data, selecting one of the enumerated second options based on a cost function, and training a classifier based on the signature, the enumerated first option and the selected second option.
    Type: Application
    Filed: July 23, 2018
    Publication date: January 23, 2020
    Inventor: Michael Hemmer
  • Patent number: 10496336
    Abstract: An encoder includes a processor, a buffer, and a memory. The memory includes code as instructions that cause the processor to perform a number of steps. The steps include quantizing geometric data associated with a geometric construct, partitioning the geometric construct, determining a number of points in the partition, generating a deviation value based on the number of points in the partition, storing the deviation value in the buffer, and entropy encoding the deviation value.
    Type: Grant
    Filed: November 17, 2016
    Date of Patent: December 3, 2019
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Ondrej Stava
  • Patent number: 10459211
    Abstract: A system, apparatus and method and method for controlling interoperation between a resonant scanner and a movable stage. The movable stage being employed to position a specimen for optical scanning by the resonant scanner. The invention providing high resolution scanning of specimen tissue at a rate of ten times or more faster than other known methods of optically scanning a specimen.
    Type: Grant
    Filed: October 11, 2017
    Date of Patent: October 29, 2019
    Assignee: Caliber Imaging & Diagnostics, Inc.
    Inventors: Keith Aaron Hadley, Jason William Faulring, Paul Michael Hemmer, James Vincent Massaro
  • Publication number: 20190318508
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include identifying a pair of partitioning vertices to be connected to a split vertex associated with a collapse of an edge, creating the split vertex by collapsing the edge, encoding partitioning vertex information associated with the pair of partitioning vertices, the encoding of the partitioning vertex information based on an ordering of vertices of an umbrella of the split vertex, and the ordering of vertices of the umbrella determined based on a geometric shape and connectivity of the umbrella, and generating vertex split information that includes the partitioning vertex information. In another example implementation, the method may include entropy encoding the vertex split information prior to being transmitted.
    Type: Application
    Filed: April 12, 2018
    Publication date: October 17, 2019
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Publication number: 20190318507
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include determining priority values associated with collapse of each edge of a plurality of edges. The method may further include selecting a first edge from the plurality of edges, determining adjusted priority values of edges in a vicinity of the selected first edge, selecting a second edge from remaining edges of the plurality of edges after the selecting of the first edge, and collapsing the selected edges such that vertex split information is generated that is based on the collapsing of the selected edges. In some implementations, the method may further include entropy encoding of the vertex split information.
    Type: Application
    Filed: April 12, 2018
    Publication date: October 17, 2019
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Publication number: 20190320183
    Abstract: An encoder includes a processor and a memory. The encoder may perform a method of progressive compression. In one example implementation, the method may include determining a priority value for each edge of a plurality of edges, the priority value of an edge of the plurality of edges determined based on an error metric value and an estimated encoding cost associated with the edge. The method may further include determining a set of edges for collapse, the set of edges determined from the plurality of edges based on the priority values and collapsing the set of edges and generating vertex split information. In some implementations, the method may include entropy encoding the vertex split information.
    Type: Application
    Filed: April 12, 2018
    Publication date: October 17, 2019
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10430975
    Abstract: An encoder includes a processor, a buffer, and a memory. The memory includes code as instructions that cause the processor to perform a number of steps. The steps include partitioning a geometric construct within an axis of the geometric construct based on a point differential between two partitions, the geometric construct including geometric data, determining a number of points in the partition, storing a value indicating the number of points in the buffer, and entropy encoding the value stored in the buffer.
    Type: Grant
    Filed: November 17, 2016
    Date of Patent: October 1, 2019
    Assignee: GOOGLE LLC
    Inventors: Michael Hemmer, Frank Galligan, Ondrej Stava