Created
November 13, 2018 08:30
-
-
Save eungbean/77e051eb4565110c41c1e2e52cfebb3b to your computer and use it in GitHub Desktop.
OpenCV One-Click Install Script (with CUDA Support)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
###################################### | |
# INSTALL OPENCV ON UBUNTU OR DEBIAN # | |
###################################### | |
# To complete this step, please visit ''. | |
# Please Modify Desired OPENCV_VERSION Below | |
# | THIS SCRIPT IS TESTED CORRECTLY ON | | |
# |------------------------------------------------------| | |
# | OS | OpenCV | Test | Last test | | |
# |------------------|--------------|------|-------------| | |
# | Ubuntu 18.04 LTS | OpenCV 3.4.2 | OK | 18 Jul 2018 | | |
# | Debian 9.5 | OpenCV 3.4.2 | OK | 18 Jul 2018 | | |
# |----------------------------------------------------- | | |
# | Debian 9.0 | OpenCV 3.2.0 | OK | 25 Jun 2017 | | |
# | Debian 8.8 | OpenCV 3.2.0 | OK | 20 May 2017 | | |
# | Ubuntu 16.04 LTS | OpenCV 3.2.0 | OK | 20 May 2017 | | |
# 0. CONFIG BEFORE INSTALL | |
# VERSION TO BE INSTALLED | |
OPENCV_VERSION='3.4.0' | |
# DEFINE YOUR CUDA VERSION YOU INSTALLED | |
CUDA_VERSION='8.0' | |
# 1. KEEP UBUNTU OR DEBIAN UP TO DATE | |
sudo apt-get -y update | |
sudo apt-get -y upgrade | |
sudo apt-get -y dist-upgrade | |
sudo apt-get -y autoremove | |
# 2. INSTALL THE DEPENDENCIES | |
# Build tools: | |
sudo apt-get install -y build-essential cmake pkg-config | |
# GUI (if you want to use GTK instead of Qt, replace 'qt5-default' with 'libgtkglext1-dev' and remove '-DWITH_QT=ON' option in CMake): | |
sudo apt-get install -y libqt4-dev qt5-default libvtk6-dev | |
# Media I/O: | |
sudo apt-get install -y zlib1g-dev libjpeg-dev libwebp-dev libpng-dev libpng12-dev libtiff5-dev libjasper-dev libopenexr-dev libgdal-dev | |
# Video I/O: | |
sudo apt-get install -y libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev | |
# Video Strining I/O: | |
sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev | |
# OpenGL Library: | |
sudo apt-get install -y mesa-utils libgl1-mesa-dri libqt4-opengl-dev | |
# Parallelism and linear algebra libraries: | |
sudo apt-get install -y libtbb-dev libeigen3-dev libatlas-base-dev gfortran | |
# Python: | |
sudo apt-get install -y python-dev python-tk python-numpy python3-dev python3-tk python3-numpy | |
# Java: | |
sudo apt-get install -y ant default-jdk | |
# Documentation: | |
sudo apt-get install -y doxygen | |
# 3. INSTALL THE LIBRARY | |
sudo apt-get install -y unzip wget | |
mkdir opencv | |
cd opencv | |
wget opencv.zip https://github.com/opencv/opencv/archive/${OPENCV_VERSION}.zip | |
unzip opencv.zip | |
rm opencv.zip | |
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/${OPENCV_VERSION}.zip | |
unzip opencv_contrib.zip | |
cd opencv-${OPENCV_VERSION} | |
mkdir build | |
cd build | |
cmake -D CMAKE_BUILD_TYPE=RELEASE \ | |
-D CMAKE_INSTALL_PREFIX=/usr/local \ | |
-D WITH_TBB=OFF \ | |
-D WITH_IPP=OFF \ | |
-D WITH_1394=OFF \ | |
-D BUILD_WITH_DEBUG_INFO=OFF \ | |
-D BUILD_DOCS=OFF \ | |
-D INSTALL_C_EXAMPLES=ON \ | |
-D INSTALL_PYTHON_EXAMPLES=ON \ | |
-D BUILD_EXAMPLES=OFF \ | |
-D BUILD_TESTS=OFF \ | |
-D BUILD_PERF_TESTS=OFF \ | |
-D WITH_QT=ON \ | |
-D WITH_OPENGL=ON \ | |
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.0/modules \ | |
-D WITH_V4L=ON \ | |
-D WITH_FFMPEG=ON \ | |
-D WITH_XINE=ON \ | |
-D BUILD_NEW_PYTHON_SUPPORT=ON .. | |
# -DWITH_QT=ON \ | |
# -DWITH_OPENGL=ON \ | |
# -DFORCE_VTK=ON -\ | |
# DWITH_TBB=ON \ | |
# -DWITH_GDAL=ON \ | |
# -DWITH_XINE=ON \ | |
# -DBUILD_EXAMPLES=ON \ | |
# -DENABLE_PRECOMPILED_HEADERS=OFF .. | |
make -j4 | |
sudo make install | |
sudo ldconfig | |
# 4. EXECUTE SOME OPENCV EXAMPLES AND COMPILE A DEMONSTRATION |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment