对象识别 vs 检测 vs 分类?有啥不同?

Posted

技术标签:

【中文标题】对象识别 vs 检测 vs 分类?有啥不同?【英文标题】:Object recognition vs detection vs classification? What's the difference?对象识别 vs 检测 vs 分类?有什么不同? 【发布时间】:2017-11-23 13:02:13 【问题描述】:

我不知道在哪里可以问这个问题,如果不是这样,请告诉我。

我正在开发一个应用程序,它给定一个包含绘画作为输入的输入图像,它能够告诉您绘画的标题。一个类似的情况是:给定一个包含建筑物的输入图像,返回的结果是建筑物的名称。

这是一个什么样的应用程序?在第一次影响时,我会说“图像分类”之类的东西。我不是计算机视觉方面的专家,但我一直认为“图像分类”类似于“给定一张图像,告诉我这张图像中包含什么”。

另一方面,对象检测定义似乎更多地与识别类的对象(例如建筑物)而不是类本身的实例(例如长城)相关:

对象检测是与计算机视觉相关的计算机技术 和处理检测语义实例的图像处理 特定类别的对象(例如人、建筑物或汽车) 数字图像和视频。

关于物体识别:

物体识别是感知物体物理的能力 属性(例如形状、颜色和纹理)并应用语义 它的属性(例如将对象识别为苹果)。

我真的不知道如何对我描述的应用程序进行分类(真是个笑话……)。你怎么看?

【问题讨论】:

【参考方案1】:

对象检测:检测图像中的对象。它不会提供有关对象是什么的信息。也就是说物体检测的输出是包含物体的边界框的x,y,width,height。

对象分类:- 告诉对象是什么,例如猫、狗车等。换句话说,在分类或识别中输出将是一个类标签。

我正在开发一个应用程序,它给定一个包含绘画作为输入的输入图像,它能够告诉您绘画的标题。一个类似的情况是:给定一个包含建筑物的输入图像,返回的结果是建筑物的名称。

对于您的问题,更适合您的问题是“草图分类”

【讨论】:

【参考方案2】:

简单地解释一下:你要去森林,天很黑。突然间,你看到了与背景不同的东西(纯黑)。这称为检测。

1) 出现了与您的背景不同的东西。所以您检测到了。

2) 现在靠近一点,您发现它是一种动物。啊..现在你已经分类/认可了。它也可能是人类。

3) 现在它越来越近了,现在你看到它是一只鹿。所以,现在你确定了它。

所以顺序是“检测到 -> 识别/分类 -> 识别”。

“识别是最后一个外壳,你可以用你的身份证记住这个,上面有你的脸(已识别),并归类为(人类)。

【讨论】:

在我看来,这些解释真的很糟糕。他们澄清了大约 0% 的任何需要澄清的事情。事实上,物体检测目前(在许多深度学习论文中)被用作物体定位+物体分类的同义词。 @nbro 没错。此外,对象识别现在被认为是 CV 中的一门学科,因此更广泛的术语包括提取图像中相关特征和模式以实现预期目标的不同技术/算法:分类、定位、匹配、分割等。

以上是关于对象识别 vs 检测 vs 分类?有啥不同?的主要内容,如果未能解决你的问题,请参考以下文章

opencv加载人脸分类器出错

文献阅读笔记图像识别与分类

pencv_contrib里的Text(自然场景图像中的文本检测与识别)

分类和模式识别有啥区别?

深度学习 vs 机器学习 vs 模式识别

如何让 VS Code 智能感知识别附加到现有类的新方法