The representation of objects in the real world structure
The system processes and projects three-dimensional models onto real-world structures using reflection and projection techniques, addressing the challenge of unauthorized projections and distortion, achieving high-quality visual displays for events.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SPHERE ENTERTAINMENT GROUP LLC
- Filing Date
- 2024-06-25
- Publication Date
- 2026-07-24
AI Technical Summary
Existing technologies lack efficient methods to project three-dimensional models onto real-world structures, such as buildings, for events like music, theater, and sports, without causing unauthorized projections or distortion.
A system and method to process a three-dimensional model of an object, generate a three-dimensional reflection model, and display it on a real-world structure, or convert it to a two-dimensional model for display, using mathematical projection functions and reflective surfaces.
Enables realistic and aesthetically pleasing projection of three-dimensional models onto real-world structures, reducing rendering errors and artifacts, suitable for various event venues.
Smart Images

Figure 2026524863000001_ABST
Abstract
Description
Background Art
[0001] (Background) The media and entertainment industries in the United States are the largest in the world. The media and entertainment industries in the United States account for one-third of the global media and entertainment industries that deliver events such as music events, theater events, sports events, and / or movie events, etc. to the audience seated inside the venue for their viewing entertainment. Content producers project images onto the buildings such as these venues using special video projection equipment. There are different types of projections that content producers can use to generate building projections. One of these is called guerrilla projection, which projects still or moving images from specialized mobile video projection equipment onto a building without permission. Another one of these represents a form of lighting design and technology where specialized mobile video projection equipment projects and / or distorts an image to fit the outline of a building, and is generally known as projection mapping, also called video mapping.
Summary of the Invention
Means for Solving the Problems
[0002] (Overview) The systems, methods, and apparatuses disclosed herein can process a three-dimensional model of an object in a three-dimensional space and display the object on a real-world structure. These systems, methods, and apparatuses can access a three-dimensional model of an object, generate a three-dimensional reflection model of the object, and / or provide the three-dimensional reflection model of the object to a real-world structure to display the object on the real-world structure. Alternatively, or in addition, these systems, methods, and apparatuses can convert the three-dimensional reflection model of the object onto a two-dimensional reflection model of the object, and / or provide the two-dimensional reflection model of the object to a real-world structure to display the object on the real-world structure.
[0003] This disclosure is described with reference to the accompanying drawings. In the drawings, similar reference numbers indicate the same or functionally similar elements. In addition, the leftmost digit of the reference number identifies the drawing in which the reference number first appears. [Brief explanation of the drawing]
[0004] [Figure 1] Figure 1 illustrates a simplified block diagram of an exemplary model processing system according to several exemplary embodiments of the present disclosure.
[0005] [Figure 2A] Figures 2A and 2B graphically illustrate exemplary behavioral control flows that may be implemented within an exemplary model processing system to display exemplary objects on a real-world structure, according to some exemplary embodiments of the present disclosure. [Figure 2B] Figures 2A and 2B graphically illustrate exemplary behavioral control flows that may be implemented within an exemplary model processing system to display exemplary objects on a real-world structure, according to some exemplary embodiments of the present disclosure.
[0006] [Figure 3] Figure 3 graphically illustrates an exemplary motion control flow that may be implemented within an exemplary model processing system to generate a three-dimensional reflection model of an exemplary object, according to some exemplary embodiments of the present disclosure.
[0007] [Figure 4] Figures 4A and 4B graphically illustrate exemplary motion control flows that may be implemented within an exemplary model processing system to capture a three-dimensional reflection model of an exemplary object, according to some exemplary embodiments of the present disclosure.
[0008] [Figure 5] Figure 5 illustrates a simplified block diagram of an exemplary computer system that may be implemented within an exemplary model processing system according to some exemplary embodiments of the present disclosure.
[0009] This disclosure will be described herein with reference to the accompanying drawings. [Modes for carrying out the invention]
[0010] (Detailed explanation) The following disclosure provides many different embodiments or examples for implementing different features of the subject matter provided. Specific examples of components and arrangements are described below for the sake of simplicity of this disclosure. These are, of course, examples only and are not intended to be limiting. Aspects of this disclosure will be best understood from the following detailed description, when read carefully together with the accompanying figures. This disclosure may repeat reference numbers and / or letters in various embodiments. This repetition does not in itself determine the relationships between the various embodiments and / or configurations discussed. Note that, in accordance with standard practice in this industry, features are not drawn to scale. In fact, the dimensions of features may be arbitrarily enlarged or reduced for the sake of clarity of discussion.
[0011] (An exemplary model processing system for displaying 3D models on real-world structures) Figure 1 illustrates a simplified block diagram of an exemplary model processing system according to several exemplary embodiments of the present disclosure. In the exemplary embodiments illustrated in Figure 1, the model processing system 100 can process a three-dimensional model of an object in three-dimensional space and display the object on a real-world structure. In some embodiments, the object may include simple objects such as cubes, prisms, pyramids, spheres, cones, and cylinders, to name a few examples, but more complex objects such as coastlines, buildings, forests, highways, industries, and mountains are also possible, as will be recognized by those skilled in the art without departing from the spirit and scope of the present disclosure. As will be described in more detail below, the model processing system 100 can generate a three-dimensional reflection model of the object in three-dimensional space from the three-dimensional model of the object. In some embodiments, the three-dimensional reflection model of the object, also referred to as the inside / outside model of the object, represents one or more reflected copies of the three-dimensional model of the object along one or more reflective surfaces in three-dimensional space. Furthermore, as will be described in more detail below, it may be advantageous for the model processing system 100 to transform the three-dimensional reflection model of an object from three-dimensional space onto two-dimensional space, thereby providing a two-dimensional reflection model of the object. In some embodiments, the model processing system 100 can display the three-dimensional reflection model and / or the two-dimensional reflection model of an object on a real-world structure, thereby displaying the object on the real-world structure. As illustrated in Figure 1, the model processing system 100 may include a model processing server 102 and a real-world structure 104. The following discussion may describe the real-world structure 104 as performing certain actions, but it should be understood that such descriptions are for convenience only, as will be recognized by those skilled in the art without departing from the spirit and scope of this disclosure, and that such actions actually result from the operation of one or more mechanical, electrical, and / or electromechanical devices contained within the real-world structure 104.
[0012] The model processing server 102 includes one or more computer systems, which are exemplary embodiments of those described in more detail below, capable of processing three-dimensional models of objects in three-dimensional space and displaying the objects on a real-world structure 104. In some embodiments, the model processing server 102 can access the three-dimensional models of objects in three-dimensional space. In some embodiments, the three-dimensional model of an object can be implemented as a shell or boundary model in three-dimensional space, however, a solid model in three-dimensional space can also be considered as possible, as will be recognized by those skilled in the art without departing from the spirit and scope of this disclosure. In some embodiments, the three-dimensional model of an object can represent a set of points having three-dimensional coordinates in three-dimensional space, interconnected by various geometric entities such as triangles, lines, and curved surfaces, to approximate one or more surfaces of the object, to name a few embodiments. In some embodiments, the three-dimensional model of an object can include coloring, texture mapping, shading, and lighting, to name a few embodiments, to further define one or more surfaces of the object, to name a few embodiments.
[0013] After accessing the object's 3D model, the model processing server 102 can generate a 3D reflection model of the object in 3D space from the object's 3D model. As described above, the 3D reflection model of the object, also referred to as the object's inner / outer model, represents one or more reflected copies of the object's 3D model along one or more reflective surfaces in 3D space. In some embodiments, the 3D reflection model of the object may look almost identical to the object's 3D model in 3D space, but may be inverted in several directions, which are normals to one or more reflective surfaces in 3D space. After generating the 3D reflection model of the object, the model processing server 102 can also provide the 3D reflection model of the object to the real-world structure space and display the object on the real-world structure 104.
[0014] Alternatively, or in addition, the model processing server 102 can transform the three-dimensional reflection model of an object from three-dimensional space onto two-dimensional space to provide a two-dimensional reflection model of the object. In some embodiments, the model processing server 102 can mathematically transform the three-dimensional reflection model of an object from three-dimensional space onto two-dimensional space according to mathematical projection functions such as equirectangular projection, equidistance fisheye projection, equistereoscopic fisheye projection, stereoscopic fisheye projection, equiangular cubic map projection, latitude / longitude projection, and / or any other suitable mathematical projection functions that will be apparent to those skilled in the art without departing from the spirit and scope of this disclosure. In some embodiments, the mathematical projection functions implemented by the model processing server 102 to transform the three-dimensional reflection model of an object may be based on the construction of the real-world structure 104 to produce a more realistic and aesthetically pleasing display of the two-dimensional reflection model of the object on the real-world structure 104, while simultaneously reducing rendering errors and / or artifacts. As an example, the model processing server 102 can implement an equirectangular projection function to transform the three-dimensional reflection model of an object based on the real-world structure 104, which is a hemispherical structure also known as a hemispherical dome. Alternatively or additionally, the model processing server 102 can provide the two-dimensional reflection model of the object to the real-world structure 104 space and display the object on the real-world structure 104.
[0015] The real-world structure 104 represents a building and / or non-building structure that receives a three-dimensional reflection model of an object and / or a two-dimensional reflection model of an object from the model processing server 102. Generally, a building structure refers to any preferred structure or more structures that are designed for human occupancy and may, in some embodiments, include one or more residential, industrial, and / or commercial building structures. For example, the real-world structure 104 may be implemented as a hemispherical structure, also referred to as a hemispherical dome, that hosts events such as music events, theatrical events, sporting events, movies, and / or any other preferred events that will be obvious to those skilled in the art without departing from the spirit and scope of this disclosure, as described above. The non-building structure refers to any preferred structure or more structures that are not designed for human occupancy and may, in some embodiments, include one or more residential, industrial, and / or commercial non-building structures. In some embodiments, the real-world structure 104 may include one or more visual displays that diverge from the outside of the real-world structure 104, i.e., across the outer shell. For example, the real-world structure 104 may include a programmable light-emitting diode (LED) light panel of approximately 55,700 square meters that generates the appearance of a large screen diverging from the outside of the real-world structure 104, i.e., across the outer shell. In these embodiments, one or more visual displays may include rows and columns of programmable pixels, also referred to as pixels, in three dimensions, forming one or more programmable pixel light panels for displaying a three-dimensional reflective model and / or a two-dimensional reflective model of an object. In these embodiments, pixels may be implemented using one or more light-emitting diode (LED) displays, one or more organic light-emitting diode (OLED) displays, and / or one or more quantum dot (QD) displays, to name a few examples. In some embodiments, the real-world structure 104 may map a three-dimensional reflective model and / or a two-dimensional reflective model of an object onto the pixels, i.e., across the outside, i.e., across the outer shell, and display the object across the outside, i.e., across the outer shell.
[0016] (An exemplary behavioral control flow for displaying exemplary objects on a real-world structure) Figures 2A and 2B graphically illustrate exemplary motion control flows that may be implemented within an exemplary model processing system to display exemplary objects on a real-world structure, according to some exemplary embodiments of the present disclosure. The following discussion is intended to describe exemplary motion control flows 200 and 220 for processing a three-dimensional model of an object, for example, a pumpkin, in three-dimensional space, in order to display the object on a real-world structure such as real-world structure 104, as described above. The present disclosure is not limited to these exemplary motion control flows. Rather, it will be apparent to those skilled in the art that other motion control flows are also within the scope and spirit of the present disclosure. Motion control flows 200 and 220 can be described in more detail below in relation to a three-dimensional model of a pumpkin, but this is for illustrative purposes only and is not intended to be limiting. Those skilled in the art will recognize that the operation control flows 200 and 220, as will be described in more detail below, can process other three-dimensional models of other objects in a manner substantially similar to those described in more detail below in Figures 2A and 2B, without departing from the spirit and scope of this disclosure, and display these objects on real-world structures. These other objects may include, in some embodiments, simple objects such as cubes, prisms, pyramids, spheres, cones, and cylinders, but more complex objects such as coastlines, buildings, forests, highways, industries, and mountains are also possible, as will be recognized by those skilled in the art, without departing from the spirit and scope of this disclosure. Furthermore, the operation control flows 200 and 220, as will be described in more detail below in Figures 2A and 2B, represent one or more modeling tools that, when executed by one or more computer systems such as the model processing server 102 described above, can process three-dimensional models of objects in three-dimensional space and display the objects on real-world structures.In some embodiments, one or more modeling tools may represent one or more software tools, such as 3D modeling, animation, simulation, and / or rendering software tools, which can be executed by the model processing server 102 to access a 3D model of an object, generate a 3D reflection model of an object, and / or provide the 3D reflection model of an object to a real-world structure and display the object on the real-world structure, as will be described in more detail below in Figure 2A. In these embodiments, one or more modeling tools may, alternatively or in addition, convert the 3D reflection model of an object onto a 2D reflection model of an object, and / or provide the 2D reflection model of an object to a real-world structure and display the object on the real-world structure, as will be described in more detail below in Figure 2B.
[0017] Referring to Figure 2A, the motion control flow 200 can access a three-dimensional model of an object, for example, a three-dimensional model 204 of a pumpkin, in operation 202. In some embodiments, the motion control flow 200 can receive a three-dimensional model of an object in three-dimensional space. In these embodiments, one or more computer systems can be communicably coupled to one or more machine-readable media that store the three-dimensional model of an object, to name a few embodiments, in particular, read-only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory devices, hard disk drives, for example, solid-state drives, floppy disk drives and associated removable media, CD-ROM drives, optical drives, flash memory, removable media cartridges, etc. In these embodiments, the motion control flow 200 can receive a three-dimensional model of an object from one or more machine-readable media. Alternatively, or in addition, the motion control flow 200 can create a three-dimensional model of an object, to name a few embodiments, for example, manually, algorithmically, and / or by scanning. In some embodiments, the motion control flow 200 can create a three-dimensional model of an object in three-dimensional space using one or more software tools. In these embodiments, one or more software tools can create a three-dimensional model of an object through parametric modeling, polygonal modeling, and / or digital sculpting, to name a few examples. In some embodiments, the motion control flow 200 can create a three-dimensional model of an object by scanning one or more reference materials of an object, such as one or more images and / or one or more videos of an object, to name a few examples. In some embodiments, the motion control flow 200 can create a three-dimensional model of an object by stitching together multiple images of an object, such as multiple photographs of an object, often referred to as photogrammetry.
[0018] In operation 206, the operation control flow 200 can generate a three-dimensional reflective model of an object from operation 202 in three-dimensional space, for example, a three-dimensional reflective model 208 of a pumpkin object as illustrated in Figure 2A. As described above, the three-dimensional reflective model of an object, also referred to as the inside / outside model of an object, represents one or more reflected copies of the three-dimensional model of the object from operation 202 along one or more reflective surfaces in three-dimensional space. In some embodiments, the operation control flow 200 can position the three-dimensional model of an object from operation 202, for example, the three-dimensional model 204 of a pumpkin, within a three-dimensional reflective volume 210 having one or more reflective surfaces. In some embodiments, the three-dimensional reflective volume 210 may include, among other things, a cube, a prism, a pyramid, a sphere, a cone, or a cylinder, to name a few examples. For convenience, a cut-out internal drawing or diagram of the three-dimensional reflective volume 210 with some of the one or more reflective surfaces removed to expose the three-dimensional model 204 of the pumpkin is illustrated in Figure 2A. In some embodiments, one or more reflective surfaces can be characterized as perfectly reflective surfaces; however, quasi-perfectly reflective surfaces are also possible, as will be recognized by those skilled in the art without departing from the spirit and scope of this disclosure. As illustrated in Figure 2A, the three-dimensional reflective volume 210 can be, for example, larger in volume to contain the three-dimensional model of the object from operation 202 within one or more reflective surfaces of the three-dimensional reflective volume 210 in three-dimensional space. As will be described in more detail below, the three-dimensional reflective volume 210 can reflect the three-dimensional model of the object, for example, the three-dimensional model of a pumpkin 204, onto one or more reflective surfaces in three-dimensional space. In some embodiments, the operation control flow 200 can capture the three-dimensional model of the object, for example, the three-dimensional model of a pumpkin 204, which is reflected onto one or more reflective surfaces, and construct a three-dimensional reflective model of the object from the three-dimensional model of the object from operation 202 in three-dimensional space.
[0019] In operation 212, the motion control flow 200 provides a three-dimensional reflection model of the object from operation 206 in a three-dimensional space, for example, the three-dimensional reflection model 208 of the pumpkin object, to the real-world structure and can display the object on the real-world structure. In some embodiments, the motion control flow 200 stores the three-dimensional reflection model of the object from operation 206 in any suitable well-known image file format such as, for example, the Joint Photographic Experts Group (JPEG) image file format, the Exchangeable Image File Format (EXIF), the Tagged Image File Format (TIFF), the Graphics Interchange Format (GIF), the Bitmap Image File (BMP) format, or the Portable Network Graphic (PNG) image file format, which will be apparent to those skilled in the art without departing from the spirit and scope of the present disclosure. In these embodiments, the motion control flow 200 provides the three-dimensional reflection model of the object from operation 206 in a three-dimensional space in a suitable well-known image file format to the real-world structure and can display the object on the real-world structure.
[0020] Referring to FIG. 2B, the motion control flow 220 can access the three-dimensional model of the object as described above in a three-dimensional space, for example, the three-dimensional model 204 of the pumpkin in operation 202 as described above. Also, as illustrated in FIG. 2B, the motion control flow 220 can generate a three-dimensional reflection model of the object from operation 202 in a three-dimensional space, for example, the three-dimensional reflection model 208 of the pumpkin object as described above.
[0021] In operation 222, the motion control flow 220 can convert the three-dimensional reflection model of the object from operation 206 from three-dimensional space and provide a two-dimensional reflection model of the object in two-dimensional space, for example, the two-dimensional reflection model 224 of the pumpkin object in two-dimensional space. In some embodiments, the motion control flow 220 collectively includes one or more three-dimensional coordinates (pos.x1, pos.y1, pos.z1), (pos.x2, pos.y2, pos.z2), ··· (pos.x n , pos.y n , pos.z n ) referred to as the three-dimensional coordinates pos.x, pos.y, and pos.z of the three-dimensional reflection model of the object from operation 206 in three-dimensional space, and can be mathematically converted onto one or more two-dimensional coordinates (uv.x1, uv.y1), (uv.x2, uv.y2), ··· (uv.x n , uv.y n ) referred to as the two-dimensional coordinates uv.x, uv.y of the two-dimensional reflection model of the object in two-dimensional space. In these embodiments, the motion control flow 220 can project the three-dimensional coordinates pos.x, pos.y, and pos.z of the three-dimensional reflection model of the object from operation 206 onto the two-dimensional coordinates uv.x, uv.y of the two-dimensional reflection model of the object in two-dimensional space according to a mathematical projection function such as an orthographic cylindrical projection function, an equidistant fisheye projection function, an equal-solid fisheye projection function, a solid fisheye projection function, an equiangular cube map projection function, a latitude / longitude projection function, and / or any other suitable mathematical projection function that will be apparent to those skilled in the art without departing from the spirit and scope of the present disclosure.
[0022] In operation 226, the operation control flow 200 provides a two-dimensional reflection model of an object from operation 222 in two-dimensional space, for example, a two-dimensional reflection model 224 of a pumpkin object, to a real-world structure, and the object can be displayed on the real-world structure. In some embodiments, the operation control flow 200 can store the two-dimensional reflection model of an object from operation 222 in any preferred well-known image file format, such as Joint Photographic Expert Group (JPEG) image file format, Interchangeable Image File Format (EXIF), Tagged Image File Format (TIFF), Graphics Interchange Format (GIF), Bitmap Image File (BMP) format, or Portable Network Graphics (PNG) image file format, to name a few embodiments, without departing from the spirit and scope of this disclosure, and will be obvious to those skilled in the art. In these embodiments, the operation control flow 200 provides a two-dimensional reflection model of an object from operation 222 in two-dimensional space in a preferred well-known image file format to a real-world structure, and the object can be displayed on the real-world structure.
[0023] (Exemplary motion control flow for generating a 3D reflection model of an exemplary object) Figure 3 graphically illustrates exemplary motion control flows that may be implemented within an exemplary model processing system to generate a three-dimensional reflective model of an exemplary object, according to some exemplary embodiments of the present disclosure. The present disclosure is not limited to these exemplary motion control flows. Rather, it will be apparent to those skilled in the art that other motion control flows are also within the scope and spirit of the present disclosure. The following discussion is intended to illustrate exemplary motion control flow 300 for generating a three-dimensional reflective model of an object. As described above, a three-dimensional reflective model of an object, also referred to as an inside / outside model of an object, represents one or more reflected copies of the three-dimensional model of the object along one or more reflective surfaces in three-dimensional space. In some embodiments, the object may include, to name a few examples, simple objects such as cubes, prisms, pyramids, spheres, cones, and cylinders, but more complex objects such as coastlines, buildings, forests, highways, industries, and mountains are also possible, as will be recognized by those skilled in the art without departing from the spirit and scope of the present disclosure. In some embodiments, the object may include, for example, a pumpkin as described above. The motion control flow 300 can be described in more detail below in relation to the three-dimensional model of the pumpkin, but this is for illustrative purposes only and is not intended to be limiting. Also, the motion control flow 300, as will be described in more detail below in Figure 3, represents one or more modeling tools that, when executed by one or more computer systems such as the model processing server 102 described above, can generate a three-dimensional reflection model of an object in three-dimensional space, as will be described in more detail below. In some embodiments, the motion control flow 300 can be an exemplary embodiment of the operation 206 described above.
[0024] As operation 302, the operation control flow 300 can position the virtual camera 304 within the three-dimensional model 306 of an object, for example, the three-dimensional model 204 of a pumpkin as described above, and / or the three-dimensional reflective volume 310, for example, the three-dimensional reflective volume 210 as described above. The three-dimensional reflective volume 310 will be described in more detail below. In some embodiments, the operation control flow 300 can position the virtual camera 304 within the center of the three-dimensional model 306 of the object in three-dimensional space. Alternatively, or in addition to the above, the operation control flow 300 can position the virtual camera 304 within the center of the three-dimensional reflective volume 310 in three-dimensional space. In these embodiments, the center of the three-dimensional model 306 of the object and / or the center of the three-dimensional reflective volume 310 can define a central focus, such as the origin of the three-dimensional model 306 of the object in three-dimensional space, in order for the operation control flow 300 to generate a three-dimensional reflective model of the object as described in more detail below. In these embodiments, the central focus can define an initial or starting point for generating a three-dimensional reflection model of an object in three-dimensional space. In some embodiments, the virtual camera 304 can be implemented as an omnidirectional camera, also referred to as a 360-degree camera, having a 360-degree spherical field of view that approximately covers a sphere or at least a circle in any plane of the sphere.
[0025] In operation 308, the operation control flow 300 causes the 3D model 306 of an object, for example, the 3D model 204 of a pumpkin, to be reflected onto the 3D reflective volume 310 in 3D space. In some embodiments, the 3D reflective volume 310 may include, among other things, a cube, a prism, a pyramid, a sphere, a cone, or a cylinder, to name a few examples. In some embodiments, the operation control flow 300 may position the virtual camera 304 and the 3D model 306 of the object within the 3D reflective volume 310 having one or more reflective surfaces 312. For convenience, a cutaway internal drawing or figure of the 3D reflective volume 310, in which some of the one or more reflective surfaces 312 have been removed to expose the 3D model 306 of the object, for example, the 3D model 204 of a pumpkin, is described above. In some embodiments, one or more reflective surfaces 312 can be characterized as perfectly reflective surfaces; however, quasi-perfectly reflective surfaces are also possible, as will be recognized by those skilled in the art without departing from the spirit and scope of this disclosure. As illustrated in Figure 3, the three-dimensional reflective volume 310 can be, for example, larger in volume than that, encompassing the three-dimensional model 306 of an object in order to encapsulate the three-dimensional model 306 of the object within one or more reflective surfaces 312 in three-dimensional space. As illustrated in the cut-out internal drawing or figure of the three-dimensional reflective volume 310, the operation control flow 300 can position one or more reflective surfaces 312 so as to reflect the three-dimensional model 306 of the object onto one or more reflective surfaces 312. In some embodiments, the three-dimensional reflective volume 310 can represent a shell or boundary model in three-dimensional space, having one or more reflective surfaces 312 on one or more internal surfaces of the three-dimensional reflective volume 310 to reflect the three-dimensional model 306 of an object.
[0026] In operations 314 and 316, the motion control flow 300 can capture a 3D model 306 of an object, for example, a 3D model 204 of a pumpkin, which is reflected off one or more reflective surfaces 312, and construct a 3D reflective model of the object in 3D space. In operation 314, the virtual camera 304 can radially disperse one or more virtual rays 318 in 3D space toward one or more reflective surfaces 312. In some embodiments, one or more virtual rays 318 can be emitted from a central focus from operation 302 toward one or more reflective surfaces 312 in 3D space. In some embodiments, the virtual camera 304 can radially disperse one or more virtual rays 318 from a central focus so as to traverse 360 degrees in 3D space, for example, a sphere in 3D space, or at least a circle in any plane of a sphere in 3D space. In some embodiments, the motion control flow 300 can make the 3D model 306 of an object transparent to one or more virtual rays 318. In these embodiments, the three-dimensional model 306 of the object can be completely or almost completely transparent to one or more virtual rays 318, effectively making the three-dimensional model 306 of the object opaque to one or more virtual rays 318, or thereby ignoring them. In operation 318, the virtual camera 304 can capture one or more virtual reflected rays 320 in three-dimensional space that are reflected by one or more reflective surfaces 312. In some embodiments, one or more virtual rays 318 can be reflected by one or more reflective surfaces 312, generating one or more virtual reflected rays 320. In some embodiments, one or more virtual reflected rays 320 pass through the three-dimensional model 306 of the object, for example, the three-dimensional model 204 of a pumpkin as described above. In these embodiments, one or more virtual reflected rays 320 pass through one or more three-dimensional coordinates in three-dimensional space, for example, the three-dimensional model 306 of the object in x, y, and z coordinates in a Cartesian coordinate system.In some embodiments, one or more virtual reflected rays 320 can capture color information of the object's 3D model 306 at one or more 3D coordinates in 3D space as the one or more virtual reflected rays 320 pass through the object's 3D model 306. In these embodiments, the color information may include the luminance and / or chromaticity color components of the YUV color model and / or the red, green, and / or blue color components of the RGB color model at one or more 3D coordinates. In some embodiments, a virtual camera 304 can capture one or more virtual reflected rays 320 after they have passed through the object's 3D model 306. In these embodiments, the motion control flow 300 can construct a 3D reflection model of the object from the color information of the object's 3D model 306 at one or more 3D coordinates and / or the virtual camera 304. In some embodiments, the motion control flow 300 can construct a three-dimensional reflection model of an object as a shell or boundary model in three-dimensional space; however, a solid model in three-dimensional space is also conceivable, as will be recognized by those skilled in the art, without departing from the spirit and scope of this disclosure.
[0027] Figures 4A and 4B graphically illustrate exemplary motion control flows that may be implemented within an exemplary model processing system to capture a three-dimensional reflection model of an exemplary object, according to some exemplary embodiments of the present disclosure. The present disclosure is not limited to these exemplary motion control flows; rather, it will be apparent to those skilled in the art that other motion control flows are also within the scope and spirit of the present disclosure. The following discussion describes an exemplary motion control flow 400 for capturing one or more virtual reflected rays in three-dimensional space, which are radially dispersed toward a three-dimensional reflection volume and / or reflected by the three-dimensional reflection volume. The motion control flow 400 also represents one or more modeling tools, which, when executed by one or more computer systems such as the model processing server 102 described above, are capable of radially dispersing one or more virtual rays and / or capturing one or more virtual reflected rays, and which will be described in more detail below. In some embodiments, the exemplary operation control flow 400 may represent exemplary embodiments of operations 314 and 316 as described above.
[0028] In operation 402, the operation control flow 400 can radially disperse one or more virtual rays in three-dimensional space toward the three-dimensional reflective volume 310. In some embodiments, the operation control flow 400 can position a virtual camera 304 within the three-dimensional reflective volume 310 having one or more reflective surfaces 312 in a manner substantially similar to those described above. As shown in Figure 4, the virtual camera 304 can radially disperse a virtual ray 404, for example, one of the one or more virtual rays 318 in three-dimensional space as described above toward one or more reflective surfaces 312 of the three-dimensional reflective volume 310. In some embodiments, the virtual ray 404 can be emitted from a central focus along an optical path, for example, a straight path, shown as a black dot in Figures 4A and 4B, toward one or more reflective surfaces 312 of the three-dimensional reflective volume 310 in three-dimensional space. As shown in Figure 4A, the virtual ray 404 can intersect with one or more reflective surfaces 312 of the three-dimensional reflective volume 310. In some embodiments, the virtual ray 404 can intersect with one or more reflective surfaces 312 of the three-dimensional reflective volume 310 at a first three-dimensional point P1 on the three-dimensional reflective volume 310 in three-dimensional space. In these embodiments, the first three-dimensional point P1 may have spherical coordinates (r1, θ, φ) in three-dimensional space, to give an example. In some embodiments, the motion control flow 400 can make the three-dimensional model 306 of the object shown in Figure 4B transparent to one or more virtual rays 318 as shown in Figure 4A. In these embodiments, the three-dimensional model 306 of the object can be completely or almost completely transparent to the virtual ray 404, effectively making the three-dimensional model 306 of the object opaque to the virtual ray 404, or thereby ignoring it.
[0029] In operation 410, the operation control flow 400 can capture a three-dimensional model 306 of an object reflected onto the three-dimensional reflective volume 310 in three-dimensional space. As shown in Figure 4B, one or more reflective surfaces 312 of the three-dimensional reflective volume 310 can reflect a virtual ray 404 to provide a virtual reflected ray 406, for example, one or more virtual reflected rays 320 as described above. In some embodiments, the virtual reflected ray 406 is reflected from one or more reflective surfaces 312 of the three-dimensional reflective volume 310 toward the central focal point. In these embodiments, the virtual reflected ray 406 is reflected from a first three-dimensional point P1 on the three-dimensional reflective volume 310 toward the central focal point as shown in Figure 4A, following the same optical path as the virtual ray 404, for example, the same straight-line path as described above. In some embodiments, the virtual reflected ray 406 can intersect the object's 3D model 306 at a second 3D point P2 on the object's 3D model 306 in 3D space. In these embodiments, the second 3D point P2 may have spherical coordinates (r2, θ, φ) in 3D space, for example, in one embodiment, where the second radius r2 of the second 3D point P2 is less than the first radius r1 of the first 3D point P1. In some embodiments, the virtual ray 404 and / or virtual reflected ray 406 may be implemented as white light having a combination of one or more colors in the color spectrum. In these embodiments, the object's 3D model 306 may allow other colors in the color spectrum to pass through while absorbing some of the colors in the color spectrum. In these embodiments, the virtual reflected ray 406 having these other colors can pass through the object's 3D model 306 to above the central focus and be captured by the virtual camera 304. In some embodiments, the virtual camera 304 can capture color information of the 3D model 306 of the object at the second 3D point P2 from the virtual reflected light rays 406.In these embodiments, the color information may include the luminance and / or chromaticity components of a YUV color model in one or more three-dimensional coordinates, and / or the red, green, and / or blue components of an RGB color model in one or more three-dimensional coordinates.
[0030] In some embodiments, the motion control flow 400 can associate the color information of the 3D model 306 of the object captured at the second 3D point P2 with the coordinates of the second 3D point P2, for example, the coordinates (r2, θ, φ). In these embodiments, the motion control flow 400 can store the color information of the 3D model 306 of the object captured at the second 3D point P2 as an organized collection of data, often referred to as a database. The database may include, in some embodiments, one or more data tables having data values such as alphanumeric strings, integers, decimals, floating-point numbers, dates, times, binary values, Boolean values, and / or enumerations. The database may be, in some embodiments, a columnar database, a relational database, a keystore database, a graph database, and / or a document store.
[0031] (An exemplary computer system that can be implemented within an exemplary model processing system) Figure 5 illustrates a simplified block diagram of an exemplary computer system that may be implemented within an exemplary model processing system according to some exemplary embodiments of the present disclosure. The subsequent discussion of Figure 5 is for the purpose of illustrating a computer system 500 used to implement one or more mechanical, electrical, and / or electromechanical devices contained within the model processing server 102 and / or real-world structure 104, as described above.
[0032] In the embodiment illustrated in Figure 5, the computer system 500 includes one or more processors 502. In some embodiments, the one or more processors 502 may include, or be, any of the following: a microprocessor, a graphics processing unit, or a digital signal processor, and their electronic equivalents, such as an application-specific integrated circuit ("ASIC") or a field-programmable gate array ("FPGA"). As used herein, the term "processor" typically refers to a tangible data and information processing device that physically transforms data and information using sequence transformations (also referred to as "operations"). Data and information may be physically represented by electrical, magnetic, optical, or acoustic signals that can be stored, accessed, transferred, combined, compared, or otherwise manipulated by the processor. The term "processor" may refer to a single processor and a multi-core system or multi-processor array, including a graphics processing unit, a digital signal processor, a digital processor, or a combination of these elements. A processor may be an electronic device, for example, comprising a digital logic network (e.g., binary logic) or analog (e.g., an operational amplifier). Processors may also operate within a "cloud computing" environment or as "software as a service" (SaaS) to support the performance of related operations. For example, at least part of an operation may be performed by a group of processors available in a distributed or remote system, which are accessible via a communication network (e.g., the Internet) and via one or more software interfaces (e.g., application programming interfaces (APIs)).In some embodiments, the computer system 500 may include an operating system such as Microsoft's Windows®, Sun Microsystems' Solaris®, Apple Computer's MacOs, Linux®, or UNIX®. In some embodiments, the computer system 500 may also include a basic input / output system (BIOS) and processor firmware. The operating system, BIOS, and firmware are used by one or more processors 502 to control subsystems and interfaces coupled to one or more processors 502. In some embodiments, one or more processors 502 may include Intel's Pentium® and Itanium, Advanced Micro Devices' Opteron and Athlon, and ARM Holdings' ARM processors.
[0033] As illustrated in Figure 5, the computer system 500 may include a machine-readable medium 504. In some embodiments, the machine-readable medium 504 may further include a main random access memory ("RAM") 506, a read-only memory ("ROM") 508, and / or a file storage subsystem 510. The RAM 530 may store instructions and data during program execution, and the ROM 532 may store fixed instructions. The file storage subsystem 510 provides persistent storage for program and data files and may include a hard disk drive, a floppy disk drive and associated removable media, a CD-ROM drive, an optical drive, flash memory, or a removable media cartridge.
[0034] The computer system 500 may further include a user interface input device 512 and a user interface output device 514. The user interface input device 512 may, in some embodiments, include pointing devices such as alphanumeric keyboards, keypads, mice, trackballs, touchpads, styluses, or graphics tablets; audio input devices such as scanners, touchscreens integrated into displays, speech recognition systems, or microphones; eye-tracking recognition; electroencephalogram pattern recognition; and other types of input devices. The user interface input device 512 may be connected to the computer system 500 by wire or wirelessly. Generally, the user interface input device 512 is intended to include all conceivable types of devices and methods for inputting information into the computer system 500. Typically, the user interface input device 512 allows a user to identify objects, icons, text, and equivalents appearing on several types of user interface output devices, e.g., on a display subsystem. The user interface output device 520 may include non-visual displays such as display subsystems, printers, fax machines, or audio output devices. The display subsystem may include flat panel devices such as cathode ray tubes (CRTs) and liquid crystal displays (LCDs), projection devices, or other devices for generating visible images, such as virtual reality systems. The display subsystem may also provide non-visual displays via audio output or haptic output (e.g., vibration) devices. In general, the user interface output device 520 is intended to include devices and methods of any type that can be considered as any possibility for outputting information from the computer system 500.
[0035] The computer system 500 may further include a network interface 516 for providing an interface to an external network, including an interface to a communication network 518, which is coupled to a corresponding interface device in another computer system or machine via the communication network 518. The communication network 518 may comprise many interconnected computer systems, machines, and communication links. These communication links may be wired links, optical links, wireless links, or any other devices for the transmission of information. The communication network 518 may be any suitable computer network, such as a wide area network like the Internet, and / or a local area network like Ethernet®. The communication network 518 may be wired and / or wireless, and the communication network may use encryption and decryption methods, such as those available using a virtual private network. The communication network uses one or more communication interfaces that can receive data from and transmit data to other systems. Embodiments of the communication interface typically include Ethernet® cards, modems (e.g., telephone, satellite, cable, or ISDN), (asynchronous) digital subscriber line (DSL) units, Firewire® interfaces, USB interfaces, and equivalents. One or more communication protocols such as HTTP, TCP / IP, RTP / RTSP, IPX, and / or UDP may be used.
[0036] As illustrated in Figure 5, one or more processors 502, machine-readable media 504, user interface input devices 512, user interface output devices 514, and / or network interfaces 516 can be coupled together to communicate with each other using a bus subsystem 520. Although the bus subsystem 520 is schematically shown as a single bus, alternative embodiments of the bus subsystem may use multiple buses. For example, RAM-based main memory can communicate directly with a file storage system using a direct memory access ("DMA") system.
[0037] (Conclusion) For detailed descriptions, accompanying drawings are used to illustrate exemplary embodiments consistent with this disclosure. The use of the term "an exemplary embodiment" in this disclosure indicates that an exemplary embodiment described may include certain features, structures, or characteristics, but not all exemplary embodiments may necessarily include those features, structures, or characteristics. Furthermore, such phrases do not necessarily refer to the same exemplary embodiment. In addition, any feature, structure, or characteristic described in relation to an exemplary embodiment may be included independently or in any combination with features, structures, or characteristics of other exemplary embodiments, whether expressly described or not.
[0038] The detailed description is not intended to be restrictive. Rather, the scope of this disclosure is defined solely by the following claims and their equivalents. It should be understood that the detailed description section, and not the abstract section, is intended to be used to interpret the claims. The abstract section may describe one or more exemplary embodiments of this disclosure, but not all of them, and is therefore not intended to limit in any way this disclosure and the following claims and their equivalents.
[0039] The exemplary embodiments described herein are provided for illustrative purposes only and are not intended to be limiting. Other exemplary embodiments may be conceivable, and modifications may be made to the exemplary embodiments, while remaining within the spirit and scope of this disclosure. This disclosure is described with the help of functional components that illustrate the implementation of the defined functions and their relationships. The boundaries of these functional components are defined arbitrarily herein for the convenience of explanation. Alternative boundaries may be defined, insofar as their defined functions and relationships are adequately implemented.
[0040] Embodiments of the Disclosure may be implemented in hardware, firmware, software applications, or any combination thereof. Embodiments of the Disclosure may also be implemented as instructions stored on a machine-readable medium that can be read and executed by one or more processors. The machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing network). For example, the machine-readable medium may include non-transient machine-readable media such as read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash memory devices, and others. In another embodiment, the machine-readable medium may include transient machine-readable media such as electrical, optical, acoustic, or other forms of propagating signals (e.g., carrier waves, infrared signals, digital signals, etc.). Furthermore, firmware, software applications, routines, and instructions may be described herein as performing certain actions. However, please understand that such explanations are merely for convenience, and that such actions actually result from computing devices, processors, controllers, or other devices that execute firmware, software applications, routines, instructions, etc.
[0041] The detailed description of exemplary embodiments fully reveals the general nature of this disclosure that others may readily modify and / or adapt such exemplary embodiments for various uses by applying the knowledge of those skilled in the art, without undue experimentation and without departing from the spirit and scope of this disclosure. Such adaptations and modifications are therefore intended to be within the meaning of the exemplary embodiments and their equivalents, based on the teachings and guidance presented herein. It should be understood that the terminology or language used herein is for illustrative purposes only, and not for restrictive purposes, so that it may be interpreted by those skilled in the art in light of the teachings herein.
Claims
1. A model processing server for displaying objects on a real-world structure, wherein the model processing server is A memory configured to store a three-dimensional model of the object in three-dimensional space, A processor configured to execute instructions stored in the aforementioned memory. Equipped with, When the aforementioned instruction is executed by the processor, Accessing the three-dimensional model of the object stored in the memory, To generate a three-dimensional reflection model of the object in the three-dimensional space, To provide a two-dimensional reflection model of the object in two-dimensional space, the three-dimensional reflection model of the object is transformed from the three-dimensional space, To provide the two-dimensional reflection model of the object in the two-dimensional space to the real-world structure and to display the object. A model processing server configured to perform the aforementioned processor.
2. The model processing server according to claim 1, wherein the three-dimensional reflection model of the object represents one or more reflected copies of the three-dimensional model of the object along one or more reflective surfaces in the three-dimensional space.
3. When the aforementioned instruction is executed by the processor, Positioning the three-dimensional model of the object within a three-dimensional reflective volume having one or more reflective surfaces, Capture the three-dimensional model of the object reflected on one or more reflective surfaces, and construct the three-dimensional reflection model of the object from the three-dimensional model of the object in the three-dimensional space. The model processing server according to claim 2, further configured to perform the above-mentioned processor.
4. The model processing server according to claim 3, wherein, when the instruction is executed by the processor, the processor is further configured to capture reflected light rays after they have passed through the three-dimensional reflection model of the object.
5. When the aforementioned instruction is executed by the processor, Positioning the virtual camera at the central focal point within the three-dimensional reflective volume having one or more reflective surfaces, Using the aforementioned virtual camera, capture the reflected light rays. The model processing server according to claim 4, further configured to perform the processor.
6. The model processing server according to claim 1, wherein, when the instruction is executed by the processor, the processor is configured to mathematically transform one or more three-dimensional coordinates of the three-dimensional reflection model of the object in the three-dimensional space onto one or more two-dimensional coordinates of the two-dimensional reflection model of the object in the two-dimensional space.
7. The model processing server according to claim 6, wherein, when the instruction is executed by the processor, the processor is configured to mathematically transform one or more three-dimensional coordinates of the three-dimensional reflection model of the object onto one or more two-dimensional coordinates of the two-dimensional reflection model of the object, according to an equirectangular projection function, an equidistance fisheye projection function, an equistereoscopic fisheye projection function, a stereoscopic fisheye projection function, an equiangular cubic map projection function, or a latitude / longitude projection function.
8. A method for displaying objects on a real-world structure, wherein the method is The model processing server accesses the three-dimensional model of the object in three-dimensional space, The model processing server generates a three-dimensional reflection model of the object in the three-dimensional space, The model processing server converts the three-dimensional reflection model of the object from the three-dimensional space to provide a two-dimensional reflection model of the object in the two-dimensional space. To provide the two-dimensional reflection model of the object in the two-dimensional space to the real-world structure and to display the object. Methods that include...
9. The method according to claim 8, wherein the three-dimensional reflection model of the object represents one or more reflected copies of the three-dimensional model of the object along one or more reflective surfaces in the three-dimensional space.
10. To cause the aforementioned to occur, The model processing server positions the three-dimensional model of the object within a three-dimensional reflective volume having one or more reflective surfaces. The model processing server captures the three-dimensional model of the object reflected on one or more reflective surfaces, and constructs the three-dimensional reflection model of the object from the three-dimensional model of the object in the three-dimensional space. The method according to claim 9, including the method described in claim 9.
11. The method according to claim 10, wherein the capturing includes capturing the reflected light rays after they have passed through the three-dimensional reflection model of the object, which have been reflected by one or more reflective surfaces.
12. Capturing the reflected light rays is Positioning the virtual camera at the central focal point within the three-dimensional reflective volume having one or more reflective surfaces, Using the aforementioned virtual camera, capture the reflected light rays. The method according to claim 11, including the method described in claim 11.
13. The method according to claim 8, wherein the transformation includes mathematically transforming one or more three-dimensional coordinates of the three-dimensional reflection model of the object in the three-dimensional space onto one or more two-dimensional coordinates of the two-dimensional reflection model of the object in the two-dimensional space.
14. The method according to claim 13, wherein the mathematical transformation includes mathematically transforming one or more three-dimensional coordinates of the three-dimensional reflection model of the object onto one or more two-dimensional coordinates of the two-dimensional reflection model of the object, according to an equirectangular projection function, an equidistance fisheye projection function, an equistereoscopic fisheye projection function, a stereoscopic fisheye projection function, an equiangular cubic map projection function, or a latitude / longitude projection function.
15. A system for displaying objects, wherein the system is A model processing server, wherein the model processing server is Accessing the three-dimensional model of the object in three-dimensional space, To generate a three-dimensional reflection model of the object in the three-dimensional space, To provide a two-dimensional reflection model of the object in two-dimensional space, the three-dimensional reflection model of the object is transformed from the three-dimensional space. A model processing server configured to perform the following: A structure having a plurality of pixels, wherein the plurality of pixels diverge across the outside of the structure, and the structure is configured to map the two-dimensional reflection model of the object onto the pixels that traverse the outside of the structure, and to display the object that traverses the outside of the structure. A system equipped with these features.
16. The system according to claim 15, wherein the three-dimensional reflection model of the object represents one or more reflected copies of the three-dimensional model of the object along one or more reflective surfaces in the three-dimensional space.
17. The aforementioned model processing server further: Positioning the three-dimensional model of the object within a three-dimensional reflective volume having one or more reflective surfaces, Capture the three-dimensional model of the object reflected on one or more reflective surfaces, and construct the three-dimensional reflection model of the object from the three-dimensional model of the object in the three-dimensional space. The system according to claim 16, configured to perform the following:
18. The system according to claim 17, wherein the model processing server is further configured to capture reflected light rays after they have passed through the three-dimensional reflection model of the object, reflected by one or more reflective surfaces.
19. The system according to claim 15, wherein the model processing server is configured to mathematically transform one or more three-dimensional coordinates of the three-dimensional reflection model of the object in the three-dimensional space onto one or more two-dimensional coordinates of the two-dimensional reflection model of the object in the two-dimensional space, according to an equirectangular projection function, an equidistance fisheye projection function, an equistereoscopic fisheye projection function, a stereoscopic fisheye projection function, an equiangular cubic map projection function, or a latitude / longitude projection function.
20. The system according to claim 15, wherein the structure comprises a hemispherical structure.