ปรับสมดุลสีและเผยแพร่ภาพความละเอียดสูงจำนวนมากใน geoserver


11

ฉันมีรูปภาพ RapidEye จำนวนมาก (+300 Gb) ที่ฉันต้องการใช้เป็นแผนที่ฐานสำหรับแอปพลิเคชันออนไลน์ จนถึงตอนนี้ฉันได้ทำหน้าที่เป็น ImagePyramid ใน geoserver โดยทำตามขั้นตอนที่แสดงในงานนำเสนอที่เรียกว่า "Geoserver on steroids" ปัญหาคือฉันไม่สามารถทำสมดุลสีที่เหมาะสมดังนั้นเมื่อดูชุดข้อมูลทั้งหมดโมเสคดูไม่ดีมาก แต่เมื่อฉันซูมเข้าจะดีขึ้น (ภาพเบลล์)

กระบวนการของฉันคือ

  1. แปลงภาพทั้งหมดเป็น 8 บิต, epsg 4326, การแก้ไขลูกบาศก์โดยใช้ gdal
  2. สร้างแรสเตอร์เสมือน gdal ด้วยภาพทั้งหมด (gdalbuildvrt)
  3. สร้างปิรามิดของภาพ (gdal_retile พร้อมการบีบอัดและการไถแบบ geotiff) และเผยแพร่บน geoserver (โดยใช้การยืดฮิสโตแกรมในสไตล์เลเยอร์)

เคล็ดลับใด ๆ เกี่ยวกับวิธีปรับปรุงกระบวนการและให้ได้สมดุลสีที่ดีขึ้น

ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่

คำตอบ:


6

ฉันเชื่อว่าฉันได้รับมัน

ฉันบังคับให้ฮิสโตแกรมค่าเฉลี่ยเบี่ยงเบนมาตรฐาน + -2 ยืดในแต่ละภาพ RapidEye ระหว่างการแปลงเป็น 8 บิต

ฉันใช้สคริปต์หลามเพื่อระบุรูปภาพขั้นต่ำสูงสุดเฉลี่ยและ SD จากนั้นฉันตั้งค่าของค่าเฉลี่ย - 2SD (หรือรูปภาพขั้นต่ำแล้วแต่จำนวนใดจะสูงกว่า) เป็น 2 และหมายถึง + 2SD (หรือสูงสุด) ถึง 254 และเพื่อความปลอดภัยค่าดั้งเดิมของศูนย์ในภาพนั้นถูกตั้งค่าเป็น 1 และ 2 ^ 16 ตั้งค่าเป็น 255 NoData ถูกตั้งค่าเป็น 0

นี่คือฟังก์ชันถ่ายโอนเวกเตอร์:

original image values = [0, mean-2SD, mean+2SD, 65536]
rescaled values = [1 2, 254, 255]

ด้านล่างนี้เป็นภาพหน้าจอที่จับได้ ปัญหาที่ฉันต้องแก้ไขในตอนนี้คือ

  1. ลบเส้นขอบสีดำรอบ ๆ imagePyramid
  2. รับภาพที่ดูดีกว่าเมื่อซูมจนเต็ม ตอนนี้ดูเหมือนว่าทีวีตัวเก่าจะถูกปรับไปที่ช่องผิด

ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่

แก้ไข
ฉันได้วางโค้ดไว้บน GitHub แล้ว ฉันใช้ไปไม่นานแล้ว รหัสเป็นบิตยุ่งและเป็นที่เก็บ แต่ควรยังคงทำงาน
https://github.com/dvictori/rapideye_hist2sd


ไชโย คุณได้รับ 10 จาก 10 สำหรับสิ่งนี้ สำหรับข้อกังวลที่สองของคุณ (ดูดีขึ้นเมื่อซูมจนเต็ม) คุณสามารถใช้ภาพที่มีความละเอียดต่ำเช่น LandSat หรือ ASTER ได้หรือไม่? ฉันคิดว่าภาพที่หยาบจะดูดีขึ้นเมื่อซูมออก .. สำหรับความกังวลแรกของคุณฉันยังคงพยายามที่จะแตกถั่วตัวเอง ฉันชอบที่จะเห็นบทความที่ครอบคลุมสำหรับวิธีที่คุณทำสิ่งนี้รวมถึงสคริปต์ py หากคุณยินดีที่จะแบ่งปัน โอกาสใดที่คุณวางแผนที่จะนำเสนอแนวทางของคุณทุกที่?
elrobis

ฉันไม่ได้วางแผนที่จะนำเสนอสิ่งนี้หรือเขียนบทความ แต่ตอนนี้คุณพูดถึงใครจะรู้ มีข้อเสนอแนะเกี่ยวกับสื่อที่เหมาะสมสำหรับการนำเสนอสิ่งนี้หรือไม่? สำหรับสคริปต์ py คุณสามารถดาวน์โหลดได้จากdropbox.com/s/1hfobfp9ymtku2n/rapideye_hist2sd.py อย่างไรก็ตามควรได้รับการเตือน ฉันคิดว่าตัวเองเป็นโปรแกรมเมอร์ที่เส็งเคร็งและฉันมั่นใจว่าโปรแกรมของฉันสามารถใช้การปรับปรุงมากมาย
แดเนียล

2
ฉันเปลี่ยนลิงค์ดาวน์โหลดจากความคิดเห็นด้านบน หากคุณต้องการดูรหัส python ที่ฉันใช้คุณสามารถดาวน์โหลดได้จาก goo.gl/ePEc7G
Daniel

ขอบคุณ @Daniel ฉันเก็บบล็อกที่ฉันโพสต์วิธีการสำหรับสิ่งนั้น หากฉันสะดุดสิ่งที่ไม่ง่ายและที่ฉันไม่สามารถช่วยได้มากในเว็บฉันจะโพสต์บล็อกด้วยเหตุผลสองประการ อันดับแรกฉันคิดว่าฉันจะต้องทำซ้ำบางครั้งดังนั้นถ้าฉันรวมขั้นตอนในการโพสต์จากนั้นฉันสามารถตรวจสอบได้ในภายหลัง ประการที่สองฉันคิดว่ามีโอกาสที่ใครบางคนอยากทำสิ่งที่คล้ายกันและพวกเขาอาจได้รับประโยชน์จากโพสต์ สิ่งที่คุณทำที่นี่มีค่าเป็นบล็อกมากแม้ว่าจะเป็นเพียงโพสต์ของคุณสักครู่ :)
elrobis

นี่เป็นแนวคิดที่น่าทึ่งและฉันพยายามที่จะปรับให้เหมาะกับเฟรมที่เล็กกว่ากล้อง 3 แบนด์จาก 8 บิตเป็น 8 บิต แต่ฉันมีปัญหาในการใช้งาน ฉันจะนำไดเรกทอรีของรูปภาพที่ป้อนไปยังสคริปต์นี้ได้อย่างไร พวกเขาถูกเรียกจากที่ไหน ฉันเดาว่าสิ่งนี้จะต้องเรียกใช้ผ่าน geoserver ทั้งหมด แต่ฉันสามารถแยกย่อยและเรียกใช้แบบสแตนด์อโลนได้หรือไม่
Wes

4

Daniel ภาพเหล่านี้มาจากฤดูกาลที่แตกต่างกันหรือไม่? หรือเวลาของวัน? หากเป็นฤดูกาลที่แตกต่างกันการได้รับสมดุลสีที่ดีอาจจะค่อนข้างยาก แต่ถ้าหากเป็นช่วงเวลาที่แตกต่างกันของวันการใช้การแก้ไขสำหรับมุมของดวงอาทิตย์อาจช่วยได้อย่างชัดเจน การประมาณลำดับแรกที่ดีสำหรับมุมของดวงอาทิตย์คือการคูณพิกเซลคูณ 1.0 / cos (angle_of_sun_off_directly_above) ดังนั้นจึงไม่มีการปรับหากดวงอาทิตย์อยู่เหนือขึ้นไปเพิ่มเป็นอินฟินิตี้ที่ดีเมื่อคุณเข้าใกล้รุ่งเช้า

ฉันเคยมีผลลัพธ์ที่ไม่ดีในอดีตโดยใช้การจับคู่ฮิสโตแกรมระหว่างฉากในพื้นที่ที่ทับซ้อนกันเพื่อประกอบโมเสสขนาดใหญ่เพราะคุณจะได้เอฟเฟกต์การดริฟท์แปลก ๆ ฉันคิดว่าวิธีการที่มีประโยชน์มากขึ้นอาจจะเป็นการจับคู่ฮิสโตแกรมกับภาพเป้าหมายสีพื้นฐาน (อาจเป็นภาพโมเสคที่น่าสนใจของพื้นที่) ฉันสนใจที่จะแก้ไขปัญหานี้ด้วยเช่นกัน Charlie Loyd ที่ MapBox อาจมีความคิดเช่นกัน


แฟรงค์ภาพส่วนใหญ่มาจากหน้าแล้งเมื่อเมฆปกคลุมต่ำ แต่มีรูปภาพจากหลายเดือนเช่นสิงหาคมเดือนพฤศจิกายนเป็นต้นตอนนี้ฉันพยายามแบ่งภาพออกเป็นบล็อกเล็ก ๆ และทำโมเสกให้แต่ละภาพ จะให้คุณรู้ว่ามันจะเปิดออก ฉันยังเขียนสคริปต์หลามเพื่อทำการจับคู่ CDF และใช้งานได้ดี (ไม่ดี) เมื่อฉันมีภาพจำนวนเล็กน้อย (20) แต่เมื่อฉันไปถึงจำนวนมากภาพหนึ่งถูกผูกไว้กับค่านอกของฉัน ช่วงอิมเมจอ้างอิงแล้วสิ่งต่างๆก็หยุดทำงาน อาจต้องคิดถึงวิธีที่ดีกว่าในการเลือกภาพอ้างอิง
แดเนียล

0

บางครั้งฉันใช้ตัวเชื่อมโยงรูปภาพ OSSIM กับการจับคู่ฮิสโตแกรมเพื่อสร้างงานโมเสคที่สมดุลสี กวดวิชา linker รูปภาพให้ตัวอย่างบางส่วนhttp://download.osgeo.org/ossim/docs/pdfs/ImageLinker_Tutorial.pdf อย่างไรก็ตาม Image linker ไม่ได้รับการบำรุงรักษาอย่างแข็งขันและฉันไม่ทราบว่าจะทำงานได้นานกว่านี้หรือไม่ Ossim geocell เป็นโปรแกรมปัจจุบัน แต่มีเอกสารผู้ใช้ไม่มากนักเกี่ยวกับเรื่องนี้ ฉันจำได้ว่าเพื่อให้ได้ผลลัพธ์ที่ดีฉันได้เตรียมฉาก Landsat ของฉันไว้ครั้งแรกทีละตัวด้วย OpenEV โดยใช้ LUT ยืดเส้นบาง ๆ เพื่อทำให้ภาพมีลักษณะที่ปรากฏเหมือนกัน งั้นมันก็ง่ายกว่าสำหรับ OSSIM ที่จะทำการจับคู่ครั้งสุดท้าย ผลิตภัณฑ์สุดท้ายดูดีพอ ๆ กับที่ฉันทำกับยูทิลิตี้โมเสก ER Mapper

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.