การสุ่มตัวอย่าง Lanczos ใหม่คืออะไร
แม้ว่าทฤษฎีนี้จะอธิบายไว้ในบทความก่อนหน้านี้และบทความ Wikipedia "ความรู้สึก" สำหรับวิธีการสุ่มตัวอย่างใหม่นั้นทำได้ดีที่สุดโดยการคำนวณด้วยภาพธรรมดาหรือภาพมาตรฐาน นี่อาจเป็นหัวข้อที่กว้างใหญ่ซึ่งต้องมีการทดลองอย่างกว้างขวาง แต่มีการทำให้เข้าใจง่ายบางอย่าง:
ตัวดำเนินการเหล่านี้ทำงานแยกกันในแต่ละช่องสี ดังนั้นจึงพอเพียงที่จะศึกษาวิธีการทำงานของภาพโมโนโครม ("ขาวดำ")
ผู้ประกอบการส่วนใหญ่ที่ใช้ในการประมวลผลภาพทำงานแบบเดียวกันในทิศทาง x และ y และเป็นอิสระทั้งสองทิศทาง ในความเป็นจริงแล้วมันเป็นตัวดำเนินการมิติเดียวที่ใช้กับแถวก่อนแล้วจึงนำไปใช้กับคอลัมน์ ซึ่งหมายความว่าเราสามารถศึกษาได้โดยศึกษาภาพ "1D" ซึ่งสามารถลงรายละเอียดได้
ทุกสิ่งที่เราจำเป็นต้องรู้เกี่ยวกับตัวดำเนินการเชิงเส้น (ซึ่งรวมถึงตัวดำเนินการเชิงเส้นทั้งหมด) สามารถอนุมานได้จากวิธีที่ตัวดำเนินการทำงานบนอิมเมจที่ไม่คงที่ที่ง่ายที่สุดของทั้งหมด: นี่เป็นการกระโดดอย่างฉับพลันจากค่าหนึ่งไปอีกค่าหนึ่ง
ลองดูตัวอย่างของวิธีการสุ่มตัวอย่างยอดนิยมอีกหลายวิธี ที่จริงแล้วเราต้องการภาพประกอบสองภาพ: หนึ่งภาพเพื่อแสดงสิ่งที่เกิดขึ้นใน "downsampling" โดยที่ภาพใหม่นั้นหยาบกว่าภาพเก่าและอีกภาพหนึ่งดูที่ "upampling" ซึ่งภาพใหม่นั้นได้รับการปรับแต่งจากภาพเก่า มาเริ่มกันที่หลังเพราะมันจะแสดงรายละเอียดเพิ่มเติม
อัปแซมปลิง
ภาพต้นฉบับขนาด 7 x 7 ด้านซ้ายเป็นมิติเดียวเพราะแต่ละแถวเหมือนกัน การสุ่มใหม่เกิดขึ้นทั่วทั้งคอลัมน์ มิติของภาพอีกห้าภาพคือ 80 คูณ 80 โดยแสดงรายละเอียดว่าแต่ละวิธีแทรกระหว่างพิกเซลหยาบต้นฉบับได้อย่างไร การสุ่มตัวอย่างเพื่อนบ้านที่ใกล้ที่สุดยังคงรักษาความคมชัดระหว่างความมืดและความสว่างในขณะที่อีกสี่วิธีเบลอบริเวณที่แทรกแซง โดยเฉพาะอย่างยิ่งแลงคาสเตอร์ resampler สร้างบางพื้นที่ที่มืดกว่าในต้นฉบับและอื่น ๆ ที่เบากว่าในเดิม (สิ่งนี้อาจมีผลกระทบต่อการทำงานของ GIS เนื่องจากการคาดการณ์เช่นนี้ของค่าดั้งเดิมอาจทำให้ค่าใหม่ไม่ถูกต้อง พวกเขายังสามารถขยายเกินขอบเขตของแผนที่สีดั้งเดิมซึ่งบางครั้งทำให้ค่าสุดขีดในภาพที่แสดงตัวอย่างซ้ำถูกแสดงอย่างไม่ถูกต้อง นี่เป็นปัญหากับการเปลี่ยนรูปแบบการบิดแบบบิดเบี้ยว bicubic ใน ArcGIS เป็นต้น)
(หมายเหตุ: วิธีการ "bicubic" ที่แสดงที่นี่เป็นเส้นโค้ง bicubic ไม่ใช่ "bicubic convolution" ของ ArcGIS)
การใช้ความสว่างเพื่อแสดงถึงค่าของภาพแม้เป็นธรรมชาติไม่แม่นยำมาก ภาพประกอบถัดไปแก้ไขสิ่งนี้โดยทำกราฟค่าเซลล์ (แกนตั้ง) ตามคอลัมน์ (แกนนอน)
ค่าที่ต่ำกว่าบนกราฟสอดคล้องกับส่วนที่เข้มของรูปภาพ การตรวจสอบอย่างรอบคอบของต้นฉบับเผยข้อสันนิษฐานที่ซ่อนอยู่: แม้ว่าภาพต้นฉบับจะดูเหมือนการกระโดดที่คมชัดจากความมืดไปสู่แสงการกระโดดนั้นเกิดขึ้นจริงในระยะเวลาหนึ่งในเจ็ด (1/7) ของขอบเขตของคอลัมน์ ใครจะพูดว่าสิ่งที่เกิดขึ้นจริงในช่วงเวลานั้นในฉากดั้งเดิมที่ภาพปรากฎ? ดังนั้นเราจึงไม่ควรมีความสำคัญอย่างยิ่งต่อความแตกต่างระหว่างวิธีการสุ่มตัวอย่างใหม่ที่เกิดขึ้นภายในช่วงเวลาสั้น ๆ นี้: แต่ละอันมีความแตกต่าง แต่ให้การเรนเดอร์ที่ถูกต้องเท่ากันในสิ่งที่อาจเกิดขึ้นในฉากดั้งเดิม ในแง่นี้มันไม่ชัดเจนว่าการสุ่มตัวอย่างเพื่อนบ้านที่ใกล้ที่สุดเป็นวิธีการแก้ไขที่ซื่อสัตย์ที่สุด
ข้อสรุปหนึ่งที่เราควรจะวาดก็คือความถูกต้องของวิธีการอัปแซมปลิงใด ๆ ขึ้นอยู่กับลักษณะของฉากต้นแบบ หากเกิดเหตุประกอบด้วยค่าที่แตกต่างกันได้อย่างราบรื่นควรจากจุดหนึ่งไปยังอีกแล้ววิธีเพื่อนบ้านที่ใกล้ที่สุดคือแนวโน้มที่จะเป็นอย่างน้อยวิธีที่ซื่อสัตย์ของ resampling ในหมู่ผู้แสดง
downsampling
ที่นี่เราเห็นผลลัพธ์ของการสุ่มตัวอย่างภาพขนาด 16 x 16 ถึง 8 โดย 8 ภาพ (การรวม 2 คูณ 2) เพื่อนบ้านที่ใกล้ที่สุดรักษาขอบเขตความคมชัดอย่างแม่นยำ Lanczos แตกต่างจากคนอื่น ๆ โดยการเพิ่มความคมชัดที่ชัดเจน การมองอย่างใกล้ชิดแสดงให้เห็นว่ามันทำให้บริเวณที่มืดมืดลงในอีกด้านหนึ่งของขอบเขตและทำให้พื้นที่แสงสว่างขึ้นอีกด้านหนึ่ง กราฟชี้แจงสิ่งนี้:
resamplers bilinear, bicubic และ Gaussian แสดงลักษณะของผู้ประกอบการที่มีน้ำหนักเชิงบวกทั้งหมด (หรือน้ำหนักเชิงลบขนาดเล็กมาก): พวกเขาเฉลี่ยหรือ "ละเลง" ค่าใกล้เคียง ในการสุ่มตัวอย่างสิ่งนี้ทำให้คุณสมบัติที่คมชัดเบลอ ขอบเขตของการเบลอขึ้นอยู่กับความกว้างของเคอร์เนล เช่นเดียวกับคนอื่น ๆ resampler ของ Lanczos ก็พร่าเลือนไป แต่มัน "overshoots" ทั้งสองด้าน นั่นคือการเพิ่มความคมชัดที่เห็นเหนือภาพในตัวเอง ด้วยเหตุนี้แนวโน้มที่จะเพิ่มความคมชัด (ความแตกต่างในท้องถิ่นระหว่างเสียงสูงและต่ำในภาพ) ตัวส่งสัญญาณ Lanczos จึงมักเรียกว่า "ตัวกรองความคมชัด" กราฟเหล่านี้แสดงว่าตัวละครนี้ต้องมีความเข้าใจที่เหมาะสมเพราะเห็นได้ชัดว่ามันไม่ได้ลดค่าเฉลี่ยของการกระโดดทั้งสองข้าง ที่พิกเซล 4 ค่าของมันคือ 0.56 เทียบได้กับค่าที่คำนวณโดยตัวกรอง convolution อื่น
การใช้งานมีผลกับเอาต์พุตอย่างไร
ลองมาดูสิ่งที่เกิดขึ้นในภาพที่ซับซ้อนมากขึ้น
ตอนนี้ต้นฉบับซึ่งเป็นรูปภาพขนาด 13 x 13 ประกอบด้วยรูปแบบที่มีความถี่เชิงพื้นที่สูงที่สุดเท่าที่จะเป็นไปได้ (สลับระหว่างแสงกับความมืดกับคอลัมน์ทุกคอลัมน์ทางด้านขวา) เราไม่สามารถหวังที่จะทำซ้ำคุณสมบัติดังกล่าวเมื่อสุ่มตัวอย่าง: จำนวนพิกเซลที่น้อยลงก็ไม่สามารถเก็บข้อมูลทั้งหมดนี้ได้ เรามาโฟกัสกันแล้วว่าจะเกิดอะไรขึ้นเมื่อภาพนั้นอัพอัพกัน หากเราใส่ใจเกี่ยวกับการทำสำเนาฉากอย่างซื่อสัตย์เราจะต้องการให้ทำซ้ำรูปแบบความถี่สูงนี้อย่างแม่นยำ
ภาพที่มีขนาดเล็กกว่าจะมีการปรับความละเอียดเป็น 25 คูณ 25 พิกเซลซึ่งเกือบจะเป็นภาพที่มีการปรับแต่ง 2: 1 ในสายตาของฉันวิธีการ Lanczos และ bilinear ทำให้เกิดแถบสีที่คมชัดที่สุดในบรรดาตัวเปลี่ยนรูปแบบการบิดทั้งสี่แบบ แน่นอนว่าเพื่อนบ้านที่ใกล้ที่สุดคือสัตย์ซื่อที่สุด (เพราะไม่สามารถหาค่าเฉลี่ยได้เลย)
กราฟของผลลัพธ์เดียวกันนี้แสดงให้เห็นว่าเครื่อง resampler Lanczos สามารถรักษาความแตกต่างในแถบ (เท่าที่เห็นจากขนาดของการแกว่งในแนวดิ่งจากระดับต่ำถึงสูง) ที่ค่าใช้จ่ายในการแนะนำการเปลี่ยนแปลงของความเข้มภายในแสงคงที่ พื้นที่ตรงกลางของภาพ (พิกเซล 5, 6, 7 ของต้นฉบับ) การเปลี่ยนแปลงนี้แสดงให้เห็นว่าเป็นสิ่งประดิษฐ์แถบในส่วนแสงของภาพ (ตรงกลาง) จากตัวอย่างที่แสดงที่นี่เป็นเพียงการแนะนำรายละเอียดปลอม
มันมีประโยชน์อะไรในแอพพลิเคชั่นอวกาศ?
เห็นได้ชัดว่าการ resampling Lanczos ไม่ได้เป็นยาครอบจักรวาลหรือวิธีแก้ปัญหารถโดยสารเพื่อ resampling มันเหนือกว่าตัวแปลงสัญญาณแบบอื่น ๆ อีกมากมายในการรักษาความคมชัดของท้องถิ่น สิ่งนี้จะมีประโยชน์เมื่อรูปภาพ resampled สำหรับการดูตัวตนของคุณสมบัติหรือขอบเขตโดยละเอียด เมื่อภาพ resampled จะถูกวิเคราะห์หรือประมวลผลในภายหลังการ resampling Lanczos อาจเพิ่มความสามารถในการตรวจจับขอบและคุณสมบัติเชิงเส้น
เมื่อภาพ resampled จะถูกวิเคราะห์ในรูปแบบอื่น ๆ ประโยชน์ของการ resampling Lanczos เป็นที่น่าสงสัย โดยทั่วไปจะเพิ่มความสามารถในการวัดความแปรปรวนเชิงพื้นที่เช่นช่วงโฟกัสและส่วนเบี่ยงเบนมาตรฐานโฟกัส มันจะไม่ส่งผลกระทบต่อค่าเฉลี่ยเชิงพื้นที่ของภาพรวม - เช่นเดียวกับ resamplers ตัวแปลแบบอื่นมันมักจะทำให้เป็นมาตรฐาน (ซึ่งหมายความว่ามันเป็นค่าเฉลี่ยถ่วงน้ำหนักในท้องถิ่นโดยไม่มีอคติแนะนำ) - แต่มันอาจเพิ่มค่าเฉลี่ยในท้องถิ่น resamplers อื่น ๆ
การประเมิน (จำเป็นต้องสั้น ๆ ) ที่นี่ชี้ให้เห็นว่า resampler ของ Lanczos โดยทั่วไปไม่ควรใช้สำหรับการสุ่มตัวอย่าง: สำหรับแอปพลิเคชันนั้นดูเหมือนว่าจะไม่มีสิ่งใดที่ง่ายกว่า (และมีให้มากกว่าปกติ) วิธีการต่างๆ ของค่าข้อมูล
Afterword: ความคิดเห็นทั่วไป
การสอบสวนที่อธิบายไว้ที่นี่เป็นตัวอย่างของสิ่งที่ทุกคนสามารถทำได้เมื่อพวกเขามีคำถามเกี่ยวกับการทำงานของ GIS มันใช้ GIS เองเป็นหัวเรื่องของการตรวจสอบ: เพื่อทราบว่าการดำเนินการหรือวิธีการวิเคราะห์ทำได้เพียงแค่ใช้มันภายใต้เงื่อนไขการทดลอง ในกรณีนี้ให้สร้างภาพทดสอบอย่างง่ายให้ทำการสุ่มภาพใหม่ตามวิธีการที่มีอยู่และตรวจสอบผลลัพธ์
มีสามด้านที่สำคัญของวิธีการนี้เพื่อเรียนรู้เกี่ยวกับวิธีการทำงานของ GIS:
- ทฤษฎี การทดลองมักจะทำไม่ได้ "ตาบอด": ช่วยให้รู้ทฤษฎีบางอย่าง ปกติแล้วเราไม่จำเป็นต้องรู้อะไรมากมาย แต่เราต้องการพื้นฐาน ในกรณีนี้ทฤษฎีการโน้มน้าวใจลดจำนวนและประเภทของภาพที่เราต้องทดลองด้วยลงอย่างมาก เราไม่จำเป็นต้องรู้อะไรเกี่ยวกับการวิเคราะห์ฟูริเยร์ ฯลฯ (อย่าทำผิดความรู้เช่นนั้นมีประโยชน์ แต่การขาดความรู้เฉพาะด้านประเภทนี้ไม่ควรหยุดเรา)
- การปฏิบัติ โดยการใช้ระบบสารสนเทศภูมิศาสตร์ของเราเองที่จะดำเนินการทดลองที่เราสามารถที่จะเห็นสิ่งที่ไม่จริง นี้หลีกเลี่ยงการเชื่อมต่อระหว่างทฤษฎี (ซึ่งบอกเราสิ่งที่ซอฟต์แวร์ควรทำ) และการปฏิบัติ (ซึ่งเป็นสิ่งที่มันจริงๆไม่)
- การหาจำนวน หากคำถามนั้นเกี่ยวกับการรับรู้ด้วยสายตาสำหรับการประเมินผลเราไม่ควรพึ่งพาเพียงการดูแผนที่ (หรือในกรณีนี้คือภาพ) ในการรับข้อมูลที่ดีที่สุดเราจำเป็นต้องหาปริมาณผลลัพธ์ (ทำที่นี่ด้วยกราฟ) และมักจะอธิบายและสรุปด้วยวิธีการทางสถิติ