This repository contains curated materials for teaching and learning Computer Vision with Python. It has lecture notebooks, example code, datasets, and references grouped into modules.
Learning outcomes
- Understand image formation and basic image processing
- Implement feature detection, description and matching
- Build and train CNNs for classification and object detection
- Apply segmentation, tracking and deployment techniques
- Python 3.9+ (3.10/3.11 tested)
- Basic Python programming and linear algebra
- Familiarity with Jupyter Notebooks is helpful
- Clone the repository:
git clone https://github.com/AIBauchi/AIBauchi-Computer-Vision-Bootcamp.git
cd AIBauchi-Computer-Vision-Bootcamp- Create a virtual environment and install dependencies:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt- Start Jupyter Lab/Notebook and open the modules:
jupyter lab- numpy, scipy, pandas
- matplotlib, seaborn
- opencv-python, scikit-image
- scikit-learn
- tensorflow, keras, torch, torchvision
- albumentations, pillow
- Modules are in folders
01_...to06_...(previously Week1..Week6) - Each module contains daily notebooks and example code
Below is a curated index of the course materials grouped by module (folders were renamed from WeekX to descriptive module names).
-
01 Introduction and Python: 01_Introduction_and_Python
-
02 Image Processing: 02_Image_Processing
- 02_Image_Processing/day1/2.1.0-Matplotlib.ipynb
- 02_Image_Processing/day1/2.1.1-Image Transformation.ipynb
- 02_Image_Processing/day2/2.2.0-Advanced Image Processing.ipynb
- 02_Image_Processing/day3/2.3.0-Feature_Detection_and_Description.ipynb
- 02_Image_Processing/day3/2.3.1-Hough Transform for Shape Detection.ipynb
- 02_Image_Processing/day3/2.3.2-Template Matching.ipynb
-
03 Deep Learning for CV: 03_Deep_Learning_for_CV
- 03_Deep_Learning_for_CV/day1/3.1.0.CV-with-AI.ipynb
- 03_Deep_Learning_for_CV/day1/3.1.1-Introduction to Deep Learning.ipynb
- 03_Deep_Learning_for_CV/day2/3.2.0-Training_ANN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.0-Introuction to CNN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.1-CV CNN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.1-Training_ResNet.ipynb
-
04 Transfer Learning & Face Recognition: 04_Transfer_Learning_and_FaceRec
-
05 Segmentation and Detection: 05_Segmentation_and_Detection
- 05_Segmentation_and_Detection/day1/5.1.Image Segmentaion.ipynb
- 05_Segmentation_and_Detection/day1/5.2. Image Segmentation - Keras, U-Net and SegNet.ipynb
- 05_Segmentation_and_Detection/day1/5.3. Detectron2 - Mask R-CNN.ipynb
- 05_Segmentation_and_Detection/day2/5.2.0-Optical Character Recognition (OCR).ipynb
- 05_Segmentation_and_Detection/day3/5.3.0- Object-Detection.ipynb
- 05_Segmentation_and_Detection/day3/5.3.1- Annotation.ipynb
- 05_Segmentation_and_Detection/day3/5.3.2- Yolotest.ipynb
- 05_Segmentation_and_Detection/day3/5.3.4-Model Accuracy.ipynb
-
06 Deployment and Tracking: 06_Deployment_and_Tracking
- Add
requirements.txtfor reproducible installs (created in this commit) - Standardize notebook titles and filenames for consistent linking
- Add short README inside each module describing the day's goals
- Consider extracting heavy datasets to an external storage (Git LFS or cloud)
- Please open issues or pull requests for corrections, additional exercises or updated materials.
This project is maintained and contributed to by:
- Nathaniel Handan — https://github.com/Tinny-Robot
- Matthew Wisdom — https://github.com/matt-wisdom
- Ogochukwu Stanley Ikegbo — https://github.com/Staneering
See CONTRIBUTORS.md for details.
This README was updated to be a canonical course index and quickstart guide.
Below is a curated index of the course materials grouped by module (folders were renamed from WeekX to descriptive module names).
-
01 Introduction and Python: 01_Introduction_and_Python
-
02 Image Processing: 02_Image_Processing
- 02_Image_Processing/day1/2.1.0-Matplotlib.ipynb
- 02_Image_Processing/day1/2.1.1-Image Transformation.ipynb
- 02_Image_Processing/day2/2.2.0-Advanced Image Processing.ipynb
- 02_Image_Processing/day3/2.3.0-Feature_Detection_and_Description.ipynb
- 02_Image_Processing/day3/2.3.1-Hough Transform for Shape Detection.ipynb
- 02_Image_Processing/day3/2.3.2-Template Matching.ipynb
-
03 Deep Learning for CV: 03_Deep_Learning_for_CV
- 03_Deep_Learning_for_CV/day1/3.1.0.CV-with-AI.ipynb
- 03_Deep_Learning_for_CV/day1/3.1.1-Introduction to Deep Learning.ipynb
- 03_Deep_Learning_for_CV/day2/3.2.0-Training_ANN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.0-Introuction to CNN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.1-CV CNN.ipynb
- 03_Deep_Learning_for_CV/day3/3.3.1-Training_ResNet.ipynb
-
04 Transfer Learning & Face Recognition: 04_Transfer_Learning_and_FaceRec
-
05 Segmentation and Detection: 05_Segmentation_and_Detection
- 05_Segmentation_and_Detection/day1/5.1.Image Segmentaion.ipynb
- 05_Segmentation_and_Detection/day1/5.2. Image Segmentation - Keras, U-Net and SegNet.ipynb
- 05_Segmentation_and_Detection/day1/5.3. Detectron2 - Mask R-CNN.ipynb
- 05_Segmentation_and_Detection/day2/5.2.0-Optical Character Recognition (OCR).ipynb
- 05_Segmentation_and_Detection/day3/5.3.0- Object-Detection.ipynb
- 05_Segmentation_and_Detection/day3/5.3.1- Annotation.ipynb
- 05_Segmentation_and_Detection/day3/5.3.2- Yolotest.ipynb
- 05_Segmentation_and_Detection/day3/5.3.4-Model Accuracy.ipynb
-
06 Deployment and Tracking: 06_Deployment_and_Tracking
