bash: 一键安装OpenCV (with Python3)

最简单的方法

在自己的python环境下,通过一条指令搞定:

pip install opencv-python

pip 会 自动 根据 当前所在的环境,为你安装好对应python版本的opencv。非常非常方便。

通过自己编译来安装

  一键 安装OpenCVbash文件 源码:

echo 'Remove old version packages'
sleep 3
sudo apt-get -y remove ffmpeg x264 libx264-dev

echo -e 'Install Dependencies'
sleep 3
sudo apt-get -y install libopencv-dev
sudo apt-get -y install build-essential checkinstall cmake pkg-config yasm
sudo apt-get -y install libtiff4-dev libjpeg-dev libjasper-dev
sudo apt-get -y install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev
sudo apt-get -y install python-dev python-numpy
sudo apt-get -y install libtbb-dev
sudo apt-get -y install libqt4-dev libgtk3.1-dev
sudo apt-get -y install libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev
sudo apt-get -y install x264 v4l-utils

echo -e 'Optional packages according to org'
sleep 3
sudo apt-get install libtbb2 libpng-dev libtiff-dev

echo -e 'Unzip OpenCV'
sleep 3
mkdir ~/Software/OpenCV3.3.1
unzip ../../OpenCV/opencv-3.3.1.zip -d ~/Software/OpenCV3.3.1

echo -e 'Unzipping ffmpeg'
sleep 3
tar -zxvf ../../OpenCV/ffmpeg-2.8.8.tar.gz -C ~/Software/OpenCV3.3.1

echo -e 'Mv OpenCV3.3.1/OpenCV-3.3.1/* to OpenCV3.3.1/'
sleep 3
mv ~/Software/OpenCV3.3.1/opencv-3.3.1/* ~/Software/OpenCV3.3.1/
rm -r ~/Software/OpenCV3.3.1/opencv-3.3.1/

# 将 Anaconda3/ 暂时移至回收站
echo -e 'Must move Anaconda3 to Trash temporary ! '
sleep 3
mv ~/anaconda3 ~/.local/share/Trash

echo -e 'Replace ippicv'
sleep 3

mkdir ~/Software/OpenCV3.3.1/3rdparty/ippicv/downloads/
mkdir ~/Software/OpenCV3.3.1/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/
cp ../../OpenCV/ippicv_linux_20151201.tgz ~/Software/OpenCV3.3.1/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/ippicv_linux_20151201.tgz

echo -e 'Generate Makefile'
sleep 3
mkdir ~/Software/OpenCV3.3.1/build
cd ~/Software/OpenCV3.3.1/build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON  -D CUDA_GENERATION=Kepler  -D WITH_FFMPEG=ON ..

echo -e 'Compile'
sleep 3
cmake ..
make -j8
# 编译完后会要求再次输入密码,所以脚本运行到这里就会停掉,等待input
sudo make install

pkg-config --modversion opencv

# 将 Anaconda/ 从回收站restore
echo -e 'Restore Anaconda3 ! '
sleep 3
mv ~/.local/share/Trash/anaconda3 ~/anaconda3

cp /usr/local/lib/python3.6/dist-packages/cv2.so ~/anaconda3/lib/python3.6/site-packages/

echo "OpenCV 3.3.1 ready to be used"


本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

通过shell脚本快速定位active session问题(r4笔记第65天)

如果你得到反馈,数据库突然间性能下降了好多,希望你能够尽快的定位出问题来,有一些思路和方法可以参考。分别从数据库层面,系统层面来定位,但是个人感觉而言还是不够快...

36350
来自专栏Hadoop实操

如何使用Sqoop2

通sqoop1一样,sqoop2同样也是在Hadoop和关系型数据库之间互传数据的工具,只不过sqoop2引入sqoop server,集中化管理connect...

2K80
来自专栏张善友的专栏

非域环境下使用证书设置数据库镜像

数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中。镜像不能直接访问;它只用在...

22450
来自专栏数据库新发现

Linux上配置Unix ODBC连接Oracle数据库

Oracle10g前,Oracle并不提供UNIX/Linux下的ODBC驱动,用的最为广泛的是UnixOdbc,UnixOdbc的配置不算复杂,但是如果不顺利...

18620
来自专栏数据库新发现

在Mac上通过Docker部署Oracle Database 12.2版本

Oracle 已经宣布支持了Docker部署,这也让我们在Mac上部署 Oracle 数据库有了多一个选择,这是我的第一个Docker应用,非常简便快速的就完...

42160
来自专栏数据和云

返璞归真:如何判断一个初始化参数是否来自默认设置

? 杨廷琨(yangtingkun) 云和恩墨 CTO 高级咨询顾问,Oracle ACE 总监,ITPUB Oracle 数据库管理版版主 Oracle初...

29470
来自专栏龙首琴剑庐

mybaits3整合spring总结

1、maven定义properties: <org.springframework.version>4.3.1.RELEASE</org.springframe...

38370
来自专栏菩提树下的杨过

oracle:如何用sql生成日历

BI分析中,经常需要将事实表与时间维度表关联起来,按年/月/日来逐层展示,常用的做法是创建一张日历表,结构类似如下: create table T_BAS_CA...

43460
来自专栏杨建荣的学习笔记

awr性能问题排查第一篇(r3笔记第42天)

对于awr,里面涵盖的内容比较杂,有时候看报告的时候总是不知道该怎么下手。时间长了,可能会有一些阅读习惯或者心得。今天在看大师chris lawson的一篇博文...

30340
来自专栏数据库新发现

字符集问题的初步探讨(七)----关于字符集更改的内部操作

原文链接: http://www.eygle.com/special/NLS_CHARACTER_SET_07.htm 前面我们提到,通过修改props$...

11520

扫码关注云+社区

领取腾讯云代金券