Opencv'yi CUDA desteği ile derlemek ve kullanmak - Opencv 2.3
Öncelikle cuda desteği olmadan çıkarılmış release sürümü kurmam lazım. Onun anlatımı şurda idi (Onu halledip aşağıdan devam etmeli):
Opencv kurulumu – Opencv 2.3Baştan söyliyim cmake’i çok seveceksiniz. Opencv 2.2 sürümünden itibaren ekran kartı desteği vermeye başlamış olsa da varsayılan olarak bu özellik kapalı olarak geliyor. Kütüphaneyi tekrar derlemek gerekiyor.
-
Kurduğumuz yere gidiyoruz ve OpenCV2.3\opencv klasörünün altında “CMakeLists.txt” dosyasını buluyoruz. Bunu tutup cmake e atıyoruz.
-
Configure’e basıyoruz. Compileri soracak. Ona ben VS 2010’u seçtim (10).
-
Daha sonra hangi parametrelerle kod üreteceğini soruyor Cmake. Bu noktada değiştirilmesi gereken parametre “WITH_CUDA”. Bunun işaretli olduğundan emin olun. Ben “BUILD_EXAMPLES”ı falan da işaretledim. Pythonları seçmedim. Zaten sdkları yüklü olmadığı için hata veriyor işaretlesem de. Ondan sonra tekrar Configure’e basın. Tabi bunu yapabilmesi için bilgisayarda Cuda Toolkit kurulu olmalı. Kurulu değilse şurdan ulaşılabilir:
http://developer.nvidia.com/cuda-toolkit-40
KüçükNot: Qt’nin yüklü olmasına gerek yok bilgisayarınızda eğer işiniz yoksa. Ekran görüntüsüne çok bağlı kalınmamasına.
- Generate’e basılır.
- Cenereyşın bitince opencv'nin kurulu olduğu klasörde VS 2010 solution dosyalarının çıktığı görülür.
- Opencv.sln açılır. "Build solution" denir. Ve her şey zamana bırakılır. Bilgisayarın hızına göre değişse de bi yarım saat sürüyor bu süreç. Ekran kartı desteği (Gpu support) ile derleniyor kütüphaneler. Lib uzantılı dll uzantılı çıktıları üretiliyor. Dll ler --> OpenCV2.3\opencv\bin\Debug burda iken Libler OpenCV2.3\opencv\lib\Debug buraya çıkıyor.
- Deneme için OpenCV2.3\opencv\samples\gpu yolundaki gpu.cpp'yi kullanabiliriz. Yeni proje açıp bu kodu yapıştırdıktan sonra projeye opencv bağımlılıklarını ekleyerek ki bunlar Opencv kurulumu'nda anlatılmıştı derlemeye hazır hale getirebiliriz. Build ettikten sonra solution'ı çıktı klasörüne gidip exe'yi çalıştırabiliriz.
- exe sample olduğu için çalıştırmanın yolu yordamı var. Bir tane imaj dosyası vermemiz gerekiyor çalışması için. Videodan falan da çalışabilir parametrelere göre. Ctrl+r yapıp cmd yazıp komut satırını açıyoruz. cd ile exe'nin olduğu yola geliyoruz. Exe'yi çalıştırma kodunu yazıyoruz.
OpencvOrnek2Gpu.exe --src road.png
Gerisi resimde zaten:
------
Aynı kodu gpu support ile derlenmemiş liblerden oluşturup yine aynı şekilde gpusuz dll lerin yanına koyarsak şöyle bir uyarıyla karşılaşmamız kuvvetle muhtemel:
The library is compiled without GPU support