【发布时间】:2015-08-21 19:43:22
【问题描述】:
我目前正在实现自动调整曝光以在 OpenGL 中与 HDR 一起使用。为此,我需要检索前一帧中所有像素的平均亮度。
我还没有找到任何关于如何做到这一点的可靠解释。据我所知,有两种方法可以解决。
- 使用 glReadPixels 将帧缓冲区复制到内存并在 CPU 上平均它们。这可能会非常缓慢,并且不能很好地利用 GPU。
- 获取帧并使用线性过滤将其渲染到连续更小的 FBO。这让 GPU 可以完成大部分工作,但需要大量的 FBO(对于 1080p 屏幕大约需要 10 个)。
必须有更好的方法来获得平均场景亮度。有人有什么建议吗?
【问题讨论】:
标签: opengl framebuffer brightness