【问题标题】:Blur effect in a view of iOSiOS视图中的模糊效果
【发布时间】:2012-03-17 00:19:28
【问题描述】:

我想使用 UIImagePicker 来显示相机预览。在这个预览中,我想放置一个带有控件的覆盖视图。

是否可以对将从相机显示的预览应用任何效果?我特别需要对相机预览应用模糊效果。

所以我想从相机和带有控件的叠加视图中获得模糊的预览。如果我决定从相机捕捉静止图像,我需要让它没有模糊效果的原始图像。所以模糊效果必须只应用于预览。

这是否可能使用这样的配置,或者可能使用 AVFoundation 来访问相机预览或其他方式,或者这根本不可能?

【问题讨论】:

    标签: ios camera preview blur effect


    【解决方案1】:

    有了 AV 基础,您几乎可以做任何您想做的事情,因为您可以从相机获取单帧并对其进行详细说明,但它可能会导致您陷入死胡同,在图像上实时应用模糊是一项非常密集的任务滞后的视频结果,这可能会导致您浪费数小时的编码。我建议您使用 James WebSster 或 OpenGL 着色器的解决方案。看看我最喜欢的大师之一布拉德http://www.sunsetlakesoftware.com/2012/02/12/introducing-gpuimage-framework 编写的这个很棒的免费库,即使你没有找到合适的过滤器,它也可能会引导你正确实现你想做的事情。 正确的滤镜当然是高斯模糊,但不知道是否支持,但你可以自己做。

    几乎忘了说,在 iOS 5 中,您可以完全访问 Apple 制造的 Accelerate Framework,您还应该研究一下。

    【讨论】:

    • 顺便说一下,据我所知,使用第三方框架的应用是不允许添加到AppStore的,对吧?
    • 不,幸运的是你可以使用它 (-: 。拒绝是关于使用私有 API 的应用程序。你唯一应该做的就是检查开发人员的许可证是否已经发布了库,也许它需要署名或其他内容。
    • 哦,我不知道。谢谢你的链接。看起来很有趣。
    • @BartoNaz - 仅供参考,目前库存滤镜中没有模糊滤镜,但今天下午我将添加 Keitaroh Kobayashi 的高斯模糊。我还没有对它进行基准测试,所以我不能谈论这个过滤器的第一个版本的性能,但我们应该能够调整它以在所有支持的 iOS 设备上实时运行。
    • @BartoNaz - 作为更新,我向 GPUImage 添加了一个 GPUImageFastBlurFilter,它对图像进行了高度优化的 9-hit 高斯模糊。它可以在 iPhone 4 上在 2 毫秒内过滤 640x480 视频帧,因此它的速度足以实时模糊。
    【解决方案2】:

    从我对 UIImagePicker 所做的相当有限的工作量来看,我认为不可能将模糊应用到您使用编程过滤器看到的图像。

    您可以做的是使用叠加层来估计模糊。例如,您可以通过添加包含半透明磨砂玻璃图像的叠加层来做到这一点。

    【讨论】:

    • 是否存在任何过滤器或任何可以模糊其下所有内容的东西?
    • 通过添加包含半透明磨砂玻璃图像的叠加层。 例如
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-02
    • 2015-06-12
    • 2014-01-30
    • 2013-06-07
    • 1970-01-01
    相关资源
    最近更新 更多