Can I teach an AI model using Tensorflow Object Detection API, how to identify the theme of a painting?

That’s the general question I want to answer with this project.

But, I am going to narrow down my question further, for practical reasons.

I want to identify if a painting is about the Nativity or not. Which is a simpler binary classification problem.

But first, let me explain what a nativity painting is. A nativity painting is a painting where the subject is the birth of Jesus Christ, very revered in Christianity. During the last two thousand years, many famous…

Reading a CSV from a file with Python and Pandas is super simple and something that you are likely to have to do many times as a data scientist.

As an example let's read an image dataset I gathered of all the paintings I could find about the Nativity.

I will not go into detail on how I was able to gather this dataset, but if you are curious I have previously created a video showing how I gathered images using Panda data frames and BeautifulSoup.

You can find it here:

Let’s first import the pandas library so we…

In this article, I am going to show you how you can try object detection on the Raspberry PI using a PI Camera, the easy way, with docker!

These are the main steps you need to complete:

  1. Install and configure the PI Camera if you haven’t yet. See this separate guide I created to install it: or this guide or
  2. Install Docker
  3. Download github repository at and follow setup
  4. Setup X11 forwarding to camera
  5. Download model from model Zoo
  6. Run example

Installing Docker

Installing Docker in the Raspberry PI is very easy. But before you do that, it is…

Since starting getting into Deep Learning I have found that increasingly I need to access a server with a GPU. Not any GPU. A GPU that is capable of understanding CUDA. As a Macbook PRO user with only an AMD GPU, that automatically disqualifies me. Therefore after finding myself frequently going on Google Colab just to be able to get access to an NVIDIA GPU, I decided that it is time to build my FIRST deep learning PC.

Why Deep Learning requires an NVIDIA GPU?

It is a bit of a long story, and I will try to cut it short. The main reason that you need…

I recently bought a Raspberry PI HQ camera. I am always mesmerized by the sunsets in London. Therefore my first ever project with the Raspberry PI HQ was to try and create a beautiful time-lapse with the Raspberry PI HQ.

Lense options with the Raspberry PI HQ

When you buy the Raspberry PI HQ camera module, it doesn’t come with a lens.

Photo by Jainath Ponnala on Unsplash

I run Docker for everything in the Raspberry PI, so I wanted to be able to access the PI camera inside Docker. Not as straightforward as I thought, so to help anyone who might want to do the same, I am documenting all the steps that I had to follow to get the PI Camera to work inside Docker in the Raspberry PI.

Setting up Rsync

In order to copy any code changes from my Macbook PRO directly into the Raspberry PI, I set up a Rsync job. I do this to make sure that I can develop as efficiently as possible.

My 2020 late new year resolution is to build a wildlife camera with a Raspberry PI, Python, a PI camera, Tensorflow, OpenCV, and who knows what else. It is going to be an awesome camera!

But first I have to set up a development environment to work with.

I am a great believer that for you to learn, you need to create. And to create you need to have fun!

First I want to give you a background on why I am trying to build a wildlife camera with a Raspberry Pi.

I live in London and my garden gets visited often by local wildlife. It is so often, that as an avid gardener I get a bit annoyed. Broken plant pots, plants dug out, missing plants, missing fruits...

In my garden, I have seen small foxes, the cutest foxes that you could ever see, big foxes, cats(not…

Photo by ZMorph Multitool 3D Printer

I recently recorded a four-part video series for my Youtube channel on how I attempted to create a 3D model out of a photo, using Python, Numpy, and Google Colab.

For this programming, I relied on the Numpy STL library which can create 3D models using “simple” Numpy arrays.

Why I did it

I am a 3D Printing enthusiast so I set myself a challenge to use this library to create a 3D model of a photo that, when printed in translucent white is called a Lithophane. There are a few tools available to do this without any coding. …

Photo by Petter Lagson on Unsplash

I recently set up a VPN with 2-Factor Authentication using the Community Edition of OpenVPN and using Google’s standard authenticator. I am writing this article to save you time and effort because this was not straightforward.

Most guides I found on the internet, if not all, talk about using a PAM plugin to extend OpenVPN with 2 Step Authentication. Not only is this plugin difficult to install because of Linux library dependencies, but most importantly it requires a real Unix user for each VPN account you need to setup. …

Armindo Cachada

Founding Director at Spltech

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store