Upcoming SlideShare
×

Mit6870 orsu lecture2

721 views

Published on

Published in: Technology
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
721
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
22
0
Likes
0
Embeds 0
No embeds

No notes for slide
• The first question that we might have, specially after seeing the other parts of this course, is why to use a discriminative approach? This slide shows one of the arguments some times used to illustrate the advantage that a discriminative framework might have over a generative framework. It is important to not that most of the time, generative models are also lousy painters. Generative models do not try to have a full generative model up to the pixel level. In fact, those cases, as the ones reviewed before in which the generative model is applied only to a set of sparse features are in fact a mixture of a discriminative method (for the low level vision part) and a generative method (for the high level vision part). Even if there is no discriminative training, the choice of the representation is given by our experience as vision researchers exploring alternatives until one works: just as a discriminative method will do.
• Object detection and recognition is formulated as a classification problem. The image is partitioned into a set of overlapping windows, and a decision is taken at each window about if it contains a target object or not. Each window is represented by extracting a large number of features that encode information such as boundaries, textures, color, spatial structure. The classification function, that maps an image window into a binary decision, is learnt using methods such as SVMs, boosting or neural networks.
• In many cases, F(x) will give a real value and the classification is perform with a Threshold. If F(x)&gt;0 then y =+1
• In the next part I will focus on particular technique, and I will provide a detailed description of things you need to know to make it work. This part is accompanied by a Matlab toolbox that you can find on the web site of the class. Is entirely self contained and written in matlab. It has an implementation of gentle boosting, and an object detector. The demo shows results on detecting screens and cars and can be easily trained to detect other objects.
• One of the first papers to use boosting for a vision task. Take one filter, filter the image, take the absolute value and downsample. Take another filter, take absolute value of the output and downsample. Do this once more. Then, for each color channel independently, sum the value of all the pixels and the resulting number will be one of the features. If you do this for all triples of filters, you’ll end up with 46875 features.
• No need of image pyramid in order to achieve scale invariance. Very efficient. Works well for faces which are objects well defined by the intensity pattern. Combined with a cascade, achieves real time performance for face detection even on large images.
• This will be better than a full object template because it allows for some flexibility in the location of the parts. It is still easy to compute.
• The simplest weak detector will be using template matching. In this case we use template matching to detect the presence of a part of the object. Once the presence is detected it will vote for the object in the center of the object coordinates frame. In this example, we are trying to detect a computer screen. We use the top left corner of the screen. The first thing we do is compute a normalize correlation between the image and the template. This will give a pick in the response near the top-left corner of the screen and, of course, many other matches that do not correspond to screen. Now we displace the output of the correlation taking into account the relative positions between the top left corner of the screen and the center of the screen. We also blur the output. Now, if we apply a threshold we can see that the center of the screen has a value above the threshold while most of the background gets suppressed. There are a lot of other locations that also are above the threshold. Therefore, this is not a good detector. But it is better than chance!
• The simplest weak detector will be using template matching. In this case we use template matching to detect the presence of a part of the object. Once the presence is detected it will vote for the object in the center of the object coordinates frame. In this example, we are trying to detect a computer screen. We use the top left corner of the screen. The first thing we do is compute a normalize correlation between the image and the template. This will give a pick in the response near the top-left corner of the screen and, of course, many other matches that do not correspond to screen. Now we displace the output of the correlation taking into account the relative positions between the top left corner of the screen and the center of the screen. We also blur the output. Now, if we apply a threshold we can see that the center of the screen has a value above the threshold while most of the background gets suppressed. There are a lot of other locations that also are above the threshold. Therefore, this is not a good detector. But it is better than chance!
• So, now we have to train. We need positive and negative examples. So we do the next thing: get positive samples by taking the values of all the features in the center of the target. Then take negative samples from the background.
• In a probabilistic framework, opposed to the generative model, here we fit a conditional probability. Boosting is a way of fitting a logistic regression.
• Finally, the object model is very similar to the one built with the generative model. Here, invariance in translation and scale is achieved by the search strategy: the classifier is evaluated at all locations (by translating the image) and at all scales (by reescaling the image in small steps).
• Mit6870 orsu lecture2

1. 1. Lecture 2 Overview on object recognition and one practical example 6.870 Object Recognition and Scene Understanding http://people.csail.mit.edu/torralba/courses/6.870/6.870.recognition.htm
2. 2. Wednesday <ul><li>Nicolas Pinto: Template matching and gradient histograms </li></ul><ul><li>Jenny Yuen: Demo of Dalal&Triggs detector and interface with LabelMe </li></ul>
3. 3. Object recognition Is it really so hard? Output of normalized correlation This is a chair Find the chair in this image
4. 4. Object recognition Is it really so hard? My biggest concern while making this slide was: how do I justify 50 years of research, and this course, if this experiment did work? Pretty much garbage Simple template matching is not going to make it Find the chair in this image
5. 5. Object recognition Is it really so hard? A “popular method is that of template matching, by point to point correlation of a model pattern with the image pattern. These techniques are inadequate for three-dimensional scene analysis for many reasons, such as occlusion, changes in viewing angle, and articulation of parts.” Nivatia & Binford, 1977. Find the chair in this image
6. 6. So, let’s make the problem simpler: Block world Nice framework to develop fancy math, but too far from reality… Object Recognition in the Geometric Era: a Retrospective. Joseph L. Mundy. 2006
7. 7. Binford and generalized cylinders Object Recognition in the Geometric Era: a Retrospective. Joseph L. Mundy. 2006
8. 8. Binford and generalized cylinders
9. 9. Recognition by components Irving Biederman Recognition-by-Components: A Theory of Human Image Understanding. Psychological Review, 1987.
10. 10. Recognition by components <ul><li>The fundamental assumption of the proposed theory, recognition-by-components (RBC), is that a modest set of generalized-cone components, called geons (N = 36), can be derived from contrasts of five readily detectable properties of edges in a two-dimensional image: curvature, collinearity, symmetry, parallelism, and cotermination. </li></ul><ul><li>The “contribution lies in its proposal for a particular vocabulary of components derived from perceptual mechanisms and its account of how an arrangement of these components can access a representation of an object in memory.” </li></ul>
11. 11. A do-it-yourself example <ul><li>We know that this object is nothing we know </li></ul><ul><li>We can split this objects into parts that everybody will agree </li></ul><ul><li>We can see how it resembles something familiar: “a hot dog cart” </li></ul><ul><li>“The naive realism that emerges in descriptions of nonsense objects may be reflecting the workings of a representational system by which objects are identified.” </li></ul>
12. 12. Hypothesis <ul><li>Hypothesis: there is a small number of geometric components that constitute the primitive elements of the object recognition system (like letters to form words). </li></ul><ul><li>“ The particular properties of edges that are postulated to be relevant to the generation of the volumetric primitives have the desirable properties that they are invariant over changes in orientation and can be determined from just a few points on each edge.” </li></ul><ul><li>Limitation: “The modeling has been limited to concrete entities with specified boundaries.” (count nouns) – this limitation is shared by many modern object detection algorithms. </li></ul>
13. 13. Constraints on possible models of recognition <ul><li>Access to the mental representation of an object should not be dependent on absolute judgments of quantitative detail </li></ul><ul><li>The information that is the basis of recognition should be relatively invariant with respect to orientation and modest degradation. </li></ul><ul><li>Partial matches should be computable. A theory of object interpretation should have some principled means for computing a match for occluded, partial, or new exemplars of a given category. </li></ul>
14. 14. Stages of processing “ Parsing is performed, primarily at concave regions, simultaneously with a detection of nonaccidental properties.”
15. 15. Non accidental properties Certain properties of edges in a two-dimensional image are taken by the visual system as strong evidence that the edges in the three-dimensional world contain those same properties. Non accidental properties, (Witkin & Tenenbaum,1983): Rarely be produced by accidental alignments of viewpoint and object features and consequently are generally unaffected by slight variations in viewpoint. e.g., Freeman, “the generic viewpoint assumption”, 1994 ? image
16. 16. <ul><li>Examples: </li></ul><ul><li>Colinearity </li></ul><ul><li>Smoothness </li></ul><ul><li>Symmetry </li></ul><ul><li>Parallelism </li></ul><ul><li>Cotermination </li></ul>
17. 17. The high speed and accuracy of determining a given nonaccidental relation {e.g., whether some pattern is symmetrical) should be contrasted with performance in making absolute quantitative judgments of variations in a single physical attribute, such as length of a segment or degree of tilt or curvature. Object recognition is performed by humans in around 100ms.
18. 18. “If contours are deleted at a vertex they can be restored, as long as there is no accidental filling-in. The greater disruption from vertex deletion is expected on the basis of their importance as diagnostic image features for the components.” Recoverable Unrecoverable
19. 19. From generalized cylinders to GEONS “ From variation over only two or three levels in the nonaccidental relations of four attributes of generalized cylinders, a set of 36 GEONS can be generated.” Geons represent a restricted form of generalized cylinders.
20. 20. More GEONS
21. 21. Objects and their geons
22. 22. Scenes and geons Mezzanotte & Biederman
23. 23. The importance of spatial arrangement
24. 24. Supercuadrics Introduced in computer vision by A. Pentland, 1986.
25. 25. What is missing? <ul><li>The notion of geometric structure. </li></ul><ul><li>Although they were aware of it, the previous works put more emphasis on defining the primitive elements than modeling their geometric relationships. </li></ul>
26. 26. Parts and Structure approaches <ul><li>With a different perspective, these models focused more on the geometry than on defining the constituent elements: </li></ul><ul><li>Fischler & Elschlager 1973 </li></ul><ul><li>Yuille ‘91 </li></ul><ul><li>Brunelli & Poggio ‘93 </li></ul><ul><li>Lades, v.d. Malsburg et al. ‘93 </li></ul><ul><li>Cootes, Lanitis, Taylor et al. ‘95 </li></ul><ul><li>Amit & Geman ‘95, ‘99 </li></ul><ul><li>Perona et al. ‘95, ‘96, ’98, ’00, ’03, ‘04, ‘05 </li></ul><ul><li>Felzenszwalb & Huttenlocher ’00, ’04 </li></ul><ul><li>Crandall & Huttenlocher ’05, ’06 </li></ul><ul><li>Leibe & Schiele ’03, ’04 </li></ul><ul><li>Many papers since 2000 </li></ul>Figure from [Fischler & Elschlager 73]
27. 27. Representation <ul><li>Object as set of parts </li></ul><ul><ul><li>Generative representation </li></ul></ul><ul><li>Model: </li></ul><ul><ul><li>Relative locations between parts </li></ul></ul><ul><ul><li>Appearance of part </li></ul></ul><ul><li>Issues: </li></ul><ul><ul><li>How to model location </li></ul></ul><ul><ul><li>How to represent appearance </li></ul></ul><ul><ul><li>Sparse or dense (pixels or regions) </li></ul></ul><ul><ul><li>How to handle occlusion/clutter </li></ul></ul>We will discuss these models more in depth next week
28. 28. <ul><li>But, despite promising initial results…things did not work out so well (lack of data, processing power, lack of reliable methods for low-level and mid-level vision) </li></ul><ul><li>Instead, a different way of thinking about object detection started making some progress: learning based approaches and classifiers, which ignored low and mid-level vision. </li></ul><ul><li>Maybe the time is here to come back to some of the earlier models, more grounded in intuitions about visual perception. </li></ul>
29. 29. A simple object detector <ul><li>Simple but contains some of same basic elements of many state of the art detectors. </li></ul><ul><li>Based on boosting which makes all the stages of the training and testing easy to understand. </li></ul>Most of the slides are from the ICCV 05 short course http://people.csail.mit.edu/torralba/shortCourseRLOC/
30. 30. Discriminative vs. generative x = data <ul><li>Generative model </li></ul>(The lousy painter) 0 10 20 30 40 50 60 70 0 0.05 0.1 0 10 20 30 40 50 60 70 0 0.5 1 x = data <ul><li>Discriminative model </li></ul>0 10 20 30 40 50 60 70 80 -1 1 x = data <ul><li>Classification function </li></ul>( The artist )
31. 31. Discriminative methods Object detection and recognition is formulated as a classification problem. Decision boundary … and a decision is taken at each window about if it contains a target object or not. Where are the screens? The image is partitioned into a set of overlapping windows Bag of image patches Computer screen Background In some feature space
32. 32. Discriminative methods 10 6 examples Nearest neighbor Shakhnarovich, Viola, Darrell 2003 Berg, Berg, Malik 2005 … Neural networks LeCun, Bottou, Bengio, Haffner 1998 Rowley, Baluja, Kanade 1998 … Support Vector Machines and Kernels Conditional Random Fields McCallum, Freitag, Pereira 2000 Kumar, Hebert 2003 … Guyon, Vapnik Heisele, Serre, Poggio, 2001 …
33. 33. <ul><li>Formulation: binary classification </li></ul>Formulation +1 -1 x 1 x 2 x 3 x N … … x N+1 x N+2 x N+M -1 -1 ? ? ? … Training data: each image patch is labeled as containing the object or background Test data Features x = Labels y = <ul><li>Minimize misclassification error </li></ul><ul><li>(Not that simple: we need some guarantees that there will be generalization) </li></ul>Where belongs to some family of functions <ul><li>Classification function </li></ul>
34. 34. Overview of section <ul><li>Object detection with classifiers </li></ul><ul><li>Boosting </li></ul><ul><ul><li>Gentle boosting </li></ul></ul><ul><ul><li>Weak detectors </li></ul></ul><ul><ul><li>Object model </li></ul></ul><ul><ul><li>Object detection </li></ul></ul>
35. 35. A simple object detector with Boosting <ul><li>Download </li></ul><ul><li>Toolbox for manipulating dataset </li></ul><ul><li>Code and dataset </li></ul><ul><li>Matlab code </li></ul><ul><li>Gentle boosting </li></ul><ul><li>Object detector using a part based model </li></ul><ul><li>Dataset with cars and computer monitors </li></ul>http://people.csail.mit.edu/torralba/iccv2005/
36. 36. <ul><li>A simple algorithm for learning robust classifiers </li></ul><ul><ul><li>Freund & Shapire, 1995 </li></ul></ul><ul><ul><li>Friedman, Hastie, Tibshhirani, 1998 </li></ul></ul><ul><li>Provides efficient algorithm for sparse visual feature selection </li></ul><ul><ul><li>Tieu & Viola, 2000 </li></ul></ul><ul><ul><li>Viola & Jones, 2003 </li></ul></ul><ul><li>Easy to implement, not requires external optimization tools. </li></ul>Why boosting?
37. 37. Boosting <ul><li>Defines a classifier using an additive model: </li></ul>Strong classifier Weak classifier Weight Features vector
38. 38. <ul><li>We need to define a family of weak classifiers </li></ul>Boosting <ul><li>Defines a classifier using an additive model: </li></ul>Strong classifier Weak classifier Weight Features vector from a family of weak classifiers
39. 39. Boosting <ul><li>It is a sequential procedure: </li></ul>Each data point has a class label: w t =1 and a weight: x t=1 x t=2 x t +1 ( ) -1 ( ) y t =
40. 40. Toy example Weak learners from the family of lines h => p(error) = 0.5 it is at chance Each data point has a class label: w t =1 and a weight: +1 ( ) -1 ( ) y t =
41. 41. Toy example This one seems to be the best Each data point has a class label: w t =1 and a weight: This is a ‘ weak classifier ’: It performs slightly better than chance. +1 ( ) -1 ( ) y t =
42. 42. Toy example We set a new problem for which the previous weak classifier performs at chance again Each data point has a class label: w t w t exp{-y t H t } We update the weights: +1 ( ) -1 ( ) y t =
43. 43. Toy example We set a new problem for which the previous weak classifier performs at chance again Each data point has a class label: w t w t exp{-y t H t } We update the weights: +1 ( ) -1 ( ) y t =
44. 44. Toy example We set a new problem for which the previous weak classifier performs at chance again Each data point has a class label: w t w t exp{-y t H t } We update the weights: +1 ( ) -1 ( ) y t =
45. 45. Toy example We set a new problem for which the previous weak classifier performs at chance again Each data point has a class label: w t w t exp{-y t H t } We update the weights: +1 ( ) -1 ( ) y t =
46. 46. Toy example The strong (non- linear) classifier is built as the combination of all the weak (linear) classifiers. f 1 f 2 f 3 f 4
47. 47. Boosting <ul><li>Different cost functions and minimization algorithms result is various flavors of Boosting </li></ul><ul><li>In this demo, I will use gentleBoosting: it is simple to implement and numerically stable. </li></ul>
48. 48. Overview of section <ul><li>Object detection with classifiers </li></ul><ul><li>Boosting </li></ul><ul><ul><li>Gentle boosting </li></ul></ul><ul><ul><li>Weak detectors </li></ul></ul><ul><ul><li>Object model </li></ul></ul><ul><ul><li>Object detection </li></ul></ul>
49. 49. Boosting <ul><li>Boosting fits the additive model </li></ul>by minimizing the exponential loss Training samples The exponential loss is a differentiable upper bound to the misclassification error.
50. 50. Exponential loss -1.5 -1 -0.5 0 0.5 1 1.5 2 0 0.5 1 1.5 2 2.5 3 3.5 4 Squared error Exponential loss yF(x) = margin Misclassification error Loss Squared error Exponential loss
51. 51. Boosting Sequential procedure. At each step we add For more details: Friedman, Hastie, Tibshirani. “Additive Logistic Regression: a Statistical View of Boosting” (1998) to minimize the residual loss input Desired output Parameters weak classifier
52. 52. gentleBoosting For more details: Friedman, Hastie, Tibshirani. “Additive Logistic Regression: a Statistical View of Boosting” (1998) We chose that minimizes the cost: At each iterations we just need to solve a weighted least squares problem Weights at this iteration <ul><li>At each iteration: </li></ul>Instead of doing exact optimization, gentle Boosting minimizes a Taylor approximation of the error:
53. 53. Weak classifiers <ul><li>The input is a set of weighted training samples (x,y,w) </li></ul><ul><li>Regression stumps: simple but commonly used in object detection. </li></ul>Four parameters: b=E w (y [x>  ]) a=E w (y [x<  ]) x f m (x)  fitRegressionStump.m
54. 54. gentleBoosting.m function classifier = gentleBoost (x, y, Nrounds) … for m = 1:Nrounds fm = selectBestWeakClassifier (x, y, w); w = w .* exp(- y .* fm); % store parameters of fm in classifier … end Solve weighted least-squares Re-weight training samples Initialize weights w = 1
55. 55. Demo gentleBoosting > demoGentleBoost.m Demo using Gentle boost and stumps with hand selected 2D data:
56. 56. Flavors of boosting <ul><li>AdaBoost (Freund and Shapire, 1995) </li></ul><ul><li>Real AdaBoost (Friedman et al, 1998) </li></ul><ul><li>LogitBoost (Friedman et al, 1998) </li></ul><ul><li>Gentle AdaBoost (Friedman et al, 1998) </li></ul><ul><li>BrownBoosting (Freund, 2000) </li></ul><ul><li>FloatBoost (Li et al, 2002) </li></ul><ul><li>… </li></ul>
57. 57. Overview of section <ul><li>Object detection with classifiers </li></ul><ul><li>Boosting </li></ul><ul><ul><li>Gentle boosting </li></ul></ul><ul><ul><li>Weak detectors </li></ul></ul><ul><ul><li>Object model </li></ul></ul><ul><ul><li>Object detection </li></ul></ul>
58. 58. From images to features: Weak detectors <ul><li>We will now define a family of visual features that can be used as weak classifiers (“weak detectors”) </li></ul>Takes image as input and the output is binary response. The output is a weak detector.
59. 59. Object recognition Is it really so hard? But what if we use smaller patches? Just a part of the chair? Find the chair in this image
60. 60. Parts But what if we use smaller patches? Just a part of the chair? Seems to fire on legs… not so bad Find a chair in this image
61. 61. Weak detectors <ul><li>Textures of textures </li></ul><ul><li>Tieu and Viola, CVPR 2000. One of the first papers to use boosting for vision. </li></ul>Every combination of three filters generates a different feature This gives thousands of features. Boosting selects a sparse subset, so computations on test time are very efficient. Boosting also avoids overfitting to some extend.
62. 62. Weak detectors <ul><li>Haar filters and integral image </li></ul><ul><li>Viola and Jones, ICCV 2001 </li></ul>The average intensity in the block is computed with four sums independently of the block size.
63. 63. Haar wavelets Papageorgiou & Poggio (2000) Polynomial SVM
64. 64. Edges and chamfer distance Gavrila, Philomin, ICCV 1999
65. 65. Edge fragments Weak detector = k edge fragments and threshold. Chamfer distance uses 8 orientation planes Opelt, Pinz, Zisserman, ECCV 2006
66. 66. Histograms of oriented gradients <ul><li>Dalal & Trigs, 2006 </li></ul><ul><li>Shape context </li></ul><ul><li>Belongie, Malik, Puzicha, NIPS 2000 </li></ul><ul><li>SIFT, D. Lowe, ICCV 1999 </li></ul>
67. 67. Weak detectors <ul><li>Other weak detectors: </li></ul><ul><li>Carmichael, Hebert 2004 </li></ul><ul><li>Yuille, Snow, Nitzbert, 1998 </li></ul><ul><li>Amit, Geman 1998 </li></ul><ul><li>Papageorgiou, Poggio, 2000 </li></ul><ul><li>Heisele, Serre, Poggio, 2001 </li></ul><ul><li>Agarwal, Awan, Roth, 2004 </li></ul><ul><li>Schneiderman, Kanade 2004 </li></ul><ul><li>… </li></ul>
68. 68. Weak detectors <ul><li>Part based : similar to part-based generative models. We create weak detectors by using parts and voting for the object center location </li></ul>Car model Screen model These features are used for the detector on the course web site.
69. 69. Weak detectors First we collect a set of part templates from a set of training objects. Vidal-Naquet, Ullman (2003) …
70. 70. Weak detectors We now define a family of “weak detectors” as: = = Better than chance *
71. 71. Weak detectors We can do a better job using filtered images Still a weak detector but better than before * * = = =
72. 72. Training First we evaluate all the N features on all the training images. Then, we sample the feature outputs on the object center and at random locations in the background:
73. 73. Representation and object model Selected features for the screen detector Lousy painter … 4 10 1 2 3 … 100
74. 74. Representation and object model Selected features for the car detector 1 2 3 4 10 100 … …
75. 75. Overview of section <ul><li>Object detection with classifiers </li></ul><ul><li>Boosting </li></ul><ul><ul><li>Gentle boosting </li></ul></ul><ul><ul><li>Weak detectors </li></ul></ul><ul><ul><li>Object model </li></ul></ul><ul><ul><li>Object detection </li></ul></ul>
76. 76. Example: screen detection Feature output
77. 77. Example: screen detection Feature output Thresholded output Weak ‘detector’ Produces many false alarms.
78. 78. Example: screen detection Feature output Thresholded output Strong classifier at iteration 1
79. 79. Example: screen detection Feature output Thresholded output Strong classifier Second weak ‘detector’ Produces a different set of false alarms.
80. 80. Example: screen detection + Feature output Thresholded output Strong classifier Strong classifier at iteration 2
81. 81. Example: screen detection + … Feature output Thresholded output Strong classifier Strong classifier at iteration 10
82. 82. Example: screen detection + … Feature output Thresholded output Strong classifier Adding features Final classification Strong classifier at iteration 200
83. 83. Maximal suppression Detect local maximum of the response. We are only allowed detecting each object once. The rest will be considered false alarms. This post-processing stage can have a very strong impact in the final performance.
84. 84. Evaluation <ul><li>ROC </li></ul><ul><li>Precision-recall </li></ul>When do we have a correct detection? Is this correct? Area intersection Area union > 0.5
85. 85. Demo > runDetector.m Demo of screen and car detectors using parts, Gentle boost, and stumps:
86. 86. Probabilistic interpretation <ul><li>Generative model </li></ul><ul><li>Discriminative (Boosting) model. </li></ul><ul><li>Boosting is fitting an additive logistic regression model: </li></ul>It can be a set of arbitrary functions of the image This provides a great flexibility, difficult to beat by current generative models. But also there is the danger of not understanding what are they really doing.
87. 87. Weak detectors <ul><li>Generative model </li></ul>f i , P i g i Image Feature Part template Relative position wrt object center <ul><li>Discriminative (Boosting) model. </li></ul><ul><li>Boosting is fitting an additive logistic regression model: </li></ul>
88. 88. Object models <ul><li>Invariance: search strategy </li></ul><ul><li>Part based </li></ul>Here, invariance in translation and scale is achieved by the search strategy: the classifier is evaluated at all locations (by translating the image) and at all scales (by scaling the image in small steps). The search cost can be reduced using a cascade. f i , P i g i
89. 89. Wednesday <ul><li>Nicolas Pinto: Template matching and gradient histograms </li></ul><ul><li>Jenny Yuen: Demo of Dalal&Triggs detector and interface with LabelMe </li></ul>