前言
很多人经常会问我是否有在Ubuntu系统化下开发OpenCV C++应用的教程,其实我一直没有,然后我有几块开发板都是基于Linux的,有Jetson系列的开发板,所以我以前写过一篇文章如何在Jetson开发板上编译OpenCV源码与编译运行OpenCV C++应用程序。我现在还有一块Alxboard开发板是英特尔家族的,安装的是操作系统是Ubuntu20的系统,本身没有自带OpenCV C++支持,所以就用这个开发板给大家演示一下如何在乌班图系统下编译OpenCV4.8源码与如何编译执行OpenCV C++应用。
OpenCV4.8源码编译与安装
其实很简单,只要三步即可搞定,第一步是下载指定版本的源码包;第二步是安装OpenCV4.8编译需要的编译器与第三方库支持;第三步就是编译OpenCV源码包生成安装文件并安装。
01下载OpenCV4.8源码包
在Ubuntu系统化下打开终端命令行窗口,执行下面的命令行即可
wget -o opencv4.8.zip https://github.com/opencv/opencv/archive/refs/tags/4.8.0.zip
下载完成以后
unzip -d opencv4.8 opencv4.8.zip
02安装第三方库支持
直接执行下面的命令行即可
sudo apt install -y g++ cmake make git libgtk2.0-dev pkg-config
03创建Build目录执行编译与安装
首先运行
cd opencv4.8 mkdir -p build && cd build
执行完成以后直接运行下面的命令行:
cmake ../opencv
在执行该命令行生成安装文件
make -j4
使用下面的命令行完成安装
sudo make install
C++代码测试
运行一个简单的OpenCV图像显示的程序验证OpenCV4.8 C++开发环境的正确性。重新打开一个终端命令行窗口,运行下面的命令行:
mkdir opencv480_test nano CMakeLists.txt
然后把下面的脚本粘贴进去
cmake_minimum_required(VERSION 2.8) project( OpenCV480_Test ) find_package( OpenCV REQUIRED ) include_directories( ${OpenCV_INCLUDE_DIRS} ) add_executable( OpenCV480_Test helloworld.cpp ) target_link_libraries( OpenCV480_Test ${OpenCV_LIBS} )按Ctrl+X退出,选择y保存 然后继续运行
nano helloworld.cpp把下面的代码粘贴进去,保存以后退出。
#include #include using namespace cv; int main(int argc, char** argv) { Mat image = imread("lena.jpg"); if (image.empty()) { printf("No image data "); return -1; } namedWindow("OpenCV480_Test", WINDOW_AUTOSIZE); imshow("OpenCV480_Test", image); waitKey(0); return 0; }执行下面的命令
cmake .
成功以后执行
make
然后执行
./ OpenCV480_Test显示如下:
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !