图像增强:自适应直方图均衡化(AHE)
作者:互联网
文章目录
算法简介
自适应直方图均衡化(AHE)用来提升图像的对比度的一种计算机图像处理技术。和普通的直方图均衡算法不同,AHE算法通过计算图像的局部直方图,然后重新分布亮度来改变图像对比度。因此即使在比大多数图像更暗或更亮的区域,也可以增强局部细节
。
代码实现
# 自适应直方图均衡化(AHE)
from skimage import exposure
file_to_open = '/content/Rust_032.jpg'
img2 = io.imread(file_to_open)
plt.figure()
plt.imshow(img2)
plt.show()
img = exposure.equalize_adapthist(img2)
im = Image.fromarray(np.uint8(img * 255))
im.save('/content/02.jpg')
plt.figure()
plt.imshow(img)
plt.show()
import cv2
import matplotlib.pyplot as plt
from google.colab.patches import cv2_imshow
import numpy as np
#用直方图分别统计图像各个像素三个颜色通道数值数量的分布
img = cv2.imread('/content/Rust_032.jpg')
cv2_imshow(img)
color = ('blue','green','red')
#enumerate函数第一个返回索引index,第二个返回元素element
for i,color in enumerate(color):
#参数说明:
#一、images(输入图像)参数必须用方括号括起来。
#二、计算直方图的通道。
#三、Mask(掩膜),一般用None,表示处理整幅图像。
#四、histSize,表示这个直方图分成多少份(即多少个直方柱)。
#五、range,直方图中各个像素的值,[0.0, 256.0]表示直方图能表示像素值从0.0到256的像素。
hist = cv2.calcHist([img],[i],None,[256],[0,256])
plt.plot(hist,color = color)
plt.xlim([0,256])
plt.show()
cv2.waitKey()
效果展示
处理前
处理后
标签:plt,img,color,均衡化,cv2,直方图,import,图像增强 来源: https://blog.csdn.net/qq_40002420/article/details/119855405