Open Source Computer Vision Tutorial for ICDSC 08
|
|
- Robert Long
- 5 years ago
- Views:
Transcription
1 Open Source Computer Vision Tutorial for ICDSC 08 Gary Bradski Senior Scientist, Willow Garage; Consulting Prof, Stanford University Smart Cameras Gary Bradski (c) 2008 Rights to original images herein explicitly retained, no redistribution without written permission 1
2 OpenCV Book Due out end of Sept This tutorial is just a faint introduction new book will teach computer vision and its use via OpenCV Learning OpenCV Computer Vision with the OpenCV Library, O Reilly Press. Google OpenCV Amazon Gary Bradski (c)
3 Outline Installing OpenCV Computer vision motivation OpenCV overview Programming with OpenCV, getting started Some computer vision background With program examples An object training set program Optic flow, segmentation, calibration, stereo, recognition Some tips on tricks of the trade Wither computer vision and OpenCV Gary Bradski (c)
4 INSTALLING OPENCV Gary Bradski (c)
5 Installing OpenCV First, install the files for this course (by key or by CD). Open this file. Hopefully you ve preinstalled, otherwise see the next two pages, and/or see the OR: installing_opencv_cvs.txt in the files for this course Also in files, there s FFMPEG_install_MacOSX.txt Instructions can be found on the OpenCV wiki, for Windows, Linux or MacOS. The release version of the library are at: I recommend you get the latest version of OpenCV from the sourceforge CVS repository. If you get the version 1 release from sourceforge, it's OK, but you won't be able to run the stereo demo. Gary Bradski (c)
6 Installing On Windows For getting the code from CVS: ============================= WINDOWS For Windows users, you'll need a CVS program. I recommend TortoiseCVS ( ), which integrates nicely with Windows Explorer. On Windows, if you want the latest OpenCV from the CVS repository then you'll need to access the CVSROOT directory: :pserver:anonymous@opencvlibrary.cvs.sourceforge.net:2401/cvsroot/opencvlibrary For the tortoisecvs, launch the program by finding the directory you want, right clicking and selecting CVS checkout. When the program launches, Put the above :pserver line in the CVSROOT box. The protocal is Password server (:pserver:) No protocal parameters Server is opencvlibrary.cvs.sourceforge.net Port is probably 2401 Repository folder is /cvsroot/opencvlibrary Username is anonymous. After you download the code, you must build it using the MSVC sln or dsw file in the opencv _make directory. The alternative for Windows is to go to and download the opencv-win release 1.0 which is a self extracting exe file. You will be able to run all but the stereo related demos. Gary Bradski (c)
7 Installing on Linux On Linux, you can get the opencv CVS using the following two commands: cvs login When asked for password, hit return. Then use: cvs -z3 co -P opencv Linux needs other files to build OpenCV. You can use sudo synaptic or sudo apt-get to get the following packages: GTK+ 2.x or higher, including headers. pkgconfig, libpng, zlib, libjpeg, libtiff, and libjasper with development files. Python 2.3, 2.4, or 2.5 with headers installed (developer package). libavcodec and the other libav* libraries (including headers) from ffmpeg pre1 or later. FFMPEG instructions: Download ffmpeg from You have to build a shared library of the ffmpeg program to use it with other open source programs such as OpenCV. To build and use a shared ffmpg library: $>./configure --enable-shared $> make $> sudo make install You will end up with: /usr/local/lib/libavcodec.so.*, /usr/local/lib/libavformat.so.*, /usr/local/lib/libavutil.so.*, and include files under various /usr/local/include/libav*. The latest FFMPEG might have changed where it puts its include files, so you might have to: cd /usr/local/include sudo mkdir ffmpeg sudo cp libavcodec/* ffmpeg sudo cp libavformat/* ffmpeg sudo co libavutil/* ffmpeg FFMPEG is a complete pain due to their licensing and refusal to package To build OpenCV once you've done all of the above: $> autoreconf --force $>./configure $> make $> sudo make install $> sudo ldconfig [ ] Ubuntu modification (if you can't get ffmpeg to work): ================================ * sudu synaptic o and get gstreamer and install gstreamer files, particularly libgstreamer0.10-dev * Then configure opencv with./configure --with-gstreamer o as follows: $> autoreconf --force $>./configure --with-gstreamer $> make $> sudo make install $> sudo ldconfig The alternative for Linux (though you'll still need the other files) is to go to and download the opencv-linux release 1.0 which is a gz file. Then: $> tar xvzf OpenCV tar.gz $> cd opencv $>./configure --prefix=/opencv_library_install_path/opencv $> make $> sudo make install Gary Bradski (c)
8 COMPUTER VISION MOTIVATION Gary Bradski (c)
9 My Motivation Bring competent vision (recognition and 3D segmentation) to Robotics Willow Garage Robot Stanford STAIR Project under Prof. Andrew Ng Gary Bradski (c)
10 Perception Seems easy In 1966 Marvin Minsky told an undergraduate to solve perception over the summer Perhaps he forgot to say which summer? Why is vision so hard? Gary Bradski (c)
11 Perception is hard Maybe look for larger features like edges? Gary Bradski (c)
12 But, What s an Edge? Depth discontinuity Surface orientation discontinuity Reflectance discontinuity (i.e., change in surface material properties) Illumination discontinuity (e.g., shadow) Slide credit: Christopher Rasmussen 12 Gary Bradski (c) 2008
13 To Deal With the Confusion, Your Brain has Rules... That can be wrong Gary Bradski (c)
14 Color Changes with Lighting, the Brain Compensates Sometimes Wrong: 14 Gary Bradski (c) 2008
15 The Brain Compensates for Lighting too Which square is darker? Gary Bradski (c)
16 Lighting Determines Shape Perception Gary Bradski (c)
17 Don t believe me? Perception of surfaces depends on lighting assumptions Gary Bradski (c)
18 Object Perception Depends on Context Gary Bradski (c) 2008 [slide credit: Kevin Murphy] 18
19 The Brain Assumes 3D Geometry Perception is ambiguous depending on your point of view! Gary Bradski (c)
20 The Brain Has a Point of View* and it s a Tad Strange Same size things get smaller, we hardly notice Parallel lines meet at a point * A Cartoon Epistemology: Gary Bradski (c)
21 An Infinite World in a Finite Space Perception must be mapped to a space variant grid Logarithmic in nature Gary Bradski (c) Steve Lehar
22 QUESTION: What is beyond the sky? The sky outside your head. We live in our own bubbles Gary Bradski (c)
23 (Robots Will Be the Same ) Vision is hard. Now lets make some progress Gary Bradski (c)
24 OPENCV OVERVIEW Gary Bradski (c)
25 What is OpenCV? Free AND Open Source Computer Vision Library Then: Started in 1999 as a project on my C: drive. Now: Over 500 functions implementing Computer vision, machine learning, image processing and numeric algorithms. Portable and very efficient (implemented in C/C++) Full Python interface Runs on Windows, Linux and Mac OS Has BSD license (that is, free for ANY use) Available at Other Sites: Open Source Computer Vision Library OpenCV (algorithms) Intel Integrated Performance Primitives (optimized routines) Gary Bradski (c)
26 OpenCV History Motivation was to lower the bar to entry to computer vision, increase incentive for higher MIPS out in the market for Intel. Timeline: Willow Garage now supports OpenCV (and a robot OS called ROS) as a means of accelerating peaceful uses of robotics and AI Gary Bradski (c)
27 OpenCV Tends Towards Real Time Gary Bradski (c)
28 Based on BSD license License Free for commercial or research use In whole or in part Does not force your code to be open You need not contribute back We hope you will contribute back, recent contribution, C++ wrapper class used for Google Street Maps* * Thanks to Daniel Filip Gary Bradski (c)
29 OpenCV Structure CV Image Processing and Vision Algorithms MLL Statistical Classifiers and Clustering Tools HighGUI GUI, Image and Video I/O CXCORE basic structures and algorithms, XML support, drawing functions IPP Fast architecture-specific low-level functions Gary Bradski (c)
30 OpenCV Big Picture: General Image Processing Functions Image Pyramids Segmentation Transforms Machine Learning: Detection, Recognition Geometric descriptors Features Tracking Matrix Math Camera calibration, Stereo, 3D Utilities and Data Structures Fitting Gary Bradski (c)
31 Where is OpenCV Used? Google Maps, Google street view, Google Earth, Books Academic and Industry Research Safety monitoring (Dam sites, mines, swimming pools) Security systems Image retrieval On Cell phones Video search Structure from motion in movies Machine vision factory production inspection systems Robotics 2M downloads
32 Pictorial Tour of OpenCV Gary Bradski (c)
33 Canny Edge Detector Gary Bradski (c)
34 Hough Transform Gary Bradski (c)
35 Scale Space void cvpyrdown( IplImage* src, IplImage* dst, IplFilter filter = IPL_GAUSSIAN_5x5); Gary Bradski (c) 2008 void cvpyrup( IplImage* src, IplImage* dst, IplFilter filter = IPL_GAUSSIAN_5x5); 35
36 Space Variant vision: Log-Polar Transform Gary Bradski (c)
37 Inpainting: Image textures Removes damage to images, in this case, it removes the text. Gary Bradski (c)
38 // opencv/samples/c/lkdemo.c int main( ){ CvCapture* capture = < >? cvcapturefromcam(camera_id) : Optical Flow cvcapturefromfile(path); if(!capture ) return -1; for(;;) { IplImage* frame=cvqueryframe(capture); if(!frame) break; // copy and process image cvcalcopticalflowpyrlk( ) cvshowimage( LkDemo, result ); c=cvwaitkey(30); // run at ~20-30fps speed if(c >= 0) { // process key }} cvreleasecapture(&capture);} lkdemo.c, 190 lines (needs camera to run) I ( x dx, y I G X / t X I b, dy, t dt ) / x ( dx ( x, y ), G / dt ) I I I 2 x x I ( x, y, t );, I y I, x I I / y ( dy y 2 y, b / dt ); I t I I x y
39 Morphological Operations Examples Morphology - applying Min-Max. Filters and its combinations Image I Erosion I B Dilatation I B Opening IoB= (I B) B Closing I B= (I B) B Grad(I)= (I B)-(I B) TopHat(I)= I - (I B) BlackHat(I)= (I B) - I Gary Bradski (c)
40 Distance Transform Distance field from edges of objects Flood Filling Gary Bradski (c)
41 Histogram Equalization Gary Bradski (c)
42 Thresholds Gary Bradski (c)
43 Segmentation Pyramid, mean-shift, graph-cut Here: Watershed Gary Bradski (c)
44 Contours Gary Bradski (c)
45 Delaunay Triangulation, Voronoi Tessellation Gary Bradski (c)
46 Background Subtraction Gary Bradski (c)
47 Motion Templates (My work with James Davies) Object silhouette Motion history images Motion history gradients Motion segmentation algorithm silhouette MHI MHG Gary Bradski (c)
48 Segmentation, Motion Tracking Motion Segmentation Motion Segmentation Pose Recognition Gesture Recognition Gary Bradski (c)
49 Tracking with CAMSHIFT Control game with head
50 3D tracking Camera Calibration View Morphing POSIT
51 Projections
52 Single Camera Calibration Now, camera calibration can be done by holding checkerboard in front of the camera for a few seconds. And after that you ll get: 3D view of checkerboard Un-distorted image Gary Bradski (c)
53 Bird s-eye View Useful for navigation planning and security systems Gary Bradski (c)
54 Stereo Calibration Gary Bradski (c)
55 Find Epipolar lines: 3D Stereo Vision Align images: Triangulate points: Depth: Gary Bradski (c)
56 ML for Recognition Gary Bradski (c)
57 CLASSIFICATION / REGRESSION CART Naïve Bayes MLP (Back propagation) Statistical Boosting Random Forests SVM K-NN Face Detector (Histogram matching) (Correlation) Stochastic Discrimination Logistic CLUSTERING K-Means EM (Mahalanobis distance) Agglomerative Machine Learning Library (MLL) CC CCB AACBAABBCBCC AACACB B AAA CBABBC CB ABBC C B A BBC BB C TUNING/VALIDATION Cross validation Bootstrapping Variable importance Sampling methods Gary Bradski (c)
58 K-Means, Mahalanobis Gary Bradski (c)
59 Patch Matching Gary Bradski (c)
60 Gesture Recognition Gestures: Gesture via: Gradient histogram* based gesture recognition with Tracking. Meanshift Algorithm used to track, histogram intersection with gradient used to recognize. Up R L Stop OK *Bill Freeman Gary Bradski (c)
61 Boosting: Face Detection with Viola-Jones Rejection Cascade Gary Bradski (c)
62 We ll now delve into some programming, ending with an object recognition dataset collection algorithm PROGRAMMING WITH OPENCV, GETTING STARTED Gary Bradski (c)
63 We ll get a light gist to some algorithms. Go over the algorithms in the samples directory SOME COMPUTER VISION BACKGROUND Gary Bradski (c)
64 Seeing the light Cameras The Ideal Camera is a Pinhole Camera In theory it s a perfect imager Magnification factor (by similar triangles): x f X Z 64
65 PROBLEM: Pinhole Gives Too little light: SOLUTION: Use a lens -- Brunelleschi, XVth Century 65
66 TRADOFFs: More light, more problems Geometrical aberrations spherical aberration astigmatism distortion coma Vignetting 66 Marc Pollefeys
67 Astigmatism Different focal length for inclined rays 67 Marc Pollefeys
68 Distortion magnification/focal length different for different angles of inclination pincushion (tele-photo) barrel (wide-angle) 68 Marc Pollefeys
69 Camera Calibration We use a known calibration object (chessboard) Collect the image it actually makes Correct it to the projection it should make Gary Bradski (c)
70 Camera Calibration The projection equation Can be written Given that these come from images of a plane (it forms something called a Homography ), we can stack the points together and Solve for the projection equation parameters. We then adjust for distortion: And solve all over again. Gary Bradski (c)
71 Camera Calibration Lens distortion can then be corrected using a fast undistortion lookup map
72 Assumptions Optical flow Brightness constancy Temporal persistence (small movements) Spatial coherence I(x(t),t) = I(x(t+dt),t+dt) Gary Bradski (c)
73 Stereo Depth from correspondence is easy in a perfect stereo rig (frontal parallel, row aligned) Gary Bradski (c)
74 Stereo But stereo rigs are never perfectly aligned, so we use stereo calibration (chessboards again) to mathematically create the perfect rig. Gary Bradski (c)
75 Stereo To get perfect alignment, we align something called epipoles along rows of the left and right images. Gary Bradski (c)
76 Stereo We use calibration to find the rotation to align the epipoles This means finding the rotation and translation between the left and right cameras The math is involved, but similar to single camera calibration Gary Bradski (c)
77 Stereo Once the left an right cameras are calibrated internally (intrinsics) and externally (extrinsics), we need to rectify the images Gary Bradski (c)
78 Stereo This converts correspondence search to a 1D search along image rows We do the serch using Sum of Abs. Diff block matching, with various constraints Gary Bradski (c)
79 Stereo There is a left-right feature ordering constraint, a texture strength constraint, a max disparity constraint ( Horopter ), a match strength constraint, all of which adds robustness. Gary Bradski (c)
80 Stereo Note that disparity is inversly proporational to distance, so we get most depth resolution close by Gary Bradski (c)
81 Stereo Result is a disparity map (if we don t know the scale of the calibration object), or a depth map (if we do) This can be all be done at frame rate. Gary Bradski (c)
82 Optical flow Going to 2D is by simple extension Need for small motion assumption Gary Bradski (c)
83 Kalman Filter, Partical Filter for Tracking Kalman Condensation or Particle Filter Gary Bradski (c)
84 Mean-Shift for Tracking Gary Bradski (c)
85 A few hints and some speculation SOME TIPS ON TRICKS OF THE TRADE Gary Bradski (c)
86 Machine learning Features beat algorithms Chose an operating point that trades off accuracy vs. cost TP FN 100% FP TN 100% Gary Bradski (c)
87 Debugging ML: Bias, Variance* If your model is too strong or weak you can have characteristic problems that have different strategies to fix. * See Andrew Ng s course notes, Gary Bradski (c)
88 Object Recognition, Segmentation Want what (recognition) and where (segmentation) Quick features with 2D and 3D offsets Initial recognition and segmentation Rich feature sets Make use of lighting effects Model based verification 2D and/or 3D Better sensors help Depth Higher dynamic range and sensitivity Adaptivity to lighting Gary Bradski (c)
89 WITHER COMPUTER VISION AND OPENCV Gary Bradski (c)
90 Vision Faster computation, 2D and 3D sensors, higher range and sensitivity Will make vision recognition and segmentation work faster than people think Will enable autonous robotics Visual geometry is already fairly mature for image stitching Model capture for games, movies, VR Gary Bradski (c)
91 OpenCV Now has a full time team of five people developing it again (Willow Garage s support) Will begin regular releases Plans Even better stereo and multicamera support Dealing with 2D+3D active and passive calibation Dealing with point clouds Much richer 2D and 3D feature set Better handling of motion, lighting, color, shadow Gary Bradski (c)
92 OpenCV Book Due out end of Sept This tutorial is just a faint introduction new book will teach computer vision and its use via OpenCV Learning OpenCV Computer Vision with the OpenCV Library, O Reilly Press. Google OpenCV Amazon Gary Bradski (c)
93 Questions? BOOK O Reilly Late September 2008: Learning OpenCV: Computer Vision with OpenCV OpenCV CODE: OpenCV WIKI: Willow Garage: garybradski@gmail.com
94
Final Exam Study Guide
Final Exam Study Guide Exam Window: 28th April, 12:00am EST to 30th April, 11:59pm EST Description As indicated in class the goal of the exam is to encourage you to review the material from the course.
More informationComputer Vision Lecture 17
Computer Vision Lecture 17 Epipolar Geometry & Stereo Basics 13.01.2015 Bastian Leibe RWTH Aachen http://www.vision.rwth-aachen.de leibe@vision.rwth-aachen.de Announcements Seminar in the summer semester
More informationComputer Vision Lecture 17
Announcements Computer Vision Lecture 17 Epipolar Geometry & Stereo Basics Seminar in the summer semester Current Topics in Computer Vision and Machine Learning Block seminar, presentations in 1 st week
More informationContents I IMAGE FORMATION 1
Contents I IMAGE FORMATION 1 1 Geometric Camera Models 3 1.1 Image Formation............................. 4 1.1.1 Pinhole Perspective....................... 4 1.1.2 Weak Perspective.........................
More informationIntroduction to Computer Vision
Introduction to Computer Vision Dr. Gerhard Roth COMP 4102A Winter 2015 Version 2 General Information Instructor: Adjunct Prof. Dr. Gerhard Roth gerhardroth@rogers.com read hourly gerhardroth@cmail.carleton.ca
More informationIMPLEMENTATION OF COMPUTER VISION TECHNIQUES USING OPENCV
IMPLEMENTATION OF COMPUTER VISION TECHNIQUES USING OPENCV Anu Suneja Assistant Professor M. M. University Mullana, Haryana, India From last few years, the thrust for automation and simulation tools in
More information3D Vision Real Objects, Real Cameras. Chapter 11 (parts of), 12 (parts of) Computerized Image Analysis MN2 Anders Brun,
3D Vision Real Objects, Real Cameras Chapter 11 (parts of), 12 (parts of) Computerized Image Analysis MN2 Anders Brun, anders@cb.uu.se 3D Vision! Philisophy! Image formation " The pinhole camera " Projective
More informationLUMS Mine Detector Project
LUMS Mine Detector Project Using visual information to control a robot (Hutchinson et al. 1996). Vision may or may not be used in the feedback loop. Visual (image based) features such as points, lines
More informationImage Transformations & Camera Calibration. Mašinska vizija, 2018.
Image Transformations & Camera Calibration Mašinska vizija, 2018. Image transformations What ve we learnt so far? Example 1 resize and rotate Open warp_affine_template.cpp Perform simple resize
More informationAll good things must...
Lecture 17 Final Review All good things must... UW CSE vision faculty Course Grading Programming Projects (80%) Image scissors (20%) -DONE! Panoramas (20%) - DONE! Content-based image retrieval (20%) -
More informationCS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching
Stereo Matching Fundamental matrix Let p be a point in left image, p in right image l l Epipolar relation p maps to epipolar line l p maps to epipolar line l p p Epipolar mapping described by a 3x3 matrix
More informationInstance-level recognition I. - Camera geometry and image alignment
Reconnaissance d objets et vision artificielle 2011 Instance-level recognition I. - Camera geometry and image alignment Josef Sivic http://www.di.ens.fr/~josef INRIA, WILLOW, ENS/INRIA/CNRS UMR 8548 Laboratoire
More informationM. Sc. (Artificial Intelligence and Machine Learning)
Course Name: Advanced Python Course Code: MSCAI 122 This course will introduce students to advanced python implementations and the latest Machine Learning and Deep learning libraries, Scikit-Learn and
More informationRectification and Disparity
Rectification and Disparity Nassir Navab Slides prepared by Christian Unger What is Stereo Vision? Introduction A technique aimed at inferring dense depth measurements efficiently using two cameras. Wide
More informationGeometric camera models and calibration
Geometric camera models and calibration http://graphics.cs.cmu.edu/courses/15-463 15-463, 15-663, 15-862 Computational Photography Fall 2018, Lecture 13 Course announcements Homework 3 is out. - Due October
More informationClassification and Detection in Images. D.A. Forsyth
Classification and Detection in Images D.A. Forsyth Classifying Images Motivating problems detecting explicit images classifying materials classifying scenes Strategy build appropriate image features train
More informationChaplin, Modern Times, 1936
Chaplin, Modern Times, 1936 [A Bucket of Water and a Glass Matte: Special Effects in Modern Times; bonus feature on The Criterion Collection set] Multi-view geometry problems Structure: Given projections
More informationCS4670: Computer Vision
CS4670: Computer Vision Noah Snavely Lecture 6: Feature matching and alignment Szeliski: Chapter 6.1 Reading Last time: Corners and blobs Scale-space blob detector: Example Feature descriptors We know
More informationMiniature faking. In close-up photo, the depth of field is limited.
Miniature faking In close-up photo, the depth of field is limited. http://en.wikipedia.org/wiki/file:jodhpur_tilt_shift.jpg Miniature faking Miniature faking http://en.wikipedia.org/wiki/file:oregon_state_beavers_tilt-shift_miniature_greg_keene.jpg
More informationRecap from Previous Lecture
Recap from Previous Lecture Tone Mapping Preserve local contrast or detail at the expense of large scale contrast. Changing the brightness within objects or surfaces unequally leads to halos. We are now
More informationMERGING POINT CLOUDS FROM MULTIPLE KINECTS. Nishant Rai 13th July, 2016 CARIS Lab University of British Columbia
MERGING POINT CLOUDS FROM MULTIPLE KINECTS Nishant Rai 13th July, 2016 CARIS Lab University of British Columbia Introduction What do we want to do? : Use information (point clouds) from multiple (2+) Kinects
More informationObject Detection Design challenges
Object Detection Design challenges How to efficiently search for likely objects Even simple models require searching hundreds of thousands of positions and scales Feature design and scoring How should
More informationCamera model and multiple view geometry
Chapter Camera model and multiple view geometry Before discussing how D information can be obtained from images it is important to know how images are formed First the camera model is introduced and then
More informationRaspberry Pi Using Open CV which Has The Installing,making Programs And Performance
Raspberry Pi Using Open CV which Has The Installing,making Programs And Performance nabaua Kazuhiko Inaba (inaba@kazsansan) I work as IT infrastructure as usual in Japan Others: Raspberry Pi, Zabbix, Linux,
More informationDense 3D Reconstruction. Christiano Gava
Dense 3D Reconstruction Christiano Gava christiano.gava@dfki.de Outline Previous lecture: structure and motion II Structure and motion loop Triangulation Today: dense 3D reconstruction The matching problem
More informationWhat have we leaned so far?
What have we leaned so far? Camera structure Eye structure Project 1: High Dynamic Range Imaging What have we learned so far? Image Filtering Image Warping Camera Projection Model Project 2: Panoramic
More informationDiscriminative classifiers for image recognition
Discriminative classifiers for image recognition May 26 th, 2015 Yong Jae Lee UC Davis Outline Last time: window-based generic object detection basic pipeline face detection with boosting as case study
More informationAn Implementation on Object Move Detection Using OpenCV
An Implementation on Object Move Detection Using OpenCV Professor: Dr. Ali Arya Reported by: Farzin Farhadi-Niaki Department of Systems and Computer Engineering Carleton University Ottawa, Canada I. INTRODUCTION
More informationDepth. Common Classification Tasks. Example: AlexNet. Another Example: Inception. Another Example: Inception. Depth
Common Classification Tasks Recognition of individual objects/faces Analyze object-specific features (e.g., key points) Train with images from different viewing angles Recognition of object classes Analyze
More informationEE795: Computer Vision and Intelligent Systems
EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 FDH 204 Lecture 14 130307 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Stereo Dense Motion Estimation Translational
More informationCamera Calibration. Schedule. Jesus J Caban. Note: You have until next Monday to let me know. ! Today:! Camera calibration
Camera Calibration Jesus J Caban Schedule! Today:! Camera calibration! Wednesday:! Lecture: Motion & Optical Flow! Monday:! Lecture: Medical Imaging! Final presentations:! Nov 29 th : W. Griffin! Dec 1
More informationImage processing techniques for driver assistance. Razvan Itu June 2014, Technical University Cluj-Napoca
Image processing techniques for driver assistance Razvan Itu June 2014, Technical University Cluj-Napoca Introduction Computer vision & image processing from wiki: any form of signal processing for which
More informationComputer Vision Course Lecture 04. Template Matching Image Pyramids. Ceyhun Burak Akgül, PhD cba-research.com. Spring 2015 Last updated 11/03/2015
Computer Vision Course Lecture 04 Template Matching Image Pyramids Ceyhun Burak Akgül, PhD cba-research.com Spring 2015 Last updated 11/03/2015 Photo credit: Olivier Teboul vision.mas.ecp.fr/personnel/teboul
More informationCS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching
Stereo Matching Fundamental matrix Let p be a point in left image, p in right image l l Epipolar relation p maps to epipolar line l p maps to epipolar line l p p Epipolar mapping described by a 3x3 matrix
More informationStereo. 11/02/2012 CS129, Brown James Hays. Slides by Kristen Grauman
Stereo 11/02/2012 CS129, Brown James Hays Slides by Kristen Grauman Multiple views Multi-view geometry, matching, invariant features, stereo vision Lowe Hartley and Zisserman Why multiple views? Structure
More informationImage processing and features
Image processing and features Gabriele Bleser gabriele.bleser@dfki.de Thanks to Harald Wuest, Folker Wientapper and Marc Pollefeys Introduction Previous lectures: geometry Pose estimation Epipolar geometry
More informationStereo CSE 576. Ali Farhadi. Several slides from Larry Zitnick and Steve Seitz
Stereo CSE 576 Ali Farhadi Several slides from Larry Zitnick and Steve Seitz Why do we perceive depth? What do humans use as depth cues? Motion Convergence When watching an object close to us, our eyes
More informationLearning and Inferring Depth from Monocular Images. Jiyan Pan April 1, 2009
Learning and Inferring Depth from Monocular Images Jiyan Pan April 1, 2009 Traditional ways of inferring depth Binocular disparity Structure from motion Defocus Given a single monocular image, how to infer
More informationRange Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation
Obviously, this is a very slow process and not suitable for dynamic scenes. To speed things up, we can use a laser that projects a vertical line of light onto the scene. This laser rotates around its vertical
More informationVision Review: Image Formation. Course web page:
Vision Review: Image Formation Course web page: www.cis.udel.edu/~cer/arv September 10, 2002 Announcements Lecture on Thursday will be about Matlab; next Tuesday will be Image Processing The dates some
More informationEXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,
School of Computer Science and Communication, KTH Danica Kragic EXAM SOLUTIONS Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, 14.00 19.00 Grade table 0-25 U 26-35 3 36-45
More informationProject 3 code & artifact due Tuesday Final project proposals due noon Wed (by ) Readings Szeliski, Chapter 10 (through 10.5)
Announcements Project 3 code & artifact due Tuesday Final project proposals due noon Wed (by email) One-page writeup (from project web page), specifying:» Your team members» Project goals. Be specific.
More informationLast update: May 4, Vision. CMSC 421: Chapter 24. CMSC 421: Chapter 24 1
Last update: May 4, 200 Vision CMSC 42: Chapter 24 CMSC 42: Chapter 24 Outline Perception generally Image formation Early vision 2D D Object recognition CMSC 42: Chapter 24 2 Perception generally Stimulus
More informationMultiple-Choice Questionnaire Group C
Family name: Vision and Machine-Learning Given name: 1/28/2011 Multiple-Choice naire Group C No documents authorized. There can be several right answers to a question. Marking-scheme: 2 points if all right
More informationMultiple View Geometry
Multiple View Geometry Martin Quinn with a lot of slides stolen from Steve Seitz and Jianbo Shi 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 Our Goal The Plenoptic Function P(θ,φ,λ,t,V
More informationRecap: Features and filters. Recap: Grouping & fitting. Now: Multiple views 10/29/2008. Epipolar geometry & stereo vision. Why multiple views?
Recap: Features and filters Epipolar geometry & stereo vision Tuesday, Oct 21 Kristen Grauman UT-Austin Transforming and describing images; textures, colors, edges Recap: Grouping & fitting Now: Multiple
More informationLecture 14: Computer Vision
CS/b: Artificial Intelligence II Prof. Olga Veksler Lecture : Computer Vision D shape from Images Stereo Reconstruction Many Slides are from Steve Seitz (UW), S. Narasimhan Outline Cues for D shape perception
More informationComputer and Machine Vision
Computer and Machine Vision Lecture Week 10 Part-2 Skeletal Models and Face Detection March 21, 2014 Sam Siewert Outline of Week 10 Lab #4 Overview Lab #5 and #6 Extended Lab Overview SIFT and SURF High
More information1 (5 max) 2 (10 max) 3 (20 max) 4 (30 max) 5 (10 max) 6 (15 extra max) total (75 max + 15 extra)
Mierm Exam CS223b Stanford CS223b Computer Vision, Winter 2004 Feb. 18, 2004 Full Name: Email: This exam has 7 pages. Make sure your exam is not missing any sheets, and write your name on every page. The
More information3D Sensing and Reconstruction Readings: Ch 12: , Ch 13: ,
3D Sensing and Reconstruction Readings: Ch 12: 12.5-6, Ch 13: 13.1-3, 13.9.4 Perspective Geometry Camera Model Stereo Triangulation 3D Reconstruction by Space Carving 3D Shape from X means getting 3D coordinates
More informationCSE 527: Introduction to Computer Vision
CSE 527: Introduction to Computer Vision Week 5 - Class 1: Matching, Stitching, Registration September 26th, 2017 ??? Recap Today Feature Matching Image Alignment Panoramas HW2! Feature Matches Feature
More informationComputer Vision I. Dense Stereo Correspondences. Anita Sellent 1/15/16
Computer Vision I Dense Stereo Correspondences Anita Sellent Stereo Two Cameras Overlapping field of view Known transformation between cameras From disparity compute depth [ Bradski, Kaehler: Learning
More informationProject 4 Results. Representation. Data. Learning. Zachary, Hung-I, Paul, Emanuel. SIFT and HoG are popular and successful.
Project 4 Results Representation SIFT and HoG are popular and successful. Data Hugely varying results from hard mining. Learning Non-linear classifier usually better. Zachary, Hung-I, Paul, Emanuel Project
More informationDense 3D Reconstruction. Christiano Gava
Dense 3D Reconstruction Christiano Gava christiano.gava@dfki.de Outline Previous lecture: structure and motion II Structure and motion loop Triangulation Wide baseline matching (SIFT) Today: dense 3D reconstruction
More informationVideo Mosaics for Virtual Environments, R. Szeliski. Review by: Christopher Rasmussen
Video Mosaics for Virtual Environments, R. Szeliski Review by: Christopher Rasmussen September 19, 2002 Announcements Homework due by midnight Next homework will be assigned Tuesday, due following Tuesday.
More informationMultiple View Geometry
Multiple View Geometry CS 6320, Spring 2013 Guest Lecture Marcel Prastawa adapted from Pollefeys, Shah, and Zisserman Single view computer vision Projective actions of cameras Camera callibration Photometric
More informationDesigning Applications that See Lecture 7: Object Recognition
stanford hci group / cs377s Designing Applications that See Lecture 7: Object Recognition Dan Maynes-Aminzade 29 January 2008 Designing Applications that See http://cs377s.stanford.edu Reminders Pick up
More informationTopics to be Covered in the Rest of the Semester. CSci 4968 and 6270 Computational Vision Lecture 15 Overview of Remainder of the Semester
Topics to be Covered in the Rest of the Semester CSci 4968 and 6270 Computational Vision Lecture 15 Overview of Remainder of the Semester Charles Stewart Department of Computer Science Rensselaer Polytechnic
More informationBasic distinctions. Definitions. Epstein (1965) familiar size experiment. Distance, depth, and 3D shape cues. Distance, depth, and 3D shape cues
Distance, depth, and 3D shape cues Pictorial depth cues: familiar size, relative size, brightness, occlusion, shading and shadows, aerial/ atmospheric perspective, linear perspective, height within image,
More informationPractice Exam Sample Solutions
CS 675 Computer Vision Instructor: Marc Pomplun Practice Exam Sample Solutions Note that in the actual exam, no calculators, no books, and no notes allowed. Question 1: out of points Question 2: out of
More informationCameras and Radiometry. Last lecture in a nutshell. Conversion Euclidean -> Homogenous -> Euclidean. Affine Camera Model. Simplified Camera Models
Cameras and Radiometry Last lecture in a nutshell CSE 252A Lecture 5 Conversion Euclidean -> Homogenous -> Euclidean In 2-D Euclidean -> Homogenous: (x, y) -> k (x,y,1) Homogenous -> Euclidean: (x, y,
More informationAll human beings desire to know. [...] sight, more than any other senses, gives us knowledge of things and clarifies many differences among them.
All human beings desire to know. [...] sight, more than any other senses, gives us knowledge of things and clarifies many differences among them. - Aristotle University of Texas at Arlington Introduction
More informationPartitioning Data. IRDS: Evaluation, Debugging, and Diagnostics. Cross-Validation. Cross-Validation for parameter tuning
Partitioning Data IRDS: Evaluation, Debugging, and Diagnostics Charles Sutton University of Edinburgh Training Validation Test Training : Running learning algorithms Validation : Tuning parameters of learning
More informationStereo. Outline. Multiple views 3/29/2017. Thurs Mar 30 Kristen Grauman UT Austin. Multi-view geometry, matching, invariant features, stereo vision
Stereo Thurs Mar 30 Kristen Grauman UT Austin Outline Last time: Human stereopsis Epipolar geometry and the epipolar constraint Case example with parallel optical axes General case with calibrated cameras
More informationhttps://en.wikipedia.org/wiki/the_dress Recap: Viola-Jones sliding window detector Fast detection through two mechanisms Quickly eliminate unlikely windows Use features that are fast to compute Viola
More informationCHAPTER 3 DISPARITY AND DEPTH MAP COMPUTATION
CHAPTER 3 DISPARITY AND DEPTH MAP COMPUTATION In this chapter we will discuss the process of disparity computation. It plays an important role in our caricature system because all 3D coordinates of nodes
More informationFundamental matrix. Let p be a point in left image, p in right image. Epipolar relation. Epipolar mapping described by a 3x3 matrix F
Fundamental matrix Let p be a point in left image, p in right image l l Epipolar relation p maps to epipolar line l p maps to epipolar line l p p Epipolar mapping described by a 3x3 matrix F Fundamental
More informationLaser sensors. Transmitter. Receiver. Basilio Bona ROBOTICA 03CFIOR
Mobile & Service Robotics Sensors for Robotics 3 Laser sensors Rays are transmitted and received coaxially The target is illuminated by collimated rays The receiver measures the time of flight (back and
More information3D from Images - Assisted Modeling, Photogrammetry. Marco Callieri ISTI-CNR, Pisa, Italy
3D from Images - Assisted Modeling, Photogrammetry Marco Callieri ISTI-CNR, Pisa, Italy 3D from Photos Our not-so-secret dream: obtain a reliable and precise 3D from simple photos Why? Easier, cheaper
More informationCapturing, Modeling, Rendering 3D Structures
Computer Vision Approach Capturing, Modeling, Rendering 3D Structures Calculate pixel correspondences and extract geometry Not robust Difficult to acquire illumination effects, e.g. specular highlights
More informationApplication questions. Theoretical questions
The oral exam will last 30 minutes and will consist of one application question followed by two theoretical questions. Please find below a non exhaustive list of possible application questions. The list
More informationLecture 14: Basic Multi-View Geometry
Lecture 14: Basic Multi-View Geometry Stereo If I needed to find out how far point is away from me, I could use triangulation and two views scene point image plane optical center (Graphic from Khurram
More informationSingle-view 3D Reconstruction
Single-view 3D Reconstruction 10/12/17 Computational Photography Derek Hoiem, University of Illinois Some slides from Alyosha Efros, Steve Seitz Notes about Project 4 (Image-based Lighting) You can work
More informationFinal project bits and pieces
Final project bits and pieces The project is expected to take four weeks of time for up to four people. At 12 hours per week per person that comes out to: ~192 hours of work for a four person team. Capstone:
More informationImage Rectification (Stereo) (New book: 7.2.1, old book: 11.1)
Image Rectification (Stereo) (New book: 7.2.1, old book: 11.1) Guido Gerig CS 6320 Spring 2013 Credits: Prof. Mubarak Shah, Course notes modified from: http://www.cs.ucf.edu/courses/cap6411/cap5415/, Lecture
More informationStep-by-Step Model Buidling
Step-by-Step Model Buidling Review Feature selection Feature selection Feature correspondence Camera Calibration Euclidean Reconstruction Landing Augmented Reality Vision Based Control Sparse Structure
More informationStereo: Disparity and Matching
CS 4495 Computer Vision Aaron Bobick School of Interactive Computing Administrivia PS2 is out. But I was late. So we pushed the due date to Wed Sept 24 th, 11:55pm. There is still *no* grace period. To
More informationStereo Vision. MAN-522 Computer Vision
Stereo Vision MAN-522 Computer Vision What is the goal of stereo vision? The recovery of the 3D structure of a scene using two or more images of the 3D scene, each acquired from a different viewpoint in
More informationFace detection, validation and tracking. Océane Esposito, Grazina Laurinaviciute, Alexandre Majetniak
Face detection, validation and tracking Océane Esposito, Grazina Laurinaviciute, Alexandre Majetniak Agenda Motivation and examples Face detection Face validation Face tracking Conclusion Motivation Goal:
More informationUsing the Forest to See the Trees: Context-based Object Recognition
Using the Forest to See the Trees: Context-based Object Recognition Bill Freeman Joint work with Antonio Torralba and Kevin Murphy Computer Science and Artificial Intelligence Laboratory MIT A computer
More informationVision is inferential. (
Announcements Final: Thursday, December 15, 8am, here. Review Session, Wednesday, Dec 14, 1pm, AV Williams 4424. Review sheet with practice problems on-line. Hints for Final Focus on core techniques/ideas:
More informationVisual Odometry. Features, Tracking, Essential Matrix, and RANSAC. Stephan Weiss Computer Vision Group NASA-JPL / CalTech
Visual Odometry Features, Tracking, Essential Matrix, and RANSAC Stephan Weiss Computer Vision Group NASA-JPL / CalTech Stephan.Weiss@ieee.org (c) 2013. Government sponsorship acknowledged. Outline The
More informationTecnologie per la ricostruzione di modelli 3D da immagini. Marco Callieri ISTI-CNR, Pisa, Italy
Tecnologie per la ricostruzione di modelli 3D da immagini Marco Callieri ISTI-CNR, Pisa, Italy 3D from Photos Our not-so-secret dream: obtain a reliable and precise 3D from simple photos Why? Easier, less
More informationEE795: Computer Vision and Intelligent Systems
EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 FDH 204 Lecture 12 130228 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Panoramas, Mosaics, Stitching Two View Geometry
More informationHUMAN COMPUTER INTERFACE BASED ON HAND TRACKING
Proceedings of MUSME 2011, the International Symposium on Multibody Systems and Mechatronics Valencia, Spain, 25-28 October 2011 HUMAN COMPUTER INTERFACE BASED ON HAND TRACKING Pedro Achanccaray, Cristian
More informationComputer Graphics. Sampling Theory & Anti-Aliasing. Philipp Slusallek
Computer Graphics Sampling Theory & Anti-Aliasing Philipp Slusallek Dirac Comb (1) Constant & δ-function flash Comb/Shah function 2 Dirac Comb (2) Constant & δ-function Duality f(x) = K F(ω) = K (ω) And
More informationCV: 3D to 2D mathematics. Perspective transformation; camera calibration; stereo computation; and more
CV: 3D to 2D mathematics Perspective transformation; camera calibration; stereo computation; and more Roadmap of topics n Review perspective transformation n Camera calibration n Stereo methods n Structured
More informationEE795: Computer Vision and Intelligent Systems
EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 FDH 204 Lecture 10 130221 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Canny Edge Detector Hough Transform Feature-Based
More informationOutline. ETN-FPI Training School on Plenoptic Sensing
Outline Introduction Part I: Basics of Mathematical Optimization Linear Least Squares Nonlinear Optimization Part II: Basics of Computer Vision Camera Model Multi-Camera Model Multi-Camera Calibration
More informationComputer and Machine Vision
Computer and Machine Vision Lecture Week 12 Part-2 Additional 3D Scene Considerations March 29, 2014 Sam Siewert Outline of Week 12 Computer Vision APIs and Languages Alternatives to C++ and OpenCV API
More informationTA Section: Problem Set 4
TA Section: Problem Set 4 Outline Discriminative vs. Generative Classifiers Image representation and recognition models Bag of Words Model Part-based Model Constellation Model Pictorial Structures Model
More informationECE 172A: Introduction to Intelligent Systems: Machine Vision, Fall Midterm Examination
ECE 172A: Introduction to Intelligent Systems: Machine Vision, Fall 2008 October 29, 2008 Notes: Midterm Examination This is a closed book and closed notes examination. Please be precise and to the point.
More informationChapter 9 Object Tracking an Overview
Chapter 9 Object Tracking an Overview The output of the background subtraction algorithm, described in the previous chapter, is a classification (segmentation) of pixels into foreground pixels (those belonging
More informationVisual Tracking. Image Processing Laboratory Dipartimento di Matematica e Informatica Università degli studi di Catania.
Image Processing Laboratory Dipartimento di Matematica e Informatica Università degli studi di Catania 1 What is visual tracking? estimation of the target location over time 2 applications Six main areas:
More informationOverview. Augmented reality and applications Marker-based augmented reality. Camera model. Binary markers Textured planar markers
Augmented reality Overview Augmented reality and applications Marker-based augmented reality Binary markers Textured planar markers Camera model Homography Direct Linear Transformation What is augmented
More informationImage Formation I Chapter 1 (Forsyth&Ponce) Cameras
Image Formation I Chapter 1 (Forsyth&Ponce) Cameras Guido Gerig CS 632 Spring 215 cknowledgements: Slides used from Prof. Trevor Darrell, (http://www.eecs.berkeley.edu/~trevor/cs28.html) Some slides modified
More informationMulti-view Stereo. Ivo Boyadzhiev CS7670: September 13, 2011
Multi-view Stereo Ivo Boyadzhiev CS7670: September 13, 2011 What is stereo vision? Generic problem formulation: given several images of the same object or scene, compute a representation of its 3D shape
More informationColorado School of Mines. Computer Vision. Professor William Hoff Dept of Electrical Engineering &Computer Science.
Professor William Hoff Dept of Electrical Engineering &Computer Science http://inside.mines.edu/~whoff/ 1 Stereo Vision 2 Inferring 3D from 2D Model based pose estimation single (calibrated) camera Stereo
More informationShadows in the graphics pipeline
Shadows in the graphics pipeline Steve Marschner Cornell University CS 569 Spring 2008, 19 February There are a number of visual cues that help let the viewer know about the 3D relationships between objects
More informationCS201 Computer Vision Camera Geometry
CS201 Computer Vision Camera Geometry John Magee 25 November, 2014 Slides Courtesy of: Diane H. Theriault (deht@bu.edu) Question of the Day: How can we represent the relationships between cameras and the
More information