Basic Facial Detection

The previous chapters can best be described as trying to read an image. This is a subfield in machine learning called computer vision (CV). With convolutional neural networks (Chapter 7, Convolutional Neural Networks – MNIST Handwriting Recognition), we found that the convolutional layers learned how to filter an image.

There is a common misconception that any machine learning (ML) worth doing has to come from neural networks and deep learning. This is decidedly not the case. Instead, one should view deep learning as a technique to get to one's goals; deep learning is not the end-all. The purpose of this chapter is to expose readers to some of the insights into making ML algorithms work better in production. The code for this chapter is exceedingly simple. The topic is trivial and widely considered by many to be solved. However, the insights are not trivial. It is my hope that this chapter propels the reader to think more deeply about the problems that they face.

To that end, the algorithms that will be introduced in this chapter began their life in academia. However, the invention of these algorithms was driven by a highly practical requirement, and one can learn quite a lot by analyzing how these algorithms were invented.

In this chapter, we're going to further improve our knowledge about what can be done with computer vision, by building multiple facial detection systems in Go. We will be using GoCV and Pigo. What we will be building is a program that detects faces from a live webcam. However, this chapter will be different from the previous ones, in that we will be comparing two kinds of algorithms. The purpose is to allow the reader to think more about the actual problems faced, rather than just copy-pasting code.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.91.47