本站提供简体中文版。切换到简体中文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این وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسی

認識影像的線性與非線性狀態

拉伸與非線性2021.02

天文後製常聽到「這個程序要在線性狀態下做」「那個要等非線性之後」,但到底什麼是線性、什麼是非線性?這曾經是我很難跟別人講清楚的觀念。後來我找到一個比較好的解釋方式——用 MTF 曲線來看。這篇就用 MTF 與 Histogram Transformation(HT)工具,把兩者的分界說明白。

用 MTF 曲線來定義線性與非線性

關鍵在於一個動作:只要你改變了 midtone(中間調)的位置,影像就不再是線性輸出了。

原因是,調整 midtone 會改變「不同亮度像素之間的間距比例」。原本各像素亮度彼此的相對關係是等比例的(線性),一旦 midtone 被移動,這個比例就被扭曲了,輸出自然變成非線性(可以對照 HT 工具輸出部分的曲線變化)。

未調整前的原始影像,處於線性狀態

調整 midtone 之後,影像進入非線性狀態

換個角度想會更直觀:傳統上一張天文照片剛疊完是漆黑一片、什麼都看不到(線性狀態),而我們要把它拉到能清楚看見目標——這個動作必然是大幅度的非線性拉伸。例如在 APP 中疊完圖後,除了會產生一張什麼都看不見的線性檔案外,如果你點右邊拉伸下方的存檔,就會再存一張經過拉伸的非線性照片。

(也有一說認為,幅度很小的調整仍可視為線性;本文採比較嚴格的定義——只要動了 midtone,就當作進入非線性狀態。)

只調 shadow 或 highlight,不會破壞線性

不是所有調整都會讓影像變成非線性。如果你只動 shadow(暗部端點)或 highlight(亮部端點),並不會改變像素間的線性關係,只是在做端點的縮放或裁切:

  • shadow 往右調:擴張暗部(把暗部拉開)。

shadow 往右調,擴張暗部

  • shadow 往上調:把暗部逐漸輸出成灰色。

shadow 往上調,暗部逐漸輸出成灰色

  • highlight 往左調:擴張亮部。
  • highlight 往下調:把亮部逐漸輸出成灰色。

highlight 相關調整對亮部的影響

補充一點工具上的細節:由於 PixInsight 的 HT 工具已經拿掉了 Low 與 High Ranges 選項,上面「往上調/往下調」(輸出成灰色)的示範,我改用 Curves 工具來呈現。

為什麼要在意這個分界

搞懂線性/非線性的意義很實際——許多影像處理程序(例如色彩校正、去卷積這類)必須在線性狀態下執行才正確;一旦你做了拉伸、動了 midtone,影像就進入非線性,某些程序的結果就會失準。因此在建立工作流程時,先想清楚「這一步該在拉伸前還是拉伸後做」,往往比記住每個按鈕更重要。