0

是否可以处理仅在视图内容中可见的静止图像而不制作已处理的 UIImage 副本?例如,我在全屏视图中将 8 兆像素图像压缩到实际像素,我只想处理屏幕上的内容。基本上我想要一个实时处理它的内容(大多数情况下是图像)的“视口”。

谢谢,托托

4

1 回答 1

0

当然。您要做的是从源图像创建 GPUImagePicture,然后将其定位到 GPUImageCropFilter,结果将发送到您要应用的过滤器,然后将结果发送到 GPUImageView。

裁剪过滤器可让您放大图像的特定区域,并且只有这些像素将被发送到您的后处理过滤器进行显示。直接转到 GPUImageView 将是您拥有的最快的显示路径。

随着过滤器的设置发生变化,或者源图像的裁剪区域发生变化,您需要调用-processImageGPUImagePicture 以通过过滤器链传播这些更新。根据裁剪区域中剩余图像的大小、正在运行的设备以及您尝试应用的过滤器的强度,这应该会为您提供所需的实时性能。

于 2013-10-21T18:54:03.730 回答