Detecting Faces (Viola Jones Algorithm) - Computerphile

Поделиться
HTML-код
  • Опубликовано: 28 ноя 2024

Комментарии • 280

  • @Sam_Kings
    @Sam_Kings 6 лет назад +517

    Can't believe I have only recently discovered Computerphile. Your content is great guys, very interesting.

    • @Vogel42
      @Vogel42 6 лет назад +11

      you have a lot to catch up on

    • @Sam_Kings
      @Sam_Kings 6 лет назад +11

      @@Vogel42 I have been binge watching Mike's stuff about passwords. It has made me paranoid.

    • @kerron68
      @kerron68 6 лет назад +5

      Welcome

    • @stupedaso5046
      @stupedaso5046 6 лет назад +5

      If you haven't yet, check out numberphile

    • @OvertakeGT
      @OvertakeGT 6 лет назад +1

      Computerphile Captions please? Haven”t been able to learn from your previous 15 videos without captions disabled...

  • @dvilardi
    @dvilardi 6 лет назад +188

    Placing a GoPro close to the paper to see what the guy is writing: check.
    Guy is left handed: oh boy...

    • @shantinguyen3195
      @shantinguyen3195 4 года назад

      Left hand and is filed under the impression that the only thing I

  • @ZeedijkMike
    @ZeedijkMike 6 лет назад +47

    I could listen to Mike for hours.
    Though some of the _stuff_ goes right over my head - I still feel a little smarter after each video.

    • @aychaKifah
      @aychaKifah 4 года назад +1

      me too

    • @saurabh7489
      @saurabh7489 7 месяцев назад +1

      Me too. My intelligence part is terribly low. I understood maybe only 1% of this video. But 1% is still much better than maybe even the negative impact of watching `shorts` or `tick-tocks` for an hours.

  • @daft_punker
    @daft_punker 6 лет назад +89

    This man face detects!
    Mike Pound is an absolute legend

  • @AlejandroThacker
    @AlejandroThacker 3 года назад +22

    I'm really thankful for having Peter Parker explaining us in such a friendly and simple way.

  • @kranefivem
    @kranefivem 6 лет назад +123

    Gotta love this guy

  • @TH3J0KEI2
    @TH3J0KEI2 6 лет назад +516

    I am a simple man, I see Mike Pound, I like

    • @harrysvensson2610
      @harrysvensson2610 6 лет назад +31

      You see Mike Pound, you Pound.

    • @geniusonejustin5847
      @geniusonejustin5847 6 лет назад +2

      A fellow hacker... anyway I see you also comment because everybody knows RUclips dislike does nothing

    • @joonasfi
      @joonasfi 6 лет назад +5

      You like to... pound.. Mike?

    • @Shocker99
      @Shocker99 6 лет назад +1

      I am a simple man.

    • @silkwesir1444
      @silkwesir1444 6 лет назад +2

      Is it just me or does he look a lot older all of a sudden?

  • @Sonex1542
    @Sonex1542 6 лет назад +19

    THIS IS PROBABLY THE BEST ~EVER~ /COMPUTERFILE EPISODE DONE. I would have loved to see more detail matched from the paper to practical application. But over all. Amazing video.

  • @karlkastor
    @karlkastor 6 лет назад +122

    I actually used this when I played around with OpenCV, but didn't know how it works, very interesting! I'm actually taking a few computervision classes this year, hope its as interesting.

    • @sorrefly
      @sorrefly 6 лет назад +4

      I already am at college, and the course is very interesting! Totally worth it. There are a lot of things that I thought were working differently but apparently when doing image processing you need to learn to think about things in different ways

  • @HebaruSan
    @HebaruSan 6 лет назад +43

    Amazingly clear explanation of a very clever algorithm. Thanks!

  • @thomasp4902
    @thomasp4902 6 лет назад +27

    I had to explain this at uni :) Unlike another commenter I didn't notice much difference with race, but lighting was definitely an issue. It's also quite slow to train and it requires quite a high resolution image of the face. Unfortunately we had to detect with small faces, mixed races, and mixed lighting but it gave good results. Explanation is really good though ^_^

  • @nullnull6032
    @nullnull6032 6 лет назад +3

    this is really one of the best sources for computer vision students, I love the way he explains things, Thank you!

  • @andrepedersen1147
    @andrepedersen1147 6 лет назад +1

    Always amazed of how Mike Pound make videoes so entertaining and interesting at the same time

  • @AdityaBhadauria
    @AdityaBhadauria 6 лет назад +40

    I've read the original paper and wasn't able to wrap my head around it completely. Thanks for doing this video.

    • @Futschikatores
      @Futschikatores 6 лет назад +1

      And after watching this video you are now able to understand it completely? Ahem…

    • @Imagonem
      @Imagonem 6 лет назад +4

      It's not that complicated of an algorithm. And it's possible to use visuals to explain it, since it operates on visual data. When I say "not complicated", I'm comparing it to i.e crypto algorithms or neural networks. If you watch the Numberphile video explaining the Diffie-Hellman key exchange, they use a metaphor in which combining keys is likened to mixing coloured paint. That's obviously not what happens, but the underlying maths is very advanced, and can't be explained to a layperson in a 10 minute video clip. For the Viola-Jones algorithm, the bulk of the maths basically boils down to lots and losts of additions and subtractions. (I don't think the training part of the algorithm is quite as simple, though.).

    • @fzigunov
      @fzigunov 6 лет назад +8

      That's because of the greatest problem in academia... Most of them don't really have any interest or motivation to communicate. So they write unintelligible papers that are accessible only to experts through paywalls.

  • @MarkBTomlinson
    @MarkBTomlinson 5 лет назад +1

    I really enjoy Computerphile and dare I say the enthusiasm and presentations from Mike the most. Nothing taken away from the great team it is just that I can imagine chatting in a pub with Mike somehow.

  • @mahakileach9223
    @mahakileach9223 6 лет назад +78

    i am positive that the drawings on the whiteboard where just quickly randomly scribbled on before the video to add to the background.😂😂

  • @Furiends
    @Furiends 6 лет назад +59

    Note that this algorithm determines if a block of an image contains a face. Facial recognition goes further and takes what it knows is a face and then characterizes features that can be used as identifiers.

    • @HereComesPopoBawa
      @HereComesPopoBawa 6 лет назад +1

      IF one starts from the presumption that each head neatly corresponds to some kind of personal identity.

    • @lordbry470
      @lordbry470 4 года назад +9

      Dude. We are talking about detection here, not recognition.

  • @MusicalRaichu
    @MusicalRaichu 6 лет назад +2

    I was lecturing in computer graphics shortly after integral images came about, but they were called "summed-area tables" and were used for filtering images down in resolution. I think they were replaced with mip-maps but it's good to see that they made a come-back in another field.

  • @flurki
    @flurki 6 лет назад +4

    It actually is a really cool algorithm! Impressive how it's so good that it's still relevant after so many years.

    • @meta7gear
      @meta7gear 4 года назад

      Unlike other math which is usually fleeting :P

  • @bryan69087
    @bryan69087 6 лет назад +57

    MORE MIKE POUND

    • @nibblrrr7124
      @nibblrrr7124 6 лет назад +1

      [goes up close to everybody & whispers forcefully in their ears] aaaall mike pound aaaaall the tiiiiiime

    • @General12th
      @General12th 3 года назад

      POUND MIKE MORE

  • @Torsan1977
    @Torsan1977 6 лет назад +1

    Woah! Inception... I was compiling my implementation of a neural network for object detection (takes about one minute) and I had a look at my youtube feed and this was at the top! We do Viola Jones at work so I'd heard about it before. Thanks for the video!

  • @PaulFidika
    @PaulFidika Год назад

    It's crazy that an image-processing algorithm built 20 years ago is still state of the art in its category. Awesome.

  • @totlyepic
    @totlyepic 6 лет назад +1

    Always love seeing Mike Pound's videos. Wish more contributors bothered with technical detail/theory.

  • @chrischauhan1649
    @chrischauhan1649 6 лет назад

    This channel is heaven for students like me

  • @jumbo6498
    @jumbo6498 6 лет назад +1

    This is a suprisingly intuitive detection method, great explanation!

  • @dhvalden
    @dhvalden 6 лет назад +7

    finally a video with Dr. Mike Pound

  • @TheSpurion
    @TheSpurion 6 лет назад

    I really like listening to Mike Pound explaining stuff

  • @hardlyb
    @hardlyb 3 года назад +1

    I just started working on image processing, and I remembered this video from years ago, and have made use of the hack he described for computing features to do something else.

  • @nicksherron9603
    @nicksherron9603 6 лет назад +1

    Love me some Dr. Mike Pound! Keep them coming!

  • @undefBehav
    @undefBehav 6 лет назад

    Mike Pound and explaining face detection, a match made in heaven

  • @drulli6
    @drulli6 6 лет назад +1

    Really interesting video/algorithm. I generally really like the topics Mike does for the computerphile videos.

  • @hanchesterman5661
    @hanchesterman5661 6 лет назад +1

    I love that guy and his way of explaining things

  • @meeradad
    @meeradad Год назад

    You have an excellent way of making a complicated thing very easy to grasp.

  • @damirdze
    @damirdze 6 лет назад

    Mike , you are doing the marvelous presentations.

  • @Ribby00
    @Ribby00 6 лет назад +9

    Mike Pound is love

  • @НектоЛохматый
    @НектоЛохматый 5 лет назад +2

    I liked the idea of "rectangle sums": so easy and so effective.

  • @88bjjmichael
    @88bjjmichael 2 года назад +1

    Cramming for my Computer Vision Exam this afternoon 😬 At UoN

  • @IceMetalPunk
    @IceMetalPunk 6 лет назад +4

    That's pretty cool! It feels a bit like dynamic programming with the way the integral image is calculated :)

  • @crabvakho
    @crabvakho 6 лет назад +34

    I have no idea what's he taking about but i like to listen to stuff like that

  • @klam77
    @klam77 2 года назад

    This is really brilliant. It's an exellent explanation too. These viola jones guys did for Image proc what Thorp did for Black Jack......completely HACKED the game.

  • @noraalosily57
    @noraalosily57 6 лет назад +2

    Talk about Eigenfaces! It was introduced in the 90s and still very interesting.
    At least students learn how to use some of the math concepts in practice like eigenvectors.

  • @poppop-oj6by
    @poppop-oj6by 6 лет назад +1

    That was some really cool perspective correction you did there!

  • @indianakernick3788
    @indianakernick3788 6 лет назад

    That integral image thing blew my mind. It's a 3D graph of the integral of the 3D graph of a function. Wow!

  • @adverspace
    @adverspace 4 года назад +1

    This is one great video with one great algorithm
    I have a little test related to this algorithm (a verbal exam) , and this video and boosted up by confidence
    Thank you so much.

  • @greengreekloyalfan
    @greengreekloyalfan 5 лет назад +4

    His hair is always so perfectly taken care of.

  • @retroman7952
    @retroman7952 6 лет назад +2

    I like your work Dr. Pound! Keep it up

  • @zss123456789
    @zss123456789 4 года назад

    This might be completely wrong... but I get the impression that the way they came up with the algorithm still has similarities to a simple neural network.
    They probably tried each simple feature on thousands of images to make sure they all pass (the "training" part), and in the end ended up with a list of tests (the second last layer in a neural network) that gives you a decision (last layer). It's incredibly quick because it doesn't need any more layers before that, and it has a fast fail mechanism.

  • @ulisesm.a.2770
    @ulisesm.a.2770 6 лет назад

    Excellent video, object recognition is the future.

  • @baldeepbirak
    @baldeepbirak 6 лет назад +1

    Clever technique to compute if there is a face or not.

  • @tango8894
    @tango8894 5 лет назад

    Mike needs his own channel

  • @dripcode2600
    @dripcode2600 4 года назад +1

    Love this channel! Thanks for sharing!

  • @JBarszczu
    @JBarszczu 6 лет назад

    This guy should have his own channel

  • @Mechanical1Midget
    @Mechanical1Midget 4 года назад

    These videos are more helpful than my hour long university lectures.

  • @tenseikenzx-3559
    @tenseikenzx-3559 6 лет назад +1

    OOo, neato! using dynamic programming to calculate the blocks really fast

  • @kazimafzal
    @kazimafzal 6 лет назад +1

    Man I loveeeee this channel and Dr. Mike Pound is bloody awesome!! Wana learn everything he knows!

  • @wmd5645
    @wmd5645 6 лет назад

    Dr. Mike. Your tests are just as hard as Dr. Steve’s, I bet.
    I bet endless do while loops are on your test just to confuse all the normal people.

  • @setsunaes
    @setsunaes 6 лет назад

    I always learn so much of this guy videos!

  • @jordanfranck
    @jordanfranck 6 лет назад

    I would love to hear more about this.

  • @speedbumphu
    @speedbumphu 5 лет назад +1

    How do they decide where to put these classifiers? I dont think it can be a moving window as that would be pretty slow. Also its unclear how do they decide the size of the classifiers.

  • @4.0.4
    @4.0.4 6 лет назад +4

    I never imagined how clever this was! I can only imagine this is used for more than just faces right?

    • @lennartgimm
      @lennartgimm 4 года назад

      Chrysippus Late to the party, but it is! I stumbled upin this algorithm because it was used as a base for a lunar crater algorithm. This can be used to detect basically anything, as long as you use the right filters, which you can determine using the right training set for the selection algorithm. In theory, you could use this algorithm to find horses, apples or anything else that you want.

  • @allhaillukeywes
    @allhaillukeywes 6 лет назад

    god I love those videos. the same algorithm is also used in opencv

  • @nickscurvy8635
    @nickscurvy8635 2 года назад

    this guy is very smart and good at the computers

  • @nickwoodward819
    @nickwoodward819 6 лет назад

    not enough mike on this channel

  • @100megarock
    @100megarock 4 года назад

    I felt something was odd with the video. Mike was wearing a Shirt. Anyways, Great Content Guys, Keep it coming. Love Mikes way of teaching things.

  • @SenorQuichotte
    @SenorQuichotte 6 лет назад

    He needs his own channel

  • @maxmusterman3371
    @maxmusterman3371 6 лет назад

    PLEASE MORE VIDS LIKE THIS!LUV IT

  • @TranquilTreksNZ
    @TranquilTreksNZ 5 лет назад +1

    I cannot even comprehend being as intelligent as you. How does your brain not explode? You're nuts 😂😂😂 I've almost watched all your videos now, very addictive lol.

  • @youssefelamrani7905
    @youssefelamrani7905 3 года назад

    which is better Viola-Jones or deep learning? because Viola-Jones i think needs face forward images

  • @3DSowner22
    @3DSowner22 6 лет назад +3

    so does it fail for faces turned sideways or digaonal to the image?

    • @formelekandscreen
      @formelekandscreen 6 лет назад +10

      Yes, its terrible when the orientation of the training set changes, the vj-algorithm does nothing the compensate. I've used this algorithm a lot in theory and practice.
      What you could do though, is rotate the image yourself, the vj-algorithm is fast so doing it several times over rotated images is possible.

  • @sverre1734
    @sverre1734 6 лет назад

    Been watching you for a while... I love your content

  • @tyrantworm7392
    @tyrantworm7392 6 лет назад

    Sorry for largely OT, but they could have used something a lot faster than a 700mhz P3 in 2002. Moore's law was strong over this period and both Tualatin and AthlonXP were hitting 1.4 -1.8 ghz.

  • @mindgame112
    @mindgame112 6 лет назад

    Much more videos like this please!!!

  • @4mathieuj
    @4mathieuj 6 лет назад +2

    Yay more with Mike!

  • @jean4j_
    @jean4j_ 6 лет назад +5

    Given enough data, CNN (deep learning) performs better than any Haar algorithms or equivalent
    However it might take longer to make a prediction

  • @tanchienhao
    @tanchienhao 2 года назад

    Integral images is just 2D static sum from competitive programming!

  • @JakeHillion
    @JakeHillion 6 лет назад

    I played around with this method today, not really for it's intended use but to see how well it'd work for basic image location tasks. My only issue with this is how colossal the numbers are even on my relatively low resolution screen. Is this less of an issue then I'm imagining, or does this run on already shrunk down images?

  • @loam
    @loam 5 лет назад +1

    Huh, made my diploma using similar technology (Haara classifier): the goal was to detect vehicles and classify them into 3 categories (minivans, trucks and cars) in the aerial view images (to detect vehicles from the top view). Wait... It was absolutely the same technology, now I remember xD

  • @VLS-Why
    @VLS-Why 6 лет назад +1

    How well does this work for you different ethnicities though?

  • @将軍九八.彁
    @将軍九八.彁 6 лет назад

    Jillian Mayer has a great video on avoiding facial detection.

  •  6 лет назад

    Mike Pound is awesome!

  • @TheBitProgress
    @TheBitProgress 3 года назад

    But what about different sizes and scales? You still need to check every pixel/region in every scale. That's really slow. How do deal with it?

  • @zenawarrior3012
    @zenawarrior3012 6 лет назад

    I know you guys have done a bunch of videos on denial of service attacks, but I just learned of something called a low orbit ion cannon. Is that just a different name for the same type of attack?

  • @Sanmayce
    @Sanmayce 6 лет назад

    Shouldn't OCR techniques be instrumental, imagine all faces being filtered via cutout or similar in order to get contours, then those outlines will serve as if written by a calligrapher, kinda each face being a CHARACTER/HIEROGLYPH, thus the task looks as recognizing kanji with different styles of writing.

  • @danieltlang
    @danieltlang 6 лет назад

    Would this also work with some other objects instead of faces? Like cars, etc?

  • @vaishnavsonawane8619
    @vaishnavsonawane8619 3 года назад +1

    well simplified, enjoyed it a lot, was more fascinating than even recent R CNN, R FCNN, MTCNN.. gained more respect for 2001 people 😂, and that intergral image gave feel of dynamic programming😂

  • @blanne9628
    @blanne9628 Год назад

    what confused me is how does the algorithm know to make the rectangles sufficiently large enough to be useful for face detection? i.e., faces can be different sizes depending on distance/etc...

  • @btb9001
    @btb9001 2 года назад

    Do you have any sample code in C# of the Viola jones algorithms?

  • @dinero474
    @dinero474 6 лет назад +5

    count how many times he said alright

  • @iflnr978
    @iflnr978 4 года назад

    Thanks for the great video!

  • @prasadjayanti
    @prasadjayanti 3 года назад

    Really awesome !

  • @Decxcraft45
    @Decxcraft45 6 лет назад

    Great video and awesome topic! Just the go pro shots are not that great, should have try to have an overhead mount. anyways great job!.

  • @rizkirachmanudin4871
    @rizkirachmanudin4871 6 лет назад +2

    is that the same as the convolution and fourier transformation techniques?
    can this technique also clarify objects in the video that are already available, such as cctv records that have been stored?

  • @abdulqayoom-abro
    @abdulqayoom-abro 3 года назад

    boss need your help to build real time face tracking system for institute using python

  • @ΜΙΧΑΗΛΔΕΛΗΜΗΤΡΟΣ
    @ΜΙΧΑΗΛΔΕΛΗΜΗΤΡΟΣ 5 лет назад

    great explanation of integral images!!!!

  • @techOGR
    @techOGR 5 лет назад

    👋🏻Greetings from MÈXICO 🇲🇽

  • @jeremiahknol9969
    @jeremiahknol9969 6 лет назад

    You guys are mindreaders, I was just thinking about face detection and wondering how it works...

  • @LuisRuizHalo
    @LuisRuizHalo 6 лет назад

    Peter Parker is the best! Thanks for this. Love your videos

  • @Jure1234567
    @Jure1234567 4 года назад

    So are these the haar cascades from open cv?

  • @bluekeybo
    @bluekeybo 6 лет назад

    So would you need to train this algorithm before using it? So how do the cameras use it, have they already trained it at the factory to set the parameters? Can you just download their parameters from somewhere and code this up yourself?

    • @alpw1234
      @alpw1234 6 лет назад

      no, you don't. if you want to use it, look for opencv library.

  • @duygu_sarikaya
    @duygu_sarikaya 4 года назад

    Sweet series, may I ask what do you use to create the animations?

    • @Computerphile
      @Computerphile  4 года назад

      Animations are nearly all created in Adobe After Effects (the odd 3D animation some videos created in Blender) >Sean