1 / 72

Range data

Range data. Marc Pollefeys COMP 256. Some slides and illustrations from J. Ponce, …. Tentative class schedule. Final project. Presentation: Tuesday 2-5pm, starts in SN011, then demos (make your own arrangements, preferably G-lab) Papers: due Friday (Saturday is ok, but not later!).

asasia
Download Presentation

Range data

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Range data Marc Pollefeys COMP 256 Some slides and illustrations from J. Ponce, …

  2. Tentative class schedule

  3. Final project • Presentation: Tuesday 2-5pm, starts in SN011, then demos (make your own arrangements, preferably G-lab) • Papers: due Friday (Saturday is ok, but not later!)

  4. RANGE DATA • Active Range Sensors • Segmentation • Elements of Analytical Differential Geometry • Registration and Model Acquisition • Quaternions • Object Recognition Reading: Chapter 21.

  5. Active Range Sensors • Triangulation-based sensors • Time-of-flight sensors • New Technologies Courtesy of D. Huber and M. Hebert.

  6. Structured light • Single grid projection • Binary code • A desktop scanner

  7. Principle deformation+connectivity of pattern 3D Shape Proesmans and Van Gool, ICPR96…

  8. Acquisition setup Proesmans and Van Gool, ICPR96…

  9. Calibration Proesmans and Van Gool, ICPR96…

  10. Image with projected grid Proesmans and Van Gool, ICPR96…

  11. Line detectors Proesmans and Van Gool, ICPR96…

  12. Linking Proesmans and Van Gool, ICPR96…

  13. Initial grid Proesmans and Van Gool, ICPR96…

  14. Corrected grid sub-pixel refinement of grid Proesmans and Van Gool, ICPR96…

  15. Depth computation Proesmans and Van Gool, ICPR96…

  16. Removing lines Proesmans and Van Gool, ICPR96…

  17. Texture estimation Proesmans and Van Gool, ICPR96…

  18. 3D Reconstruction Proesmans and Van Gool, ICPR96…

  19. Dionysos Proesmans and Van Gool, ICPR96…

  20. Theatre mask Proesmans and Van Gool, ICPR96…

  21. Capital Proesmans and Van Gool, ICPR96…

  22. Coded planes • Structured light: • Use projector as a camera • Figure out correspondences by coding light pattern • Only need to code 1D (but not parallel with epipolar lines!) B. Curless

  23. A desktop scanner

  24. More range sensors DeltaSphere Z-cam

  25. Real-time system Koninckx and Van Gool

  26. 1 • Unit surface normal: N = (xux xv) | xuxxv | • First fundamental form: • I( t, t ) = Eu’2 + 2Fu’v’+Gv’2 { E=xu.xu F=xu.xv G=xv.xv • Second fundamental form: • II( t, t ) = eu’2 + 2fu’v’+gv’2 { e= –N.xuu f = –N.xuv g= –N.xvv II( t, t ) eg – f 2 t = K = I( t, t ) EG – F 2 Elements of Analytical Differential Geometry • Parametric surface: x : UR2E3 • Normal and Gaussian curvatures:

  27. h • In this case • N= ( –hu , –hv , 1)T • E = 1+hu2; F = huhv,; G = 1+hv2 • e = ; f = ; g = 1 v (1+hu2+hv2)1/2 –huv –huu –hvv u (1+hu2+hv2)1/2 (1+hu2+hv2)1/2 (1+hu2+hv2)1/2 huuhvv–huv2 And the Gaussian curvature is: K = . (1+hu2+hv2)2 Example: Monge Patches x ( u, v ) = (u, v, h( u, v ))

  28. N v u h(u,v) ¼ – ½ (1u2 +2v2) Taylor expansion of order 2 Example: Local Surface Parameterization • u,v axes = principal directions • h axis = surface normal • In this case: • h(0,0)=hu(0,0)=hv(0,0)=0 • N=(0,0,1)T • huv(0,0)=0, 1= – huu(0,0), 2= – hvv(0,0)

  29. Finding Step and Roof Edges in Range Images

  30. { k1x+h when x<0, k2x+c+h when x>0. z= Step Model And, since z’’=0 in x:

  31. { k1x+h when x<0, k2x+h when x>0. z= Roof Model And  has a maximum value inversely proportional to  in a point x located at a distance proportional to  from the origin.

  32. Computing the Principal Directions and Curvatures • Adaptive smoothing • Finite-difference masks Reprinted from “Describing Surfaces,” by J.M. Brady, J. Ponce, A. Yuille and H. Asada, Proc. International Symposium on Robotics Research, H. Hanafusa and H. Inoue (eds.), MIT Press (1985).  1985 MIT.

  33. Scale-Space Matching Reprinted from “Toward a Surface Primal Sketch,” By J. Ponce and J.M. Brady, in Three-Dimensional Machine Vision, T. Kanade (ed.), Kluwer Academic Publishers (1987).  1987 Kluwer Academic Publishers.

  34. Segmentation into Planes via Region Growing (Faugeras & Hebert, 1986) Idea: Iteratively merge the pair of planar regions minimizing the average distance to the plane best fitting them. Reprinted from “The Representation, Recognition and Locating of 3D Objects,” by O.D. Faugeras and M. Hebert, the International Journal of Robotics Research, 5(3):27-52 (1986).  1986 Sage Publications. Reprinted by permission of Sage Publications.

  35. Conjugate: q = a + ) q ´a–  • Norm: | q |2´ q q = q q = a2 + |  |2 Quaternions q is aquaternion, a 2R is itsrealpart, and 2R3 is itsimaginarypart. q = a +  Operations on quaternions: • Sum of quaternions: ( a+ ) + ( b+ ) ´ ( a+b ) + (+ ) • Multiplication by a scalar:  ( a+ ) ´ ( a+ ) • Quaternion product: • ( a+ ) ( b+ ) ´ ( a b –  ¢ ) + ( a  + b  +  £  ) Note:| qq’|= |q| |q’|

  36. Quaternions and Rotations • Let R denote the rotation of angle  about the unit vector u. • Define q = cos /2 + sin /2 u. • Then for any vector , R = q  q. Reciprocally, if q = a + ( b, c, d )T is a unit quaternion, the corresponding rotation matrix is:

  37. The Iterative Closest Point Registration Algorithm (Besl and McKay, 1992) • Key points: • finding the closest-point pairs (k-d trees, caching); • estimating the rigid transformation (quaternions).

  38. n n E =  | xi’ – R xi – t |2 . E =  | yi’ – R yi |2 i=1 i=1 n  ( xi’ – R xi – t ) . At a minimum: 0 = E/t = –2 Or.. t = x’ – R x. i=1 If yi = xi –x and yi’ = xi’ –x’, the error is (at a minimum): n n =  | yi’ q – qyi |2 =  | yi’ – q yi q|2|q|2 i=1 i=1 0 yiT-yi’T yi’-yi [yi+yi’]£ Or.. E = AiTAi with Ai = Linear least squares !! Using Quaternions to Estimate a Rigid Transformation Problem: Find the rotation matrix R and the vector t that minimize

  39. ICP Registration Results Reprinted from “A Method for Registration of 3D Shapes,” by P.J. Besl and N.D. McKay, IEEE Trans. on Pattern Analysis and Machine Intelligence, 14(2):238-256 (1992).  1992 IEEE.

  40. Initial alignment? • Mostly open problem • A possible approach using bitangents (Vanden Wyngaerd and Van Gool)

More Related