C++ 本机 Vs C++/Cli 性能(用于 OpenCV 项目)
Posted
技术标签:
【中文标题】C++ 本机 Vs C++/Cli 性能(用于 OpenCV 项目)【英文标题】:C++ native Vs C++/Cli Performance ( for OpenCV project) 【发布时间】:2010-09-11 18:02:13 【问题描述】:我们正在开发一个使用 OpenCV 库来跟踪手势和动作感应的项目。我很困惑是选择原生 c++ 程序还是使用 .NET (VC++) 中提供的 C++/CLI。
性能至关重要,需要大量的图像处理。由于我们计划使用 OpenCV 广泛的方法,并且该项目需要与操作系统频繁通信。
另外,我在哪里可以找到用于加速 OpenCV 应用程序的 IPP 库? '.NET 框架'不会阻碍项目的性能吗?
另外请向我们推荐合适的工作环境。我已经看到许多 OpenCV 项目是在 VC++ 中完成的。
我们应该选择 VC++(因为这个选项给了我一个优势来构建一个合适的和吸引人的 gui)?
救命!
【问题讨论】:
您打算使用 .NET 的哪些部分? 最近在这里提出了非常相似的问题:***.com/questions/3691198/… 和这里:***.com/questions/3652327/… 【参考方案1】:如果您绝对必须使用 .NET 功能,请仅使用 C++/CLI 路线。尽管 c++/cli 是一种托管语言,但您的应用程序的性能应该没有任何差异。
英特尔有一个很棒的 IPP 库可供您使用。
如果您已经熟悉 VC++,请继续使用它。
【讨论】:
【参考方案2】:大多数性能问题是由于框架使用不当和代码编写不当引起的。本机 C++ 和托管 C++ (CLI) 都适合您。我更喜欢本机 C++,以便更轻松地与 OpenCV 集成(我的个人意见)。就环境而言,我认为您不会找到比 Visual Studio 更好的东西。
【讨论】:
以上是关于C++ 本机 Vs C++/Cli 性能(用于 OpenCV 项目)的主要内容,如果未能解决你的问题,请参考以下文章
C++/CLI + C++ Native 会提高性能吗? [关闭]
(C++/CLI) 如何在 C++ CLI 中获取从本机代码到托管代码的回调?
我可以使用 C++/CLI (.NET Winforms/WPF) 为用本机 C 和 C++ 编写的应用程序提供 GUI