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教程和示例,以及計算機視覺和機器學習算法和新聞。