ความแตกต่างระหว่าง ChannelCombination กับ LRGBCombination
กระบวนการ ChannelCombination กับ LRGBCombination ใน PixInsight มีชื่อคล้ายกันมาก จนหลายคนสับสนว่าควรใช้ตัวไหนเมื่อไร และคลิปสอนจำนวนไม่น้อยในอินเทอร์เน็ตก็มักใช้สลับกันไปมา บทความนี้ผมขอแบ่งปันวิธีใช้งานของตัวเอง พร้อมทั้งความแตกต่างที่แท้จริงในการคำนวณของทั้งสองกระบวนการ
วิธีที่ผมใช้
- LRGBCombination: ผมใช้คำสั่งนี้ในสถานะ Non-linear เพื่อแทนที่ L ในช่อง RGB ด้วย L หรือที่เรียกกันว่า “การเพิ่มช่อง L เข้าไปในภาพ RGB”
- ChannelCombination: สถานการณ์ที่ผมใช้บ่อยที่สุดคือการรวมสามช่อง RGB ในสถานะ Linear เพราะ ChannelCombination ไม่ประมวลผลอื่นใดด้วยตัวเอง เป็นเพียงการรวมช่องสัญญาณเท่านั้น (เทียบเท่ากับการแยกช่องสัญญาณของ ChannelExtraction)
โหมดการรวมของ ChannelCombination มี RGB HSV HSI CIEXYZ CIEL*a*b และ CIEL*c*h อาจมองว่าเป็น “PixelMath ที่มีอินเทอร์เฟซแบบคลิกเลือก” ดังนั้นโดยหลักการแล้ว การใช้ PixelMath ก็สามารถทำแบบเดียวกันได้ทุกประการ
ถามตอบ 1: ใช้ LRGBCombination รวม RGB ในสถานะ Linear แล้วจะเป็นอย่างไร?
เพื่อนนักถ่ายภาพดาราศาสตร์คนหนึ่งถามคำถามนี้ ภาพด้านล่างแสดงผลลัพธ์ เพื่อการเปรียบเทียบอย่างเป็นกลาง ภาพทั้งสองภาพในภาพนี้ใช้ STF screen stretch แบบเดียวกัน

จะเห็นได้ว่าผลลัพธ์ของ LRGBCombination (ภาพขวา) เมื่อเทียบกับ ChannelCombination (ภาพซ้าย) ไม่มีความแตกต่าง เพื่อป้องกันสายตาตัดสินผิดพลาด ผมยังขยายภาพไปถึงระดับพิกเซลเพื่อวัดค่าตัวเลข ก็ได้ผลเหมือนกันทุกประการ
แต่ต้องระวังว่าสิ่งนี้จะเป็นจริงก็ต่อเมื่อการตั้งค่าการแปลงของ LRGBCombination อยู่ที่ “ค่าเริ่มต้นทั้งหมด” เท่านั้น กระบวนการนี้มีตัวเลือกสำหรับปรับน้ำหนักของช่องสัญญาณ ฟังก์ชันการแปลง และการลดสัญญาณรบกวนสี เมื่อเปลี่ยนตัวเลือกเหล่านี้ ผลลัพธ์ก็จะแตกต่างจาก ChannelCombination
ถามตอบ 2: เหตุใดสีจึงมีปัญหาเมื่อใช้ LRGBCombination รวมภาพในสถานะ Linear?
มีเพื่อนนักถ่ายภาพดาราศาสตร์อีกคนหนึ่งถามว่า เหตุใดในสถานะ Linear เมื่อใช้ LRGBCombination รวม L R G B แยกกัน หรือรวม L กับ RGB แล้วสีจึงมีปัญหา?
คำตอบตรงกับบทความที่ผมเคยแบ่งปันไว้ก่อนหน้านี้ เพราะ LRGBCombination เป็นกระบวนการไม่เชิงเส้น จึงต้องทำงานในสถานะ Non-linear แม้ว่าการรวมช่อง RGB แบบธรรมดา (โดยคงค่าเริ่มต้นไว้) จะไม่เจอปัญหา แต่ทันทีที่มี L เข้ามาเกี่ยวข้อง หรือปรับพารามิเตอร์บนอินเทอร์เฟซ ก็อาจเกิดปัญหาได้