Vision SensingMulti-View Stereo for Community Photo CollectionsMichael Goesele, et al, ICCV 2007Venus de MiloThe Digital Michelangelo Project, StanfordHow to sense 3D very accurately?How to sense 3D very accurately? rangeacquisitioncontacttransmissivereflectivenon-opticalopticalindustrial CTmechanical (CMM, jointed arm)radarsonarMRIultrasoundopticalmethodspassiveactiveshape from X:stereomotionshadingtexturefocusdefocusactive variants of passive methodsStereo w. projected textureActive depth from defocusPhotometric stereotime of flighttriangulationCameraTriangulation• Depth from ray-plane triangulation:• Intersect camera ray with light planeLaserObjectLight PlaneImage PointExample: Laser scannerCyberware®face and head scanner+ very accurate < 0.01 mm − more than 10sec per scanDigital Michelangelo Projecthttp://graphics.stanford.edu/projects/mich/Example: Laser scannerXYZRGBShadow scanningDeskLampCameraStick orpencilDeskhttp://www.vision.caltech.edu/bouguetj/ICCV98/Basic idea• Calibration issues:• where’s the camera wrt. ground plane?• where’s the shadow plane?– depends on light source position, shadow edgeTwo Plane Version• Advantages• don’t need to pre-calibrate the light source• shadow plane determined from two shadow edgesEstimating shadow linesShadow scanning in actionaccuracy: 0.1mm over 10cm ~ 0.1% errorResultsTextured objectsaccuracy: 1mm over 50cm~ 0.5% errorScanning with the sunaccuracy: 1cm over 2m~ 0.5% errorScanning with the sunFaster Acquisition?• Project multiple stripes simultaneously• Correspondence problem: which stripe is which?• Common types of patterns:• Binary coded light striping• Gray/color coded light stripingBinary CodingPattern 1Pattern 2Pattern 3Projected over timeExample:3 binary-encoded patterns which allows the measuring surface to be divided in 8 sub-regionsFaster:stripes in images.12 nnBinary Coding• Assign each stripe a unique illumination codeover time [Posdamer 82]SpaceTimeBinary CodingPattern 1Pattern 2Pattern 3Projected over timeExample: 7 binary patterns proposed by Posdamer & Altschuler…Codeword of this píxel: 1010010 identifies the corresponding pattern stripeMore complex patternsZhang et alWorks despite complex appearancesWorks in real-time and on dynamic scenes• Need very few images (one or two).• But needs a more complex correspondence algorithmContinuum of Triangulation MethodsSlow, robust Fast, fragileMulti-stripeMulti-frameSingle-frameSingle-stripeTime-of-flight+ No baseline, no parallax shadows+ Mechanical alignment is not as critical− Low depth accuracy− Single viewpoint captureMiyagawa, R., Kanade, T., “CCD-Based Range Finding Sensor”, IEEE Transactions on Electron Devices, 1997Working Volume: 1500mm - Accuracy: 7%Spatial Resolution: 1x32- Speed: ??Comercial productsCanesta64x64@30hzAccuracy 1-2cmNot accurate enough for face modeling, but good enough for layer extraction.Depth from DefocusDepth from DefocusDepth from DefocusNayar, S.K., Watanabe, M., Noguchi, M., “Real-Time Focus Range Sensor”, ICCV 1995Working Volume: 300mm - Accuracy: 0.2%Spatial Resolution: 512x480 - Speed: 30Hz+ Hi resolution and accuracy, real-time− Customized hardware− Single view capture?Capturing and Modeling AppearanceComputer Vision Computer GraphicsSatellite Imaging Underwater ImagingMedical ImagingAppearanceDebevec, Siggraph 2002Capture Face AppearanceImage-Based Rendering / Recognition++Schechner et. al. Multiplexed IlluminationPaul Debevec‟s Light Stage 3Light Stage DataOriginal Resolution: 6432Lighting through image recombination: Haeberli „92, Nimeroff „94, Wong „97Georghiades, Belhumeur & KriegmanYale Face Database BShape RecoveryBRDFMaterial RecognitionHuman VisionRenderingObject / Face
View Full Document