Smart Hive

Technologies used: Python, TensorFlow, Keras, Google Colab

For our graduation project, we worked with a social company called Beeodiversity to solve an issue they were facing. This company is using pollen collected by bees to identify the biodiversity.

The goal of this project was to automate the process of pollen analysis which was done in the lab. The work was divided in three main parts:

  1. Build a solid dataset of pollen cell images by scraping different data sources
  2. Training and inference testing in Google Colaboratory
  3. Web Application to test the inference and view the results

The scraping what done with Python, built-in libraries for HTTP requests and Selenium for the OREME database.
I extracted the data made available on an FTP server by INRA.

Since it was an exploration project, we got to read multiple scientific papers to see what was done before to identify pollen cell. We also got to experiment and compare performances of multiple object detection algorithms (Faster-RCNN, YOLOv5, SSD and EfficientDet-V2).

Inference

Single Shot MultiBox Detector (SSD) ssd

Faster-RCNN ssd

EfficientDet-V2 ssd

Web application

webapp To make our work easy to understand for the non-technical stakeholders, we thought that a web application might be a great way to test the algorithms without having to using the command line.

Since we had some bandwidth, we built a web application to test the inference of some of the algorithms we implemented. The frontend was done in React and the backend with Node.js and Express.
The flow was simple:

  1. Upload laboratory images of pollen cells through an endpoint and save images in a folder
  2. Spawn child process to launch Python script
  3. Inference done with Python script and images are saved in the specific folder
  4. Images with results are returned

The notebooks are accessible directly in the Github repository.

© Joseph-Emmanuel Banzio.RSS