Modeling LightOn Simulating the Visual ExperienceTodayHow do we see the world?Pinhole cameraCamera ObscuraDistant objects are smallerSlide 8Shrinking the apertureSlide 10Home-made pinhole cameraThe reason for lensesAdding a lensModeling projectionSlide 15Homogeneous coordinatesPerspective ProjectionOrthographic ProjectionSpherical ProjectionThe eyeThe Plenoptic FunctionGrayscale snapshotColor snapshotA movieHolographic movieSlide 26Sampling Plenoptic Function (top view)RayRay ReuseCan still sample all images!Lumigraph / LightfieldLumigraph - OrganizationSlide 33Slide 34Slide 35Slide 36Slide 37Slide 38Slide 39Lumigraph - Rendering2D: ImageSpherical PanoramaThe “Theatre Workshop” MetaphorPainter (images)Lighting Designer (environment maps)Sheet-metal Worker (geometry)… working togetherFaçade demoNext TimeModeling Light15-463: Rendering and Image ProcessingAlexei EfrosOn Simulating the Visual ExperienceJust feed the eyes the right data•No one will know the difference!Philosophy:•Ancient question: “Does the world really exist?”Science fiction:•Many, many, many books on the subject•Latest take: The MatrixPhysics:•Slowglass might be possible?Computer Science:•Virtual RealityTo simulate we need to know:How and what does a person see?TodayHow do we see the world?•Geometry of Image FormationWhat do we see?•The Plenoptic FunctionHow do we recreate visual reality?•Sampling the Plenoptic Function•Ray Reuse•The “Theatre Workshop” metaphorHow do we see the world?Let’s design a camera•Idea 1: put a piece of film in front of an object•Do we get a reasonable image?Slide by Steve SeitzPinhole cameraAdd a barrier to block off most of the rays•This reduces blurring•The opening known as the aperture•How does this transform the image?Slide by Steve SeitzCamera ObscuraThe first camera•Known to Aristotle•Depth of the room is the focal length•Pencil of rays – all rays through a point•Can we measure distances? Slide by Steve SeitzDistant objects are smallerFigure by David ForsythCamera ObscuraDrawing from “The Great Art of Light and Shadow “ Jesuit Athanasius Kircher, 1646. How does the aperture size affect the image?Shrinking the apertureWhy not make the aperture as small as possible?•Less light gets through•Diffraction effects…Less light gets throughSlide by Steve SeitzShrinking the apertureHome-made pinhole camera http://www.debevec.org/Pinhole/The reason for lensesSlide by Steve SeitzAdding a lensA lens focuses light onto the film•There is a specific distance at which objects are “in focus”–other points project to a “circle of confusion” in the image•Changing the shape of the lens changes this distance“circle of confusion”Slide by Steve SeitzModeling projectionThe coordinate system•We will use the pin-hole model as an approximation•Put the optical center (Center Of Projection) at the origin•Put the image plane (Projection Plane) in front of the COP–Why?•The camera looks down the negative z axis–we need this if we want right-handed-coordinates– Slide by Steve SeitzModeling projectionProjection equations•Compute intersection with PP of ray from (x,y,z) to COP•Derived using similar triangles (on board)•We get the projection by throwing out the last coordinate:Slide by Steve SeitzHomogeneous coordinatesIs this a linear transformation?Trick: add one more coordinate:homogeneous image coordinateshomogeneous scene coordinatesConverting from homogeneous coordinates•no—division by z is nonlinearSlide by Steve SeitzPerspective ProjectionProjection is a matrix multiply using homogeneous coordinates:divide by third coordinateThis is known as perspective projection•The matrix is the projection matrix•Can also formulate as a 4x4divide by fourth coordinateSlide by Steve SeitzOrthographic ProjectionSpecial case of perspective projection•Distance from the COP to the PP is infinite•Also called “parallel projection”•What’s the projection matrix?ImageWorldSlide by Steve SeitzSpherical ProjectionWhat if PP is spherical with center at COP?In spherical coordinates, projection is trivial:Note: doesn’t depend on focal length d!The eyeThe human eye is a camera!•Iris - colored annulus with radial muscles•Pupil - the hole (aperture) whose size is controlled by the iris•What’s the “film”?–photoreceptor cells (rods and cones) in the retinaThe Plenoptic FunctionQ: What is the set of all things that we can ever see?A: The Plenoptic Function (Adelson & Bergen)Let’s start with a stationary person and try to parameterize everything that he can see…Figure by Leonard McMillanGrayscale snapshotis intensity of light •Seen from a single view point•At a single time•Averaged over the wavelengths of the visible spectrum(can also do P(x,y), but spherical coordinate are nicer)P()Color snapshotis intensity of light •Seen from a single view point•At a single time•As a function of wavelengthP()A movieis intensity of light •Seen from a single view point•Over time•As a function of wavelengthP(,t)Holographic movieis intensity of light •Seen from ANY viewpoint•Over time•As a function of wavelengthP(,t,VX,VY,VZ)The Plenoptic Function•Can reconstruct every possible view, at every moment, from every position, at every wavelength•Contains every photograph, every movie, everything that anyone has ever seen! it completely captures our visual reality! Not bad for function…P(,t,VX,VY,VZ)Sampling Plenoptic Function (top view)Just lookup -- Quicktime VRRayLet’s not worry about time and color:5D•3D position•2D directionP(VX,VY,VZ)Slide by Rick Szeliski and Michael CohenRay ReuseInfinite line•Assume light is constant (vacuum)4D•2D direction•2D position•non-dispersive mediumSlide by Rick Szeliski and Michael CohenCan still sample all images!Slide by Rick Szeliski and Michael CohenLumigraph / LightfieldOutside convex space4DStuffEmptySlide by Rick Szeliski and Michael CohenLumigraph - Organization 2D position2D directionsSlide by Rick Szeliski and Michael CohenLumigraph - Organization 2D position2D position2 plane parameterizationsuSlide by Rick Szeliski and Michael CohenLumigraph - Organization 2D position2D position2 plane parameterizationusts,tu,vvs,tu,vSlide by Rick Szeliski and Michael CohenLumigraph - OrganizationHold s,t constantLet u,v varyAn
View Full Document