Hands on Otsu Thresholding Algorithm for Image Background Segmentation, using Python

Let me start with a very technical concept:
An Image will be viewed, treated, analyzed, and processed as a 2D signal.
And some proper definitions:
- A signal is a quantity that changes over space or time and can be used to transmit a form of information.
- An image is nothing but a quantity of light that hits an optical system, that is the camera or the canvas where you are painting it.
In this sense, an image is nothing but a 2D signal, an electromagnetic signal that carries some information that is retrieved by a physical system.
So as we have established that an image is indeed a signal, we can think of applying a signal processing technique to an image processing task. We can thus stop discussing philosophy and start with the nerd part.
Speaking of philosophy. Let's take this image:

There is the philosopher in the image doing his job: thinking. And then there is this very white background, that we really don't care about. Can we get rid of it? Can we get something like that?

If I'm asking you, it means that we can.