OpenCV是一个开源的计算机视觉库,它是一种跨平台的计算机视觉和机器学习软件开发库。OpenCV支持C++、Python、Java等多种编程语言的应用,可以使用它来实现许多功能,如目标检测、人脸识别、图像处理等。如果您想要在Linux下编译OpenCV程序,本文将一步步教您安装配置。
安装OpenCV依赖库
在安装OpenCV之前,我们需要安装一些依赖库。这些依赖库将帮助您编译和运行OpenCV。在Ubuntu或Debian发行版上,您可以使用以下命令安装这些依赖库:
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
安装OpenCV
现在,我们来安装OpenCV。您可以从OpenCV官方网站下载最新版本的源代码。下载链接:https://opencv.org/releases/
将下载的源代码解压缩到您的计算机中,并在解压缩后的目录中创建一个build目录。
接下来,我们将使用cmake来构建OpenCV。
打开终端,输入以下命令:
cd opencv-
mkdir build
cd build
cmake ..
此命令将进入解压缩后的OpenCV目录,创建一个build目录,并进入该目录。 Cmake会根据您的电脑的环境变量为您配置OpenCV的安装。然后,Cmake将告诉您OpenCV所需的库是否已经满足要求。如果一切正常,您将在终端中看到以下结果:
— Configuring done
— Generating done
— Build files have been written to: /path/to/opencv/build
现在,我们可以使用下面的命令编译和安装OpenCV:
make -j $(nproc)
sudo make install
该命令将使用make和已安装的nproc命令来为您的计算机上的所有内核构建OpenCV,以利用充分利用计算机的性能。然后,这个命令将把OpenCV安装到您的计算机上。
配置OpenCV环境变量
接下来,您需要将OpenCV的路径添加到系统路径中。这可以通过编辑/etc/environment文件来完成。打开终端,输入以下命令:
sudo nano /etc/environment
在打开的文件中,添加以下行:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
LD_LIBRARY_PATH=/usr/local/lib
您可以将以上两行添加至文件底部。然后,按Ctrl + X,然后按Y和Enter保存更改。
现在,您需要更新您的环境变量,以使更改生效。打开终端,输入以下命令:
source /etc/environment
现在,您可以通过运行下面的命令检查OpenCV是否正确安装和配置:
pkg-config –modversion opencv
如果OpenCV正确安装和配置,您会在终端中看到安装的OpenCV版本。
测试OpenCV
我们测试一下OpenCV的安装。我们将编写一个简单的OpenCV程序来读取一张图片,并在图片上使用cv::Canny函数边缘检测。
在终端中,输入以下命令创建一个简单的OpenCV C++程序cpp文件:
nano test.cpp
将以下代码复制并粘贴到test.cpp文件中:
#include
#include
using namespace cv;
using namespace std;
int mn(int argc, char** argv) {
if(argc != 2) {
cout ”
return -1;
}
Mat img = imread(argv[1], IMREAD_GRAYSCALE);
if(img.empty()) {
cout
return -1;
}
Mat edges;
Canny(img, edges, 50, 150);
namedWindow(“Display Image”, WINDOW_AUTOSIZE);
imshow(“Display Image”, edges);
wtKey(0);
return 0;
}
按Ctrl + X,然后按Y和Enter保存更改。
现在,我们将编译这个程序:
g++ test.cpp -o test `pkg-config –cflags –libs opencv4`
该命令将使用g++编译器编译test.cpp文件,并使用pkg-config命令添加必需的OpenCV库。
现在,我们来使用./test命令运行编译后的程序。您将看到一张图片,在图像上使用了边缘检测算法。
结论
相关问题拓展阅读:
- 请教高手,linux虚拟机下编译opencv出错
请教高手,linux虚拟机下编译opencv出错
undefined reference to `gtk_widget_is_focus` 这个变量没有定义,要码饥么是缺少头迟兆返文件,要么是你写错了(手误猜凳),用grep命令查找一下。如果是你自定义的变量,你就要去增加它的定义! 第二个错误也是这个错误导致的,解决了之一个就OK了。
关于linux下编译opencv程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
香港服务器首选树叶云,2H2G首月10元开通。
树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/170973.html<