US 12,432,267 B2
3D mesh generation on a server
Pavan K. Kamaraju, London (GB); and Renganathan Veerasubramanian, Pleasanton, CA (US)
Assigned to STREEM, LLC, Portland, OR (US)
Filed by STREEM, LLC, Portland, OR (US)
Filed on May 28, 2021, as Appl. No. 17/333,896.
Prior Publication US 2022/0385721 A1, Dec. 1, 2022
Int. Cl. G06T 17/20 (2006.01); H04L 67/02 (2022.01); H04L 67/06 (2022.01)
CPC H04L 67/06 (2013.01) [G06T 17/20 (2013.01); H04L 67/02 (2013.01)] 7 Claims
OG exemplary drawing
 
1. A method for implementing a 3D mesh on a server for a two-way interactive augmented reality session, the method comprising:
receiving, by the server from a device, data associated with a physical environment of a first user of the device, the data including images from a video captured by a camera associated with the device, one or more depth maps associated, respectively, with the images, and one or more camera positions associated, respectively, with the images;
generating, by the server, a 3D mesh based upon the received data in real-time;
performing texture mapping, by the server, where the images from the video are used as texture maps and mapped onto the 3D mesh to generate a textured 3D mesh representing the physical environment of the first user;
streaming, by the server to an other device of a second user, the textured 3D mesh, wherein the other device renders a 3D model based on the textured 3D mesh and presents the 3D model on a display device for viewing by the second user;
receiving, by the server from the other device in real-time, additional data that includes changes made by the second user to the 3D model, the changes including any augmented reality (AR) elements inserted into the 3D model;
updating, by the server, the textured 3D mesh with the additional data in real-time; and
transmitting, by the server, the updated textured 3D mesh back to the device of the first user for viewing in real-time to implement an interactive AR session using the 3D mesh between the first user and the second user; and
iteratively repeating the receiving, generating, updating, and transmitting steps to enable real-time bi-directional manipulation and viewing of the 3D mesh by both the first user and the second user.