在eclipse中使用OpenCV

Min*_*ons 5 c++ eclipse opencv

我正试图在eclipse Luna中设置opencv.我写了一个示例应用程序如下:

#include <cv.h>
#include <highgui.h>
#include<iostream>

using namespace cv;

int main( int argc, char** argv )
{
  Mat image;
  image = imread( argv[1], 1 );

  if( argc != 2 || !image.data )
    {
      printf( "No image data \n" );
      return -1;
    }

  namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
  imshow( "Display Image", image );

  waitKey(0);

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

在我的项目属性我已经包含/usr/local/include/opencv(Project->Properties->C/C++ Build->Settings->Tool Settings -> GCC C++ Compiler -> Includes -> Include Paths. )

/usr/local/lib(Project->Properties->C/C++ Build->Settings->Tool Settings -> GCC C++ Linker -> Libraries -> Library Search Path. )

我输出的命令pkg-config --cflags opencv-I/usr/local/include/opencv -I/usr/local/include

而输出pkg-config --libs opencv

 -L/usr/local/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_viz -lopencv_adas -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_datasets -lopencv_face -lopencv_latentsvm -lopencv_objdetect -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_ml -lopencv_flann -lopencv_xobjdetect -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core -lopencv_hal
Run Code Online (Sandbox Code Playgroud)

当我尝试构建我的项目时,我遇到以下错误.

‘imread’ was not declared in this scope 
‘imshow’ was not declared in this scope 
‘namedWindow’ was not declared in this scope    
‘waitKey’ was not declared in this scope    
Function 'imread' could not be resolved 
Function 'imshow' could not be resolved 
Function 'namedWindow' could not be resolved
Function 'waitKey' could not be resolved    
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我解决问题并解释我缺少的是什么.

Ber*_*iel 8

尝试改变:

#include <cv.h>
#include <highgui.h>
Run Code Online (Sandbox Code Playgroud)

对此:

#include <opencv2/opencv.hpp>
Run Code Online (Sandbox Code Playgroud)

您还需要链接库(GCC C++链接器»库):

opencv_core
opencv_imgcodecs
opencv_highgui
Run Code Online (Sandbox Code Playgroud)

您没有说明您使用的是哪个版本,但是-lopencv_imgcodecs您可能正在使用OpenCV 3.如果您愿意,请按照此处的说明进行操作.也CV_WINDOW_AUTOSIZE改为WINDOW_AUTOSIZE.