21
色彩模型 Color Models 影像處理 Dec. 16, 2014 銘傳資工 李遠坤 副教授 編撰

色彩模型 Color Models

Embed Size (px)

Citation preview

Page 1: 色彩模型 Color Models

色彩模型

Color Models

影像處理Dec. 16, 2014

銘傳資工李遠坤副教授編撰

Page 2: 色彩模型 Color Models

大綱

1. RGB色彩模型 RGB Color Model

2. YUV 色彩模型 YUV Color Model

3. RGB-YUV 色彩轉換 RGB-YUV Color Conversion

4. ICI 調色盤表示系統

ICI Color Palette Notation System

2

Page 3: 色彩模型 Color Models

RGB 色彩模型

RGB Color Model

3

Page 4: 色彩模型 Color Models

RGB色彩模型

• 色彩模型是用來表示色彩方

式, 在螢幕顯示方面, 最常見

的色彩表示方式有 RGB色彩

模型與 YUV色彩模型。

• RGB色彩模型又稱為三原色

光色彩模型, 是一種加色模型,

將不同程度的紅、綠、藍光

加在一起, 以呈現出不同的色

彩。

4

Page 5: 色彩模型 Color Models

RGB色彩模型 (續)

• 在三維空間座標上, 可以用

立方體來表示不同程度的

紅、綠、藍光 :

X軸表示紅色程度,

Y軸表示藍色程度,

Z 軸表示綠色程度。

5

X

Y

Z

RGB三維空間

Page 6: 色彩模型 Color Models

RGB色彩模型 (續)

• RGB三度空間上, 固定將其中一個原色為 0 , 其他兩個

原色用不同程度相加, 所呈現出來的不同平面: 綠藍、

紅藍、紅綠平面。

6

R=0 所呈現之 GB平面 G=0 所呈現之 RB平面 B=0 所呈現之 RG平面

Page 7: 色彩模型 Color Models

RGB色彩模型 (續)

• Tbitmap元件型態中所使用的色彩模型就是 RGB色彩模型。

• 不同的像素格式下, 用不同大小的位元來表示 RGB 色彩。

• 當 PixelFormat = pf24bit 時, 每個像素用 8個位元來表示 256

種不同的藍色,用 8個位元來表示 256種不同的綠色,用 8個

位元來表示 256種不同的紅色, 一共用 24位元來表現出各種

色彩值。。

7

Page 8: 色彩模型 Color Models

YUV 色彩模型

YUV Color Model

8

Page 9: 色彩模型 Color Models

YUV色彩模型

• YUV色彩模型與 RGB色彩模型相同, 也是用三個量來描述顏

色, 分別用 Y代表亮度 (luminance), U、V代表彩度

(chrominance )。

• 早期為了將彩色電視機訊號轉成黑白電視機訊號, 因此將亮

度與彩度分開, 只要將彩度的訊號捨棄即可。

• 後來, 由於人眼對於彩度變化較不敏感的緣故, 因此可以在彩

度訊號上做縮減取樣(down sampling), 達到資料壓縮的目的。

9

Page 10: 色彩模型 Color Models

YUV色彩模型 (續)

• U、V 用實數來表示, 範圍為

Y ϵ [0,1]

U ϵ [-0.436, 0.436]

V ϵ [-0.615, 0.615]

• 將亮度 Y設定為 0.5, 左圖是不

同程度的 U、V彩度變化情況。

• 正中間的點表示顏色沒有偏離特定

色彩, 故呈現灰色。越偏向外緣, 則

顏色呈現越鮮明

10

V

U

Page 11: 色彩模型 Color Models

YUV色彩模型 (續)

• YUV三度空間上, 分別將亮度 Y設定為 0、0.5、1,

彩度 U、V用不同程度值, 所呈現出來的不同 UV平面。

11

Y=0 Y=0.5 Y=1

Page 12: 色彩模型 Color Models

YUV色彩模型 (續)

• 就如同 RGB色彩模型一樣, 除了用實數表示之外, 也可用 8

位元的非負整數 (unsigned char) 來表示 Y、U、V值。

• 只要經過換算, 是可以將非負整數與實數間做對映的。

12

Page 13: 色彩模型 Color Models

RGB-YUV 色彩轉換

RGB-YUV Color Conversion

13

Page 14: 色彩模型 Color Models

RGB 與 YUV 轉換公式

• 實數空間的矩陣轉換公式:

14

B

G

R

V

U

Y

1001.051498.0615.0

436.028886.014173.0

114.0587.0299.0

V

U

Y

B

G

R

003211.21

58060.039645.01

13983.101

Page 15: 色彩模型 Color Models

RGB 與 YUV 轉換公式 (續)

• 整數運算的 RGB to YUV 轉換公式: (MSDN網站提供)

Y = ( ( 66 * R + 129 * G + 25 * B + 128) >> 8) + 16

U = ( ( -38 * R - 74 * G + 112 * B + 128) >> 8) + 128

V = ( ( 112 * R - 94 * G - 18 * B + 128) >> 8) + 128

• 注意

R、G、B 與 Y、U、V 都是 8 位元整數。

但計算過程中, 會需要用到 16位元整數。

因此, 寫程式時, 必須將 R、G、B宣告成 INT資料型態。

15

Page 16: 色彩模型 Color Models

RGB 與 YUV 轉換公式 (續)

• 整數運算的 YUV to RGB 轉換公式: (MSDN網站提供)

C = Y - 16

D = U - 128

E = V – 128

R = clip(( 298 * C + 409 * E + 128) >> 8)

G = clip(( 298 * C - 100 * D - 208 * E + 128) >> 8)

B = clip(( 298 * C + 516 * D + 128) >> 8)

• Clip() 函式將 R、G、B限制在 0 ~ 255 之間, 超過此範圍將被

設定成 0 或 255。C、D、E 同樣必須宣告為 INT整數型態。

16

Page 17: 色彩模型 Color Models

ICI 調色盤表示系統

ICI Color Palette Notation System

17

Page 18: 色彩模型 Color Models

ICI調色盤表示系統

• 三個屬性分別為色相(Color Hue)、明度(Light Reflectance)及

彩度(Chroma)。

30 YY 08 / 726

18

色相HUE

明度LRV

彩度CHROMA

Page 19: 色彩模型 Color Models

ICI 三度色彩編碼

• 色相:色彩相貌的名稱,如“紅

色”。依彩虹六大色相以反時針

方向形成色環,每一個色相編碼

由 00 至 99 劃分為 100 個色階。

19

• 例如: 30 YY 是帶有橙色調的黃色,它位於 YY色相偏

橙色的右邊位置。

Page 20: 色彩模型 Color Models

ICI 三度色彩編碼

• 明度:色彩表面對光線的反射程度。

明度編碼由 00 至 99 劃分為 100 個色階。

數值越高對光的反射就越高,顏色也就愈亮。

挑選明度數值時,需考量空間光線條件,

來呈現空間的理想亮度。

20

Page 21: 色彩模型 Color Models

ICI 三度色彩編碼

• 彩度:顏色鮮豔飽和的程度,其鮮濁度取決於色彩裡加入

黑、灰色的多寡。

彩度編碼由 000 至 999 ,高達 1000 個層次,

數值越高,顏色越鮮豔。

挑選彩度數值時,需考量欲傳達的空間情緒強度,

彩度越高所表現的情感越強烈。

21