EECS 442 – Computer vision Shape from reflections
Transcription
EECS 442 – Computer vision Shape from reflections
EECS 442 – Computer vision Shape from reflections Recovering the shape of an object A taxonomy Visual cues: texture shading contours shadows Recovering the shape of an object A taxonomy Visual cues: texture shading contours shadows Recovering the shape of an object A taxonomy Visual cues: texture shading contours shadows Recovering the shape of an object A taxonomy Visual cues: texture shading contours shadows Recovering the shape of an object Visual cues: texture shading contours shadows A taxonomy Number of observers: monocular multiple views camera Recovering the shape of an object Visual cues: texture shading contours shadows A taxonomy Number of observers: monocular multiple views camera 1 camera 2 camera N Recovering the shape of an object Visual cues: texture shading contours shadows Number of observers: monocular multiple views Active lighting: laser stripes structured lighting patterns A taxonomy shadows camera Laser/projector/light Recovering the shape of an object Visual cues: texture shading contours Number of observers: monocular multiple views Active lighting: laser stripes structured A taxonomy lighting patterns shadows Limitation: Assumptions on surface reflectance function Specular Transparent Lambertian surfaces Non Lambertian surfaces Recovering the shape of an object Visual cues: texture shading contours Number of observers: monocular multiple views Active lighting: laser stripes structured A taxonomy lighting patterns shadows Limitation: Assumptions on surface reflectance function Specular Transparent Recovering the shape of an object Visual cues: texture shading contours Number of observers: monocular multiple views Active lighting: laser stripes structured Limitations lighting patterns shadows • No intrinsic surface features: textures – shading… • No clear contours Recovering the shape of an object Visual cues: texture shading contours Number of observers: monocular multiple views Active lighting: laser stripes structured lighting patterns shadows Limitations • Epipolar geometry doesn’t work Stereo matching algorithms fail! Recovering the shape of an object Visual cues: texture shading contours Number of observers: monocular multiple views Active lighting: laser stripes structured Limitations lighting patterns shadows A new perspective Johann Erdmann Hummel -- The Granite Bowl in the Berlin Lustgarten [1831] Use specular reflections as additional visual cue to estimate the surface’s shape Savarese, et al. CVPR 01, ECCV 02, ECCV 04, IJCV 07 Digital archival Applications E-commerce Digital models of anatomical parts Diagnostic of space structures Industrial metrology Remote sensing of liquid surfaces M.C. Escher - Still Life with Spherical Mirror (1934) Recover local shape of mirror surface by measuring the deformation of a reflected scene Mirror surface Image Scene Mirror surface 1. Smooth surface 2. Calibrated scene Image C Scene Explicit mapping: local scene patch reflected image patch From the mapping: reflected image patch local shape For now let’s study this mapping Mirror surface f (t) fo Image fi (t) Po fio C P(t) = Po + t P f : t f(t) 3 How to find f(t) ? f(t) fi (t) 2 understood A background note…. fO PO How to find fO ? For spherical mirror: Alhazen’s problem Recently Peter M. Neumann proved Abu-'Ali Al-Haytham that the problem is insoluble using a “compass-andruler” construction Also named Alhazen because the solution requires (ca. 965-1039) - Middle Ages extraction of a cube root. O Alhazen was an Iranian Philosopher “Reflections on reflection in aextensive spherical and Physicist. Through his mirror”, Amer. 1998 researches on Math. optics,Monthly, he has been considered as the father of modern Optics. Mirror surface f (t) fo Image fi (t) C P(t) = Po + t P - Assume Why? fo is known - how about f( t ), f( t ), at to ? 1 f ( t ) fo f ( t o )( t t o ) f ( t o )( t t o )2 ... 2 Mirror surface f (t) fo Image fi (t) C P(t) = Po + t P TOOLS: GOAL: f( to ), f( to ), • Lagrange Multiplier theorem • Implicit Function Theorem • Chen and Arvo, 2000 Summary • Mapping v f (t) fo f : t fo 3 P-O-fo plane • GOAL : u fi (t) w=N fio Po P(t) = Po + t P O A new reference system [u v w] w = Normal N v P-O-fo plane u=vxw f( to ), f( to ), Summary • Mapping v f (t) f : t fo 3 fo • GOAL : u fi (t) N w = Normal N v P-O-fo plane u=vxw fio Po P(t) = Po + t P f( to ), f( to ), O Surface expanded in Monge form: Summary • Mapping f : t fo 3 w S(u,v,w) = 0 • GOAL : f( to ), f( to ), w = Normal N v P-O-fo plane u=vxw v u Surface expanded in Monge form: Summary • Mapping v f (t) f : t fo 3 fo f( to ), f( to ), • GOAL : u fi (t) N w = Normal N v P-O-fo plane u=vxw Monge form Qo Po P(t) = Po + t P fi ( to ) A-1 Similarly, for : fo , O, Po , ΔP Observation O fo , O, a, b, c f(t ) B1 o Local surface, scene geometry Mirror surface fo Image fi (u,v) Po v̂ P = [u,v] û fio C f : u,v fi (u,v) 3 1 2 1 2 fi ( u , v ) fio fu u fv v fuu u fvv v fuv u v ... 2 2 Local surface, scene geometry Mirror surface fo Image fi (u,v) Po v̂ P = [u,v] fio û f : u,v fi (u,v) 3 Conclusion: image patch = F(scene patch, local shape) … up to second order C Singular specular surfaces fi ( to ) A-1 fo , O, Po , ΔP Observation fo , O, a, b, c Theorem: Convex paraboloids are always non-singular f : t f(t) 3 not unique Anish Kapoor Singular configurations f (t) A 1 (t) i inverse problem Mirror surface Image P Pi Scene Inverse problem: From the mapping: reflected image patch local shape Measurements Unknown C Setup Q P = grid of lines Known quantities: • Scene • Camera Setup Q P = grid of lines Measured quantities: • Point position Q • Orientation of curves at Q fi (t) Setup Q P = lines intersecting through points Measured quantities: Equivalent to • Point position Q • Orientation of curves at Q fi ( t ), fi ( t ), • Scale – distribution of points in a neighborhood of Q at Q M Setup Q Local geometry we wish to recover: • Position of the reflection point M • Normal of the surface at M • Curvature of the surface at M • Third order surface parameters around M Qo Image plane Image plane Surface geometry Measurements • 1 point Point position up to 1 unknown Tangent plane Surface curvature Third order surface parameters up to 1 unknown • 1 point Qo • Orientation along 3 lines at Qo • 3 points • 5 points up to 1 unknown Qo Image plane Image plane Surface geometry Measurements • 1 point Point position up to 1 unknown Tangent plane Surface curvature Third order surface parameters up to 1 unknown • 1 point Qo • Orientation along 3 lines at Qo • 3 points • 5 points up to 1 unknown Summary Image plane Oc Qo Q̂o unknown surface s Oc Mo Mo N Po We know: Po (scene point) Oc (center of the camera) Qo (measured reflect. point) We don’t know: • Mo (reflect. point) ? But: Mo sQ̂o line of sight constraint Summary unknown surface Oc Qo • line of sight constraint: Q̂o Mo N How about N? Reflection constraints • N Oc-Mo-Po plane • distance: s Oc Mo Po Mo sQ̂o Summary Oc • distance: s Oc Mo Oc-Mo-Po plane Qo N̂ p Q̂o r N How about N? • line of sight constraint: Mo Mo sQ̂o • The principal plane defined by Po, Oc, Qo i Po Reflection constraints • N Oc-Mo-Po plane • i r N F( s ) Summary Oc • distance: s Oc Mo principal plane Qo N̂ p Q̂o • line of sight constraint: Mo sQ̂o Mo • The principal plane defined by Po, Oc, Qo N • N F( s ) Po CONCLUSION: Surface position (Mo) and orientation (N) up to 1 unknown Qo Image plane Image plane Surface geometry Measurements • 1 point Point position up to 1 unknown Tangent plane Surface curvature Third order surface parameters up to 1 unknown • 1 point Qo • Orientation along 3 lines at Qo • 3 points • 5 points up to 1 unknown Summary Oc Q̂o Qo ̂ • s Oc Mo Mo • Mo sQ̂o fi ( t ) Mo P(t) = Po + t P • N F( s ) • f(t ) Po We need a further constraint! fi ( to ) A-1 Observation ̂ , fi s (unknown) Mo , Oc, Po , ΔP Mo , Oc, a, b, c a, b, c (unknown) known 4 unknowns! Summary Oc • s Oc Mo Qo Mo Q̂o • Mo sQ̂o Mo • N F( s ) • N • F ( ˆ , a, b, c , s ) P1(t) = Po + t P1 P2(t) = Po + t P2 ˆ1 , fi 1 Po PN(t) = Po + t PN f fi 1 A-1 β1 fi 2 A-1 β2 i N A-1 β N H Nx3 ˆ 1,ˆ 2 ,...ˆ N , s g0 a, b, c , s det H T H (s) 0 Summary Oc • s Oc Mo Qo Mo Q̂o • Mo sQ̂o Mo • N • F ( ˆ , a, b, c , s ) • P1(t) = Po + t P1 P2(t) = Po + t P2 H Nx3 Po PN(t) = Po + t PN Rank THEOREM: for s=s*, rank(H)=2 s* = actual value of s • N F( s ) det HT H s s* 0 g 0 s det HT H s s* 0 s* Summary Oc • s Oc Mo Qo Mo Q̂o • Mo sQ̂o Mo N PN(t) = Po + t PN • • F ( ˆ , a, b, c , s ) • P1(t) = Po + t P1 P2(t) = Po + t P2 • N F( s ) Po H g 0 Nx3 • det HT H s s* 0 s* CONCLUSION: Surface position (Mo) and orientation (N) can be computed using at least 3 orientations Summary Oc • Mo sQ̂o Qo Mo Q̂o • N F( s ) Mo Hg 0 N P1(t) = Po + t P1 P2(t) = Po + t P2 PN(t) = Po + t PN • From the rank theorem rank(H)=2 H• 3x 3 g 0 ˆ1 ,ˆ2 ,...ˆN ,s* a, b,c,s* Po Rank THEOREM: for s=s*, rank(H)=2 If s s*, in general rank(H)=3 det HT H s s* 0 a ao r a1 b bo r b1 c co r c1 s* Summary Oc • Mo sQ̂o Qo Mo Q̂o • N F( s ) Mo Hg 0 N P1(t) = Po + t P1 P2(t) = Po + t P2 Po PN(t) = Po + t PN Theorem: there exists a family of 2nd order surface parameters for which the observed tangents are invariant w.r.t. surface curvature Rank THEOREM: for s=s*, rank(H)=2 If s s*, in general rank(H)=3 det HT H s s* 0 a ao r a1 b bo r b1 c co r c1 s* Second order ambiguity a ao r a1 b bo r b1 c co r c1 Qo Image plane Image plane Surface geometry Measurements • 1 point Point position up to 1 unknown Tangent plane Surface curvature Third order surface parameters up to 1 unknown • 1 point Qo • Orientation along 3 lines at Qo • 3 points • 5 points up to 1 unknown Some experimental results (3 orientations case) Experimental results (2 orientations + scale case) Conclusions • Explicit local relationship between scene, shape and reflections • Local surface shape can be recovered up to third order… … if and only if - the scene is calibrated, - at least three (five) points are available in a neighborhood Other path minimization approaches Dense reconstruction of mirror surfaces S. Rozenfeld et al. Dense mirroring surface recovery from 1D homographies and sparse Correspondences, CVPR 07 Such pairs are used to estimate a 1D homography Dense reconstruction of mirror surfaces Recover geometry of mixed speculardiffuse objects from two frames. S. Roth and M.. Black. Specular Flow and the Recovery of Surface Structure. CVPR 06. Specular flow Recover radius and location of the sphere Further reading: Volumetric approach •Voxel Carving for Specular Surfaces - T. Bonfort and P. Sturm •Shape from Distortion: 3D Range Scanning of Mirroring Objects - M. Tarini , H.Lensch, M.Gösle, HP.Seidel •Reconstructing Curved Surfaces From Specular Reflection Patterns - M. Halstead, B. Barsky, S. Klein R. Mandell •PDE Based Shape from Specularities - J. Solem, H. Aanæs , A. Heyden •Acquiring a Complete 3D Model from Specular Motion - J.Y. Zheng and A. Murata •Structured Highlight Inspection of Specular Surfaces - A.S. Sanderson, L.E. Weiss, S.K. Nayar •On Refractive Optical Flow - S. Agarwal, S. Mallick, D. Kriegman, and S. Belongie EECS 442 – Computer vision Next lecture: affine structure from motion