如何在Raspberry Pi 3上安装OpenCV

linux

OpenCV是一个开源计算机视觉库,具有C ++,Python和Java的绑定。它可用于非常广泛领域的应用程序,包括医学图像分析,拼接街景图像,监视视频,检测和识别人脸,跟踪运动对象,提取3D模型等等。

OpenCV可以利用多核处理的优势,并具有GPU加速功能以进行实时操作。在本教程中,我们将说明如何在Raspberry Pi 3上安装OpenCV。包括使用apt命令安装构建opencv的依赖,配置opencv构建选项和cmake,验证opencv的c++和python API安装,构建后移除源码,修改Raspberry Pi 3交换空间swappiness值。

先决条件

我们假设您在Raspberry Pi上安装了Raspbian。

从源代码安装OpenCV

推荐的安装OpenCV的方法是从源代码构建。这样,您将完全控制构建选项,并且OpenCV将针对您的系统进行优化。首先增加交换空间,以避免由于内存问题而导致编译挂起。使用你喜欢的编辑器打开文件/etc/dphys-swapfile,在本教程中我们将使用vim打开文件:

sudo vim /etc/dphys-swapfile

CONF_SWAPSIZE值从默认值100更改为1024

CONF_SWAPSIZE=1024
/etc/dphys-swapfile

保存文件并运行以下命令以使更改生效:

sudo /etc/init.d/dphys-swapfile restart

现在,我们可以开始构建OpenCV。首先,使用apt命令更新软件包索引并安装构建工具和所需的依赖项:

sudo apt update

sudo apt install build-essential cmake git pkg-config libgtk-3-dev "libcanberra-gtk*"

sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev

sudo apt install libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev opencl-headers

sudo apt install python3-dev python3-numpy libtbb2 libtbb-dev libdc1394-22-dev

使用mkdir命令创建构建目录,然后使用cd命令切换到该目录:

mkdir ~/opencv_build && cd ~/opencv_build

并从Github克隆OpenCV和OpenCV contrib存储库:

git clone https://github.com/opencv/opencv.git

git clone https://github.com/opencv/opencv_contrib.git

在撰写本文时,GitHub存储库中的默认版本为4.1.1。如果要安装旧版本的OpenCV,请切换到opencvopencv_contrib目录并运行git checkout <opencv-version>,检出指定版本,<opencv-version>是opencv的版本号。

克隆存储库后,创建一个临时构建目录,然后切换到该目录:

mkdir -p ~/opencv_build/opencv/build && cd ~/opencv_build/opencv/build

使用以下命令配置OpenCV的cmake

cmake -D CMAKE_BUILD_TYPE=RELEASE \

-D CMAKE_INSTALL_PREFIX=/usr/local \

-D INSTALL_C_EXAMPLES=OFF \

-D INSTALL_PYTHON_EXAMPLES=OFF \

-D OPENCV_GENERATE_PKGCONFIG=ON \

-D ENABLE_NEON=ON \

-D OPENCV_EXTRA_EXE_LINKER_FLAGS=-latomic \

-D ENABLE_VFPV3=ON \

-D BUILD_TESTS=OFF \

-D OPENCV_ENABLE_NONFREE=ON \

-D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \

-D BUILD_EXAMPLES=OFF ..

输出将如下所示:

...

-- Configuring done

-- Generating done

-- Build files have been written to: /home/pi/opencv_build/opencv/build

运行make以开始编译过程:

make -j4

此过程将花费一些时间,大约1-2小时。如果由于资源不足而在某个时刻编译失败,请再次运行make命令,该过程将从停止的地方继续编译。完成后,您将看到以下内容:

...

[100%] Linking CXX shared module ../../lib/python3/cv2.cpython-35m-arm-linux-gnueabihf.so

[100%] Built target opencv_python3

最后一步是安装编译的OpenCV文件:

sudo make install

...

-- Installing: /usr/local/bin/opencv_version

-- Set runtime path of "/usr/local/bin/opencv_version" to "/usr/local/lib"

要检查OpenCV是否已成功安装,请键入以下命令,您应该看到OpenCV版本:

C ++库

pkg-config --modversion opencv4

4.1.1

Python库

python3 -c "import cv2; print(cv2.__version__)"

4.1.1-pre

移除源码

如果SD卡上没有足够的可用空间,请删除源文件:

rm -rf ~/opencv_build

频繁使用交换空间可能会损坏SD卡。将交换空间的swappiness值改回其原始大小:

sudo vim /etc/dphys-swapfile

CONF_SWAPSIZE值更改为100

CONF_SWAPSIZE=100
/etc/dphys-swapfile

保存文件并激活更改:

sudo /etc/init.d/dphys-swapfile restart

结论

我们已经向您展示了如何在Raspberry Pi板上安装OpenCV。从源代码构建OpenCV可为您提供更大的灵活性,它应该是安装OpenCV时的首选。如果您有任何疑问或反馈,请在下面发表评论。

以上是 如何在Raspberry Pi 3上安装OpenCV 的全部内容, 来源链接: utcz.com/z/507364.html

回到顶部