【问题标题】:Image segmentation for iOSiOS 图像分割
【发布时间】:2013-03-27 09:39:28
【问题描述】:

我需要一种方法将包含人类的图像转换为仅包含一种颜色的身体 sihlouette 的图像。首先我看了一下 Canny 边缘检测器(OpenCV 实现),但这可能会导致图像背景出现问题。

我已经尝试过使用 GrabCut OpenCV 实现。这在大多数情况下都可以正常工作,但它的时间性能极差,例如,对于 480x320 图像,处理时间长达 1 分钟。另外,grabcut 的问题是用户需要进行交互并设置背景区域和用户区域,这在我的情况下是不允许的。

所以,也许你可以给我一些关于使用不同于 GrabCut 的其他方法的想法,或者建议我如何提高 GrabBut 时间性能(也许是 gpu 实现)。我还需要一个关于定位人体的算法的建议,并帮助抓取算法定位身体/背景区域。

例子:

【问题讨论】:

  • 这个问题含糊不清,缺乏细节,如果不是为了开放赏金,可能会被关闭。你真的尝试了什么?第三方?你自己的实现?等等等等。帮助我们帮助你。
  • 我认为对抓取的简要概述会有所帮助;例如它会帮助我们这些不熟悉它的人评论它是否适合 GCD 并行化或 GPU 或任何 Core Image 框架,是否有任何好的第三方库可以做任何这些工作你……
  • 至少给我们一张或多张输入图片你想要做什么,你的目标是什么类型的图片
  • 我已经编辑了这个问题,所以我希望现在更准确。

标签: ios objective-c uiimage cgimage


【解决方案1】:

可以提出两件可能有帮助的调查建议:

1)CIDetector

2)OpenCV library for iOS。这个项目看起来不活跃,但你可以找到一些 fork 或相关项目here

【讨论】:

    【解决方案2】:

    将图像缩小一半分辨率(使用pyrDown()),运行 GrabCut,使用轮廓检测​​对剪切部分进行矢量化处理,并根据需要进行放大。

    【讨论】:

      【解决方案3】:

      OpenCV 将是这样的一个不错的选择。你可以在官网获取一个预建的ios库:

      http://opencv.org/

      还有一个使用 OpenCV 的 Tutorial-App,它可能与您正在寻找的功能相似:

      http://computer-vision-talks.com/

      【讨论】:

        【解决方案4】:

        【讨论】:

        • 我已经在问题中写过,精明的边缘检测会导致图像背景、地板线以及图像中没有轮廓的任何问题。
        猜你喜欢
        • 2022-10-17
        • 2015-12-18
        • 2023-03-06
        • 2017-04-20
        • 2017-11-16
        • 1970-01-01
        • 1970-01-01
        • 2011-08-29
        • 2020-02-10
        相关资源
        最近更新 更多