使用 Eclipse 从 OpenCV-3.1 读取时出错

Posted

技术标签:

【中文标题】使用 Eclipse 从 OpenCV-3.1 读取时出错【英文标题】:Error at imread from OpenCV-3.1 using Eclipse 【发布时间】:2016-01-18 09:41:27 【问题描述】:

我将 OpenCV 用于我的一些图像处理项目。 通常我使用 Visual Studio (VS) 进行编程。我认为这个错误主要来自使用 VS 时的发布和调试库设置。 现在我使用 Eclipse 作为编程编辑器。 我在读取时出现“undefined reference to symbol”错误。 整个完整的错误如下。

./src/HOGCPU.o: undefined reference to symbol '_ZN2cv6imreadERKNS_6StringEi'    Pedestrian_Detection            C/C++ Problem

我将所有头文件都包含为

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

所有库和头文件都在设置中正确链接。 库链接器中包含的库是

opencv_imgproc
opencv_highgui
opencv_ml
opencv_video
opencv_features2d
opencv_calib3d
opencv_objdetect
opencv_core
opencv_contrib
opencv_legacy
opencv_flann

为什么会出现这个错误?

【问题讨论】:

【参考方案1】:

尝试链接 opencv_imgcodecs(因为 imread 现在已经移到那里)。

旁注: 您是否缺少源文件中的 objdetect-include ?

#include "opencv2/objdetect.hpp" 

【讨论】:

以上是关于使用 Eclipse 从 OpenCV-3.1 读取时出错的主要内容,如果未能解决你的问题,请参考以下文章

namedWindow() 导致 opencv 2.3.1 崩溃? (在 XP、C++ 上的 Eclipse+MinGW)

OpenCV 3.1 drawContours '(-215) npoints > 0'

VC 2008 Express下安装OpenCV2.3.1

OpenCV 3.1 cv2.stereoCalibrate TypeError:需要一个整数

我无法使用 VS2010 运行 openCV2.3.1,因为未找到 opencv_core231d.dll

OpenCV 3.1 警告和使用 Umat 时崩溃