Afrikaans
Akan
Albanian
Amharic
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bemba
Bengali
Bihari
Bosnian
Breton
Bulgarian
Cambodian
Catalan
Cebuano
Cherokee
Chichewa
Chinese (Simplified)
Chinese (Traditional)
Corsican
Croatian
Czech
Danish
Dutch
Esperanto
Estonian
Ewe
Faroese
Filipino
Finnish
French
Frisian
Ga
Galician
Georgian
German
Greek
Guarani
Gujarati
Haitian Creole
Hausa
Hawaiian
Hebrew
Hindi
Hmong
Hungarian
Icelandic
Igbo
Indonesian
Interlingua
Irish
Italian
Japanese
Javanese
Kannada
Kazakh
Kinyarwanda
Kirundi
Kongo
Korean
Krio (Sierra Leone)
Kurdish
Kurdish (Soranรฎ)
Kyrgyz
Laothian
Latin
Latvian
Lingala
Lithuanian
Lozi
Luganda
Luo
Luxembourgish
Macedonian
Malagasy
Malay
Malayalam
Maltese
Maori
Marathi
Mauritian Creole
Moldavian
Mongolian
Myanmar (Burmese)
Montenegrin
Nepali
Nigerian Pidgin
Northern Sotho
Norwegian
Norwegian (Nynorsk)
Occitan
Oriya
Oromo
Pashto
Persian
Polish
Portuguese (Brazil)
Portuguese (Portugal)
Punjabi
Quechua
Romanian
Romansh
Runyakitara
Russian
Samoan
Scots Gaelic
Serbian
Serbo-Croatian
Sesotho
Setswana
Seychellois Creole
Shona
Sindhi
Sinhalese
Slovak
Slovenian
Somali
Spanish
Spanish (Latin American)
Sundanese
Swahili
Swedish
Tajik
Tamil
Tatar
Telugu
Thai
Tigrinya
Tonga
Tshiluba
Tumbuka
Turkish
Turkmen
Twi
Uighur
Ukrainian
Urdu
Uzbek
Welsh
Wolof
Xhosa
Yiddish
Yoruba
Zulu
1
Hello and welcome to the course on computer vision.
2
Today we're talking about the viola and Jones algorithm.
3
This is the algorithm that lies at the foundation of the open CV a library.
4
And this is one of the most powerful to date algorithms for computer vision.
5
Let's have a look.
6
So this hologram was developed by two people.
7
Paul Viola and Michael Jones and it was developed in 2001.
8
How crazy is that.
9
It's been like over 16 years since then and it's still one of the most powerful algorithms in the world.
10
It's slowly being surpassed by deep learning.
11
But nevertheless it is in its simplicity it's so powerful that it is still being used for computers
12
and it's not just detecting faces on images.
13
This is actually for real time computer vision detecting faces on videos as well.
14
That's how powerful it is.
15
The voltage on the algorithm consists of two stages.
16
The first stage is the training.
17
The second stage is the detection.
18
So training of the algorithm and then detection of the actual faces in application.
19
And we are going to start off by talking about detection.
20
This might be a bit counterintuitive because you think you want to start with training but it just makes
21
it be much clearer if we start with the detection and understand how it works.
22
Once it's already trained up once everything is in place we will see how it works in action.
23
And that way when we're talking about training everything will make much more sense why exactly certain
24
things are structured in certain ways.
25
So here we go.
26
Let's get started.
27
We've got a photo here and we're just going to call this person Jaideep to keep them anonymous but they're
28
totally comfortable for us using this photo.
29
And yet I actually want to add LUNs friends and yeah so JD is is a great example of a photo here because
30
you can see the face it's a frontal face and that's exactly what the voltage on the algorithm looks
31
for.
32
It's designed to look for frontal faces not on us not somebody looking to the side or up or down.
33
It's like most of the time it's performs the best with frontal face.
34
That's what it's designed for.
35
And the first thing we first step that we do in the well Joe's algorithm is that it is turned into a
36
gray scale.
37
So for simplicity's sake it's just easier to work with grayscale images results are still astonishing.
38
And there's just less data to process.
39
That's why it turned to gray scale.
40
Then once the face is detected Jones algorithm finds that actual location or face on the color image
41
so you won't even notice that it's working grayscale but in reality in the background while Jones algorithm
42
is working with a greyscale version of your image.
43
And so what the very low Jones algorithm does is it starts looking for the face its outlines like a
44
little box starts from the top right corner top left corner and moves to the right.
45
Step by step and it's looking for the face.
46
And how is it looking for the face.
47
And this is what we'll discuss in the further towards.
48
But for now we're just going to say it's looking for certain features of the face and by features.
49
For now we're just going to mean that it's looking for eyebrows eyes the nose the lips the chin the
50
forehead the cheeks and so on.
51
So how exactly it can find them we'll find out further down the track.
52
But philologists agree that it's looking for those features so in this box it can see an eyebrow.
53
So it's like looking through out through the pixels in this box is going like k looking looking looking
54
looking for any of those features and it can detect an eyebrow and then it thinks OK this might be a
55
face but then it realizes that for it to be a face as to be an eye there is to be two eyes a nose as
56
mouth and looks for those other features.
57
And then as soon as it doesn't detect an eye like it looks at this whole box it doesn't detect any eyes
58
at all.
59
It understands for itself this is not a phase.
60
OK.
61
So let's move on.
62
So it moves on.
63
There you go.
64
Now it's moved a bit to the right.
65
It again looks through the detects an eyebrow again.
66
So does that same thing doesn't detect any eyes.
67
So then it's on her face.
68
McCain keeps moving and keeps moving.
69
Aha now it can detect two eyebrows.
70
But again the problem is there's no eyes.
71
It's not a face.
72
It's moving it's moving one mile Barrow nothing nothing nothing then skips down.
73
OK so now now it goes to the image you can see an eyebrow.
74
Yes.
75
OK.
76
That's the score then it looks for an eye.
77
You can see the eye.
78
That's great.
79
Then next it might look for the nose and it's looking so it looks it finds the eyebrow Yes that looks
80
again finds the eye.
81
Yes.
82
And then looks for the nose there's no nose so it's probably not a face because the face has to have
83
nose keeps going again and keeps going.
84
And then at this point it might say OK I see something that might think that this is a nose because
85
it's a very I remember it's a very very kind of basic algorithm.
86
And from the features that we'll discuss you might you'll see that it might actually think that this
87
part is a nose or in its own right.
88
And so even if it thinks that this is a nose it realizes that there's no eye there's no other eye or
89
there's no other eyebrow.
90
So he keeps looking keeps looking.
91
Then here it might or do you think that this is I eyebrow eyebrow.
92
I know.
93
But then you will see that there's no face there's no mouth there's no cheeks there's not.
94
None of these features that are over here at the bottom.
95
There's no chin.
96
If it's that if that's what it's looking for again.
97
And all these things depend on the training of the Algor which we'll discuss further down.
98
So we will understand this is not a face.
99
Ok keeps going keeps going keeps going.
100
And so here you can see now this time it's definitely got an eye an eyebrow a nose but no mouth no other
101
or no eye or second eye or second eyebrow.
102
So it keeps going.
103
And then here this is almost the face but there's no MUF.
104
So again discards this and it keeps going keeps going keeps going keeps going and then finally when
105
it gets somewhere here it can see that it's got both eyebrows both eyes and nose and a mouth.
106
So then it highlights this as a very high very high potential to be a face.
107
So it for instance makes his boxers and then keeps going again and now in this box you can see another
108
face it can see two eyebrows two eyes and nose and mouth.
109
So it highlights that again it keeps going on.
110
So after this box office he goes over here it can no longer see the full eyebrow or the full eyes so
111
this is no longer a face.
112
So he keeps going it's going from the face.
113
And then finally here.
114
No eyes or no face.
115
So there you go.
116
That's how it scans this whole image and the size of this box varies because faces can be small or large.
117
So you've got an image might have a face of there is this small face.
118
So this box this will happen many times there'll be a box.
119
This box will be a bigger box will be a small box lots of different boxes.
120
And also if you notice like we had very large steps so here you can see the step is quite large and
121
also the vertical step is quite large.
122
In reality the steps are smaller.
123
The books are more frequent.
124
This is just a disposition for us to get the intuition.
125
And so in reality you might this face might have not been detected just twice might have been detected
126
because the box went through many times.
127
What were the steps of the box were much smaller this facemask it might have been detected many more
128
times something like that.
129
You know each box says that there's a high likelihood of being there.
130
And when a lot of boxes overlap that means that that is most likely a face and then it will detect the
131
face there.
132
And that's how you see that Green Square in your Facebook or in in in any other kind of like phase detection
133
application that you might have on your phone or and things like that again.
134
They might be using other algorithms but the ones that are using the computer vision algorithm which
135
Jones created.
136
That's exactly how they work.
137
And then it all just find the same box the position the same box on the color image too.
138
And that's exactly what you will see.
139
You see the grayscale you see the color.
140
And so there you go.
141
We found J.D. found his face.
142
So that's in a nutshell how the vial of Jones algorithm works.
143
I know it's very basic very straightforward but it was important for us to understand how this box travels
144
through the image what exactly happens because now we're going to start building on top of that and
145
we're going to talk about the training like for the Donald who about the training for now will talk
146
about the features then we'll talk about you know some hacks on how this this process is can be can
147
be expedited and how this happens much faster and more efficient.
148
Now if you would like to do some additional reading then the best place to start is the original paper
149
by pull oil and Michael Jones.
150
It's called Rapid Oggi dictation using a boosted cascade of simple features.
151
It's actually a very simple paper even though the name might be complex.
152
The the language is very friendly it's very easy to read I highly recommend checking it out.
153
Maybe not at this stage maybe you know maybe you want to go through tutorials first and then read it
154
after you finished the section.
155
But it will be very helpful.
156
The talk in a very human language are very easy to understand.
157
And yeah.
158
And so here you can actually see an example of some of the features which are used in the Jones algorithm
159
and we'll be talking about these in the next tutorial and I look forward See you next then.
160
Until then enjoy computer vision.
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.