在Linux上安装、配置和测试使用OpenCv

大家可以参考官方安装教程:OpenCV: Installation in Linux

版本:以Ubuntu 20.04和OpenCv 3.4.10 为例

目录

一、安装OpenCv

1.安装OpenCv依赖包

2.下载并获取Source资源包

3.开始安装

二、配置编译环境

三、测试、使用OpenCv显示照片

1.test

 2.显示照片


一、安装OpenCv

1.安装OpenCv依赖包

打开终端,依次执行以下三条命令安装依赖包;实际在安装过程中,系统会跳过那些已经安装过的依赖

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

依赖包包括在编译的时候要用到一些软件,像gcc,cmake;还有一些是下载opencv需要的工具,像Git;还有一些编译opencv所必需的,像ffmpeg 或libav ;还有一些是可选的包等

2.下载并获取Source资源包

直接去官方下载地址下载:Releases - OpenCV

找到自己对应的版本下载,下载后解压到/home目录下,解压后的文件名为opencv-3.4.10

3.开始安装

用终端命令在刚刚解压后的文件夹opencv-3.4.10下创建一个新文件夹build

进入build文件夹

cd ~/opencv-3.3.1
mkdir build	 # 创建工程编译所需文件夹
cd build

如果终端命令不行就手动创建,然后进入build文件夹里再打开终端

执行下面一条命令进行配置

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
#注意,后面的两个点千万不能省,代表了上级目录

 如果不行,去掉 -D后面的空格再尝试一下

上面的CMAKE_BUILD_TYPE =RELEASE指明编译的版本是Release版,CMAKE_INSTALL_PREFIX=/usr/local指明编译后的可执行程序的存放目录,即/usr/local 是 OpenCV 的安装路径

接下来编译&&安装

编译

make -j7     # 多线程执行make任务

 j 后面的数字是你想要使用的线程数量,上面代码中的-j7指7线程同时编译,根据自己CPU的特点调整该参数,也可以是-j3,如果不了解自己CPU,直接执行make即可

开始编译,通常等待编译结束要挺长时间的

编译结束后开始安装

sudo make install 

查看安装信息

pkg-config --modversion opencv	#查看安装版本

二、配置编译环境

首先将OpenCV的库添加到路径,从而可以让系统找到

sudo gedit /etc/ld.so.conf.d/opencv.conf 

执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加

/usr/local/lib  

在Linux上安装、配置和测试使用OpenCv_第1张图片

执行如下命令使得刚才的配置路径生效

sudo ldconfig  

 配置bash

sudo gedit /etc/bash.bashrc  

打开文件

在最末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

保存,执行如下命令使得配置生效

source /etc/bash.bashrc  

更新

sudo updatedb  

这样就配置完成了,不行的话就重新打开终端更新,重启虚拟机

三、测试、使用OpenCv显示图片

1.test

cd到opencv-3.4.1/samples/cpp/example_cmake目录下
我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下

cd ..
cd samples
cd cpp
cd example_cmake
cmake ..
make
./opencv_example

也可以手动打开转到 opencv-4.1.0/sample/cpp/example_cmake 目录下,打开终端

运行

cmake ..
make
./opencv_example

如果摄像头打开,左上角出现 Hello OpenCV 则证明安装成功

在Linux上安装、配置和测试使用OpenCv_第2张图片

2.显示图片

选择任意目录,新建文件夹:在home目录下新建display_image

进入display_image目录

打开终端,编写CMakeLists.txt

gedit CMakeLists.txt

 在文本中编写

CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
PROJECT(display_image)
FIND_PACKAGE(OpenCV REQUIRED)
ADD_EXECUTABLE(display_image show_image.cpp)
TARGET_LINK_LIBRARIES(display_image ${OpenCV_LIBS})

 编写 show_image.cpp,用于显示图片

gedit show_image.cpp

在文本中编写

#include 

using namespace cv;

int main(int argc, char* argv[]) {
    if (argc != 2) {
	printf("usage: image.out \n");
        return -1;
    }
    
    Mat img_mat;
    img_mat = imread(argv[1], 1);
    if (!img_mat.data) {
        printf("NO image data\n");
        return -1;
    }
    imshow("img", img_mat);
    waitKey(0);
    return 0;
}

然后在此目录下继续创建一个build文件夹

mkdir build

进入build文件夹

cd build

执行命令

cmake ..
make

此时 build 目录下会有一个 display_image 的文件

ls

 上面的140506-jordan-speedread-tease_ednmry.jpg是自己准备的一张照片,用于显示

执行命令,显示AJ照片

./display_image 140506-jordan-speedread-tease_ednmry.jpg

 

显示成功!

以上就完成了此次OpenCv的安装和配置 。

你可能感兴趣的:(opencv,linux)