Pinned Repositories
DeepLearningFrameworkFromScratch
Deep Learning Framework only using numpy: Linear, Convolution, Flatten, Max and Mean Pooling layers, activation functions, Softmax, MSE and Cross Entropy. Useful functions: train, save an load a model to deploy it, get nb of parameters, draw learning curves
DeepLearningFrameworkFromScratchCpp
Deep Learning framework implementation with MSE, ReLU, softmax, linear layer, a feature/label generator and a mini-batch training. The main goal of this repository is to show how to develop a project in C++ by using key concepts of C++: abstract class/interface and inheritance, memory management, smart-pointers, iterator, const expression, etc.
DepthEstimationAnd3dMapping
The goal of this project is to build a robot capable of mapping its environment in a 3D simulation view. It uses a neural network for depth estimation deployed on a Jetson Nano. The Jetson is also connected to an Arduino Nano to get the gyro data from its IMU to project the depth values in a 3D world based on the orientation of the robot.
fcn_from_scratch
Implement gradient descent using the differential approach (2D example), using the perturbation approach (3D example), in a neural network implementation from scratch using only numpy
Keypoints_Detection_And_Tracking
The goal of this project is to implement the keypoint detector FAST (Features from Accelerated Segment Test) and to track keypoints with the Kanade–Lucas–Tomasi feature tracker.
opencv_visual_recognition
Segmentation
Image segmentation project. Two architectures implemented: VGG-16 + FCN-8 module and U-Net. For FCN-8, pre-trained weights are used from SSD300. Although it is designed for object detection, its feature extractor can be reused in another task involving similar classes. Linked article explains the full project.
Tracking_SSD_ReID
SSD300 implementation with TensorFlow plus re-identification for multi-object tracking
transfer_learning_and_unsupervised_pre-training
Learning how to do transfert learning and how to properly use an unsupervised pre-training.
VR_Teach_Sign_Language
Using an Oculus and Leap motion to build a game on Unity to learn Sign Language
Apiquet's Repositories
Apiquet/DeepLearningFrameworkFromScratchCpp
Deep Learning framework implementation with MSE, ReLU, softmax, linear layer, a feature/label generator and a mini-batch training. The main goal of this repository is to show how to develop a project in C++ by using key concepts of C++: abstract class/interface and inheritance, memory management, smart-pointers, iterator, const expression, etc.
Apiquet/DepthEstimationAnd3dMapping
The goal of this project is to build a robot capable of mapping its environment in a 3D simulation view. It uses a neural network for depth estimation deployed on a Jetson Nano. The Jetson is also connected to an Arduino Nano to get the gyro data from its IMU to project the depth values in a 3D world based on the orientation of the robot.
Apiquet/DeepLearningFrameworkFromScratch
Deep Learning Framework only using numpy: Linear, Convolution, Flatten, Max and Mean Pooling layers, activation functions, Softmax, MSE and Cross Entropy. Useful functions: train, save an load a model to deploy it, get nb of parameters, draw learning curves
Apiquet/Keypoints_Detection_And_Tracking
The goal of this project is to implement the keypoint detector FAST (Features from Accelerated Segment Test) and to track keypoints with the Kanade–Lucas–Tomasi feature tracker.
Apiquet/VR_Teach_Sign_Language
Using an Oculus and Leap motion to build a game on Unity to learn Sign Language
Apiquet/opencv_visual_recognition
Apiquet/Segmentation
Image segmentation project. Two architectures implemented: VGG-16 + FCN-8 module and U-Net. For FCN-8, pre-trained weights are used from SSD300. Although it is designed for object detection, its feature extractor can be reused in another task involving similar classes. Linked article explains the full project.
Apiquet/Tracking_SSD_ReID
SSD300 implementation with TensorFlow plus re-identification for multi-object tracking
Apiquet/fcn_from_scratch
Implement gradient descent using the differential approach (2D example), using the perturbation approach (3D example), in a neural network implementation from scratch using only numpy
Apiquet/transfer_learning_and_unsupervised_pre-training
Learning how to do transfert learning and how to properly use an unsupervised pre-training.
Apiquet/ADA_Project
Apiquet/KNN_algorithm
K Nearest Neighbour
Apiquet/STI_Robotic_Competition_Mechanics
The goal of the EPFL (Ecole Polytechnique Fédérale de Lausanne) Robotics Competition is to build an autonomous recycling robot. This robot, built from scratch, must recognizes any bottle (thanks to a camera), catch it, then bring it to a recycling area.
Apiquet/Style_transfer
Re-use the feature extractor of a model trained for object detection in a new model designed for Style Transfer
Apiquet/Visual_recognition
I'm taking part in the EPFL Robotics Competition. We must build an autonomous robot from scratch that recognizes all types of bottles, catches them, and then bring them to a recycling bin. One of my responsibilities is the bottles recognition.
Apiquet/Reinforcement_learning
This repository uses Reinforcement Learning techniques to build agents capable of training in different OpenAI Gym environments : Classic control, Box2D and Atari
Apiquet/AI_DeliberativeAgents
Implementation of an agent that has to pick up and deliver task in Switzerland. State-based breadth-first search and A* heuristic search algorithms to minimize the cost.
Apiquet/animated_world_map
Displaying data on an animated world map in Python and Javascript
Apiquet/Compare_Deep_Learning_Frameworks
This repo shows how to implement a training on CIFAR10 dataset with different Deep Learning frameworks: FastAI, JAX, Keras, MXNet, PaddlePaddle, Pytorch and Pytorch-lightning. An article was written to compare the ease of implementation (user friendly coding, ease of finding information online, etc.), time per epoch, memory and GPU usage, etc.
Apiquet/Deep_learning_digit_recognition_and_comparison
Siamese network and auxiliary loss: different architectures implemented using weight sharing and auxiliary loss to create a neural network which learns different tasks during the training process. Use of the following concepts: FCN, CNN, SGD, mini-batch, batch normalization, learning rate decay and regularization.
Apiquet/Deep_learning_digit_recognition_and_creation
A project to get familiar with Tensorflow and TensorBoard. How to artificially increase our dataset: rotation, zoom, contrast. Creating a generative auto-encoder to "dream" new digits.
Apiquet/Deep_learning_fashion_mnist
Learning how to optimize a CNN, how to feel the good complexity for a model and how to properly regulate it. Learning how to use batch normalization and data generators.
Apiquet/drawing_machine
Design of a drawing machine
Apiquet/FRC-FirstRoboticsCompetition
Apiquet/KMEANS_algorithm
Using K-means algorithm to compress images (visualizing the impact of K after image's reconstruction)
Apiquet/NLP
Neural networks to detect the kindness of sentences: build the dataset (tokenization, word to vector), NN implementation, training and evaluation with F1-score
Apiquet/segmentation_from_satellite_images
This repository shows how to get satellite images to build a dataset to train a neural network. It use the MiniFrance land cover dataset, Google-Earth-Engine to download satellite images, and Pytorch to train a neural network.
Apiquet/slambook2
edition 2 of the slambook
Apiquet/utils
some useful programs
Apiquet/Visual_Computing
Building a game using Processing software which uses the webcam.