IDL harika bir bağımsız programlama dilidir (ENVI'ye ihtiyacınız yoktur). Büyük dizilerde çok hızlı matris işleme için bunu seviyorum. @Aaron, IDL'nin sesini gerçekten olduğundan daha az esnek hale getirir. IDL gelişiminin çoğu Fizik ve Astronomi topluluklarından geldi. Matematiksel ve istatistiksel programlama için güçlü bir destek var. ENVI ile paketlenmişse, uzamsal vektör nesneleri desteği de dahil olmak üzere ENVI'de bulunan tüm kütüphane çağrılarına (işlevlerine) sahipsiniz. Kullanıcı topluluğu tarafından geliştirilen çok sayıda işlev ve model de vardır. IDL öğrenmenin bir avantajı, sizi "analitik" uzaktan algılama mağazalarında pazarlanabilir hale getirmesidir.
Ayrıca, ERDAS'ın oldukça iyi ve öğrenmesi kolay bir betik diline (EML) sahip olduğunu unutmayın. EML, grafik modelleyicinin belkemiğidir ve gmd'ler sadece grafik modelleyici arabiriminin altında bulunan paketlenmiş EML komut dosyalarıdır. EML'yi doğrudan kullanmanın avantajı, döngüler için / while döngüleri kullanabilmeniz ve bir komut dosyası dilinde daha fazla ERDAS işlevine erişebilmenizdir.
MATLAB, matris işleme için de çok iyidir ve benzer ölçütlerle tam olarak aynı sözdizimine sahip açık kaynak sürümleri (örneğin, Octave) vardır. Bu, oldukça güçlü ve oldukça güçlü bir dildir. Uygulamalı matematik ve mühendislik için tercih edilen dillerden biridir.
Python alternatifleri NumPy ve SciPy esnektir, ancak IDL ve MATLAB kadar optimize edilmemiştir. Bu nedenle, büyük dizilerle çalışırken alanı ve hızı ele almanız gerekir. Python'un büyük bir avantajı, çeşitli analitik görevleri gerçekleştirmek için ek kütüphanelerdir. İçin paketler vardır uzaktan algılama , parametrik olmayan istatistikler sadece paketleriyle mevcut ek işlevsellik bazı isim mekansal sınıfların (örneğin GDAL, LibLAS) için, bağlamaları.
Bu bizi R'ye getiriyor. Ben öncelikle mekânsal bir istatistikçiyim, bu yüzden benim günlük dilim. Mevcut paketlerin sayısı şaşırtıcıdır ve bu da son teknoloji disiplinler arası istatistiksel yöntemlere erişim sağlamaktadır. Ancak, büyük veri sorunlarıyla uğraşırken çok hantal olduğunu söylemeliyim. Uzamsal sınıflar çok daha iyi hale geliyor ve büyük verileri hafızadan uzak tutma yeteneği sağlayan tarama paketi sayesinde artık büyük tarama dizileri kullanarak oldukça karmaşık bazı istatistiksel modeller uygulayabiliyorum. Ancak yine de, büyük bellek sorunlarıyla uğraşırken R yavaştır. BigMatrix paketi diskten büyük dizilerin yazılmasına ve işlenmesine izin verir, ancak kodlama yükü önemsiz değildir GDAL ve GIS yazılımına (ör. GRASS, SAGA), GIS'e özgü bir yazılımda uzamsal nesne işlemenin R dışında gerçekleşmesine izin verir, bu yüzden bu günlerde GIS yazılımıyla nasıl etkileşime gireceğim. Bu, R'den ayrılmadan birden fazla yazılımda işlevsellikten yararlanmamı sağlıyor.
Yani, şimdi amigo yazılım yoldan çıktı, benim tavsiyem "yukarıdaki tüm seçeneklere evet" dir. Programlama, öğrenildikten sonra diğer dillere kolayca uygulanabilen bir beceridir. C ++, R, IDL ve Python arasında çarpıcı benzerlikler vardır. Bazı kodlama becerilerinin yanı sıra, öğrenilmesi gereken şey, belirli bir modeli / görevi uygulamak için mevcut işlevlerdir. Bu yapıldıktan sonra, sadece ortak kodlama yapılarını uygulayan sözdizimi meselesidir.
Bazen farklı bir yazılımda veya dilde daha iyi çalışan şeyler vardır. Bazen belirli bir görev için en iyi seçim olduğundan FORTRAN veya C ++ 'da kod yazıyorum. Bu bir uyarlanabilirlik meselesidir. Python ile başlamak isteyebilirsiniz, çünkü bir komut dosyası dili olarak, özel analiz için paketlerin kullanılabilirliğini sağladığı, bir dizi ücretsiz çevrimiçi kaynağa sahip olduğu ve öğrenmesi biraz kolay olduğu için birçok göreve uygulanabilir.