本站提供正體中文版。切換到正體中文本站提供简体中文版。切换到简体中文This site is available in English.View in Englishこのサイトには日本語版があります。日本語で表示이 사이트는 한국어로도 제공됩니다.한국어로 보기Diese Website ist auch auf Deutsch verfügbar.Auf Deutsch ansehenEste sitio web también está disponible en español.Ver en españolQuesto sito è disponibile anche in italiano.Visualizza in italianoCe site est également disponible en français.Afficher en françaisEste site também está disponível em português.Ver em portuguêsDeze website is ook beschikbaar in het Nederlands.In het Nederlands bekijkenЭтот сайт также доступен на русском языке.Смотреть на русскомयह वेबसाइट हिन्दी में भी उपलब्ध है।हिन्दी में देखेंهذا الموقع متاح أيضًا باللغة العربية.عرض بالعربيةSitus ini juga tersedia dalam bahasa Indonesia.Lihat dalam bahasa IndonesiaBu site Türkçe olarak da mevcut.Türkçe görüntüleTa strona jest dostępna także po polsku.Wyświetl po polskuTrang web này cũng có phiên bản tiếng Việt.Xem bằng tiếng Việtاین وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسیЦей сайт також доступний українською.Переглянути українськоюTato stránka je k dispozici také v češtině.Zobrazit v češtiněEz az oldal magyarul is elérhető.Megtekintés magyarulAcest site este disponibil și în limba română.Vizualizare în română

มีภาพเพียงสองภาพ จะทำ Stacking ด้วย PixelMath ได้อย่างไร

การประมวลผลล่วงหน้าและการ Stacking2022.08

เวลา Stacking ภาพ บางครั้งก็เจอสถานการณ์ที่น่าอึดอัดใจอย่างหนึ่ง คือมีภาพอยู่ในมือเพียงสองภาพ ImageIntegration ของ PixInsight มีเกณฑ์ขั้นต่ำอยู่อย่างหนึ่ง คือต้องมีภาพอย่างน้อยสามภาพขึ้นไปจึงจะยอมทำงาน ถ้าอย่างนั้นมีแค่สองภาพ จะไม่มีทางทำ Stacking ได้เลยหรือ? ที่จริงมีทาง เราสามารถข้าม ImageIntegration ไปใช้ PixelMath ลงมือทำเองแทนได้

พูดตรง ๆ “Stacking” ในทางคณิตศาสตร์ก็คือการนำภาพหลายภาพที่จัดตำแหน่งตรงกันแล้วมาเฉลี่ยแบบถ่วงน้ำหนัก เพื่อเพิ่มอัตราส่วนสัญญาณต่อสัญญาณรบกวน (SNR) ImageIntegration ทรงพลังก็เพราะนอกจากการเฉลี่ยแล้ว ยังช่วยทำ Normalization และคัดพิกเซลที่ผิดปกติออกให้ด้วย แต่การคัดพิกเซลผิดปกติออกนี้ต้องมีภาพอย่างน้อยสามภาพจึงจะทำได้ (ต้องใช้เสียงข้างมากตัดสินว่าพิกเซลไหนเป็นค่าผิดปกติ) ดังนั้นเมื่อเหลือภาพแค่สองภาพ เราก็ยอมใช้ทางเลือกรองลงมา คือใช้ PixelMath ลงมือทำด้วยตัวเองเฉพาะส่วนที่สำคัญที่สุด นั่นคือ “จัดตำแหน่งแล้วเฉลี่ย” ก็พอ

วิธีที่ง่ายที่สุด: บวกแล้วเฉลี่ย

การนำภาพสองภาพมารวมกัน โดยพื้นฐานแล้วก็คือการนำมาบวกกัน แล้วหารด้วยสอง สูตรที่ป้อนใน PixelMath ก็คือนำสองภาพมาบวกกันแล้วคูณด้วย 0.5 (หรือก็คือ ÷2)

ภาพประกอบสูตร PixelMath สำหรับเฉลี่ยสองภาพ

แบบนี้ก็จะได้ภาพผลลัพธ์ที่เป็นค่าเฉลี่ยของทั้งสองภาพ

อยากให้น้ำหนักต่างกัน? แยกสัมประสิทธิ์ออกจากกัน

ถ้าไม่ต้องการแค่ค่าเฉลี่ยธรรมดา แต่ต้องการให้สองภาพมีน้ำหนักต่างกัน ก็ให้ขยายสูตรออกมา แล้วปรับสัมประสิทธิ์หน้าภาพแต่ละภาพแยกกัน

ยกตัวอย่างเช่น

0.8*image1 + 0.2*image2

แบบนี้น้ำหนักของสองภาพก็จะกลายเป็น 4:1 ส่วนจะแบ่งสัมประสิทธิ์อย่างไร ก็ขึ้นอยู่กับการตัดสินใจของคุณต่อคุณภาพของสองภาพ ขอแค่สัมประสิทธิ์ทั้งสองรวมกันได้ 1 ก็พอ

ขอเตือนเรื่องสำคัญอย่างหนึ่ง ก่อนลงมือทำ อย่าลืมจัดตำแหน่งสองภาพให้ตรงกันก่อน หากไม่จัดตำแหน่งแล้วบวกกันเลย ดาวจะซ้อนกันเป็นภาพซ้อน ความพยายามที่ผ่านมาจะสูญเปล่า ขั้นตอนนี้ไม่ว่าจะใช้สูตรแบบไหนก็ตัดออกไม่ได้ PixelMath เป็นเพียงการคำนวณทีละพิกเซล จะไม่แก้ตำแหน่งที่เหลื่อมกันระหว่างสองภาพให้

ขั้นสูง: ทำ Normalization ก่อนแล้วค่อยเฉลี่ย

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

  1. ทำ Normalization ก่อน ปรับสเกลภาพที่จะนำไป Stacking ให้ตรงกับสเกลของภาพอ้างอิง
($T-median($T))*MAD(ReferenceImage)/MAD($T)+median(ReferenceImage)

สูตร PixelMath สำหรับทำ Normalization กับสองภาพ

  1. จากนั้นนำสองภาพมาเฉลี่ย เพื่อให้ Stacking เสร็จสมบูรณ์
($T+ReferenceImage)/2

สูตร PixelMath สำหรับเฉลี่ยสองภาพหลังทำ Normalization

ในสูตรมีสัญลักษณ์สองตัวที่ต้องอธิบาย

  • ReferenceImage หมายถึง ภาพที่ดีกว่าในสองภาพ ใช้เป็นภาพอ้างอิงสำหรับ Normalization
  • $T คืออีกภาพหนึ่ง

ข้อดีของการทำ Normalization ก่อน คือทำให้สองภาพอยู่บนพื้นฐานเดียวกันก่อนนำมาบวกกัน ป้องกันไม่ให้ความแตกต่างของพื้นหลังหรือสัญญาณของภาพใดภาพหนึ่งมาปนเปื้อนผลลัพธ์สุดท้าย สองภาพแม้จะมีจำนวนน้อย แต่ถ้าวิธีถูกต้อง ก็ยังสามารถ Stacking ออกมาเป็นผลงานที่สะอาดได้เหมือนกัน