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)
相关推荐
weixin_433417678 分钟前
Canny边缘检测算法原理与实现
python·opencv·算法
梨落秋霜11 分钟前
Python入门篇【元组】
android·数据库·python
i小杨12 分钟前
python 项目相关
开发语言·python
zh_xuan12 分钟前
kotlin定义函数和变量
android·开发语言·kotlin
CoderCodingNo13 分钟前
【GESP】C++五级真题(贪心思想考点) luogu-P11960 [GESP202503 五级] 平均分配
开发语言·c++·算法
weixin_4624462324 分钟前
使用 Tornado + systemd 搭建图片静态服务(imgserver)
开发语言·python·tornado
源码获取_wx:Fegn089525 分钟前
基于springboot + vue小区人脸识别门禁系统
java·开发语言·vue.js·spring boot·后端·spring
别多香了30 分钟前
python基础之面向对象&异常捕获
开发语言·python
春蕾夏荷_72829772531 分钟前
Qt 命令行工具
开发语言·qt
Silence_Jy37 分钟前
Kimi K2技术报告
人工智能·python·深度学习·transformer