【发布时间】:2019-01-09 10:25:06
【问题描述】:
我想使用 Python 实现 Krešimir Matkovic、László Neumann、Attila Neumann、Thomas Psik 和 Werner Purgathofer 的论文 Global Contrast Factor - a New Approach to Image Contrast 中详述的过程Numpy 和 OpenCV。但是,有一个步骤我正在努力。
该过程本质上涉及灰度图像像素上的一些基本乘法和加法,这可以通过 Numpy 矢量化操作轻松完成。但是,对于分辨率越来越小的图像,需要重复此过程,其中较小图像中的超像素根据论文中提供的特定公式进行组合。
从原始图像开始,每次将尺寸减半,“超像素值计算为平均线性亮度,并且 然后将其转换为感知亮度,”由公式给出:
其中 gamma = 2.2,k 是原始像素值 [0, 255]。我假设这意味着每次缩小图像时,我需要一次计算四个像素的第一个公式(以正方形排列),将它们平均,然后应用第二个公式用作灰度值较小的图像。
我的问题是我不确定如何有效地缩小图像,以便以对应于这些公式的方式计算其像素值。 OpenCV 已经内置了一些调整大小的算法,但老实说,我不确定哪个(如果有的话)会提供与论文中详述的结果相似的结果。
在较小图像中的像素值由这些公式确定的情况下,如何有效地调整灰度图像的大小?
【问题讨论】: