直方图学习

直方图均衡化(Histogram Equalization)是一种用于增强图像对比度的图像处理技术,通过重新分配图像的像素值,使图像中的亮度级别更加均匀,以改善图像的视觉质量。下面是进行直方图均衡化的一般步骤:

  1. 计算原始图像的直方图:首先,计算原始图像的灰度直方图,以了解不同亮度级别的像素数量分布。

  2. 计算累积分布函数(CDF):对于每个亮度级别,计算其累积分布函数(CDF),这是一个表示在该亮度级别以下像素数量累积的函数。CDF可以通过对灰度直方图进行累积求和来计算。

  3. 归一化CDF:将CDF的值归一化到[0, 255]的范围内。这可以通过以下公式来实现:

    CDF_normalized = (CDF - min(CDF)) / (M * N - 1) * 255

    其中,MN 是图像的宽度和高度。

  4. 映射像素值:对于原始图像中的每个像素,将其亮度级别映射到归一化的CDF值。具体地,用归一化CDF值替换原始像素值。

  5. 生成均衡化后的图像:将所有像素的亮度级别替换后,生成均衡化后的图像。

下面是一个Python示例,演示如何使用OpenCV库进行直方图均衡化:

复制代码

pythonCopy code

import cv2 # 读取原始图像 image = cv2.imread('input.jpg', cv2.IMREAD_GRAYSCALE) # 计算直方图 hist = cv2.calcHist([image], [0], None, [256], [0, 256]) # 计算累积分布函数 cdf = hist.cumsum() # 归一化CDF cdf_normalized = cdf * 255 / cdf[-1] # 映射像素值 equalized_image = cdf_normalized[image] # 保存均衡化后的图像 cv2.imwrite('output.jpg', equalized_image)

相关推荐
田里的水稻几秒前
FA_规划和控制(PC)-规律路图法(PRM)
人工智能·算法·机器学习·机器人·自动驾驶
AI周红伟2 分钟前
周红伟:具身机器人大爆炸了,机器人时代来临
大数据·人工智能·机器人·大模型·智能体·seedance
weixin_446260853 分钟前
[特殊字符] 学习大型语言模型的实用指南 - 《Hands-On Large Language Models》
人工智能
yuezhilangniao8 分钟前
AI智能体AI开发「核心概念」速查手册
人工智能
LaughingZhu17 分钟前
Product Hunt 每日热榜 | 2026-02-15
人工智能·经验分享·深度学习·神经网络·产品运营
带娃的IT创业者27 分钟前
解密OpenClaw系列10-OpenClaw系统要求
人工智能·macos·ios·objective-c·ai智能体·智能体开发·openclaw
志栋智能29 分钟前
AI驱动的数据库自动化巡检:捍卫数据王国的“智能中枢”
大数据·运维·数据库·人工智能·云原生·自动化
黑巧克力可减脂1 小时前
Vibe Coding技术方案选型:循道而行,择善而用——从古典智慧看AI编程范式的选型之道
人工智能·语言模型·软件工程·ai编程
木斯佳1 小时前
前端八股文面经大全:2026-01-23快手AI应用方向前端实习一面面经深度解析
前端·人工智能·状态模式
aircrushin2 小时前
国产大模型工业化转型:豆包2.0如何定义“数字员工”新范式
人工智能