如何在CentOS 7上安装OpenCV
OpenCV(开放源计算机视觉库)是一种开放源计算机视觉库,具有C++,Python和Java的绑定,并支持所有主要操作系统。
它可以利用多核处理的优势,并具有GPU加速功能以实现实时操作。
OpenCV的用途非常广泛,包括医学图像分析,拼接街景图像,监视视频,检测和识别人脸,跟踪运动对象,提取3D模型等等。
在本教程中,我们将展示如何在CentOS 7上安装OpenCV。
从CentOS储存库安装OpenCV
可从CentOS 7标准存储库中获得OpenCV软件包,但是它已经过时了。
如果要从源代码安装OpenCV的最新稳定版本,请从本教程的“源代码”部分向下滚动到“安装OpenCV”。
在撰写本文时,存储库中的版本为2.4.5.
通过键入以下命令安装OpenCV软件包:
sudo yum install opencv opencv-devel opencv-python
安装完成后,我们可以通过运行以下命令进行验证:
pkg-config --modversion opencv
2.4.5
或者通过导入Python'cv2'模块并打印OpenCV版本:
python -c "import cv2; print(cv2.__version__)"
2.4.5
从源代码安装OpenCV
从源代码构建OpenCV库可让我们获得最新的可用版本。
它将针对特定系统进行优化,并且我们将完全控制构建选项。
要从源代码安装最新的OpenCV版本,请按照以下步骤操作:
- 安装必需和可选的依赖项:
sudo yum install epel-release git gcc gcc-c++ cmake3 qt5-qtbase-devel \ python python-devel python-pip cmake python-devel python34-numpy \ gtk2-devel libpng-devel jasper-devel openexr-devel libwebp-devel \ libjpeg-turbo-devel libtiff-devel libdc1394-devel tbb-devel numpy \ eigen3-devel gstreamer-plugins-base-devel freeglut-devel mesa-libGL \ mesa-libGL-devel boost boost-thread boost-devel libv4l-devel
- 克隆OpenCV和OpenCV贡献存储库:
mkdir ~/opencv_build && cd ~/opencv_buildgit clone https://github.com/opencv/opencv.gitgit clone https://github.com/opencv/opencv_contrib.git
在撰写本文时,github存储库中的默认版本为4.2.0。如果要安装较旧版本的OpenCV,请在cd目录中同时打开“ opencv”和“ opencv_contrib”目录,然后运行“ git checkout <opencv-version>”
- 下载完成后,创建一个临时构建目录,然后切换到该目录:
cd ~/opencv_build/opencv && mkdir build && cd build
使用以下CMake命令配置OpenCV构建:
cmake3 -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_C_EXAMPLES=ON \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_GENERATE_PKGCONFIG=ON \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \ -D BUILD_EXAMPLES=ON ..
CMake构建系统完成后,我们将看到类似以下的内容:
-- Configuring done -- Generating done -- Build files have been written to: /home/theitroad/opencv_build/opencv/build
- 通过运行以下命令来启动编译过程:
make -j8
根据处理器修改“ -j”标志。如果我们不知道处理器的内核数量,可以通过键入“ nproc”找到它。编译可能需要几分钟或者更长时间,具体取决于系统配置。完成后,我们将看到以下内容:
[100%] Built target example_tutorial_Threshold_inRange [100%] Linking CXX shared module ../../lib/cv2.so [100%] Built target opencv_python2
- 使用以下方法安装OpenCV:
sudo make install
- 创建符号链接“ opencv4.pc”文件到“/usr/share/pkgconfig”目录,然后运行“ ldconfig”以重建库缓存。
sudo ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/sudo ldconfig
通过键入以下内容检查OpenCV版本:
pkg-config --modversion opencv4
4.2.0
- 要启用Python'cv2'模块,请运行:
sudo ln -s /usr/local/lib/python2.7/site-packages/cv2 /usr/lib/python2.7/site-packages/
导入模块并通过打印OpenCV版本来验证安装:
python -c "import cv2; print(cv2.__version__)"
4.2.0-dev