รูปแบบไบนารีของ ENVI (คลาสสิก) คืออะไร


11

ฉันเป็น Pythonist ในสำนักงานที่เต็มไปด้วยผู้ใช้ ENVI / IDL ฉันได้สร้างเครื่องมือบางอย่างเพื่อช่วยลดช่องว่าง แต่สิ่งที่ทำให้สะดุดใหญ่คือไฟล์ ENVI Classic .roi ซึ่งเพื่อนร่วมงานของฉันใช้บ่อยๆ

ฉันสามารถนำเข้า ENVI 5 ROIs ไปยัง Python ได้อย่างง่ายดายเนื่องจากรูปแบบข้อความจะง่ายต่อการแยกวิเคราะห์ อย่างไรก็ตามฉันไม่มีความรู้สึกที่ดีสำหรับรูปแบบไบนารีของไฟล์ ENVI Classic .roi ซึ่งประกอบไปด้วยการแลกเปลี่ยนข้อมูลจำนวนมากในกลุ่มของฉัน ไม่มีใครมีรหัสใด ๆ ที่อ่านหรือเขียนไฟล์เหล่านี้หรือมีความเข้าใจเกี่ยวกับวิธีการหนึ่งอาจไปเกี่ยวกับมัน

มันค่อนข้างน่าเบื่อถ้าจะยิง ENVI 5 ทุกครั้งที่ฉันอยากจะไปๆมาๆ - ฉันควรจะแก้ปัญหาที่ต้นกำเนิดถ้าเป็นไปได้

คำตอบ:


1

ฉันไม่ใช่ผู้เชี่ยวชาญของงูหลาม แต่มันควรจะง่ายถ้าคุณเขียนสคริปต์ที่สามารถแยกวิเคราะห์อ่านและเขียนไฟล์ ASCII ที่ได้มาตรฐาน

ตามที่แฮร์ริส Geospatial โซลูชั่นการพัฒนาในปัจจุบันของ ENVI, ENVI ไฟล์ภาพไบนารี (อธิบายที่นี่)ควรประกอบด้วยไฟล์ไบนารีและไฟล์ส่วนหัว ASCII (ตามที่กำหนดด้วยตัวอย่างที่นี่) หากต้องการอ่านไฟล์ภาพ ENVI คุณจะต้องแยกวิเคราะห์ส่วนหัว ASCII และเข้าถึงประเภทข้อมูล (จำนวนเต็ม, ลอย, ลงนาม / ไม่ได้ลงนาม ฯลฯ ), จำนวนแถบ, อินเทล(วงลำดับ, แบนด์ - บาย - โดย - พิกเซลหรือแบนด์ - อินเตอร์ - บายไลน์ ) ลำดับไบต์และข้อมูลอื่น ๆ ที่เกี่ยวข้อง ลองดูที่คำอธิบายรูปแบบไฟล์ส่วนหัวและตัวอย่างที่ลิงก์ไปด้านบน

ตอนนี้คุณรู้ว่าสิ่งที่ chunks ของไบนารีในการอ่านในเวลาที่สิ่งที่สั่งพวกเขาอยู่ในและวงดนตรีที่พวกเขาอยู่กับคุณพร้อมที่จะอ่านข้อมูลภาพ


ENVI ROIs ถูกจัดเก็บเป็นไฟล์ภาพหรือไม่? ฉันเดาว่าพวกเขามี "ขนาดเชิงพื้นที่เท่ากับแรสเตอร์ผู้ปกครองของพวกเขา" ตามHarris Geospatialแต่ใน UI มีการเลือกครึ่งพิกเซล (เส้นทแยงมุมแบ่งครึ่ง) ในระหว่างการลากเพื่อสร้าง ROI ดังนั้นดูเหมือนว่าจะต้องเป็น รูปแบบเวกเตอร์ของการจัดเรียงบางอย่างเว้นแต่จะมีการเรียงลำดับของธงแรสเตอร์สองบิตบางส่วน (เพื่อระบุทิศทางของรูปสามเหลี่ยม) อย่างไรก็ตามฉันจะพยายามตามที่คุณแนะนำและดูว่าฉันจะไปได้ไกลแค่ไหน!
Daven Quinn

ฉันคิดว่า "ไฟล์ภาพไบนารีของ ENVI" เป็นไฟล์คู่หนึ่งโดยไม่มีนามสกุลและอีกไฟล์หนึ่งมีนามสกุล ".hdr" แต่ไฟล์. roi ดูเหมือนจะอยู่ในรูปแบบไบนารี่ที่แตกต่างกันหรือไม่? ถ้าทุกสิ่งที่คุณต้องการคือโหลดไฟล์. hdr ให้ใช้แพ็คเกจ python นี้: spectralpython.net
MD004

Nope, ฉันกำลังมองแน่นอนสำหรับการแก้ปัญหาการอ่าน / เขียน ROIs โดยตรงไม่ได้เป็นเพียงส่วนหัวซึ่งสามารถอ่านได้ด้วยเช่น GDAL ขึ้นอยู่กับรูปแบบ ...
Daven ควินน์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.