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

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

相关推荐
oak隔壁找我几秒前
大模型中参数中 topP(核采样)与 topK 参数的区别
人工智能
还是大剑师兰特2 分钟前
AI 航天领域20强
人工智能·思维导图·ai航天
AI即插即用12 分钟前
即插即用系列 | CVPR 2024 FADC:频域自适应空洞卷积,完美解决语义分割“网格效应”
图像处理·人工智能·深度学习·目标检测·计算机视觉·视觉检测
Sinnet-cloud14 分钟前
以AI算力基建赋能中国企业出海新征程 | 光环云香港亮相2025 GIS全球创新峰会
人工智能·gpu算力
Hui Baby14 分钟前
STT语音转文字探秘
人工智能·语音识别
张彦峰ZYF15 分钟前
AI赋能原则9解读思考:高智能 AI 时代的人类生存与发展之道-协同进化
人工智能·ai·ai赋能与落地
优爱蛋白16 分钟前
IL-21:后Th1/Th2时代的免疫新星
java·服务器·前端·人工智能·健康医疗
深圳佛手16 分钟前
LangChain 提供的搜素工具SerpAPIWrapper介绍
开发语言·人工智能·python
Dreamshop_AI19 分钟前
电商视觉时代:如何用Dreamshop重构“人-货-场”?
大数据·人工智能·经验分享·ai作画·aigc
渡我白衣21 分钟前
计算机组成原理(4):计算机的层次结构与工作原理
运维·c语言·网络·c++·人工智能·笔记·硬件架构