- Introduction
- Project Features
- Project Structure
- Quick Preview
- Requirements to run
- Try a demo
- Reports
- Team
It’s an image processing implementation functions project implemented in C++ with a desktop application (Qt) that consists of five tabs that let the user add noise to an image, filter the added noise, view different types of histograms, apply thresholds to an image, and create hybrid images.
In this project you can:
- Add different types of noise to the image:
- Salt and Paper noise.
- Uniform noise.
- Gaussian noise.
- Using different types of filtering:
- Average filter .
- Gaussian filter.
- Median filter.
- Detect edges in the image using:
- Sobel edge detector.
- Roberts edge detector.
- Prewitt edge detector.
- Canny edge detector.
- Draw Histograms and Distribution curves for the uploaded image.
- Equalize and Normalize the image.
- Transform the image from color to gray scale image and plot Red, Green, and Blue histograms with their cumulative curves.
- Implement Filtering in the Frequency Domain.
- Ideal Low Pass filter (smoothing).
- Ideal High Pass filter (sharpening).
- Implement Corner Detection Technique (Harris Operator)
- Implement SIFT Algorithm
- Implement Thresholding Techniques such as:
- Optimal
- Otsu
- Global Spectral
- Local Spectral
- Implement various types of segmenations such as:
- K-Means Segmentation
- Region Growing Segmentation
- Agglomerative Segmentation
- Mean Shift Segmentation
The ToolKit is built using:
-
C++/OpenCV:
- OpenCV 14/15/16 versions
-
QT framework:
- QT 6.4 version or above
-
Python
- Python Notebook
- For visualization and comparing implmented algorithms results by built in functions.
You can find detailed reports about each algorithm implemented in this project here
Second Semester - Biomedical Computer Vision (SBE3230) class project created by:
Team Members' Names | Section | B.N. |
---|---|---|
Dina Hussam | 1 | 28 |
Omar Ahmed | 2 | 2 |
Omar saad | 2 | 3 |
Mohamed Ahmed | 2 | 16 |
Neveen Mohamed | 2 | 49 |