OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0。这些版本中有很多错误修复和其他更改。发布重点如下:
- OpenCV现在是C ++ 11库,需要符合C ++ 11标准的编译器。所需的最低CMake版本已提升至3.5.1。
- 很多来自OpenCV 1.x的C API已被删除。
- 在核心模块中的持久性(在XML,YAML或JSON中存储和加载结构化数据)已在C ++中完全重新实现,并且也丢失了C API。
- 添加了新的模块G-API,它可以作为非常有效的基于图形的图像处理流水线的引擎。
- dnn模块现在包含实验性Vulkan后端,并支持ONNX格式的网络。
- 流行的Kinect Fusion算法已经实现并针对CPU和GPU进行了优化(OpenCL)
QR码检测器和解码器已添加到objdetect模块中。 - 非常高效且高质量的DIS密集光流算法已从opencv_contrib转移到视频模块。
在这篇文章中,我们将提供一个bash脚本,用于在Ubuntu 18.04上安装OpenCV-4.0(C ++和Python 3.6)。我们还将简要研究脚本以了解其中的内容。请注意,此脚本将OpenCV安装在本地目录中,而不是整个系统上。
1.安装OpenCV 4.0
步骤0:选择要安装的OpenCV版本
1
2
3
|
echo "OpenCV installation by learnOpenCV.com" # Define OpenCV Version to install cvVersion= "master" |
我们还将清理build
目录并创建installation
目录。
1
2
3
|
# Clean build directories rm -rf opencv /build rm -rf opencv_contrib /build |
1
2
3
|
# Create directory for installation mkdir installation mkdir installation /OpenCV- "$cvVersion" |
最后,我们将当前工作目录存储在cwd
变量中。我们还将在此博客中将此目录称为OpenCV_Home_Dir。
1
2
|
# Save current working directory cwd=$( pwd ) |
第1步:更新包
1
2
|
sudo apt -y update sudo apt -y upgrade |
第2步:安装OS库
1
2
3
4
五
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
三十
31
32
33
|
sudo apt -y remove x264 libx264-dev ## Install dependencies sudo apt -y install build-essential checkinstall cmake pkg-config yasm sudo apt -y install git gfortran sudo apt -y install libjpeg8-dev libpng-dev sudo apt -y install software-properties-common sudo apt -y update sudo apt -y install libjasper1 sudo apt -y install libtiff-dev sudo apt -y install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev sudo apt -y install libxine2-dev libv4l-dev cd /usr/include/linux sudo ln -s -f .. /libv4l1-videodev .h videodev.h cd "$cwd" sudo apt -y install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev sudo apt -y install libgtk2.0-dev libtbb-dev qt5-default sudo apt -y install libatlas-base-dev sudo apt -y install libfaac-dev libmp3lame-dev libtheora-dev sudo apt -y install libvorbis-dev libxvidcore-dev sudo apt -y install libopencore-amrnb-dev libopencore-amrwb-dev sudo apt -y install libavresample-dev sudo apt -y install x264 v4l-utils # Optional dependencies sudo apt -y install libprotobuf-dev protobuf-compiler sudo apt -y install libgoogle-glog-dev libgflags-dev sudo apt -y install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen |
第3步:安装Python库
1
2
3
|
sudo apt -y install python3-dev python3-pip sudo -H pip3 install -U pip numpy sudo apt -y install python3-testresources |
我们还将安装virtualenv
和virtualenvwrapper
模块来创建Python虚拟环境。
1
2
3
4
五
6
7
8
9
10
11
12
13
|
cd $cwd ############ For Python 3 ############ # create virtual environment python3 -m venv OpenCV- "$cvVersion" -py3 echo "# Virtual Environment Wrapper" >> ~/.bashrc echo "alias workoncv-$cvVersion="source $cwd/OpenCV-$cvVersion-py3/bin/activate"" >> ~/.bashrc source "$cwd" /OpenCV- "$cvVersion" -py3 /bin/activate # now install python libraries within this virtual environment pip install wheel numpy scipy matplotlib scikit-image scikit-learn ipython dlib # quit virtual environment deactivate |
第4步:下载opencv和opencv_contrib
1
2
3
4
五
6
7
8
9
|
git clone https: //github .com /opencv/opencv .git cd opencv git checkout $cvVersion cd .. git clone https: //github .com /opencv/opencv_contrib .git cd opencv_contrib git checkout $cvVersion cd .. |
步骤5:使用contrib模块编译并安装OpenCV
首先,我们导航到构建目录。
1
2
3
|
cd opencv mkdir build cd build |
接下来,我们开始编译和安装过程。
1
2
3
4
五
6
7
8
9
10
11
|
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$cwd /installation/OpenCV- "$cvVersion"
-D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D WITH_TBB=ON -D WITH_V4L=ON -D OPENCV_PYTHON3_INSTALL_PATH=$cwd /OpenCV- $cvVersion-py3 /lib/python3 .5 /site-packages
-D WITH_QT=ON -D WITH_OPENGL=ON -D OPENCV_EXTRA_MODULES_PATH=../.. /opencv_contrib/modules
-D BUILD_EXAMPLES=ON .. |
1
2
|
make -j4 make install |
2.如何在C ++中使用OpenCV
使用CMakeLists.txt
CMakeLists.txt的基本结构如下:
1
2
3
4
|
cmake_minimum_required(VERSION 3.1) # Enable C++11 set (CMAKE_CXX_STANDARD 11) set (CMAKE_CXX_STANDARD_REQUIRED TRUE) |
您必须设置OpenCV_DIR,如下所示。
1
|
SET(OpenCV_DIR <OpenCV_Home_Dir> /installation/OpenCV-master/lib/cmake/opencv4 ) |
确保使用正确的路径替换OpenCV_Home_Dir。例如,在我的情况下:
1
|
SET(OpenCV_DIR /home/hp/OpenCV_installation/installation/OpenCV-master/lib/cmake/opencv4 ) |
完成CMakeLists.txt后,请按照以下步骤操作。
1
2
3
|
mkdir build && cd build cmake .. cmake --build . --config Release |
这将在构建目录中生成可执行文件。
3.如何在Python中使用OpenCV
要使用使用Python脚本安装的OpenCV版本,首先要激活正确的Python虚拟环境。
对于OpenCV-4:Python 3
1
|
workon OpenCV-master-py3 |
激活虚拟环境后,即可进入Python shell并测试OpenCV版本。
1
2
3
|
ipython import cv2 print(cv2.__version__) |
希望这个脚本证明对你有用:)。请继续关注更多有趣的内容。如有任何疑问,请随时在下方发表评论,我们会尽快回复您。
订阅和下载代码
如果你喜欢这篇文章并想下载这篇文章中使用的代码(C ++和Python)和示例图片,请订阅我们的新闻通讯。您还将收到免费的计算机视觉资源指南。在我们的时事通讯中,我们分享了用C ++ / Python编写的OpenCV教程和示例,以及计算机视觉和机器学习算法和新闻。