-1

我正在为 iPhone 制作一个摄影应用程序,并将使用 OpenGL 对图像应用效果。现在我有点像 OpenGL 菜鸟,想知道有没有办法构建一个可以轻松反转的过滤器(饱和度和模糊)?

解释一下,用户拍了一张照片,然后应用了 5 的模糊和 3 的饱和度(任意值),然后返回并将其降低为 3 的模糊和 2 的饱和度,结果是否相同如果他给原始图像赋予了 3 的模糊度和 2 的饱和度?

4

3 回答 3

0

保存原始图像并将过滤器更改存储为一组指令,您可以在以后重播这些指令。这也将为您提供选择性撤消能力。

于 2013-09-26T19:23:38.820 回答
0

您不能重做模糊等过滤器。此类过滤器会丢失有关图像的一些信息,因此很难将其取回。请参阅此处的讨论

使用 OpenGL(或任何其他 Api),您可以轻松地将滤镜应用为“后处理”效果。只需将带有纹理的四边形渲染到某个渲染目标,然后您将转换图像作为输出。这是oZone3D如何做到这一点的链接。

您可以保存创建的输出(但作为其他文件名!)。

于 2013-09-26T19:54:56.563 回答
0

非破坏性编辑与 API 无关,您可以使用 OpenGL 或软件或任何东西来实现它,您真正需要做的就是保留源数据而不是覆盖它。您甚至可以将“历史记录”推回磁盘以避免膨胀 ram 和 gpu 内存。

从您的问题的上下文来看,我可以假设您正在使用苹果为其 API 提供的一些开箱即用的功能,在这种情况下,您依赖于库存实现,因此您会被它的破坏性行为,直到你自己想出更好的东西。

于 2013-09-26T20:03:19.923 回答