
This project is an implementation of the Super-Resolution Generative Adversarial Network (SRGAN) paper.
Read More
This project uses the OpenCV library which is an open source computer vision Python library that helps us design face features recognition systems.
Read MoreComputer vision is the field of artificial intelligence that enables machines to interpret and understand visual information from the world. From medical imaging to autonomous vehicles, computer vision systems extract meaningful patterns from pixel data and use them to make predictions, generate new images, or drive real-time decision-making. The projects in this section span both classical and deep learning approaches, giving you a well-rounded view of modern image processing techniques.
The first project implements the Super-Resolution Generative Adversarial Network (SRGAN), a deep learning architecture that upscales low-resolution images to high-resolution versions by training a generator and discriminator in an adversarial loop. You will learn how the perceptual loss function, built on VGG feature maps, produces sharper and more realistic outputs than traditional pixel-wise loss alone. The notebook walks through dataset preparation, model architecture, training dynamics, and visual comparisons of upscaled results against bicubic interpolation baselines.
The second project takes a classical approach using OpenCV and Haar cascade classifiers for real-time face and eye detection. Haar cascades use a series of simple rectangular features evaluated across an image at multiple scales to detect objects quickly and efficiently. This project demonstrates how to load pre-trained cascade files, process video frames, and draw bounding boxes around detected faces and eyes in real time. You will also explore how tuning parameters such as scale factor and minimum neighbors directly affects detection sensitivity and false-positive rates in different lighting conditions.
Together, these two projects illustrate the breadth of computer vision, from generative deep learning to efficient classical detection pipelines. The SRGAN project highlights how adversarial training can produce outputs that are visually convincing to human observers, while the OpenCV project shows that traditional algorithms still deliver strong performance when low latency and simplicity are priorities. Both notebooks include step-by-step code comments, evaluation metrics, and side-by-side visual comparisons so you can assess each method on its own merits and adapt the techniques to your own image datasets. All code runs on Google Colab with a single click, and every dependency is pinned to ensure long-term reproducibility. Whether you are building a portfolio project or exploring computer vision for the first time, these tutorials provide a solid and practical hands-on starting point.