This repository contains all the lab assignments for the Machine Vision Learning course at Sharif University of Technology, instructed by Dr. H. Mohammad Zadeh. Each lab covers fundamental and advanced topics in image processing, feature extraction, and deep learning for computer vision tasks.
- Lab 1: Image Transformations & Filtering
- Lab 2: Image Histogram & Equalization
- Lab 3: Edge Detection (Sobel, Prewitt, Canny)
- Lab 4: Hough Transform for Line & Circle Detection
- Lab 5: Object Detection with Template Matching
- Lab 6: Keypoint Detection (SIFT, SURF, ORB)
- Lab 7: LBP, Gabor, and HOG Features
- Lab 8: Optical Flow & Motion Tracking
- Lab 9: Multilayer Perceptron (MLP) & Convolutional Neural Networks (CNN)
To run the notebooks, install the following dependencies:
- Python 3.x
- Jupyter Notebook
- NumPy
- OpenCV
- Matplotlib
- Scikit-image
- Scikit-learn
- Seaborn
- TensorFlow/Keras (for deep learning labs)
- PyTorch (optional for deep learning)
Install them using:
pip install numpy opencv-python matplotlib scikit-image scikit-learn seaborn tensorflow torch- Clone the repository:
git clone <repo_url> cd <repo_name>
- Open the desired Jupyter Notebook:
jupyter notebook <lab_name>.ipynb
- Follow the instructions in each lab to explore various computer vision techniques.
Each lab includes:
- Implementation of fundamental vision techniques
- Visualization of results with real-world images
- Comparison of different methods for efficiency and accuracy
- Applications in object detection, motion analysis, and deep learning
This project is open-source under the MIT License.
Ali Sadeghian