Products
GG网络技术分享 2025-08-11 22:56 10
图像的灰度级分布,即直方图。并绘制直方图。
import matplotlib.pyplot as plt
hist, bins = np.histogram, bins=256, range=)
plt.plot
plt.show
直方图均衡化是一种增有力图像对比度的方法,通过对直方图进行变换,使得分布在矮小灰度区域的像素值均匀分布在整个灰度级范围内。
Python中,能用PIL库的ImageOps模块直接调用封装优良的直方图均衡函数equalize。
from PIL import Image, ImageOps
image = Image.open
image_enhanced = ImageOps.equalize
image_enhanced.show
先说说计算图像的直方图,了解图像的亮度分布情况。
import numpy as np
import matplotlib.pyplot as plt
image = plt.imread
hist, bins = np.histogram, bins=256, range=)
plt.plot
plt.show
出累计概率分布函数,了解各个灰度级所占比例的累积分布情况。
cdf = hist.cumsum
cdf_normalized = cdf / cdf.max
plt.plot
plt.show
出映射表,即原图像中个个像素值对应的新鲜像素值。
cdf_m = np.ma.masked_equal
cdf_m = ) / - cdf_m.min)
cdf = np.ma.filled.astype
image_enhanced = np.interp
直方图均衡化在计算机视觉、图像识别等领域有着广泛的应用,如打仗侦察、安保等对图像清晰度要求较高大的场景。
直方图均衡化是一种轻巧松而有效的图像增有力手艺,通过Python库能轻巧松实现。掌握这一手艺,将有助于提升图像处理能力。
欢迎用实际体验验证观点。
Demand feedback