GPUImage:蒙版模糊

时间:2014-05-15 08:50:13

标签: ios objective-c gpuimage

我使用GPUImage来模糊圆形图像。在图像上,我有圆形"框架"图片。问题是模糊使图像伸展到原始帧图像的边界之外。

我可以用(CALayercornerRadius然后maskToBounds)来掩盖图像,但是当我有很多这些图像时,这真的很慢。

是否可以快速使用GPUImage屏蔽模糊图像?

感谢。

enter image description here

GPUImageGaussianBlurFilter *blurFilter = [GPUImageGaussianBlurFilter new];
blurFilter.blurRadiusInPixels = 15;
self.blurryThumbNail.image = [blurFilter imageByFilteringImage:self.profileImage.image];

1 个答案:

答案 0 :(得分:3)

有一个方便的过滤器:GPUImageGaussianBlurPositionFilter

指定 blurCenter blurSize 。请注意,坐标介于0.0和1.0之间。

GPUImageGaussianBlurPositionFilterGPUImageFilterGroup的子类,基本上它是一个2步过滤器。首先,它使用GPUImageGaussianBlurFilter(您正在使用的那个)应用模糊,然后使用指定的参数将结果与原始未模糊的结果组合。

有一篇有趣的文章介绍了当前GPUImageGaussianBlurFilter在Brad Larson博客here上的实施情况