Linux'ta OpenCV kurmak ve program çalıştırmak üzerine
openCV kütüphanesini linuxta kuralım. Bu kurulum şekli zaman içerisinde değişiklikler gösterebilir. O yüzden en doğru olanı, resmi sayfalardan gelişmeleri takip etmek. Ben kde ile gelen bir ubuntu olan kubuntu kullanıyorum. Konsola geçiyoruz ve öncelikle şu komutla sistemimizi güncelliyoruz;
sudo apt-get install build-essential
Sonra gerekli bazı kütüphaneleri kurmak için şu komutu yazıyoruz;
sudo apt-get install libavformat-dev
Kurulum sırasında bir hata ile karşılaştım ve bir yerlerde libswscale-dev kütüphanesine ihtiyaç duyulduğunu gördüm. Bu kütüphaneyi kurabilmek için de benzeri şekilde;
sudo apt-get install libswscale-dev
Yazıyoruz. Kurulum sonrasında yine karşılaştığım başka bir problem de libgtk2.0-dev paketinin eksikliğinden kaynaklanmıştı. Bu paketi de;
sudo apt-get install libgtk2.0-dev
Komutu ile kuruyoruz. OpenCV nin en güncel kaynak kodlarını kendi deposundan çekeceğiz. Bunun için öncelikle şunu yazıyoruz;
sudo apt-get install subversion
Subversion kurulumu tamam ise kurulumu yapacağımız klasör altına geçip şunu yazabiliyoruz;
svn co https://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/trunk
Bu komutla gerekli tüm güncel kurulum dosyaları bilgisayarımıza aktarılacak.
Şimdi eğer bir programcığa daha ihtiyacımız olacak o da cmake.
sudo apt-get install cmake
Yazarak onu da yüklüyoruz. Şimdi indirdiğimiz dosyalarda opencv/ klasörünün içerisine girip;
mkdir release
Diyerek, release/ isminde bir klasör açıyoruz.
cd release cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
Komutları ile makefile ımızı oluşturuyoruz. Şimdi standart kurulum için;
make sudo make install
Komutları ile kurulumumuzu tamamlıyoruz. Kubuntu'da ben bu şekilde kurulumu hatasız olarak tamamladım. Şimdi shared objectlerimizi sistem tarafından tanımlı hale getireceğiz. Bunun için öncelikle;
sudo touch /etc/ld.so.conf.d/opencv.conf
Yazarak opencv'ye özel bir konfigürasyon dosyası yaratıyoruz. Bunu ;
sudo kate /etc/ld.so.conf.d/opencv.conf
Şeklinde bir editörle root olarak açıp içerisine /usr/local/lib yazıp kaydedip kapatıyoruz. Ardından;
sudo ldconfig -v
Yazarak bu değişiklikleri tanımlı hale getiriyoruz. opencv/samples/c/ klasörü altındaki kodları;
. build_all.sh
Yazarak derleyebilirsiniz. Ben örnek programlardan yüz yakalama programını ./facedetect komutu ile çalıştırdım, sonuç resmi de aşağıda.
sudo apt-get install build-essential
Sonra gerekli bazı kütüphaneleri kurmak için şu komutu yazıyoruz;
sudo apt-get install libavformat-dev
Kurulum sırasında bir hata ile karşılaştım ve bir yerlerde libswscale-dev kütüphanesine ihtiyaç duyulduğunu gördüm. Bu kütüphaneyi kurabilmek için de benzeri şekilde;
sudo apt-get install libswscale-dev
Yazıyoruz. Kurulum sonrasında yine karşılaştığım başka bir problem de libgtk2.0-dev paketinin eksikliğinden kaynaklanmıştı. Bu paketi de;
sudo apt-get install libgtk2.0-dev
Komutu ile kuruyoruz. OpenCV nin en güncel kaynak kodlarını kendi deposundan çekeceğiz. Bunun için öncelikle şunu yazıyoruz;
sudo apt-get install subversion
Subversion kurulumu tamam ise kurulumu yapacağımız klasör altına geçip şunu yazabiliyoruz;
svn co https://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/trunk
Bu komutla gerekli tüm güncel kurulum dosyaları bilgisayarımıza aktarılacak.
Şimdi eğer bir programcığa daha ihtiyacımız olacak o da cmake.
sudo apt-get install cmake
Yazarak onu da yüklüyoruz. Şimdi indirdiğimiz dosyalarda opencv/ klasörünün içerisine girip;
mkdir release
Diyerek, release/ isminde bir klasör açıyoruz.
cd release cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
Komutları ile makefile ımızı oluşturuyoruz. Şimdi standart kurulum için;
make sudo make install
Komutları ile kurulumumuzu tamamlıyoruz. Kubuntu'da ben bu şekilde kurulumu hatasız olarak tamamladım. Şimdi shared objectlerimizi sistem tarafından tanımlı hale getireceğiz. Bunun için öncelikle;
sudo touch /etc/ld.so.conf.d/opencv.conf
Yazarak opencv'ye özel bir konfigürasyon dosyası yaratıyoruz. Bunu ;
sudo kate /etc/ld.so.conf.d/opencv.conf
Şeklinde bir editörle root olarak açıp içerisine /usr/local/lib yazıp kaydedip kapatıyoruz. Ardından;
sudo ldconfig -v
Yazarak bu değişiklikleri tanımlı hale getiriyoruz. opencv/samples/c/ klasörü altındaki kodları;
. build_all.sh
Yazarak derleyebilirsiniz. Ben örnek programlardan yüz yakalama programını ./facedetect komutu ile çalıştırdım, sonuç resmi de aşağıda.
Comments
Ayrıca;
herşeyi yaptık kodu çalıştırdığımda böyle bir çıktı geldi.
http://www.ascioglu.org/semih/resim/Ekran%20G%C3%B6r%C3%BCnt%C3%BCs%C3%BC.png
resim ekleme olayını nasıl yaptın? isim olarak ne koyuyoruz yani.
Son olarakta bunu ip camera ile nasıl yapabiliriz görüntüyü alma olayını.
Baya bir zaman oldu openCV ile uğraşmayalı ancak gönderdiğiniz ekran görüntüsünde gördüğüm kadarıyla facedetect yapabilmek için ek bir dosya göstermenizi istiyor. Ben yazıda o kısmı açık olarak yazmamış olabilirim. Yanlış hatırlamıyorsam yüz belirleme algoritmasının çalışması için kurulum klasörlerinin içinde bir yerlerde "frontal" vb. isimleri olan xml dosyaları var onlardan birisinin tam yolunu verdiğinizde çalışması lazım diye hatırlıyorum.