机器学习:图像分类:CNN:如何识别红车?

Posted

技术标签:

【中文标题】机器学习:图像分类:CNN:如何识别红车?【英文标题】:Machine Learning: Image Classification: CNN: How to identify Just Red Cars? 【发布时间】:2017-04-30 12:23:04 【问题描述】:

我正在尝试想出一种方法来分类给定图像是否包含红色汽车。

分类器的可能结果应该是:

    图像包含一个 CAR,它是红色的。 (所需案例) 图像包含 CAR 但不是 RED 或图像根本不包含任何汽车的所有其他图像。

我知道如何实现卷积神经网络,它可以对图像是否包含 CAR 进行分类。

但是我在如何为此实现细粒度的图像分类时遇到了麻烦,其中分类器应该只识别红色汽车并忽略图像中可能包含汽车或没有汽车的所有其他图像。

我阅读了以下论文,但由于我的用例比找到论文中提出的相似之处要有限得多,我试图看看是否有一种简单的方法来实现这一点。

Fast Training of Triplet-based Deep Binary Embedding Networks

Learning Fine-grained Image Similarity with Deep Ranking

感谢您的帮助。

【问题讨论】:

【参考方案1】:

只需将其视为具有两个类别的分类问题:“红色汽车”-“没有红色汽车”。以这种方式标记训练数据的每个实例。无需先训练“汽车”分类器。

我知道如何实现卷积神经网络,它可以对图像是否包含 CAR 进行分类。

很好。然后这应该在几秒钟内完成(+ 标记时间)。

我阅读了以下论文,但由于我的用例比找到论文中提出的相似之处要有限得多,我试图看看是否有一种简单的方法来实现这一点。

基于 Triplet 的深度二元嵌入网络的快速训练

通过深度排名学习细粒度图像相似度

是的,只是将其视为如上所述的分类问题。如果您需要入门,请查看Tensorflow Cifar10 tutorial。

【讨论】:

谢谢马丁。我想知道我需要多少图像,因为与包含 RED CAR 的图像数量相比,不包含 RED CAR 的可能图像数量将是巨大的。如果我训练 10k RED CAR 图像和 30k 非 RED CAR 图像,包含所有颜色的汽车和包含 NO CARS 的图像,是否足以获得良好的准确性?当然,我确实计划自己运行测试来解决这个问题,但是,任何关于训练图像数量的想法都会很棒。谢谢。 如果没有更多信息,不可能提前说出来。我,如果您有 224 像素 x 224 像素的图像,其中仅包含汽车(如果有汽车)并且如果您的数据包含其他红色对象,那么当您使用非常简单的拓扑结构可以获得 >90% 的准确率。 问这个问题有点像问别人明天布克斯特胡德的天气如何:没有气象服务就无法判断,如果你有气象服务就很容易了。

以上是关于机器学习:图像分类:CNN:如何识别红车?的主要内容,如果未能解决你的问题,请参考以下文章

机器学习——图像分类

[Python图像识别] 五十.Keras构建AlexNet和CNN实现自定义数据集分类详解

深度学习1-理解卷积神经网络(CNN)

基于Tensorflow + Opencv 实现CNN自定义图像分类

对卷积神经网络(CNN)的理解——深度学习

如何使用 bagging 集成 SVM 和 CNN 分类器?