Here I build Deep Learning, Computer Vision, NLP, General Machine Learning applications/tutorials while maintaining code readability. If you're looking for learning ML resources, this is what you are looking for.
- Image filtering: To blur, add/remove nosie, sharpen image.
- Edge detection: Gradient Operators, Laplacian of Gaussian, Canny Edge Detection.
- Corner Detection: Harris, Shi-Tomasi, FAST Corner Detection.
- Keypoints detection and matching: Using ORB to detect keypoints and descriptors, then match with other images.
- Image Pyramid And Reconstructing Image: Gaussian, Laplacian Pyramid and Image reconstruction.
- Optical flow demo notebook[Extra]: Little demo.
- Optical flow: Find flow of particular object.
- Dense flow: Find global motion, process is to track all pixels to estimate motion.
- Bag of visual words: Make BOVW features to train an image classifier on.
- Face & Facial landmarks Detection: Using Haarcascades, Face Detection library, dlib.
- Face recognition using dimension reduction: Make features using PCA/LDA which are dimension reduction algorithms and then use a classifier on top to classify the face.
- Face_recognition using deep learning: A more modern and prefered way using deep learning library for faces called Face Detection library.
- Extract faces[Extra]: Extract faces from a folder just by running this .py file into the folder containing images using Haarcascades.
- Environment Sound Classification: Using spectorgrams as features to train image classifier.
- Image Classification:
- Image Classfication using BOVW: Use Bag Of Visual Words(BOVW) features to classify images using SVM.
- Image Classification using HOG: Use Histogram Of Gradients Features to classify images using SVM.
- Using Deep learning + Clean pipeline: Using resnet18 to classify flowers, also a clean pytorch training pipeline.
- Object Detection:
- Object Detection Using HOG(part 1): Train car/non-car using HOG featues and SVM classifier.
- Object Detection Using HOG(part 2): Create object detector with sliding window approach.
- Object Detection Using Faster R-CNN(part 1 optional): Train a resnet18 car/non-car classifier.
- Object Detection Using Faster R-CNN(part 2): Train Faster-RCNN object detector with resnet car classifier as backbone.
- Image Segmentation:
- Semantic Segmentation Using U-Net: Semantic Segmentation using U-Nets on Oxford-Pets dataset.
- Auto-Encoders:
- Image denoising using AutoEncoders: Image reconstruction and image denoising using autoencoders.
- Image coloring using AutoEncoders(RGB image): Image colorization using cnn autoencoders.
- Image coloring using AutoEncoders(LAB image): Image colorization using cnn autoencoders.
- Image Translation:
- Unpaired Image-Image Translation: Unpaired Image-Image translation using CycleGans.
- Knowledge Distillation pytorch: Train Teacher model, then train Student model with same or smaller model size. Also Improves generalization.
- Stochastic Weight Averaging pytorch: Improve generalization by Weight Averaging after training, by training for ~25% more with SWA.
- Gradient accumulation pytorch: Update weights with bigger batch size, by updating weights after some number of iteration.
- Automatic Precision Training pytorch: Fit a bigger batch, improve training speed using Automatic Precision(Mixed Precision Training), basically doing multiplications with fp16 and addition with fp32.
- Petals to the Metal: FLower Classification on TPU: Image classification using effnets on TPU with Tensorflow.
- Wheat Detection: Object detection using efficient-det and faster-rcnn with Pytorch.