gpt4 book ai didi

image - 物体检测+分割

转载 作者:太空宇宙 更新时间:2023-11-03 20:38:55 27 4
gpt4 key购买 nike

我正在尝试找到一种可接受的复杂性的有效方法

  • 检测图像中的对象,以便将其与周围环境隔离
  • 将该对象分割成它的子部分并标记它们,这样我就可以随意获取它们

我进入图像处理世界已经 3 周了,我已经阅读了很多算法(sift、snakes、more snakes、fourier 相关等),以及我不知道从哪里开始的启发式哪个是我想要实现的“最佳”。考虑到感兴趣的图像数据集非常大,我什至不知道我是否应该使用一些在 OpenCV 中实现的算法,或者我是否应该自己实现一个。

总结:

  • 我应该关注哪种方法?为什么?
  • 我应该使用 OpenCV 来做那种事情还是有其他“更好”的选择?

提前谢谢你。

编辑——关于数据集的更多信息

每个数据集包含 80K 个共享相同产品的图像

  • 概念,例如T 恤、 watch 、鞋子
  • 大小
  • 方向(90%)
  • 背景(95%)

显然,除了产品本身之外,每个数据集中的所有图片看起来几乎相同。为了让事情更清楚一点,让我们只考虑“观察数据集”:

集合中的所有图片看起来几乎完全一样:

enter image description here

(同样,除了 watch 本身)。我想提取表带和表盘。问题是有很多不同的 watch 款式和形状。从我目前所读的内容来看,我认为我需要一个允许弯曲和拉伸(stretch)的模板算法,以便能够匹配不同风格的表带和表盘。

与其创建三个不同的模板(表带的上半部分、表带的下半部分、表盘),不如只创建一个并将其分成 3 个部分。这样,我就有足够的信心检测到每个部分都按照预期的方式相互检测。在表带下部以下将不会检测到表盘。

在我遇到的所有算法/方法中,主动形状|外观模型似乎是最有前途的。不幸的是,我还没有设法找到下降实现,而且我没有足够的信心认为这是最好的方法,所以我自己写了一个。

如果有人能指出我真正应该寻找的东西(算法/启发式/库等),我将不胜感激。如果您再次认为我的描述有点含糊,请随时要求提供更详细的描述。

最佳答案

根据您所说的内容,乍一看会弹出以下内容:

  • 最简单的做法是将图像二值化并使用 OpenCV 或 CvBlob 库执行连通分量。对于具有非复杂背景的简单图像,这通常会产生对象

  • 但是,查看您的样本图像,基于纹理的分割技术可能效果更好 - 表盘、表带和背景在纹理/粗糙度方面有明智的变化,这可能是分离它们的理想方式。

    可以通过本征变换轻松找到部分的粗糙度(在 SO 上做了一些解释,查看那里提供的研究论文的链接),然后可以对本征变换的输出应用均值漂移滤波器转换。这将使区域根据纹理清楚地分开。金字塔 Mean Shift 和通过 SVD 寻找特征值都是在 OpenCV 中实现的,所以除非您可以优化自己的代码,否则就速度和效率而言,使用内置函数(如果存在)会更好(也更容易)。

关于image - 物体检测+分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7221332/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com