【问题标题】:Simple but reasonably accurate algorithm to determine if tag / keyword is related to an image确定标签/关键字是否与图像相关的简单但相当准确的算法
【发布时间】:2015-05-14 17:42:00
【问题描述】:

我有一个关于自动图像关键字的难题要解决。您可以假设我有一个数据库,其中包含 100000+ 个用于训练的关键字低质量 jpeg 图像(低质量 = 低分辨率约 300x300px + 低压缩比)。每张图片有大约 40 个最准确的关键词(数据可能包含轻微的“噪音”)。我还可以提取一些关于关键字相关性的数据。

给定一张彩色图片和一个关键词,我想确定关键词与这张图片相关的概率。

我需要一个创造性的、易于理解的解决方案,我可以在大约一个月或更短的时间内自行实施(我打算使用 python)。到目前为止,我发现的是机器学习、神经网络和遗传算法。我还在考虑为每个关键字生成某种签名,然后我可以用它来检查尚未看到的图像。

如果可行,我们也会赞赏疯狂/新颖的想法。我也愿意使用其他 python 库。

我当前的算法极其复杂且计算量很大。它建议关键字而不是计算概率,并且 50% 的建议关键字不准确。

【问题讨论】:

  • 您需要一种能够语义解析图像的算法——或多或少是计算机视觉的圣杯。你能限制一下这个领域吗?有问题的照片是否有一个或几个“主题”?
  • 照片可以是任何东西。现在它们大多是抽象图像。从云到复杂的图案,通常没有人或文字。

标签: image algorithm tags keyword training-data


【解决方案1】:

鉴于应用程序的硬性要求,只能提出粗略和无脑的解决方案。

对于每个图像,使用某种分割方法并保留例如四个最大的片段。将它们中的一两个区分为背景(延伸到图像边界的那些),将其他区分为前景或感兴趣的项目。

根据主要颜色(使用基于颜色原色的非常粗略的分类)和形状(相对于图像的大小、圆度、孔数、主要方向和其他一些)来表征片段。

然后,您可以为每个关键字构建一个分类器,以确定给定图像是否有/没有这个关键字。训练后,分类器会告诉您图像是否有/没有关键字。如果你使用模糊分类,你会得到一个“概率”。

【讨论】:

  • 这实际上还不错,而且听起来可行,尤其是如果我能找到一些可以使用的库的话。将图像分解为不同的区域,为每个区域分配多个指标,并根据这些指标中的模式以某种方式确定类别。你能推荐一个好的分类算法吗?
  • 听起来像我需要的,而且似乎有据可查。谢谢,我会接受你的回答:)
猜你喜欢
  • 2012-02-11
  • 1970-01-01
  • 1970-01-01
  • 2017-06-14
  • 2013-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-09
相关资源
最近更新 更多