目的
目的是在Ubuntu 18.04 Bionic Beaver Linux上安装OpenCV并提供一个简单的OpenCV示例
操作系统和软件版本
- 操作系统:-Ubuntu 18.04仿生海狸
- 软件:-OpenCV 3.2或更高版本
要求
以root或通过特权访问Ubuntu系统sudo
命令是必需的。
困难
简单
约定
在Ubuntu上安装OpenCV
OpenCV是一个multi-platform开源计算机视觉库。 OpenCV是Ubuntu的Universe软件包存储库的一部分。
带有Python的Ubuntu OpenCV
使用python绑定进行OpenCV安装有三种选择。您可以在Python 2版本或Python 3版本之间进行选择。
使用python 2绑定在Ubuntu 18.04上安装OpenCV打开终端并输入:
$ sudo apt -y install python-opencv
通过加载适当的文件来确认正确的OpenCV安装cv2
Library :
$ python
Python 2.7.14+ (default, Feb 6 2018, 19:12:18)
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2._version__
'3.2.0'
>>>
要在具有Python 3绑定的Ubuntu 18.04上安装OpenCV,请执行以下操作:
$ sudo apt -y install python3-opencv
通过加载适当的文件来确认正确的OpenCV安装cv2
Library :
$ python3
Python 3.6.4+ (default, Feb 12 2018, 08:25:03)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.2.0'
>>>
Opencv Python测试示例
让我们执行一个样本Opencv Python测试以对图像样本进行去噪。将以下代码保存在新代码中denoise.py
主目录中的文件:
import numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('gray_DSC00931.png')
b,g,r = cv2.split(img) # get b,g,r
rgb_img = cv2.merge([r,g,b]) # switch it to rgb
# Denoising
dst = cv2.fastNlMeansDenoisingColored(img,None,10,10,7,21)
b,g,r = cv2.split(dst) # get b,g,r
rgb_dst = cv2.merge([r,g,b]) # switch it to rgb
plt.subplot(211),plt.imshow(rgb_img)
plt.subplot(212),plt.imshow(rgb_dst)
plt.show()
安装Pythonmatplotlib
以上代码要求。如果使用的是Python 3版本,请确保在python关键字后缀数字3:
$ sudo apt install python3-matplotlib
使用获取样本图像wget
命令:
$ wget -O ~/opencv-sample.png https://linuxconfig.org/images/opencv-sample.png
最后,执行上述OpenCV python代码:
$ python3 denoise.py
带有C++的Ubuntu OpenCV
以下linux命令将在具有C++库的Ubuntu 18.04上安装OpenCV:
$ sudo apt install libopencv-dev
现在已将OpenCV库安装在/usr/include/opencv2
目录。
C++ Opencv示例
将以下代码存储到新代码中img-display.cpp
主目录中的文件:
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
if( argc != 2)
{
cout
准备好后,编译上面的代码以产生img-display
可执行二进制文件:
$ g++ img-display.cpp -o img-display `pkg-config --cflags --libs opencv`
下载示例图片:
$ wget -O ~/linuxconfig_logo.png https://linuxconfig.org/images/linuxconfig_logo.png
使用新编译的图像显示图像img-display
可执行二进制文件:
$ ./img-display linuxconfig_logo.png