Neural Network from scratch: Part 5; C++ Deep Learning Framework Implementation

C++ project.

The main goal of this article is to show how to develop a project in C++ by explaining key concepts of the language: abstract class/interface and inheritance, memory management, smart-pointers, iterator, constexpress, templates, std containers and eigen matrices, static class, namespace, makefile/cmake and debugging (step-by-step, memory leaks detection, profiling). This project will be applied to the development of a simple Deep Learning framework implementing the MSE loss, ReLU and softmax activation functions, linear layer, a feature/label generator and a mini-batch training function.

Continue reading “Neural Network from scratch: Part 5; C++ Deep Learning Framework Implementation”

Bottle recognition

Python and C++ projects.

To realize my bottle recycling robot project, I had to find a way to recognize bottles. This article will show how I installed a camera on the robot and the solutions I found to do visual recognition using: ImageAI lib, OpenCV and a Haar Cascade. Finally, how to convert the position of the bottles in pixels of the image into a real 3D position to guide the robot towards its goals.

Continue reading “Bottle recognition”