OpenCV Kurulum Kılavuzu

İnşaa bağımlılıklarını kurmak

İlk adım olarak sisteminizi güncellemeniz önerilir

sudo apt-get update && sudo apt-get upgrade

Ardından geliştirme araçlarını ve CMake aracını kurunuz:

sudo apt-get install build-essential cmake unzip pkg-config

Görüntü kodekleri

(Hepsini kurmanız önerilir)

  • Fotoğraf için (JPEG, PNG ve tiff formatı): sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
  • Video kayıt için: (Kamera kullanımında önerilir) sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
  • Video dosyaları için: (Temel video formatları ve h264) sudo apt-get install libxvidcore-dev libx264-dev
  • Ek kodekler için: sudo apt-get install libdc1394-22-dev libtheora-dev libvorbis-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libxine2-dev

GUI Araçları

Gui araçlarını kullanacaksanız (Opencv ile pencere içerisinde çıktı almak gibi) GTK kurmanız önerilir

sudo apt-get install libgtk-3-dev libgtkglext1-dev 

GTK hatalarını yakalamak için

sudo apt-get install libcanberra-gtk*

QT için:

sudo apt-get install qt5-default

VT için:

sudo apt-get install libvtk6-dev

Sayısal optimizasyon araçları

OpenCV'nin sayısal optimizayon araçları daha pürüzsüz sonuçlar almanızı sağlar ancak totalde hız düşmesine sebep olur. Bunu eklemek için:

sudo apt-get install libatlas-base-dev gfortran

Optimizasyon ve Paralel İşlem

sudo apt-get install -y libtbb-dev libeigen3-dev

Python bindingleri

Python3 için

sudo apt-get install python3-dev

Python2 için

sudo apt-get install python-dev

Java Binding

Java bindings:

sudo apt-get install -y ant default-jdk

OpenCV kaynak Kodunu indirme

En yeni OpenCV sürümünü Github Sayfası üzerinden belirleyin

Ardından wget ile bunları indirin:

cd ~
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.x.y.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.x.y.zip

Mevcut dizine çıkartın ve yeniden adlandırın:

unzip opencv.zip
unzip opencv_contrib.zip

mv opencv-4.0.0 opencv
mv opencv_contrib-4.0.0 opencv_contrib

İnşaa

Ana sisteme inşaa etmek

Eğer ki virtualenv ile uğraşmak istemiyorsanız benim yönetemimi deneyin.

Numpy'i kurun

Kök sisteme kurmak için

sudo pip3 install numpy

kullanıcı için kurmak siterseniz de

pip3 install numpy --user

Virtualenv üzerine inşaa etmek

Virtualenv sayesinde ana sisteminize zarar vermeden python3 tımbırtılarını işletebilirsiniz.

Virtualenv'yi kurun

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

Kabuk ortamınıza virtualenv'yi ekleyin

~/.profile dosyanızın içerisine virtualenv'yi ekleyerek her kabuk ortamını başlattığınızda virtualenv'ye kolayca ulaşabilirsiniz

echo -e "# virtualenv and virtualenvwrapper \
export WORKON_HOME=$HOME/.virtualenvs  \
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 \
source /usr/local/bin/virtualenvwrapper.sh" >> ~/.profile

ve kabuk ortamınızı yeniden başlatın:

source ~/.profile

VirtualEnv'ye girin

Yeni bir sanal python ortamı oluşturun:

mkvirtualenv cv -p python3

ve onun içerisine girin

workon cv

Bundan sonra her opencv ile çalışacağınız zaman workon cv diyerek cv isimli sanal ortama ulaşabilirsiniz.

Numpy'i kurun

pip3 install numpy

OpenCV'yi inşaa etmek

Konfigürasyon

OpenCV geneli C++ kodlarından oluşan bir CMake projesidir. Bu sebeple derlememz gerekmekte. Mevcut kod düzeni koruyarak derleme yapmak için build isminde bir dizinde çalışmak daha mantıklıdır. Bu sebeple başta opencv klasörüne girip onun içerisinde build isminde bir inşaa dizini açmamız lazım.

cd ~/opencv
mkdir build
cd build

Ardından CMake konfigürasyonunu yapın:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
    -D ENABLE_NEON=ON \
    -D ENABLE_VFPV3=ON \
    -D WITH_OPENGL=ON \
    -D WITH_QT=ON \
    -D FORCE_VTK=ON \
    -D WITH_LIBV4L=ON \
    -D WITH_TBB=ON \
    -D WITH_GDAL=ON \
    -D WITH_FFMPEG=0 \
    -D WITH_XINE=ON \
    -D BUILD_TESTS=ON \
    -D OPENCV_ENABLE_NONFREE=ON \
    -D ENABLE_PRECOMPILED_HEADERS=OFF \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D BUILD_EXAMPLES=ON ..

İnşaa

Make aracı ile inşaa etmeye başlayalım

make

Eğer ki çok çekirdekli bir işlemciye sahipseniz komutunuzu

make -j{çekirdek sayınızın bir eksiği}

şeklinde yeniden oluşturun. Örneğin 4 çekirdekli bir işlemci için

make -j3

şeklinde yazabilirsiniz.

Kurulum

sudo make install
sudo ldconfig

Bu komut virtualenv içerisinde iken opencv'nin python bindingini env içerisine kurar. Ancak C++ kütüphanesi ve ikili paylaşım kitaplıkları ana sisteme kurulur.