如何在 Qt5 中使用 OpenCV

Posted

技术标签:

【中文标题】如何在 Qt5 中使用 OpenCV【英文标题】:How to use OpenCV with Qt5 【发布时间】:2013-02-28 02:52:11 【问题描述】:

我正在将我的代码从 Qt4 迁移到 Qt5,它使用 OpenCV 从网络摄像头拍摄照片并将其显示在 QLabel 上,在 Qt4 上一切正常,但在 Qt5 中我遇到了麻烦。 Qt 和 OpenCV 所需的 libstdc++-6.dll 是不同的(OpenCV 使用的有 957 KB(我通过在 SourceForge 页面上下载 MinGW 获得),Qt5 安装程序附带的 Qt5 所需的有874 KB),当我尝试使用一个时出现此错误:“过程入口点 __gxx_personality_v0 无法位于动态链接库 libstdc++-6.dll 中”,当我尝试使用另一个 dll 时出现此错误:“无法在动态链接库 libstdc++-6.dll 中找到过程入口点 __gxx_personality_sj0”。我可以做些什么来解决这个问题并将 OpenCV 与 Qt5 结合使用?

【问题讨论】:

我认为从源代码编译opencv会很容易,比编译qt5容易得多 【参考方案1】:

我找到了一个简单的解决方案:使用 vc11 预编译库(不需要 libstdc++-6.dll,从而防止与 Qt5 所需的 libstdc++-6.dll 冲突)而不是使用 OpenCV 的 MinGW 预编译库。

【讨论】:

以上是关于如何在 Qt5 中使用 OpenCV的主要内容,如果未能解决你的问题,请参考以下文章

使用QT5绘制OpenCV3的Mat图像

使用QT5绘制OpenCV3的Mat图像

Qt5 与 OpenCV2.4.10

使用 OpenCV3.4.5 在 Qt5 中与 Cuda 相关的编译错误

如何将 QT 5.2.0 (win7 x86) 与 OpenCV2.4.6 和 Android 集成

Qt with OpenCV:程序意外完成