天天看點

真彩色、僞彩色、直接色的差別

真彩色與僞彩色、直接色的差別

  描述一幅圖像需要使用圖像的屬性。圖像的屬性包含分辨率、像素深度、真/僞彩色、圖像的表示法和種類等。本節介紹前面三個特性。

  搞清真彩色、僞彩色與直接色的含義,對于編寫圖像顯示程式、了解圖像檔案的存儲格式有直接的指導意義,也不會對出現諸如這樣的現象感到困惑:本來是用真彩色表示的圖像,但在VGA顯示器上顯示的圖像顔色卻不是原來圖像的顔色。

  1. 真彩色(true color)

  真彩色是指在組成一幅彩色圖像的每個像素值中,有R,G,B三個基色分量,每個基色分量直接決定顯示裝置的基色強度,這樣産生的彩色稱為真彩色。例如用RGB 5∶5∶5表示的彩色圖像,R,G,B各用5位,用R,G,B分量大小的值直接确定三個基色的強度,這樣得到的彩色是真實的原圖彩色。

  如果用RGB 8:8:8方式表示一幅彩色圖像,就是R,G,B都用8位來表示,每個基色分量占一個位元組,共3個位元組,每個像素的顔色就是由這3個位元組中的數值直接決定,如圖5-08(a)所示,可生成的顔色數就是224 =16 777 216種。用3個位元組表示的真彩色圖像所需要的存儲空間很大,而人的眼睛是很難分辨出這麼多種顔色的,是以在許多場合往往用RGB 5:5:5來表示,每個彩色分量占5個位,再加1位顯示屬性控制位共2個位元組,生成的真顔色數目為215 = 32K。

  在許多場合,真彩色圖通常是指RGB 8:8:8,即圖像的顔色數等于224,也常稱為全彩色(full color)圖像。但在顯示器上顯示的顔色就不一定是真彩色,要得到真彩色圖像需要有真彩色顯示擴充卡,目前在PC上用的VGA擴充卡是很難得到真彩色圖像的。

  2. 僞彩色(pseudo color)

  僞彩色圖像的含義是,每個像素的顔色不是由每個基色分量的數值直接決定,而是把像素值當作彩色查找表(color look-up table,CLUT)的表項入口位址,去查找一個顯示圖像時使用的R,G,B強度值,用查找出的R,G,B強度值産生的彩色稱為僞彩色。

  彩色查找表CLUT是一個事先做好的表,表項入口位址也稱為索引号。例如16種顔色的查找表,0号索引對應黑色,... ,15号索引對應白色。彩色圖像本身的像素數值和彩色查找表的索引号有一個變換關系,這個關系可以使用Windows 95/98定義的變換關系,也可以使用你自己定義的變換關系。使用查找得到的數值顯示的彩色是真的,但不是圖像本身真正的顔色,它沒有完全反映原圖的彩色。

  3. 直接色(direct color)

  每個像素值分成R,G,B分量,每個分量作為單獨的索引值對它做變換。也就是通過相應的彩色變換表找出基色強度,用變換後得到的R,G,B強度值産生的彩色稱為直接色。它的特點是對每個基色進行變換。

  用這種系統産生顔色與真彩色系統相比,相同之處是都采用R,G,B分量決定基色強度,不同之處是前者的基色強度直接用R,G,B決定,而後者的基色強度由R,G,B經變換後決定。因而這兩種系統産生的顔色就有差别。試驗結果表明,使用直接色在顯示器上顯示的彩色圖像看起來真實、很自然。

  這種系統與僞彩色系統相比,相同之處是都采用查找表,不同之處是前者對R,G,B分量分别進行變換,後者是把整個像素當作查找表的索引值進行彩色變換。

繼續閱讀