IDL เป็นภาษาโปรแกรมเดี่ยวที่ยอดเยี่ยม (คุณไม่จำเป็นต้องใช้ ENVI) ฉันชอบมันสำหรับการประมวลผลเมทริกซ์ที่รวดเร็วมากในอาร์เรย์ขนาดใหญ่ @Aaron ทำให้เสียง IDL มีความยืดหยุ่นน้อยลง การพัฒนา IDL ส่วนใหญ่มาจากชุมชนฟิสิกส์และดาราศาสตร์ มีการสนับสนุนที่แข็งแกร่งสำหรับการเขียนโปรแกรมทางคณิตศาสตร์และสถิติ หากรวมกับ ENVI คุณจะสามารถเรียกใช้ไลบรารี (ฟังก์ชั่น) ทั้งหมดใน ENVI รวมถึงการสนับสนุนวัตถุเชิงพื้นที่เวกเตอร์ นอกจากนี้ยังมีฟังก์ชั่นและแบบจำลองจำนวนมากที่พัฒนาโดยชุมชนผู้ใช้ ข้อดีอย่างหนึ่งของการเรียนรู้ IDL ก็คือจะทำให้คุณสามารถทำการตลาดในร้านค้า "การวิเคราะห์" การสำรวจระยะไกล
นอกจากนี้อย่าลืมว่า ERDAS มีภาษาสคริปต์ (EML) ที่ค่อนข้างดีและเรียนรู้ได้ง่าย EML เป็นกระดูกสันหลังของผู้สร้างแบบจำลองกราฟฟิคและ gmd เป็นเพียงชุดสคริปต์ EML ที่อยู่ภายใต้ส่วนต่อประสานกราฟิกโมเดล ข้อได้เปรียบของการใช้ EML โดยตรงคือคุณสามารถใช้สำหรับ / ในขณะที่ลูปและมีการเข้าถึงฟังก์ชั่น ERDAS เพิ่มเติมในภาษาสคริปต์
MATLAB นั้นดีมากสำหรับการประมวลผลเมทริกซ์และมีรุ่นโอเพ่นซอร์ส (เช่น Octave) ที่มีไวยากรณ์เดียวกันกับการทดสอบมาตรฐานที่คล้ายกัน นี่เป็นภาษาที่มีความยืดหยุ่นสูงและมีกำลังมาก มันเป็นหนึ่งในภาษาที่ต้องการสำหรับคณิตศาสตร์ประยุกต์และวิศวกรรม
ทางเลือกของ Python NumPy และ SciPy นั้นมีความยืดหยุ่น แต่ไม่ได้รับการปรับให้เหมาะกับ IDL และ MATLAB คุณจำเป็นต้องจัดการกับพื้นที่ที่อยู่และความเร็วเมื่อทำงานกับอาร์เรย์ขนาดใหญ่ ข้อดีอย่างหนึ่งของ Python ก็คือไลบรารี่เพิ่มเติมสำหรับการปฏิบัติงานวิเคราะห์ที่หลากหลาย มีแพ็กเกจสำหรับการมีความรู้จากระยะไกล , สถิติไม่อิงพารามิเตอร์ผูกเรียนเชิงพื้นที่ (เช่น GDAL, LibLAS) เพื่อชื่อเพียงบางส่วนของการเพิ่มฟังก์ชันใช้ได้ผ่านแพคเกจ
นี่นำเรามาสู่อาร์ฉันเป็นนักสถิติเชิงพื้นที่ดังนั้นนี่คือภาษาประจำวันของฉัน จำนวนแพคเกจที่มีอยู่นั้นน่าประหลาดซึ่งในทางกลับกันก็ให้การเข้าถึงวิธีการทางสถิติที่ทันสมัย อย่างไรก็ตามฉันต้องบอกว่ามันยุ่งยากมากเมื่อจัดการกับปัญหาข้อมูลขนาดใหญ่ คลาสอวกาศเริ่มดีขึ้นมากและเนื่องจากแพ็คเกจแรสเตอร์ที่ให้ความสามารถในการเก็บข้อมูลขนาดใหญ่ออกจากหน่วยความจำตอนนี้ฉันสามารถนำแบบจำลองทางสถิติที่ซับซ้อนบางตัวมาใช้อาร์เรย์แรสเตอร์ขนาดใหญ่ แต่ยังคง R ช้าเมื่อจัดการกับปัญหาหน่วยความจำขนาดใหญ่ แพคเกจ BigMatrix ช่วยให้การเขียนและการประมวลผลอาร์เรย์ขนาดใหญ่จากดิสก์ แต่ค่าใช้จ่ายการเข้ารหัสไม่สำคัญไม่มีนอกจากนี้ยังมีการผูกกับซอฟต์แวร์ GDAL และ GIS (เช่น GRASS, SAGA) ที่อนุญาตให้การประมวลผลเชิงพื้นที่เกิดขึ้นนอก R ในซอฟต์แวร์เฉพาะ GIS ซึ่งเป็นวิธีที่ฉันโต้ตอบกับซอฟต์แวร์ GIS ในปัจจุบัน สิ่งนี้ทำให้ฉันสามารถใช้ประโยชน์จากฟังก์ชั่นของซอฟต์แวร์หลาย ๆ ตัวได้โดยไม่ต้องออกจาก R
ดังนั้นตอนนี้การเชียร์ลีดเดอร์ของซอฟต์แวร์ก็ไม่เป็นไปตามที่คาดไว้คำแนะนำของฉันคือ "ใช่กับตัวเลือกทั้งหมดข้างต้น" การเขียนโปรแกรมเป็นทักษะที่เมื่อเรียนรู้แล้วสามารถนำไปใช้กับภาษาอื่นได้อย่างง่ายดาย มีความคล้ายคลึงกันระหว่าง C ++, R, IDL และ Python นอกเหนือจากการเข้ารหัสนิสัยบางอย่างแล้วสิ่งที่เราต้องเรียนรู้ก็คือฟังก์ชั่นที่มีให้ใช้ในการสร้างแบบจำลอง / งานที่กำหนด เมื่อเสร็จแล้วมันเป็นเพียงเรื่องของไวยากรณ์ที่ใช้โครงสร้างการเข้ารหัสทั่วไป
บางครั้งมีสิ่งต่าง ๆ ที่ทำงานได้ดีขึ้นในซอฟต์แวร์หรือภาษาอื่น ฉันเขียนโค้ดเป็นครั้งคราวใน FORTRAN หรือ C ++ เพราะเป็นเพียงตัวเลือกที่ดีที่สุดสำหรับงานที่กำหนด มันเป็นเรื่องของการปรับตัว คุณอาจต้องการเริ่มต้นด้วย Python เพราะในฐานะที่เป็นภาษาสคริปต์มันสามารถนำไปใช้กับงานต่าง ๆ มากมายซึ่งยังมีความพร้อมของแพ็คเกจสำหรับการวิเคราะห์เฉพาะทางมีแหล่งข้อมูลออนไลน์ฟรีจำนวนหนึ่งและค่อนข้างง่ายต่อการเรียนรู้