是否有c++函数或opencv库可以计算给定8*8块或全部图像的平均亮度日志?我的目标是计算平均亮度并将其存储在块中。另外,在另一种适合人类视觉系统的科学方法中,是否有另一种方法来计算总体亮度或平均亮度?如果有人能向我指出c++中的库或函数,我将不胜感激。
发布于 2014-05-14 14:43:04
为了计算8x8块的平均亮度,集中在输入灰度图像中的每个像素,您可以对该图像执行2D卷积,其中8x8核包含每个单元格中的值1/64,即1/(8*8)。
这被称为标准化的盒子过滤器/盒子模糊。
然后,您可以在(x,y)处对产生的图像进行采样,以获得以(x,y)为中心的8x8块的平均亮度。
在OpenCV手册中有一个标准化的盒子过滤器的代码,用户可以选择大小。
2d.html
对于这个值的“日志”,您可以使用OpenCV函数cvLog来获取过滤图像的日志并获得结果。
https://stackoverflow.com/questions/23657738
复制相似问题