Pada artikel sebelumnya, kita pernah mencoba Instalasi OpenCV 4.1 pada device Raspberry Pi 3 Model B+. Karena Raspbian dan Ubuntu sama-sama turunan dari debian, cara instalasinya tidak jauh berbeda. Ada beberapa bagian yang di hilangkan, dan beberapa bagian yang di Tambah.

Mengenai OpenCV, anda bisa lihat deskripsi lengkapnya pada artikel sebelumnya, yaitu, Install OpenCV 4 di Raspberry Pi.

Persiapan

Untuk mengikuti artikel ini, anda harus menyiapkan PC atau Server yang sudah terinstall Ubuntu 18.04. Koneksi internet yang memadai di perlukan untuk mendownload source code dan paket yang di perlukan.

Dalam percobaan kali ini kami menggunakan VPS dengan RAM 4GB dan 4 Core Prosesor.

Anda juga bisa menggunakan VPS dari digitalocean, jika anda belum pernah terdaftar, anda bisa dapat kredit sebesar $200 jika mendaftar dari lini di bawah ini. Kredit berlaku untuk 2 bulan, lumayan kan buat ujicoba gratis :).

DigitalOcean | The Cloud for Builders
Simple, scalable cloud computing solutions built for startups and small-to-midsize businesses.

Install OpenCV 4.1

Sebelum proses instalasi, pastikan anda mengupdate sistem terbaru. Jika anda sudah pernah mengupadte, silahkan lewati langkah ini. Jika belum, silahkan update Ubuntu anda dengan perintah berikut, lalu restart.

sudo apt update
sudo apt upgrade -y
sudo reboot

Install Python

Karena kita akan menggunakan python, kita harus menginstall python berikut paket pip. Kita akan instalkan python versi 2 dan versi 3 sekaligus. Silahkan gunakan perintah berikut.

sudo apt install python python3 python-dev python3-dev python-pip python3-pip -y

Cek hasil instalasi python anda, apakah sudah berjalan sebagai mana mestinya.

python --version
python3 --version
pip --version
pip3 --version

Jika semuanya sudah OK, output perintah diatas kira-kira seperti ini.

away@ubuntu:~$ python --version
Python 2.7.15+
away@ubuntu:~$ python3 --version
Python 3.6.8
away@ubuntu:~$ pip --version
pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7)
away@ubuntu:~$ pip3 --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)

Install Dependencies yang di butuhkan

Selanjutnya kita akan menginstall dependencies yang dibutuhkan. Aplikasi seperti cmake, unzip dan lainnya akan di perlukan saat proses compile OpenCV.

sudo apt-get install build-essential cmake unzip pkg-config -y
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev -y
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y
sudo apt-get install libxvidcore-dev libx264-dev -y
sudo apt-get install libgtk-3-dev -y
sudo apt-get install libatlas-base-dev gfortran -y

Download OpenCV

Pada tahap selanjutnya, kita akan mendownload dan mempersiapkan source dari OpenCV. Gunakan perintah berikut.

cd ~
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.1.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.1.0.zip

Ekstrak file zip yang di download, kemudian hapus file zip dan rename folder hasil extract untuk mempermudah.

unzip opencv.zip
unzip opencv_contrib.zip
mv opencv-4.1.0 opencv
mv opencv_contrib-4.1.0 opencv_contrib
rm -f opencv.zip opencv_contrib.zip

Konfigurasi Virtual Environment

Virtual Environment berguna agar semua instalasi yang dilakukan hanya bekerja di sistem virtual. Ini berguna jika anda tidak ingin menggunakan library standar di lingkungan normal, dan akan menggunakan library versi lain di lingkungan virtual.

sudo pip install virtualenv virtualenvwrapper
sudo pip3 install virtualenv virtualenvwrapper
sudo rm -rf ~/get-pip.py ~/.cache/pip

Untuk menyelesaikan instalasi, kita akan mengupdate file ~/.profile. Buka dan modifikasi ~/.profile dengan perintah nano.

nano ~/.profile

Lalu isi bagian paling bawah dengan script berikut.

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

Lalu gunakan profile tersebut dengan perintah.

source ~/.profile

Setelah selesai, kita akan coba buat virtual environment baru dengan nama cv. Anda bisa membuat nama environment apa saja. Namun dalam artikel kali ini, kita akan menggunakan cv agar lebih mudah.

mkvirtualenv cv -p python3

Dan coba aktifkan virtual environment tersebut.

workon cv

Jika tidak ada masalah, di terminal anda akan diawali dengan tanda (cv) yang menandakan bahwa anda sedang bekerja pada virtual environment cv. Jika anda ingin keluar dari environment, anda bisa menggunakan perintah deactivate.

deactivate

Install NumPY

Selanjutnya kita akan install numpy pada environment kita. NumPy adalah library Python untuk Scientific Computing. Ketikan kode berikut, pastikan anda sudah berada di Virtual Environment cv.

pip install numpy

Compile OpenCV

Selanjutnya kita akan mengkonfigurasi cmake untuk OpenCV. Kita akan bekerja di folder build. Jadi ikuti perintah di bawah ini untuk membuat folder build dan mengkonfigurasi OpenCV kita.

cd ~/opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local \
	-D INSTALL_PYTHON_EXAMPLES=ON \
	-D INSTALL_C_EXAMPLES=OFF \
	-D OPENCV_ENABLE_NONFREE=ON \
	-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
	-D PYTHON_EXECUTABLE=~/.virtualenvs/cv/bin/python \
	-D BUILD_EXAMPLES=ON ..

Selanjutnya kita akan mengcompile OpenCV dengan menggunakan semua core prosesor. Cek terlebih dahulu berapa jumlah core prosesor anda dengan perintag nproc.

nproc

Karena kami menggunakan 4 core prosesor, hasil dari perintah nproc tersebut adalah 4. Gunakan perintah make -j<jumlah core> untuk mmemulai proses compile.

make -j4

Tunggu hingga proses selesai. Waktu yang di perlukan tergantung kecepatan komputer atau server anda. Jika sudah selesai, lanjutkan dengan melakukan make install dan ldconfig, lalu buat symlink agar OpenCV bekerja pada Virtual Environment.

sudo make install
sudo ldconfig
ln -s  /usr/local/lib/python3.6/site-packages/cv2/python-3.6/cv2.cpython-36m-x86_64-linux-gnu.so ~/.virtualenvs/cv/lib/python3.6/site-packages/cv2.so

Hapus Folder Instalasi

Untuk menghemat space, kita bisa menghapus folder instalasi sekarang. Silahkan hapus menggunakan perintah di bawah ini.

cd ~
rm -fr ~/opencv ~/opencv_contrib

Test OpenCV

Jika sudah selesai, silahkan test hasil instalasi dengan menggunakan perintah python di bawah ini.

python -c 'import cv2; print(cv2.__version__)'

Jika ada output yang menunjukan versi OpenCV seperti di bawah ini, berarti proses instalasi anda sudah selesai.

'4.1.0'

Kesimpulan

Anda sudah mempelajari cara Instalasi OpenCV pada server Ubuntu 18.04. Prosesnya hampir sama dengan instalasi di Raspberry Pi. Namu pada server yang kami gunakan, proses lebih cepat karena menggunakan Disk SSD yang memiliki performa IO yang lebih handal.

Pada artikel selanjutnya, kita akan mencoba beberapa proyek Computer Vision sederhana yang menggunakan OpenCV.

Semoga artikel ini membantu.