如何在Linux下编译安装OpenCV

2026-03-02 10:17:55

1、首先安装如下几个软件包:

GCC 4.4.x or later

CMake 2.8.7 or higher

Git

GTK+2.x or higher, including headers (libgtk2.0-dev)

pkg-config

Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)

ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev

[optional] libtbb2 libtbb-dev

[optional] libdc1394 2.x

[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev

[optional] CUDA Toolkit 6.5 or higher

注意:[optional]代表这个package是可选的.

2、上面这些包都是可以通过apt-get命令直接安装的,打开终端,输入以下命令:

[compiler]

$ sudo apt-get install build-essential 

[required]

$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

[optional]

$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-dev

至少要运行[compiler][required]下的命令

3、只需一小会,编译所依赖的packages便全部安装完毕了(这也是我喜欢Linux的原因之一,安装package十分的便利)。接着就是开始编译了,实际上编译只需要三行命令就可以完成。不过在此之前,还要在解压后的opencv-XXX 文件夹内建立一个build文件夹,编译生成的makefiles、project files、object files和output files会放在build文件夹里面,完成后,就可以开始正式的编译了。

4、第一步,配置。

$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

CMAKE_BUILD_TYPE:     build的类型,有Release和Debug两种CMAKE_INSTALL_PREFIX:  指定想要安装OpenCV的文件夹目录,一般就用/usr/local

除此之外,还可以添加上BUILD_DOCS 来build文档 以及 BUILD_EXAMPLES 来build所有的样例

注意:如果上面的命令行无法工作,则把-D后面的空格去掉:

$ cmake -D CMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..

5、第二步,build。为了加快编译速度,一般会使用多线程的方法:

make -j7 # 同时使用七个线程

6、第三步,安装。

sudo make install

7、  如果到现在你还没遇到任何问题,那么恭喜你,你已经成功在Linux上安装了OpenCV。为了测试你的OpenCV能否在Python上使用,可以运行一段小代码,读取一张图片并显示出来:

import cv2

image = cv2.imread("logo.png", 1)

cv2.imshow("Hello, world!", image)

cv2.waitKey(0)

cv2.destroyAllWindows()

如果运行时报错,尝试把图片的相对路径改为绝对路径。运行成功后,你会看到:

如何在Linux下编译安装OpenCV

猜你喜欢