色階與曲線(Levels and Curve)
影像處理的基本概念(Image Processing Basic)
像素尺寸會測量影像寬度和高度的像素總數;解析度則是指點陣影像的精細度,測量單位是每英寸的像素數目 (ppi),每英寸的像素越多,解析度就越高。一般而言,較高解析度的影像在輸出時可獲得較佳的品質。在 Photoshop 中可以在「影像尺寸」對話框 (選擇「影像 > 影像尺寸」) 中查看影像尺寸與解析度的關係。「點陣圖」模式使用 (黑色或白色) 兩個顏色數值其中一個來表現影像中的像素,也稱為點陣化 1 位元的影像,因為它們的位元深度為 1。
一張單色影像(monochrome image)或灰階影像(gray-level image)簡稱為影像,是一個二維的亮度函數f (x, y),其中x, y 是二維影像的空間座標(spatial coordinates),而函數值f 是(x,y) 點的亮度值(brightness
or intensity)。
亮度是一種能量(energy),所以亮度必需是大於零,小於無窮大的數值,0 < f (x,y) < 。
平常,我們所看到的物體大部份都不會發光,而是反射光源的光。
所以我們看到該物體表面的亮度f (x, y) 是光源照度i (x, y) 乘以物體表面材質的反射係數r (x, y) 所構成的,
f(x, y) = i(x, y) r(x, y) ,其中0 < i
(x, y) < , 0 < r (x, y) < 1。
i(x,y) 光源照度(illumination):外界光源照射在物體表面所呈現的亮度。
r(x,y) 反射係數(reflectance):物體表面反射外界光源照度的比例係數。
影像中一點一點的顆粒稱為相片單元(pictureelement),縮寫為像素(pixel),也有人稱畫素。
彩色影像(color image) 則視為重疊三張紅藍綠單色影像而成。
影像處理的概念就可以用g (x, y) = T ( f (x, y) )式子表示。
g(x, y)表示g在特定座標上的色彩值;
f(x, y)代表處理前影像的(x,
y)座標上的像素色彩值;
T用來表示影像的處理過程方式。
除了用到 f (x, y) 之外,還會用到鄰近像素的色彩值,如f(x-1, y-1)、 f(x-1, y)、 f(x-1, y+1)… 等等。
g (x, y) = T ( f (x, y) )此影像處理的式子表示又稱為點處理(point processing)。
本單元所要討論的 Phohoshop 色階(Levels) 與曲線(Curve) 都是屬於此類。
Phohoshop色階(Levels)
|
Phohoshop曲線(Curve)
|
|
|
影像處理的查表法(Lookup Table)運用
查表運算只使用到一次記憶體存取,g (x, y) = T ( f (x,
y) ) 的計算是相對耗時的,所以善用查表可達到快速的運算處理;實際進行影像處理時,只要透過色彩值做為索引值,直接查出所對應的輸出值,不需要進行實際的運算,就可以快速完成整張影像的轉換。。
假設針對一張解析度為 512 * 512 的影像比較使用查表法所提升的效能分析:
沒有使用查表法:
g (x, y) = T ( f (x, y) ) 必須計算 512*512 次。
g (x, y) = T ( f (x, y) ) 必須計算 512*512 次。
使用查表法:
g (x, y) = T ( f (x, y) ) 只要計算 256 次,
再透過查表 512 * 512 次。
g (x, y) = T ( f (x, y) ) 只要計算 256 次,
再透過查表 512 * 512 次。
Phohoshop色階(Levels)
|
|
如圖,將InputMin下界設定為45,InputMax上界設定為225,代表輸入影像中低於45的色階,調整為輸出色階OutputMin下界值0;輸入影像中高於225的色階,調整為輸出色階OutputMax上界值255。
|
如圖,若InputMin及InputMax介於45與225之間,則依比例調整至輸出色階的下界與上界間的色階值。
假設輸入的像素色彩值為100,
其輸出值將被調整為78。
|
|
輸入下界
= iInputMin
輸入上界 = iInputMax 輸出下界 = iOutputMin 輸出上界 = iOutputMax 原始色階 = iInput 調整後色階 = iOutput |
Phohoshop曲線(Curve)
|
|
曲線調整功能是以曲線表示影像處理的函數圖,透過輸出入色階的調整函數圖來調整影像色階,出現在函數圖形中的線條變成曲線不限於直線,使用者可以直接拖曳線條上的任何點,拖曳點個數上限可達 14,讓影像調整呈現出千變萬化的模樣。
|
要實作曲線功能的第一步必須先將使用者所拖曳出來的曲線之函數建構出來。
|
一個點的二次拋物線曲線的函式推導:
假設使用者所拖曳出來點位於座標 ( S, T ),除此,所拖曳出來的拋物線通過
( 0, 0 ) 與 ( 255, 255 ) 兩個點。
最後,透過上述之二次曲線方程式就可以針對所有像素的色彩值進行轉換。
注意!若轉換出來的 y 值超出色階的表示範圍 [ 0, 255 ],必須將 y 值強制設定為 0 或 255,如此影像才不會出現亮部突然轉換成暗部,或暗部突然轉換成亮部的特殊情形。
曲線(原圖)
曲線(X=128,Y=128)
曲線(X=180,Y=130)
曲線(X=130,Y=180)
色階的公式:
色階(原圖)
色階(InputMin:50,InputMax:200,OutputMin:0,OutputMax:255)
色階(InputMin:0,InputMax:255,OutputMin:50,OutputMax:200)
沒有留言:
張貼留言