320 likes | 335 Views
Синтез изображений по изображениям. Рельефные текстуры. Сегодня на лекции. Введение в Синтез Изображений по Изображениям (Image-Based Rendering) Простейшие методы IBR Рельефные текстуры (relief textures). Traditional Rendering. For photorealism Modeling is hard Rendering is slow.
E N D
Синтез изображений по изображениям.Рельефные текстуры
Сегодня на лекции • Введение в Синтез Изображений по Изображениям(Image-Based Rendering) • Простейшие методы IBR • Рельефные текстуры(relief textures)
Traditional Rendering • For photorealism • Modeling is hard • Rendering is slow User input texture maps, survey data Modeling Geometry Textures Light sources Rendering Images
Image-Based Rendering • Основные идеи: • Использование изображений (фотографий) в качестве исходных данных • Использование методов обработки изображений для визуализации.
Image-Based Rendering • For photorealism • Fast modeling • Complexity independent rendering Images user input range scanners Modeling Images & depth maps Rendering Images
Traditional vs. Image-based • Imagebased computer graphics has three main advantages • Photorealism of produced images • The speed • Simple modeling
Simplest IBR methods. Texture • Texture - is the simplest of IBR methods.
Simplest IBR methods. Sprites • Texture + simple planar geometry = Sprite • Sprites are taken from certain camera position (sprite camera)
Simplest IBR methods. Sprites • No geometry information and... • Sprites are looking good from view-points close to the sprite camera, but awful from others
3D model rendering distortions • What are we missing? • The effect of 3-dimensionality on the screen is a combination of two effects: perspective distortion and parallax • Sprites are capable of producing perspective distortions but they are unable to produce correct parallax effect
Sprites with Depth • Combine depth and color: • Color texel now is a 3D sample.
Warping • Using the samples z-values, image can be transformed (or warped), to enchance the image descriptive power (realism)
3D point position from a pinhole camera • One image is not enough to determine location of a point in 3D.
From two cameras • If we have two cameras, Camera1 and Camera2 with different parameters, capturing the same scene from different locations, a point can be expressed as
Schematic view Warping x’ = warp(x) Depth map Final view Parallax, perspective projection, translation
Relief textures • Most of modern 3D accelerators can ultimately fast render textured triangles • => We can use this capability to speed up and simplify Image-Based Rendering • Such an algorithm is called Relief Textures
Schematic view Software Hardware Pre-warping Texture mapping Relief textures Warped textures Final view Parallax Perspective projection, translation
New warping function • x’ = warp(x) = g(h(x), Poly), where • g(y, Poly) is texture-mapping function and usually done in hardware • h(x) is pre-warpring function
New warping function (2) • Prewarping function h(x) after some optimizations looks like following: • u2 = (u1+mu[d])*nu[d]; • v2 = (v1+mv[d])*nv[d]; • Extremely simple, isn’t it?
Filling holes • This sprite with depth was warped to the new viewpoint • Look how many empty spaces on the women face and hair at the picture • Let’s call them holes
Two classes of holes • All the holes fall into two classes by its nature • Resampling problem • Missing information
Resampling Before warping After warping
Resampling methods • Methods to fill the holes • Inverse warping • Meshing • Splatting • Interpolation
Splatting • Draw a little cloud (splat) instead of a pixel in desired image. This cloud has to be opaque in its center becoming more and more transparent to its sides • Features • Relatively small computation cost • Not all the holes are filled
Interpolation • Use the fact that u and v are independent from each other after pre-warping (two-pass algorithm) and linearly interpolate depth and color in the intermediate and final images
Пример Пример 1 Пример 2