Patents by Inventor Cedric Portaneri

Cedric Portaneri 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: 20230386091
    Abstract: Techniques of compressing level of detail (LOD) data involve sharing a texture image LOD among different mesh LODs for single-rate encoding. That is, a first texture image LOD corresponding to a first mesh LOD may be derived by refining a second texture image LOD corresponding to a second mesh LOD. This sharing is possible when texture atlases of LOD meshes are compatible.
    Type: Application
    Filed: January 27, 2023
    Publication date: November 30, 2023
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 11568575
    Abstract: Techniques of compressing level of detail (LOD) data involve sharing a texture image LOD among different mesh LODs for single-rate encoding. That is, a first texture image LOD corresponding to a first mesh LOD may be derived by refining a second texture image LOD corresponding to a second mesh LOD. This sharing is possible when texture atlases of LOD meshes are compatible.
    Type: Grant
    Filed: May 14, 2019
    Date of Patent: January 31, 2023
    Assignee: Google LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Patent number: 10977773
    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: Grant
    Filed: February 19, 2019
    Date of Patent: April 13, 2021
    Assignee: Google LLC
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • Publication number: 20200265611
    Abstract: Techniques of compressing level of detail (LOD) data involve sharing a texture image LOD among different mesh LODs for single-rate encoding. That is, a first texture image LOD corresponding to a first mesh LOD may be derived by refining a second texture image LOD corresponding to a second mesh LOD. This sharing is possible when texture atlases of LOD meshes are compatible.
    Type: Application
    Filed: May 14, 2019
    Publication date: August 20, 2020
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri
  • 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: 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: 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: 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: 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
  • 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: 20190279422
    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: Application
    Filed: March 6, 2018
    Publication date: September 12, 2019
    Inventors: Michael Hemmer, Pierre Alliez, Cedric Portaneri