【发布时间】:2013-06-05 01:38:33
【问题描述】:
我想在 iOS 上使用 GPUImage 时降低输入视频和图像的颜色深度(例如,降低到 16 位),我只是想知道是否有一种使用现有过滤器的简单方法可以做到这一点。
看起来 GPUImageColorMatrixFilter 或 GPUImageRGBFilter 可能是正确的工具;是这样吗?我现在也将开始尝试。谢谢。
【问题讨论】:
标签: pixel pixels gpuimage color-depth
我想在 iOS 上使用 GPUImage 时降低输入视频和图像的颜色深度(例如,降低到 16 位),我只是想知道是否有一种使用现有过滤器的简单方法可以做到这一点。
看起来 GPUImageColorMatrixFilter 或 GPUImageRGBFilter 可能是正确的工具;是这样吗?我现在也将开始尝试。谢谢。
【问题讨论】:
标签: pixel pixels gpuimage color-depth
我认为其中任何一个都不会在这里做你想做的事。忽略抖动,您将需要一些减少图像中颜色级别数量的东西。
GPUImagePosterizeFilter 通过使用colorLevels 属性分别减小红色、绿色和蓝色通道的动态范围来降低颜色级别。对于 10 的值,这应该会将您的图像减少到 1000 色。
但是,由于这会单独且均匀地作用于每个颜色通道,因此可能不会以您想要的特定方式减少您的色彩空间。为了像这样调整色彩空间缩减,我看到人们使用色彩映射表。如果你想这样做,我推荐使用 GPUImageLookupFilter,你可以在其中对查找表图像进行缩减操作,然后使用它来进行重新映射。这可能会带来更高质量的结果。
【讨论】: