在Eclipse中使用OpenCV

s2j5cfk0  于 9个月前  发布在  Eclipse
关注(0)|答案(1)|浏览(71)

在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;
}

在我的项目属性中,我已将/usr/local/include/opencv包含在(Project->Properties->C/C++ Build->Settings->Tool Settings -> GCC C++ Compiler -> Includes -> Include Paths. )
(Project->Properties->C/C++ Build->Settings->Tool Settings -> GCC C++ Linker -> Libraries -> Library Search Path. )中的/usr/local/lib
命令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

当我尝试构建我的项目时,我得到了以下错误。

‘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

谁能帮我解决这个问题,并解释我错过了什么。

2o7dmzc5

2o7dmzc51#

尝试改变:

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

对此:

#include <opencv2/opencv.hpp>

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

opencv_core
opencv_imgcodecs
opencv_highgui

你没有说你使用的是哪个版本,但是你有-lopencv_imgcodecs,你可能使用的是OpenCV 3。如果你愿意,就照我说的做。也从CV_WINDOW_AUTOSIZE更改为WINDOW_AUTOSIZE

相关问题