Raspberry Pi-3 OpenCV C++//Python Kurulumu
Hangi Raspberry Pi İşletimi? Rasbian Jessie
Hangi Programlama Dilleri için? Python ve C++
Daha Önceki OpenCV Kurulumlarını Kaldırma
sudo apt-get remove libopencv* sudo apt-get autoremoveKurulum için Ön Koşullar:
Sistemin güncellenmesi:
sudo apt-get update sudo apt-get upgrade sudo rpi-update sudo rebootEğer daha önce güncelleme yapmadıysanız bu işlemler biraz zaman alabilir. Ama sonuçta güncel bir sistem güvenlik ve kararsızlık açıklıklarından arınmış demektir.
Geliştirici Araçlarının Kurulması:
sudo apt-get install build-essential cmake cmake-curses-gui pkg-configKütüphanelerin Kurulması: (Kütüphane içeriklerini kendi ihtiyaçlarınıza göre düzenleyebilirsiniz.)
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-devEk Kütüphaneler:
sudo apt-get install libatlas-base-dev gfortran
Python Kurulumu:Raspbian Jessie üzerinde Python2 ve Python3 versiyonları zaten kurulu durumda biz OpenCV 3.2.0 ı her iki Python için kurmuş olacağız.
Python-dev ve numpy Kurulumu:
sudo apt-get install python2.7-dev python2-numpy sudo apt-get install python3-dev python3-numpy
Şimdi sırada OpenCV'nin indirilmesi ve yüklenilmesi işleminde:
OpenCV İndirme İşlemi:
sudo mount /dev/your-dev-name /home mkdir /home cd /home 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.zipSon iki satırdaki /3.2.0 ifadesi bizim OpenCV sürümümüzü gösteriyor. Eğer siz güncellemeyi yaparken yeni bir versiyon yayınlanmış ise sadece rakamları değiştirmeniz yeterli olacaktır.
Unzip İşlemi:
cd /home unzip opencv_source.zip unzip opencv_contrib.zipOpenCV Kurulum İşlemi:
OpenCV 3.2 yi Python2, Python3 ve C++ için kurarken CMake(text based user interface) kullanmamız gerekmektedir.
Çalışılacak Konumun Oluşturulması:
cd /home mkdir build cd buildOpenCV'nin İhtiyaçlara Göre Konfigürasyonu:
Bu ayarlamaları kendi ihtiyaçlarınıza göre şekilledirebilirsiniz. Ben Debug ve Test versiyonlarını kapattım. Çünkü Raspberry Pi üzerinde ihtiyaç duymadım. Ancak bilgisayar kurulumu yaparken kurmadığım ama performansa kattı sağladığı için NEON optimizasyonunu açık halde konfigurasyon yaptım.
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_PYTHON_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0/modules \ -D ENABLE_NEON=ON \ -D WITH_LIBV4L=ON \ ../Cmake konfigurasyonu birkaç dakika sonra bitecektir ve şöyle bir uyarı görmeniz lazım:
.....
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/usbmem/opencv/opencv-3.2.0/build
Eğer "Generating done" ifadesini görmüyorsanız. Birşeyler ters gitmiş demektir. Hata mesajını kontrol edip çözebilirsiniz. Eğer yine halledemezseniz bana mesaj atmaktan çekinmeyin.Cmake TextGUI Gözden Geçirme:
Eğer hata mesajı aldıysanız, aşağıdaki listeyi kontrol edin ve gerekli düzenlemeleri yapın, hata mesajı almadıysanız bu adımı atlayabilirsiniz
$ ccmake ../ Page 1 of .. ANT_EXECUTABLE ANT_EXECUTABLE-NOTFOUND BUILD_CUDA_STUBS OFF BUILD_DOCS OFF BUILD_EXAMPLES OFF BUILD_JASPER ON BUILD_JPEG ON BUILD_LIBPROTOBUF_FROM_SOURCES OFF BUILD_OPENEXR OFF ... more options here .... Press [enter] to edit option Press [c] to configure Press [h] for help Press [q] to quit without generating Press [t] to toggle advanced mode (Currently Off)OpenCV'yi Çalıştırma:
make -j4Compile işlemi biraz zaman alabilir. Bu arada kahvenizi alıp kitap okuyabilirsiniz.. İşlem bittikten sonra:
[100%] Built target ...Şimdi Kelimenin Tam Anlamı ile Yükleme İşlemi Yapıyoruz:
sudo make install sudo ldconfigTebrikler Raspberry Pi görüntü işleme için hazır.
/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/Yüklemeyi Test
Python2 ve Python3 için:
Terminal üzerinde aşağıdaki komutlar ile aynı çıktıyı almanız lazım
$ python3 Python 3.4.2 (default, Oct 19 2014, 13:31:11) [GCC 4.9.1] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import cv2 >>> print (cv2.__version__) 3.2.0 >>>C++ kurulumunu Test etmek için:
Yeni bir boş text dosyası oluşturun. Adını resizing.cpp yapın.
#include "iostream"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/core/core.hpp"
using namespace std;
using namespace cv;
// this function represents the size of the image for comparing
void printsize(Mat &,Mat &);
int main()
{
// firstly read and show an image
Mat image,resized;
image = imread(".../mirror.jpg",1); // address of the image in you computer
namedWindow("Display image",1);
imshow("Display image",image);
// resizing the input image
resize(image, resized, Size(), 0.5, 0.5, 1); // third parameter represents the output size
namedWindow("Display resized image", 1);
imshow("Display resized image", resized);
// to check the resizing
printsize(image,resized);
waitKey(0);
return 0;
}
void printsize(Mat &image, Mat &resized) {
int r1, c1, r2, c2;
r1 = image.rows;
c1 = image.cols;
r2 = resized.rows;
c2 = resized.cols;
cout << r1 << " " << c1 << endl;
cout << r2 << " " << c2 << endl;
}
Yukarıdaki kod bloğunu boş text dosyasına kopyalayın ve terminalde:g++ $(pkg-config --libs --cflags opencv) -o resizing resizing.cppKomutu ile çalıştırın. Text dosyanızın olduğu klasörde yeni bir dosyanın oluşturulduğunu göreceksiniz. Çift tıklayıp çalıştır dediğiniz zaman resmin resize edildiğini göreceksiniz.
23 yorum: