我想在iOS上使用GPUImage时减少输入视频和图像的颜色深度(例如,降至16位),如果有一种使用现有过滤器的简单方法,我只是很好奇。
看起来GPUImageColorMatrixFilter或GPUImageRGBFilter可能是正确的工具;是这样的吗?我现在也将开始尝试。谢谢。
答案 0 :(得分:1)
我认为其中任何一个都不会在这里做你想做的事。忽略抖动,你会想要一些能减少图像颜色等级的东西。
GPUImagePosterizeFilter通过使用colorLevels
属性单独减小红色,绿色和蓝色通道的动态范围来降低颜色级别。如果值为10,则应将图像缩小为1000色。
但是,因为它会单独和均匀地作用于每个颜色通道,所以这可能不会以您想要的特定方式减少颜色空间。为了调整像这样的颜色空间缩减,我看到人们使用颜色映射表。如果你想这样做,我建议使用GPUImageLookupFilter,你可以在查找表图像上进行缩小操作,然后用它来进行重新映射。这可能会带来更高质量的结果。