Bri*_*ian 7 graphics gamma antialiasing
计算机屏幕上像素的发光度通常与像素的数字RGB三元组值线性相关.早期CRT的非线性响应需要补偿非线性编码,我们今天继续使用这种编码.
通常我们在计算机屏幕上生成图像并在那里使用它们,所以一切正常.但是当我们使用抗锯齿时,非线性 - 称为伽玛 - 意味着我们不能仅将0.5的alpha值添加到50%的覆盖像素并期望它看起来正确.α值为0.5仅为0.5 ^ 2.2 = 22%,亮度为α为1.0,典型伽马值为2.2.
是否有广泛建立的抗锯齿伽马补偿最佳实践?你有日常使用的宠物方法吗?有没有人看过任何关于结果的研究和人们对不同技术的图形输出质量的看法?
我已经考虑过做标准的X ^(1/2.2)补偿,但这在计算上非常强烈.不过,也许我可以使用256条目查找表来加快速度.
查找表经常用于此类工作。它们又小又快。
但无论是查找还是某些公式,如果最终结果是图像文件,并且格式允许,最好在文件中保存颜色配置文件或至少保存伽玛值以供以后查看,而不是尝试自己调整 RGB 值。
原因是:对于典型的字节值 R、G、B 通道,每个通道中的每个像素都有 256 个唯一值。这几乎足以使人眼看起来不错(我希望“字节”被定义为九位!)除了琐碎的值反转之外,任何类型的数学都会对其中一些值进行多对一映射。输出不会为每个像素的 R、G 或 B 提供 256 个值可供选择,但数量要少得多。这可能会导致轮廓、锯齿、色彩噪声和其他不良情况。
抛开精度问题不谈,如果需要任何体面的质量,所有堆肥、混合、融合、色彩校正、假镜头光晕添加、色度键控等都应该在线性 RGB 空间中完成,其中 R、G 和B与物理光强度成正比。图像数学模拟物理光数学。但当最终速度至关重要时,就有一些作弊的方法。
| 归档时间: |
|
| 查看次数: |
852 次 |
| 最近记录: |