Platform ve Geliştirme Ortamı Seçimi
OpenCV platform bağımsız bir kütüphanedir ve tüm platformlar için desteği bulunmaktadır. Projelerinizde kullanacağınız işletim sisteminde seçim şansınız var ise bu seçiminize yardımcı olabilmek ve platformların avantaj, dezavantajlarından bahsetmek istiyorum.
OpenCV’nin bir çok sınıfı doğrudan grafik kartı sürücülerini kullanmaktadır. Grafik kartı sürücüleri platformlara göre farklılık göstermektedirler. Örneğin OpenCV 3.x sürümü Windows işletim sistemlerinde Nvidia grafik kartına sahip bazı sistemlerde mavi ekran (blue screen) olarak adlandırılan hataya sebep olmaktadır. Grafik kartını kullanan sınıfların bazı fonksiyonları çalıştırıldığında bu hata ortaya çıkmaktadır, OpenCV soru&cevap sitesinde bu sorundan dert yanan bir çok kişiyi görebilirsiniz. Linux ve Mac platformunda ise şuan itibariyle böyle bir hata yoktur. Böylesi bir durumla karşılaştırsanız sürücü güncellemelerinizi yapmanızı çözüm bulamaz iseniz kullandığınız versiyonu veya platformu değiştirmenizi öneriririm.
Gömülü sistemlerde Raspberry Pi, OrangePi, Beaglebone, Banana Pi vb. kartlarda işletim sistemi seçerken daha önceki tecrübelerime dayanarak söyleyebilirim ki Debian Linux çatallaması işletim sistemleri çok daha performanslı çalışmaktadır.
Kitap içerisinde yer alan uygulamalar Java programlama dili çatısı altında Eclipse, Netbeans ve Android Studio ile geliştirilmiştir. Java öğrenmeye yeni başlamış birisi iseniz bu öneriler sizin içindir. Grafiksel kullanıcı arabirime (GUI) sahip, etkileşimli uygulamalar geliştirmek istiyorsanız Netbeans IDE kullanabilirsiniz. Hızlı kod geliştirmek ve çok fazla grfiksel olmayan uygulamalar için ise Eclipse IDE tercih edebilirsiniz. Yeni başlayan birisi iseniz Eclipse IDE ve size karmaşık gelebilir bu durumda Netbeans kullanabilirsiniz. Kitap içerisindeki mobil Android uygulama örnekleri ise Android Studio ile geliştirilmiştir. Tüm geliştirme ortamları için OpenCV kurulması ve ayarların yapılması anlatılacaktır.