A Python-based project that demonstrates various Digital Image Processing (DIP) techniques, including contrast stretching, brightness adjustment, and image inversion. This project includes sample code, outputs, and examples to help you learn and experiment with DIP concepts.
Digital Image Processing (DIP) involves manipulating images to enhance their appearance or extract useful information. In this project, we demonstrate common image processing techniques in Python using libraries such as OpenCV and Pillow.
- Contrast Stretching: Expands the range of pixel intensity values.
- Brightness Adjustment: Changes the brightness of the image.
- Image Inversion: Reverses pixel colors (e.g., black becomes white).
These techniques are essential for applications like image enhancement, analysis, and feature extraction.
- Contrast Stretching: Adjusts the contrast of the image by modifying its intensity levels.
- Brightness Adjustment: Changes the brightness of an image without affecting contrast.
- Image Inversion: Inverts pixel values to produce a negative effect.
- Sample Code: Includes Python code for each technique with detailed explanations.
- Visual Examples: Side-by-side comparisons of original and processed images for better understanding.
You can try out the various techniques with your own images by running the sample code provided in the notebooks
directory.
- Python 3.x
- OpenCV
- Pillow (PIL)
- NumPy
- Matplotlib (for visualizations)
- SciPy (for advanced image processing functions)
- scikit-image (image processing and computer vision algorithms)
- TensorFlow / Keras (for machine learning-based image processing tasks)
- PyTorch (for deep learning and neural network-based image processing)
- Jupyter Notebooks (for interactive code and visualizations)
- ImageMagick (for command-line image manipulation)
- Pandas (for handling and analyzing data)
- Numpy (for handling arrays and numerical data)
- Seaborn (for advanced plotting)
- Cython (for optimizing image processing algorithms)
- OpenCV Contrib (extra OpenCV functionality for image processing)
- SciKit-Image (for image segmentation and advanced processing tasks)
- Tesseract (for Optical Character Recognition)
Digital-Image-Processing/
├── images/ # Sample images
├── notebooks/ # Jupyter notebooks for code and visualizations
├── ipynb/ # Source code for image processing techniques
├── README.md # Project documentation
└── LICENSE
7758
# License information
Make sure you have the following dependencies installed:
- Python 3.x
- OpenCV
- Pillow
- NumPy
You can install them using pip:
pip install
- Clone the repository:
git clone https://github.com/Someshdiwan/Digital-Image-Processing
- Navigate to the project directory:
cd digital-image-processing
- Open any Jupyter notebook in the
notebooks
folder and run the code cells to see the image processing techniques in action. - Add your own images to the
images/
folder to experiment with the techniques.
Processed Image (Increased Brightness):
If you like this project, please consider giving it a ⭐ on GitHub!
We welcome contributions to enhance the project further! If you’d like to add new techniques or improve the existing ones, feel free to fork the repository, make your changes, and submit a pull request.
For any questions or suggestions, feel free to reach out:
- GitHub: Someshdiwan
- Email: someshdiwan369@gmail.com