opencv-直方图

直方图是一种对图像亮度分布的统计表示,它显示了图像中每个灰度级别的像素数量。在OpenCV中,你可以使用cv2.calcHist() 函数计算直方图。

以下是一个简单的示例,演示如何计算和绘制图像的直方图:

python 复制代码
 import cv2
import numpy as np
import matplotlib.pyplot as plt
# 读取图像
img = cv2.imread(r"C:\Users\mzd\Desktop\opencv\2.jpg", cv2.IMREAD_GRAYSCALE)
# 计算直方图
hist = cv2.calcHist([img], [0], None, [256], [0, 256])

# 绘制直方图
plt.plot(hist)
plt.title('Histogram')
plt.xlabel('Pixel Value')
plt.ylabel('Frequency')
plt.show()

# 显示原始图像
cv2.imshow('Image', img)

# 等待用户按下任意键
cv2.waitKey(0)
cv2.destroyAllWindows()

在这个示例中,cv2.calcHist() 函数用于计算图像的直方图。它的参数包括:

  • [img]: 输入图像,可以是多通道图像,但在这里我们使用灰度图像。
  • [0]: 通道索引,对于灰度图像只有一个通道,所以使用 0。
  • None: 掩码,通常设置为 None。
  • [256]: 直方图的 bin 数量,表示灰度级别的数量。
  • [0, 256]: 像素值的范围。

绘制直方图使用了 Matplotlib 库,可以根据需要选择其他绘图工具。

直方图有助于理解图像的亮度分布,可以用于调整图像的对比度、亮度等。

相关推荐
eBest数字化转型方案13 小时前
基于AI的食品行业零售执行系统架构设计与实践 eBest
人工智能·系统架构·零售
俊基科技13 小时前
PI‑36 双麦降噪拾音模块|医院高清语音解决方案
人工智能·语音识别
eastyuxiao13 小时前
OpenClaw PDF处理
人工智能
懂AI的老郑13 小时前
离线语音识别系统全解析(支持专业词汇训练)
人工智能·语音识别
黑客说13 小时前
2026 AI 游戏热度排行榜|游戏推荐
人工智能·科技·游戏·娱乐
旦莫13 小时前
AI生成测试用例:一个Prompt模板让AI从Excel模板生成自动化脚本
人工智能·python·测试开发·自动化·prompt·测试用例
Jmayday13 小时前
Pytorch:CNN进行图象分类案例
人工智能·pytorch·cnn
机器觉醒时代13 小时前
芯驰发布具身智能全栈芯片:大脑R1、小脑D9与E3-R系列执行MCU
人工智能·具身智能·ai芯片·人形机器人·世界模型
东北洗浴王子讲AI13 小时前
从零搭建AI文学创作助手:基于API聚合站+Flask实现智能写诗、小说生成神器
人工智能·python·flask
andafaAPS13 小时前
安达发|医疗器械行业APS排程软件:重构生产效能的生命线
大数据·人工智能·制造·aps排程软件·安达发aps·计划排产软件