我熟悉旧的 opencv 1,并长期使用它的 C 函数。但是,我在切换到 opencv 2.3 的 C++ API 时遇到了问题
我下载了最新的稳定版 (2.3.1),但其中的示例要么使用旧的 C 函数,要么包括 "opencv2/highgui/highgui.hpp"
。
问题是,我的 include/opencv2
目录中的唯一文件是 opencv.hpp
。如果我包括它,那么有很多路径是不正确的。
opencv.hpp
里面有这样的东西:
#include "opencv2/core/core_c.h"
#include "opencv2/core/core.hpp"
#include "opencv2/flann/miniflann.hpp"
#include "opencv2/imgproc/imgproc_c.h"
等等
但是,在我的 opencv 目录中,包含文件位于以下文件夹中:
modules/core/include/opencv2/core
modules/flann/include/opencv2/flann
modules/imgproc/include/opencv2/imgproc
等
那么,如果我必须为每个 header 手动指定包含路径,那 opencv.hpp
有什么意义呢?在 opencv 网站 (http://opencv.willowgarage.com) 上,教程要么已经完全过时,要么根本不解决这个问题并直接跳转到算法。
编辑:如果重要的话,我正在使用 Qt。我从 http://code.opencv.org/svn/opencv/branches/2.3/ 下载源代码并成功构建。
Edit2: 是的,这很重要。缺少一个 Qt 头文件,因此 opencv 的构建过程跳过了一些库。
最佳答案
我使用 opencv 2.3.1 的时间不长,但到目前为止,使用 opencv
中的 include 已经足够了
#include <opencv/cv.h>
#include <opencv/highgui.h>
关于c++ - 正确包括在 opencv 2.3 中使用新的 C++ API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10054616/