Histogram equalization makes images clearer by spreading out the brightness levels evenly. It helps us see details better in dark or bright areas.
0
0
Histogram equalization in Computer Vision
Introduction
Improving contrast in photos taken in low light.
Making details visible in medical images like X-rays.
Enhancing satellite images to see land features clearly.
Preparing images for better object detection in AI.
Fixing washed-out photos with poor contrast.
Syntax
Computer Vision
import cv2
equalized_image = cv2.equalizeHist(grayscale_image)The input image must be in grayscale (black and white).
The function returns a new image with improved contrast.
Examples
Load a grayscale image and apply histogram equalization to improve contrast.
Computer Vision
import cv2 image = cv2.imread('photo.jpg', cv2.IMREAD_GRAYSCALE) equalized = cv2.equalizeHist(image)
Apply histogram equalization on a small 2x2 grayscale image array.
Computer Vision
import cv2 import numpy as np image = np.array([[50, 80], [90, 100]], dtype='uint8') equalized = cv2.equalizeHist(image)
Sample Model
This code creates a simple dark image and applies histogram equalization to spread out the brightness levels.
Computer Vision
import cv2 import numpy as np # Create a simple grayscale image with low contrast image = np.array([[50, 50, 50, 50], [50, 50, 50, 50], [50, 50, 50, 50], [50, 50, 50, 50]], dtype='uint8') # Apply histogram equalization equalized_image = cv2.equalizeHist(image) print('Original Image:') print(image) print('\nEqualized Image:') print(equalized_image)
OutputSuccess
Important Notes
Histogram equalization works best on grayscale images, not color images directly.
For color images, apply equalization on each color channel separately or convert to a color space like HSV and equalize the brightness channel.
Sometimes, equalization can make noise more visible, so use it carefully.
Summary
Histogram equalization improves image contrast by spreading brightness evenly.
It is useful for making details visible in dark or bright images.
Use OpenCV's cv2.equalizeHist() on grayscale images to apply it easily.