Ubantu下第一个OPENCV的C++实列

需要的工具
make、cmake
make、cmake区别与联系:
参考链接
https://www.jianshu.com/p/b3ddb0662c98

OPENCV编译的顺序就是:
原文件--CMakeLists.txt(自己手动编写) —cmake —makefile —make —生成可执行文件
所以用Ubantu编写OPENCV需要多修改一个CMakeLists.txt文件

需要的文件
在这里插入图片描述
第一步
C++代码:

 //该头文件中已经包含了OpenCV中各个模块的头文件
  2 #include<opencv2/opencv.hpp>
  3 
  4 //cv 命名空间,如果希望不要每次都输入 cv:: ,则可使用下面语句:using namespace cv;
  5 using namespace cv;
  6 
  7 /*
  8 int main(int argc, char **argv) 用于运行时,把命令行参数传入主程序。
  9 argc -- 命令行参数总个数,包括可执行程序名。
 10 argv[i] -- 第 i 个参数。
 11 argv[0] -- 可执行程序名。
 12 例如运行: abc.exe
 13 argc 等于 1, argv[0] 是 "abc.exe"
 14 例如运行:rec.exe 4 5.2
 15 argc 等于 3, argv[0] 是 "rec.exe", argv[1] 是 "4", argv[2] 是 "5.2".
 16 */
 17 int main(int argc,char **argv)
 18 {
 19     //Mat是c++中类的概念,不再需要手动分配其内存大小,当不需要使用它的时候也不再需要手动释放它
 20     Mat img=imread("lena.jpg");
 21     //和Python opencv的写法相同,展示图像
 22     imshow("meinv",img);
 23     //waitKey()是OpenCV中的内置函数,语句waitKey(0);表示“暂停程序,等待一个按键输入”!也就是说,当程序执行到waitKey(0);时,程序被暂停运行,只有当你输
    入一个按键时,它才会继续运行。
 24     waitKey(0);
 25 }

第二步
修改CMakeLists.txt(这个文件可以在OPENCV/samples/cpp/example_cmake/文件下拷贝到工程文件中)

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

CMAKE_MINIMUM_REQUIRED(VERSION 2.6)    //这是对CMake工具最低版本要求,这里我们要检查下我们的CMake工具的版本信息,我们可以使用命令“cmake --version”查看
if(COMMAND cmake_policy)            
      cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
 
FIND_PACKAGE( OpenCV REQUIRED )   //这是cmake用来查找opencv包用的,不用改

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

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

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

注意:有一些工程名字不能用,具体不知道什么原因,我用过一个test,不得行,找了很久才跳出坑,报错如下:
在这里插入图片描述
第三步
敲命令

sudo cmake .   //.的意思是执行当前目录,一定要加上sudo,不然可能会报错
sudo make      //同样也一定要加上root权限
./OpenCV_Example   //执行文件

参考链接:https://www.cnblogs.com/woshijpf/p/3840530.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Ubuntu上使用OpenCV的C++库,你需要进行以下步骤: 1. 首先,确保你已经在系统上安装了OpenCV。可以使用以下命令来安装OpenCV库: ``` sudo apt-get install libopencv-dev ``` 2. 确定OpenCV的hpp文件路径。根据引用,OpenCV的hpp文件位于`/usr/local/include/opencv4/opencv2`目录下。你可以使用以下命令创建一个软链接来修改路径: ``` sudo ln -s /usr/local/include/opencv4/opencv2/ /usr/include/opencv2/ ``` 3. 确认OpenCV的pkg-config文件(opencv.pc)中的路径是否正确。根据引用和引用,你需要修改`opencv.pc`文件或者创建一个新的`opencv.pc`文件,确保`includedir`和`libdir`的路径正确指向你的OpenCV安装路径。 4. 创建一个新的C++文件,使用OpenCV库进行编码。在你的C++文件中,你需要包含OpenCV的头文件和库文件,并写入相应的代码来使用OpenCV的功能。 5. 编译你的C++代码。你可以使用以下命令来编译: ``` g++ your_code.cpp -o output `pkg-config --cflags --libs opencv4` ``` 这将会将你的代码编译成一个名为`output`的可执行文件,并链接OpenCV库。 通过以上步骤,你应该能够在Ubuntu上成功使用OpenCV的C++库进行编程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ubuntu OpenCV C++安装](https://blog.csdn.net/weixin_37707670/article/details/126637865)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [Ubuntu20环境下OpenCV的C++环境配置](https://blog.csdn.net/qq_39149619/article/details/131679872)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值