如何检测一张照片是否是海报(非现实照片)?

我从音乐家的网站上获取了一些.jpeg格式的图片。这些图片包括即将举行的演出的海报和乐队的真实生活照片(乐队的照片)。

这是一个海报的示例:

enter image description here

我对任何现代技术或算法并不熟悉(如果它们存在的话?),但我认为我可能会寻找以下特征:

  • 图片中的文字通常是海报的明显标志。
  • 或许现实照片(即非海报)遵循不同的颜色分布?
  • 海报可能不太可能包含面孔——但这是一个相当薄弱的断言。

是否有任何分类算法可以检测一张图片是否是海报?


回答:

你的问题非常宽泛。海报照片并不是明确定义的对象。什么是海报?在现实生活中,海报通常是照片,或者照片的组合,或者稍微调整过的照片。

如果我们缩小到你问题第一部分提到的——乐队照片与即将举行的演出海报,那么答案是——可能可以(尽管我从未见过有人这样做)。由于你需要一个二元分类器,我建议采用一些机器学习模型(朴素贝叶斯应该足够,但如果你想使用更复杂的特征,可以尝试支持向量机、极限学习机,或者一些随机森林/决策树),并将其应用于包含以下内容的向量编码数据:

二元特征:

  • “图片中有文字吗?”——你将需要外部的文本检测算法
  • “图片中有数字吗”——活动应该有日期
  • “图片中有日期吗”
  • “图片中有面孔吗”

使用朴素贝叶斯将构建条件概率,如P(海报|有文字)P(海报|有数字)等,这不仅会给你一个分类器,还会提供你的特征的重要性洞察(接近0.5的概率表明特定特征无用)。

我不会使用直方图等,因为可能的照片范围、摄影风格等非常广泛,除非你愿意创建一个非常大的训练集。

如果这些还不够,你可以将这些特征改为更复杂的特征,并使用比朴素贝叶斯更强大的分类器。

复杂特征:

  • 图片中有多少个文字?
  • 图片中有多少个数字?
  • 图片中有多少个日期?
  • 图片中有多少个面孔?
  • 图片直方图

最后一个选项,如果一切都失败了,你可以尝试在原始图片上训练一些现代模型,如深度信念网络。这将需要强大的计算能力,但结果对科学界也将非常有价值。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注