Patent application number | Description | Published |
20080218526 | System and Method for Image-Based Rendering with Object Proxies - A system and method for rendering with an object proxy. In one embodiment, a method includes forming a set of view textures corresponding to a set of viewing directions; selecting a viewing direction for rendering; selecting at least two view textures from the formed set based on the selected viewing direction; and rendering the object proxy at the selected viewing direction. The rendering step includes applying texture from the selected view textures onto the selected object proxy. The view texture set forming step includes: calculating texture coordinates for the object proxy based on the level of obstruction at different portions of the object proxy and texture packing data; and drawing portions of the object based on the level of obstruction data for the object proxy and based on the texture packing data to obtain a view texture at the selected viewing direction. | 09-11-2008 |
20090058871 | Example-Based Procedural Synthesis of Element Arrangements - Method and apparatus for synthesizing element arrangements from an example. Embodiments may synthesize element arrangement patterns from an example arrangement. Embodiments may combine a texture synthesis technique based on local neighborhood comparison of an example and a target with procedural modeling based on local growth. Given an example, connectivity of elements may be constructed to get neighborhoods information of each element. A synthesis process may start with a single seed and expand the synthesized pattern by placing new elements at seed locations one by one. A reference element may be selected from the example that has neighborhood features that are most similar to neighborhood features of the target seed in the synthesized pattern. A non-rotation mode, a rotation mode, and a flow field mode may be provided. A painting tool, a flow field tool, and a boundary tool may be provided. | 03-05-2009 |
20090184960 | System and Methods for Rendering Transparent Surfaces in High Depth Complexity Scenes Using Hybrid and Coherent Layer Peeling - Systems, methods, and computer-readable storage media for rendering three-dimensional scenes including transparent surfaces are described, including two techniques for efficient rendering of transparent surfaces that exploit partial ordering in the scene geometry. The first (hybrid layer peeling) may combine unordered meshes with ordered meshes in an efficient way, and may be well suited for rendering scenes such as volumes with embedded transparent meshes. The second (coherent layer peeling) may efficiently detect and render correctly sorted fragment sequences for a given pixel in one iteration, allowing for a smaller number of passes than traditional depth peeling. Pre-sorting and/or periodic sorting of some or all of the surfaces in a scene may be performed, but perfect sorting may not be required. The methods may be implemented in hardware, software, or a combination thereof, such as by program instructions executable on one or more CPUs and/or GPUs. | 07-23-2009 |
20110175924 | System and Method for Image-Based Rendering with Object Proxies - A system and method for rendering with an object proxy. In one embodiment, a method includes forming a set of view textures corresponding to a set of viewing directions; selecting a viewing direction for rendering; selecting at least two view textures from the formed set based on the selected viewing direction; and rendering the object proxy at the selected viewing direction. The rendering step includes applying texture from the selected view textures onto the selected object proxy. The view texture set forming step includes: calculating texture coordinates for the object proxy based on the level of obstruction at different portions of the object proxy and texture packing data; and drawing portions of the object based on the level of obstruction data for the object proxy and based on the texture packing data to obtain a view texture at the selected viewing direction. | 07-21-2011 |
20130120392 | Methods and Apparatus for Specifying and Interpolating Hierarchical Procedural Models - Methods and apparatus for procedural modeling are described for generating procedural models and exploring procedural model space. Common procedural components (models, modules, and methods) and a hierarchical framework are described that may be used to construct hierarchical procedural models. A model may comprise a hierarchy of one or more modules. Each module includes a sequence of methods and an optional geometry for display. A method may be controlled by one or more parameters. The values of the parameters may be specified via curves. A module description may be condensed into a single array of values for parameters of the module. Thus, a model or module may be specified by filling in values for arrays of parameters for the sequence of methods. An interpolation technique for interpolating between models is described in which models are matched according to a cost function so that ancestry is preserved. | 05-16-2013 |
20130124151 | Methods and Apparatus for Printability of Three-Dimensional Objects - Methods and apparatus for improving printability of a three-dimensional model are disclosed. For a computer-based three-dimensional model to be generated by a three-dimensional printing system, a three-dimensional printability analysis of the model is performed. The three-dimensional printability analysis applies one or more test cases representing forces that may be applied to the model. The three-dimensional printability analysis generates one or more points at which stresses associated with the test case exceed the structural tolerances of a material to be used by the three-dimensional printing system for a fabrication of the model. For each point of the one or more points, one or more corrections to the model designed to decrease the stresses associated with a respective test case are calculated. For each test case, the corrections are evaluated. The evaluating includes selecting a preferred correction based on one or more criteria. | 05-16-2013 |
20130127890 | Polygon Processing Techniques in Procedural Painting Algorithms - Techniques for improving the performance of vector-based, fluid motion simulation techniques in procedural painting algorithms. The techniques may be implemented in procedural painting algorithms that employ a vector-based, fluid motion simulation technique to help achieve dynamic and serendipitous behaviors of watercolor painting at good interactive rates even on relatively low-powered devices. The techniques may include resampling the vertices of pigment polygons after growth at least at some iterations of the algorithm to provide smoother, more uniform growth; rasterizing dried pigment polygons into a texture so that the dried polygons are not rendered at each iteration of the algorithm; and rendering only a subset of live pigment polygons at each iteration of the algorithm. Polygons used by the techniques may be separated into static water polygons and dynamic pigment polygons. | 05-23-2013 |
20130127898 | Separating Water from Pigment in Procedural Painting Algorithms - Techniques for improving the performance of vector-based, fluid motion simulation techniques. The techniques may be implemented in procedural painting algorithms that employ a vector-based, fluid motion simulation technique to help achieve dynamic, serendipitous behaviors of painting at good interactive rates even on relatively low-powered devices. Instead of employing polygons in a procedural painting algorithm that are combinations of pigment and water, a technique may be employed in which the polygons are separated into pigment polygons and water polygons. The water polygons are not rendered; only the pigment polygons are rendered. To improve the performance of the wetness determination at vertices of the pigment polygons, a technique may be used that first rasterizes all of the water polygons into a buffer, which may be referred to as a wetness layer or wetmap; the wetness at a vertex is then determined by sampling this buffer or layer at the vertex's position. | 05-23-2013 |
20130132053 | Methods and Apparatus for Simulation Of Fluid Motion Using Procedural Shape Growth - Methods and apparatus for simulating fluid motion using procedural shape growth. In a vector-based, fluid motion simulation technique, fluid location may be defined by groups of one or more polygons deposited on a digital canvas. Two or more polygons may overlap. The polygons may be semitransparent. To simulate fluid motion, vertices that specify the edges of each deposited polygon are independently moved. By moving the vertices, a polygon may grow, and fluid motion effects may be simulated, including but not limited to directional flow and blending effects. A randomization technique may be applied to the movement at each vertex to simulate the non-uniform spreading of fluids. Overlapped polygons may be blended with overlapping polygons to simulate the mixing of fluids. The technique may be applied, for example, in watercolor painting simulation, where groups of one or more polygons are deposited using brush strokes. | 05-23-2013 |
20130243306 | Methods and Apparatus for 3D Camera Positioning Using a 2D Vanishing Point Grid - Methods and apparatus for three-dimensional (3D) camera positioning using a two-dimensional (2D) vanishing point grid. A vanishing point grid in a scene and initial camera parameters may be obtained. A new 3D camera may be calculated according to the vanishing point grid that places the grid as a ground plane in a scene. A 3D object may then be placed on the ground plane in the scene as defined by the 3D camera. The 3D object may be placed at the center of the vanishing point grid. Once placed, the 3D object can be moved to other locations on the ground plane or otherwise manipulated. The 3D object may be added as a layer in the image. | 09-19-2013 |
20130321690 | Methods and Apparatus for Refocusing via Video Capture - Methods and apparatus for refocusing via video capture are disclosed. In response to an image capture request, a multi-focus image data structure including a plurality of image data structures representing a scene is captured. The capturing the plurality of image data structures further includes capturing a first image data structure, altering a focal distance of a lens apparatus focusing light on a photosensor, and capturing a second image data structure. | 12-05-2013 |
20140168254 | Using Genetic Algorithm to Design 2-Dimensional Procedural Patterns - Selection of an area of an image can be received. Selection of a subset of a plurality of predefined patterns may be received. A plurality of patterns can be generated. At least one generated pattern in the plurality of patterns may be based at least in part on one or more predefined patterns in the subset. Selection of another subset of patterns may be received. At least one pattern in the other subset of patterns may be selected from the plurality of predefined patterns and/or the generated patterns. Another plurality of patterns can be generated. At least one generated pattern in this plurality of patterns may be based at least on part on one or more patterns in the other subset. Selection of a generated pattern from the generated other plurality of patterns may be received. The selected area of the image may be populated with the selected generated pattern. | 06-19-2014 |
20140169684 | Distance Metric for Image Comparison - Systems and methods are provided for generating a distance metric. An image manipulation application receives first and second input images. The image manipulation application generates first and second sets of points corresponding to respective edges of a first object in the first input image and a second object in the second input image. The image manipulation application determines costs of arcs connecting each point from the first set to each point of the second set based on point descriptors for each point of each arc. The image manipulation application determines a minimum set of costs between the first set and the second set that includes a cost of each arc connecting each point of the second set to a point in the first set. The image manipulation application obtains, based at least in part on the minimum set of costs, a distance metric for first and second input images. | 06-19-2014 |
20140311651 | Offset 3D Printing - This document describes techniques and apparatuses for offset three-dimensional (3D) printing. These techniques are capable of creating smoother surfaces and more-accurate structures than many current techniques. In some cases, the techniques provide a first stage of filaments separated by offsets and, at a second stage, provide filaments over these offsets. In so doing, filaments of the second stage partially fill-in these offsets, which can remove steps, increase accuracy, or reduce undesired production artifacts. | 10-23-2014 |