微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > 使用cmake编译opencv工程

使用cmake编译opencv工程

时间:10-02 整理:3721RD 点击:
这边帖子将介绍如何自己建立一个opencv工程
在opencv的文件目录下新建一个文件,存放工程代码

  1. sudo mkdir test

复制代码

我创建了一个test文件当做测试。
进入opencv文件目录的sample/c/example_cmake当中将CMakeList.txt复制在test的目录下
再随便复制一个图片到test目录下。cd 进入test
使用vi创建一个cpp文件

  1. sudo vi test.cpp

复制代码

写一个代码,比较简单,就是打开一个图片

  1. #include <opencv2/opencv.hpp>  
  2. using namespace std;  
  3.   
  4. #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")  
  5.   
  6. int main()  
  7. {  
  8.     const char *pstrImageName = "lena.jpg";  
  9.     const char *pstrWindowsTitle = "Test";  
  10.   
  11.     //从文件中读取图像  
  12.     IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);  
  13.   
  14.     //创建窗口  
  15.     cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);  
  16.   
  17.     //在指定窗口中显示图像  
  18.     cvShowImage(pstrWindowsTitle, pImage);  
  19.   
  20.     //等待按键事件  
  21.     cvWaitKey();  
  22.   
  23.     cvDestroyWindow(pstrWindowsTitle);  
  24.     cvReleaseImage(&pImage);  
  25.     return 0;  
  26. }  

复制代码

保存退出,然后打开CMakeList.txt
会看到如下代码,修改文件名即可。

  1. PROJECT(OpenCV_Example)           //这是建立一个工程项目(类似于我们VS中建立C++项目一样),括号里面时工程名,工程名我们可以任意给,最后程序编译出来的可执行文件就是这个名字

  2. CMAKE_MINIMUM_REQUIRED(VERSION 2.6)    //这是对CMake工具最低版本要求,这里我们要检查下我们的CMake工具的版本信息,我们可以使用命令“cmake --version”查看
  3. if(COMMAND cmake_policy)            
  4.       cmake_policy(SET CMP0003 NEW)
  5. endif(COMMAND cmake_policy)

  6. FIND_PACKAGE( OpenCV REQUIRED )   //这是cmake用来查找opencv包用的,不用改

  7. # Declare the target (an executable)
  8. ADD_EXECUTABLE(OpenCV_Example  test.cpp)      //这里括号里面的两个参数分别是工程项目名和我们要编译文件名的意思,记住中间一空格键隔开

  9. TARGET_LINK_LIBRARIES(OpenCV_Example ${OpenCV_LIBS})  //这是我们链接到OpenCV库的环节,我们只要更改前面第一个参数位我们的工程项目名即可

  10. #MESSAGE(STATUS "OpenCV_LIBS: ${OpenCV_LIBS}")     //好了,就修改这么点东西,保存,关闭。

复制代码

修改之后就可以输入命令

  1. sudo cmake .

复制代码

接着编译

  1. sudo make

复制代码

程序就会开始编译,编译完之后就会出现opencv_example执行文件

  1. ./opencv-example

复制代码

执行就会看到图片出现


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top