Bilgisayarlı Görme (Computer Vision)-Raspberry Pi OpenCv Kurulumu
Bu içeriğimizde Raspberry Pi’mize OpenCv kuracağız.Ortalama olarak 3 saatlik bir kurulum süreci var.Diskinizde en az 2GB’lık bir alan bulunması gerekmekte kurulumu tamamlayabilmek için.Kuruluma geçmeden önce sistemimizi güncelleyelim.Terminalimizi açalım ve aşağıda ki komutlar yardımıyla sistemimizi güncelleyelim ve tekrar boot edelim.
sudo apt-get update sudo apt-get upgrade sudo rpi-update sudo reboot
Ardından gerekli geliştirici ayarlarını yüklüyoruz.
sudo apt-get install build-essential cmake cmake-curses-gui pkg-config
Bu adımda ise geliştirme yaparken gerekli kütüphaneleri yükleyeceğiz.Direkt olarak kopyalarak terminale yapıştırabilirsiniz.(Eğer toplu halde yükleme işlemi yaparken hata verir ise , teker teker yüklemeniz gerekmekte)
sudo apt-get install \ libjpeg-dev \ libtiff5-dev \ libjasper-dev \ libpng12-dev \ libavcodec-dev \ libavformat-dev \ libswscale-dev \ libeigen3-dev \ libxvidcore-dev \ libx264-dev \ libgtk2.0-dev
Raspberry Pi içerisinde hali hazırda Python2.7 ve Python3 yüklü halde gelmekte.Şimdi OpenCv’yi python versiyonları için yükleme işlemine geçelim.
sudo apt-get install python2.7-dev python2-numpy sudo apt-get install python3-dev python3-numpy
Artık OpenCv depolarına giderek indirme işlemini başlatabiliriz.Bunun için bir klasör oluşturalım.
mkdir /home/pi/opencv
Klasörümüzün içerisine girelim.
cd /home/pi/opencv
Ve indirme işlemini başlatalım.
wget https://github.com/opencv/opencv/archive/3.2.0.zip -O opencv_source.zip wget https://github.com/opencv/opencv_contrib/archive/3.2.0.zip -O opencv_contrib.zip
Zip Dosyalarımızı çıkaralım.
unzip opencv_source.zip unzip opencv_contrib.zip
Şimdi ise cmake kurulumu yapacağız.
cd /home/pi/usbmem/opencv-3.2.0 mkdir build cd build
Cmake ayarlarımızı default ayarında bırakıyoruz.Direkt olarak kopyala yapıştır yaparak Enter tuşuna basabilirsiniz.”NEON” optimizasyonunu aktif ederek OpenCv performansını birazcıkta olsa arttırmış olduk.
cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D BUILD_WITH_DEBUG_INFO=OFF \ -D BUILD_DOCS=OFF \ -D BUILD_EXAMPLES=OFF \ -D BUILD_TESTS=OFF \ -D BUILD_opencv_ts=OFF \ -D BUILD_PERF_TESTS=OFF \ -D INSTALL_C_EXAMPLES=ON \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0/modules \ -D ENABLE_NEON=ON \ -D WITH_LIBV4L=ON \ ../
Yukarıda ki işlem bittiğinde şöyle bir çıktı almanız gerekmekte.
..... -- Configuring done -- Generating done -- Build files have been written to: /home/pi/opencv/opencv-3.2.0/build
Şimdi ise başka işlere devam edebilirsiniz.Bu adımımız yaklaşık olarak 2saat 20dk kadar sürmekte.
make -j4
Eğer yukarıda ki komuttan sonra %99 gibi rakamlarda takılma donma yaşarsanız aynı dizin içerisine girerek ,
make -j2
Komutuyla tekrar çalıştırabilirsiniz.Kaldığı yerden devam edecektir.Baştan başlamayacaktır. “make -j4” komutu ile donma yaşabilirsiniz çünkü aynı anda 4 çekirdeği de aktif olarak çalıştıracaktır.Bu adımdan sonra
[100%] Built target ...
ifadesini gördüyseniz neredeyse bitmiş demektir.Aşağıda ki 2 komutumuzu da girerek işlemi sonlandırıyoruz.
sudo make install sudo ldconfig
Dosyalarınızın bulunduğu konum ,
/usr/local/lib/libcv* /usr/local/lib/python2.7/dist-packages/cv* /usr/local/lib/python3.4/dist-packages/cv* /usr/local/include/opencv2/ /usr/local/bin/opencv_* /usr/local/share/OpenCV/
Test için terminale gelerek ,python3 yazın ve OpenCv’yi import edelim ve aşağıda ki
$ python3 Python 3.4.2 (default, Jan 6 2018, 14:11:11) [GCC 4.9.1] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import cv2 >>> print (cv2.__version__) 3.2.0 >>>
Çıktıyı alarak yükleme işleminin başarıyla sonuçlandığına inanabilirsiniz. 🙂 Eğer no module cv2 hatasını alıyorsanız adımları tekrar gözden geçirmeniz de fayda var.Bir sonra ki yazımızda kamera ile ilgili ayarlarımızı yapıyor olacağız.Görüşmek üzere , esen kalın.
Çok teşekkürler hocam bende rasp aldım yakın zamanda opencv ‘yi kuracağım herhangi bir hata olursa yazarım.
Hocam çok saol işe yaradı. Fakat imshow komutunda başka bir kütüphane istiyor. bir fikriniz var mı?