Opencv中的直方图

07-12 1015阅读

cv2.calcHist()

直方图是图像中像素强度分布的图形表达方式,统计了每一个强度值所具有的像素个数。并可以计算图像中的一个或多个通道的直方图。

Opencv中的直方图
(图片来源网络,侵删)
dst = cv2.calcHist(images, channels, mask, histSize, ranges[, hist[, accumulate]])
  • images:源图像,可以是单通道灰度图,或三通道RGB图像。
  • channels:要计算其直方图的通道索引列表。例如,如果输入图像是灰度图,它的通道索引就是 [0]。对于BGR图像,它可以是 [0],[1] 或 [2] 分别对应蓝色、绿色和红色通道。
  • mask:图像掩模。如果图像中的某个像素被掩模覆盖(即掩模对应位置的值非零),则这个像素的直方图不会被计算。如果掩模为 None,表示没有掩模。
  • histSize:直方图的大小,即BINS的数量,需要是一个整数列表。对于灰度图像,它通常是一个只有一个元素的列表,例如 [256]。
  • ranges:像素值范围,通常为 [0, 256] 对于灰度图像。这个范围对于直方图的计算非常重要,因为它决定了哪些像素值会被考虑在内。
  • hist:一个可选的输出参数,用于存储计算出的直方图。
  • accumulate:一个布尔值,指定直方图是否应该被累积。如果为 True,则直方图在调用之间会被累加,这对于计算多个图像的直方图很有用。

    返回值:该函数返回一个计算出的直方图和一个 bin 的边界值数组(即 ranges 参数的每个维度的边界值)。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]