This project explores various edge detection and image segmentation techniques, comparing manual kernel approaches with modern deep learning methods. It includes implementations of classical edge detection operators, segmentation methods, and advanced deep learning models for face detection.
- Implement and compare manual kernel-based edge detection methods.
- Apply various image segmentation techniques.
- Utilize advanced deep learning models for accurate face detection and segmentation.
- Sobel Operator
- Prewitt Operator
- Scharr Operator
- Laplacian Operator
- Canny Edge Detection (using Scharr Kernel)
- HSV Color Space with Thresholding
- SVM & HOG (Histogram of Oriented Gradients)
- K-Means Clustering
- Face Detection with MTCNN
- Face Detection using OpenCV's CVLIB
To execute this project locally:
-
Clone the repository:
git clone https://github.com/azizzoaib786/computer-vision-edge-detection.git
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the notebook:
- Open
computer-vision-edge-detection.ipynbin Jupyter Notebook or JupyterLab. - Replace the placeholder path in the notebook with your folder path:
negatives_patches = r'<change_with_your_path>'
- Execute all cells (
Run All).
- Open
- Python (3.7 or higher recommended)
- OpenCV
- numpy
- matplotlib
- scikit-learn
- scikit-image
- MTCNN
- CVLIB
- TensorFlow or PyTorch
- Jupyter Notebook/JupyterLab
Contributions are welcome! Feel free to fork, enhance, and submit a pull request.
- Email: azizzoaib786@gmail.com
This project is licensed under the MIT License.