AForge和OpenCV之间的区别
c#
image-processing
opencv
6
0

我只是在学习计算机视觉和C#。似乎两个著名的图像处理库是OpenCVAForge 。两者有什么区别?

我正在用C#开发一个基本的图像编辑器,而在研究过程中,我遇到了有关两者的文章。但是我真的不知道为什么我会选择一个。我想最终改进该应用程序,使其包含更多高级功能。

谢谢。

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

好吧,为什么不同时使用两个;)?

我同时使用(字面意思是C#...大声笑)EMGUCV.NET(这是OpenCV C#包装器)和AFORGE.NET:

AFORGE.NET及其“图像处理实验室”对于过滤选项(边缘检测,阈值等)和简化查看功能非常有意义。

OpenCV提供了所有其他内容,例如SIFT / SURF和其他更复杂的图像处理例程。

这就是使用.NET的原因:只需将所需的所有组件整合到一个应用程序中即可:)

收藏
评论

如果您想使用越来越多的高级功能(如您所说的)来改进您的应用程序,那么我会选择OpenCV,但是,成功的一部分取决于C#端口是否正在积极更新这一事实,这不应该太多考虑三个端口的麻烦。我认为EmguCV在更新方面似乎是目前最好的软件之一,但是当我查看它时,它缺少文档(但是您可能会借助一些C ++知识将C ++代码转换为C#)。 AForge对我来说似乎容易得多,这就是我现在正在使用的。 OpenCV还支持可以使用的haarcascade.xml文件,其中包括面部检测。

因此,最终的选择:两者都将非常适合您,OpenCV得到更广泛的使用/支持(尽管大多数用户群是C ++),AForge更容易。这一切都取决于您想要做什么。

收藏
评论

我现在在学校的一个项目中使用OpenCV,并且浏览了AForge的文档,它们的功能似乎有所不同。 AForge有很多过滤器,可能非常适合不同的变换和图像处理。但是在其他领域似乎还缺少很多。我找不到任何令人失望的矩阵运算,因为它在计算机视觉中非常有用。据我从文档中可以看到,我们目前的项目(从图像序列重建3D点云)仅靠AForge是不可能的。

结合使用AForge和良好的线性代数库,您可能会真正有用。

至于OpenCV,它具有丰富的功能集,但编程时有些棘手。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号