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 库,可以根据需要选择其他绘图工具。

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

相关推荐
lisw053 分钟前
人工智能网络:结构、动力学与经济学!
人工智能
@不误正业4 分钟前
技术线05_端侧小模型不可靠先检查你的Agent架构
人工智能·架构·agent·端侧模型·4b
鱼宵4 分钟前
Spring AI 工具调用:@Tool 让大模型自己查订单查库存
人工智能·spring·工具调用·functioncalling·springai
鬼手点金5 分钟前
opencode-crawl4ai使用建议
java·开发语言·人工智能·python·机器学习
hughnz8 分钟前
部署基于云的钻井自动化:7 条实践经验
人工智能·机器人
俊哥V10 分钟前
AI一周事件 · 2026-09-30 至 2026-10-06
人工智能·ai
野生码农AI实战11 分钟前
Kimi Code 5分钟烧穿699套餐5小时限额:798个文件、745次失败,烧出四条熔断纪律
人工智能·ai编程
寻道码路11 分钟前
大模型工程化实战(十七):金融级 AI 落地——决策可追溯/可复现/可追责/不可抵赖这四件事怎么做
人工智能·大模型·ai工程化·ai治理·ai合规·金融ai落地·决策审计链
IanSkunk14 分钟前
从T/SMA 0090—2026到视光中心落地:标准化体系模块清单怎么拆
人工智能
万物智能信息科技16 分钟前
血氧心跳传感器MAX30100芯片驱动开发—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
人工智能·驱动开发·华为·开源·harmonyos·鸿蒙