OpenCV是一个开源计算机视觉库,具有C ++,Python和Java的绑定。OpenCV可以利用多核处理的优势,并具有GPU加速功能以进行实时操作。
它可用于非常广泛领域的应用程序,包括医学图像分析,拼接街景图像,监视视频,检测和识别人脸,跟踪运动对象,提取3D模型等。
我们假设您已在Raspberry Pi安装Raspbian。推荐的安装OpenCV的方法是从源码构建。这样,您将完全控制构建选项,并且OpenCV将针对您的系统进行优化。
在编译openCV之前,首先增加交换空间,以避免由于内存问题而导致编译挂起。使用你喜欢的编辑器打开文件/etc/dphys-swapfile
。
在本教程中我们将使用vim打开文件,将CONF_SWAPSIZE
值从默认值100
更改为1024
。
sudo vim /etc/dphys-swapfile
命令将会使用vim编辑文件/etc/dphys-swapfile
。找到选项CONF_SWAPSIZE并改为1024,CONF_SWAPSIZE=1024。
退出vim并保存文件,然后运行命令sudo /etc/init.d/dphys-swapfile restart
以使更改生效。
现在,我们可以开始构建OpenCV。首先,使用apt命令更新软件索引并安装构建工具和所需的依赖软件。
使用mkdir命令创建一个临时的构建目录,然后使用cd命令切换到临时构建目录。并从Github克隆OpenCV和OpenCV contrib仓库。
在撰写本文时,GitHub仓库中的默认版本为4.1.1。如果要安装旧版本的OpenCV,请切换到opencv
和opencv_contrib
目录。
运行命令git checkout <opencv-version>
检出指定版本,<opencv-version>
是opencv的版本号。
使用cmake
命令配置OpenCV的,配置完成后运行make
开始编译opencv的过程,此过程将花费一些时间,大约1-2小时。
如果由于内存不足而在某个时刻编译失败,请再次运行make
命令,该过程将从停止的地方继续编译。
当编译完成后,使用sudo make install
安装opencv。你可通过命令pkg-config --modversion opencv4
检查OpenCV是否已成功安装。您应该看到OpenCV版本。
除了使用pkg-config
命令之外。你也可以在python中导入cv2模块检查opencv的版本。
python3 -c "import cv2; print(cv2.version)"
这是一个检查opencv版本的python脚本。
如果SD卡上没有足够的可用空间,请删除opencv源码文件,频繁使用交换空间可能会损坏SD卡。你可将交换空间的swappiness值改回其原始大小。
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 ~/opencv_build && cd ~/opencv_build
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
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 ..
sudo make install
pkg-config --modversion opencv4
rm -rf ~/opencv_build
结论
我们已经向您展示了如何在Raspberry Pi板上安装OpenCV。从源代码构建OpenCV可为您提供更大的灵活性,它应该是安装OpenCV时的首选。如果您有任何疑问或反馈,请在下面发表评论。