Python Opencv实践 - 图像直方图自适应均衡化

复制代码
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt

img = cv.imread("../SampleImages/cat.jpg", cv.IMREAD_GRAYSCALE)
print(img.shape)

#整幅图像做普通的直方图均衡化
img_hist_equalized = cv.equalizeHist(img)

#图像直方图自适应均衡化
#1. 创建CLAHE对象
#cv.createCLAHE( clipLimit=40,tileGridSize=(8,8))
#参考资料:https://blog.csdn.net/juzicode00/article/details/121663922
clahe = cv.createCLAHE(2,(10,10))
#2. 应用直方图自适应均衡化
#clahe.apply(img)
img_clahe = clahe.apply(img)

#显示图像
fig,axes = plt.subplots(nrows=1, ncols=3, figsize=(10,10), dpi=100)
axes[0].set_title("Original")
axes[0].imshow(img, cmap=plt.cm.gray)
axes[1].set_title("Equalized")
axes[1].imshow(img_hist_equalized, cmap=plt.cm.gray)
axes[2].set_title("CLAHE")
axes[2].imshow(img_clahe, cmap=plt.cm.gray)
相关推荐
五阿哥永琪8 分钟前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
a11177619 分钟前
EasyVtuber(或其衍生/增强版本)的虚拟主播(Vtuber)面部动画生成与直播解决方案
python·虚拟主播
lintax23 分钟前
计算pi值-积分法
python·算法·计算π·积分法
小凯1234535 分钟前
pytest框架-详解(学习pytest框架这一篇就够了)
python·学习·pytest
逻极35 分钟前
pytest 入门指南:Python 测试框架从零到一(2025 实战版)
开发语言·python·pytest
你的冰西瓜40 分钟前
C++ STL算法——排序和相关操作
开发语言·c++·算法·stl
OnYoung41 分钟前
更优雅的测试:Pytest框架入门
jvm·数据库·python
海边的Kurisu2 小时前
Mybatis-Plus | 只做增强不做改变——为简化开发而生
java·开发语言·mybatis