将 OpenCV 构建为项目的一部分 - 调试 (F11) 到 OpenCV 库中

Posted

技术标签:

【中文标题】将 OpenCV 构建为项目的一部分 - 调试 (F11) 到 OpenCV 库中【英文标题】:Building OpenCV as a part of your project -Debug (F11) into OpenCV library 【发布时间】:2011-09-16 15:28:05 【问题描述】:

我使用的是 OpenCV 2.3。

我已经使用 OpenCV 的预构建目录构建了我的项目。 之后我使用 CMake 构建了 openCV 并为我的项目创建了 DLL 和 lib 文件。

问题是我想使用 openCV 并作为我项目的一部分,将命令视为调试 OpenCV 的函数 [在开放 CV 库中]。

一开始我使用的是 OpenCV 的 DLL 和 LIB,因此我无法进入从 OpenCV 获取的函数

我已尝试将我的项目添加到 CMake 创建的解决方案文件中。我在这个阶段添加了一些问题,因为我的项目无法识别解决方案中其他项目的 *.h 文件(即使我已将我的项目设置为解决方案文件的主项目)。

我已经尝试将所有头文件和 cpp 文件包含到一个新项目中 - 但一切看起来都一团糟

我很高兴收到任何解决方案

干杯

【问题讨论】:

【参考方案1】:

您可以调试到外部库。

在项目设置选项卡中的“源代码”字段中查找“Visual Studio 目录”,包括 openCV 源的路径。然后确保每个调试 dll 的 .pdb 文件与 dll 位于同一目录中。

OpenCV 大部分已经成熟,但文档并不完美,您经常需要查看源代码以找出实际存在的功能以及它们做出的假设

【讨论】:

【参考方案2】:

不完全是您问题的答案,但我建议继续使用 OpenCV 作为外部库(dlllib)。

如果你认为你需要在 OpenCV 中调试代码,那么 99% 是你找错地方了。 OpenCV 是一个成熟的库,虽然肯定仍然存在错误,但它们现在非常罕见。错误的原因很可能是由于使用不正确。检查文档然后开始尝试破译别人的代码会更有效率。

【讨论】:

我不想调试 OpenCV 库和寻找错误,我很确定 OpenCV 是成熟的库,我想在人脸检测算法上关注 OpenCV 实现并观察实现算法。

以上是关于将 OpenCV 构建为项目的一部分 - 调试 (F11) 到 OpenCV 库中的主要内容,如果未能解决你的问题,请参考以下文章

使用多线程调试 DLL (/MDd) C 运行时库构建静态 Opencv 库

为引用的子项目选择构建配置

跨dll调试

无法将 opencv2-2 框架添加到 iOS 项目

在win和android上同时进行OpenCV程序设计

使用vs2019编译和调试开源项目opencv3.4.0版本+opencv3.4.0源码网盘链接