C# 图像识别

Posted

技术标签:

【中文标题】C# 图像识别【英文标题】:C# image recognition 【发布时间】:2013-10-28 08:56:26 【问题描述】:

我目前正在寻找一个 库。

我想做什么: 我想编写一个函数来扫描图像并返回如果另一个图像是其中的一部分。或者至少在两个物体的角度不同的情况下看起来很熟悉。

一个可能的库的链接和一个简短的代码示例会很棒!

提前谢谢你!

【问题讨论】:

和 Google Goggles 应用程序一样吗?​​ 是的,类似的。我还没有使用过这个应用程序,但我认为我们的意思是一样的。 【参考方案1】:

由于您没有提到您只是在寻找免费图书馆,这里有一些付费图书馆:

    MVTech HALCON Cognex VisionPro

两者都有演示版本和捆绑到 SDK 的非常好的 .Net 包装器,我认为它们都具有您需要的功能。在 Halcon 中,您可能想尝试不同的匹配算法(基于灰度值、基于描述符等),而在 VisionPro PatMax 或 PatQuick 中可能会满足您的需求。但显然你必须尝试哪一个最适合你的具体问题。

【讨论】:

自从我提出这个问题后,我也查看了这两个库,实际上 Cognex 将是完美的,但后来我决定使用现在运行良好的免费 openCV 库。但正如您所说:这两个库(Cognex 和 Halcon)都非常好,如果钱不是问题,我也会推荐它们。 National Instruments 也有一个不错的软件包。 ni.com/white-paper/6712/en 我经常使用康耐视。它为在 .NET 等托管环境中工作提供了更多支持,并且对开发人员来说更加用户友好。 Halcon 有一个更好的 3D 工具集,而且似乎也能更好地处理非常奇怪/动态的模式匹配(比如一篮蔬菜)。 我知道你不能给出确切的数字,但是这些产品的价格区域是多少?更像是每年高达 5000 美元,每个申请大约 100 美元,或者更多像大约 1 万美元或更多? Halcon 有好的 .net 包装器吗?我们必须对“好”有不同的定义【参考方案2】:

EmguCV (http://www.emgu.com/wiki/index.php/Main_Page) 是一个很好的 .NET OpenCV 包装器。它捆绑了一堆示例项目。运行示例,您将了解可以做什么以及如何做。

【讨论】:

【参考方案3】:

Accord.NET 库实际上并不是一个图像识别工具集,但它为您的目标提供了基础。它包含构建图像识别系统所需的许多图像类。 Accord.NET is LGPL licensed,除了它的某些部分(例如它的 FFmpeg 包装器项目)。

【讨论】:

以上是关于C# 图像识别的主要内容,如果未能解决你的问题,请参考以下文章

我需要使用 opencvsharp 识别图像中的文本

使用 MNIST 图像识别数据集

使用 C# 进行图像分类

C#获取摄像头拍照显示图像

C#获取摄像头拍照显示图像

初步了解C#版图像处理库emgucv