Visual Simulation CAP 6938View Morphing (Seitz & Dyer, SIGGRAPH 96)But First: Multi-View Projective GeometryMulti-View Projective GeometryEpipolar GeometryTransfer from Epipolar LinesEpipolar AlgebraSimplifying: p’T T(Rp) = 0Linear Multiview RelationsThe Trifocal TensorSlide 11Uniqueness ResultSlide 13Image MorphingImage Morphing for View Synthesis?Special Case: Parallel CamerasUncalibrated PrewarpingPowerPoint PresentationSlide 19Slide 20Slide 21Slide 22View Morphing SummaryVisual SimulationCAP 6938Dr. Hassan Foroosh Dept. of Computer ScienceUCF© Copyright Hassan Foroosh 2002Morphed Morphed ViewViewVirtual CameraVirtual CameraView Morphing (Seitz & Dyer, SIGGRAPH 96)View interpolation (ala McMillan) butno depthno camera informationPhotograPhotographphPhotograPhotographphBut First: Multi-View Projective GeometryLast time (single view geometry)Vanishing PointsPoints at InfinityVanishing LinesThe Cross-RatioToday (multi-view geometry)Point-line dualityEpipolar geometryThe Fundamental MatrixAll quantities on these slides are in homogeneous coordinates except when specified otherwiseMulti-View Projective GeometryHow to relate point positions in different views?Central question in image-based renderingProjective geometry gives us some powerful toolsconstraints between two or more imagesequations to transfer points from one image to anotherscene pointfocal pointimage planeEpipolar GeometryWhat does one view tell us about another?Point positions in 2nd view must lie along a known lineEpipolar ConstraintExtremely useful for stereo matchingReduces problem to 1D search along conjugate epipolar linesAlso useful for view interpolation...epipolar lineepipolar lineepipolar planeepipolesTransfer from Epipolar LinesWhat does one view tell us about another?Point positions in 2nd view must lie along a known lineTwo views determines point position in a third imageBut doesn’t work if point is in the trifocal plane spanned by all three camerasbad case: three cameras are colinearinput image input imageoutput imageEpipolar AlgebraHow do we compute epipolar lines?Can trace out lines, reproject. But that is overkillYpp’TRXZXYZNote that p’ is to Tp’So 0 = p’T Tp = p’T T(Rp + T) = p’T T(Rp) p’ = Rp + TSimplifying: p’T T(Rp) = 0We can write a cross-product ab as a matrix equationa b = Ab where000xyxzyzzyxTherefore: Where E = TR is the 3x3 “essential matrix”Holds whenever p and p’ correspond to the same scene pointEpp'T0Properties of EEp is the epipolar line of p; p’T E is the epipolar line of p’p’T E p = 0 for every pair of corresponding points0 = Ee = e’T E where e and e’ are the epipolesE has rank < 3, has 5 independent parametersE tells us everything about the epipolar geometryLinear Multiview RelationsThe Essential Matrix: 0 = p’T E pFirst derived by Longuet-Higgins, Nature 1981also showed how to compute camera R and T matrices from EE has only 5 free parameters (three rotation angles, two transl. directions)Only applies when cameras have same internal parameterssame focal length, aspect ratio, and image centerThe Fundamental Matrix: 0 = p’T F pF = (A’-1)T E A-1, where A3x3 and A’3x3 contain the internal parametersGives epipoles, epipolar linesF (like E) defined only up to a scale factor & has rank 2 (7 free params)Generalization of the essential matrixCan’t uniquely solve for R and T (or A and A’) from FCan be computed using linear methods R. Hartley, In Defence of the 8-point Algorithm, ICCV 95Or nonlinear methods: Xu & Zhang, Epipolar Geometry in Stereo, 1996The Trifocal TensorWhat if you have three views?Can compute 3 pairwise fundamental matricesHowever there are more constraintsit should be possible to resolve the trifocal problem Answer: the trifocal tensorintroduced by Shashua, Hartley in 1994/1995a 3x3x3 matrix T (27 parameters)gives all constraints between 3 viewscan use to generate new views without trifocal probs. [Shai & Avidan]linearly computable from point correspondencesHow about four views? five views? N views?There is a quadrifocal tensor [Faugeras & Morrain, Triggs, 1995]But: all the constraints are expressed in the trifocal tensors, obtained by considering every subset of 3 camerasMorphed Morphed ViewViewVirtual CameraVirtual CameraView Morphing (Seitz & Dyer, SIGGRAPH 96)View interpolation (ala McMillan) butno depthno camera informationPhotograPhotographphPhotograPhotographphUniqueness ResultGivenAny two images of a Lambertian sceneNo occlusionsResult: all views along C1C2 are uniquely determinedView Synthesis is solvable whenCameras are uncalibratedDense pixel correspondence is not availableShape reconstruction is impossibleUniqueness ResultRelies on Monotonicity AssumptionLeft-to-right ordering of points is the same in both imagesused often to facilitate stereo matchingImplies no occlusions on line between C1 and C2Image MorphingLinear Interpolation of 2D shape and colorPhotograPhotographphPhotograPhotographphPhotograPhotographphPhotograPhotographphMorphed Morphed ImageImageImage Morphing for View Synthesis?We want to high quality view interpolationsCan image morphing do this?Goal: extend to handle changes in viewpointProduce valid camera transitionsMorphing parallel views new parallel viewsProjection matrices have a special formthird rows of projection matrices are equalLinear image motion linear camera motionSpecial Case: Parallel CamerasMorphedMorphed ImageImageRightRight ImageImageLeftLeft ImageImageUncalibrated PrewarpingParallel cameras have a special epipolar geometryEpipolar lines are horizontalCorresponding points have the same y coordinate in both imagesWhat fundamental matrix does this correspond to?010100000ˆFPrewarp procedure:Compute F matrix given 8 or more correspondencesCompute homographies H and H’ such thateach homography composes two rotations, a scale, and a translationTransform first image by H-1, second image by H’-1FFHH'ˆT1. Prewarp align views 2. Morph move camera1. Prewarp align
View Full Document