2014年9月2日 星期二

影像格式與影像壓縮

數位相機為了減低記憶體的消耗,提供了數種壓縮格式來儲存影像。

1.影像類型 

電子圖檔主要是由像素(Pixel所構成的,一個影像檔就是由上百萬個像素以格狀的排列方式來顯示。電腦用多個位元的資料組合記錄每一個像素的亮度和色彩。影像資料的位元數越大,其儲存的資料量也就越大,也就是所佔的MB(記憶體)也越大。而依影像儲存的方式則可概分單位元影像(一般稱文字或黑白模式)、灰階影像和彩色影像三種類型。 
單位元影像,每個像素只用一個位元來記錄,其又分成兩種不同的類型:黑白影像(Line Art)和半色調影像(Halftone)。黑白影像(Line Art),最為簡單,以黑點和白點來記錄影像的變化,一般用於OCR的判讀。半色調影像(Halftone)則可產生近似灰階影像的錯覺效果,和黑白影像(Line Art)不同的是,較暗的區域是以較多的黑點來表示,而較亮的區域用較少的黑點來表示。因此,可以製造出成影像的層次感,報紙上看到的圖片多半屬於這類半色調影像。 
灰階影像,雖然也是黑白影像的一種,單它包含了更多黑色和白色的資料,特別是真實的紀錄了灰階層次!對於灰階影像而言,每個像素用更多的位元來表示,例如要表現 16 階的灰階需用到 4 個位元(bit),8 個位元則可以表現多達 256 階的灰階層次(256=2^8) ,也使得黑白照片的層次表現更加立體與真實。 
彩色影像包含的資料最為複雜。為了獲取彩色影像,數位相機和掃描器使用分色處理( RGB(紅色 Red 、綠色 Green 和藍色 Blue))來分析接收到的影像光線。透過這個模式,影像中所有的色彩都可以用紅綠藍三原色以不同強度還原而成。而隨著您所使用數位相機或掃描器的機型不同,依其設計可對色彩記錄的極限可達 24 位元、30 位元或 36 位元 RGB 像素不等。越多的色彩位元的資料代表越多顏色被解析出來(24 位元可記錄 1677 萬色,30 位元可記錄 10 億色,36 位元則記錄多達 687 億種色彩),但同樣的你的記憶也消耗的越快。
黑白影像(Line Art 半色調影像(Halftone
灰階影像(GREY) 彩色影像(RGB)

2.檔案格式 

隨著科技的進步,所需電腦處理的影像就越顯的複雜。為了因應龐大的影像資料所造成的顯示處理速度緩慢,攜帶不便等種 種缺點。電腦專家們想出了「影像壓縮」這種解決之道。影像壓縮可以根據原始影像資料來產生另外一組資料,這組資料就稱之為「壓縮結果」。壓縮結果的所佔的 記憶體大小通常比原始影像檔案小很多。而某些檔案格式所提供的壓縮結果是可還原的,透過適當的反壓縮法使能還原成原始影像。
目前影像壓縮的方法有很多種,基本上可以分為「無失真」及「有失真」兩類。例如我們常見的PCX GIF TIFF 、及TGA 等格式就是屬於無失真的影像壓縮格式, 其利用傳統壓縮原理及技術來處理影像檔案,所以壓縮前的原始影像與壓縮後還原的結果一樣。至於我們所熟知的 JPEG 則是屬於失真的影像壓縮格式。 
JPEG(Joint Photographic Coding Expert Group) 由國際標準組織(ISO) 和國際電話電報諮詢委員會(簡稱CCITT) 所建立的一個數位影像壓縮標準,用於靜態影像壓縮。於1987年正式推出,適用於儲存24位元全彩影像及縮小檔案大小,但不支援透明或動畫JPEG 採用可失真(Lossy) 編碼法的概念,利用數位餘弦轉換法(Discrete Cosine Transform,簡稱DCT) 將影像資料中較不重要的部份去除,僅保留重要的資訊,以達到高壓縮率的目的,JPEG格式運用壓縮運算法則可以將影像資料壓縮成數十分之一的大小。雖然被JPEG處理後的影像會有失真的現象,但由於JPEG 的失真比例可以利用參數來加以控制;一般而言,當壓縮率( 即壓縮過後的體積除以原有資料量的結果) 5% 15% 之間時,JPEC 依然能保証其適當的影像品質,這是一般無失真壓縮法所作不到的。 

GIF : 1987 年由Compu-serve 所提出的影像壓縮格式,所使用的壓縮方法是「藍波- 立夫- 衛曲編碼法」,又可稱為「字串表(String Table) 壓縮法」。其基本的原理是將原始影像資料中重複的字串編成一個表,然後再利用表上的索引值來取代原始影像資料中的字串,由於索引值的體積遠比原始影像中的字串體積來的小,故GIF 能影像有壓縮的效果, 但是GIF 編碼法其字串表沒有最大體積的限制,而且以「可變長度碼」來編碼其索引值,故可有效的節省壓縮後的空間,提高壓縮的比例。GIF 的缺點是限制GIF 色彩支援只到 256 。因此如果影像只是由單純的少數色彩所組成,例如用於網頁上的文字或商標,則 GIF 是一種相當合適的檔案格式。但若為連續色調或是有複雜色彩的影像,則 GIF 並不合適。
PCX : PCX 這種影像壓縮格式是由Zsoft 公司所設計發展出來的,它是以變動長度編碼法(Run Length Encoding ,簡稱RLE)為其核心壓縮技術,並以位元為基本單位,水平式(Row by Row) 的進行編碼。所謂變動長度編碼法,簡單而言即是以 「資料的重複次數」加上「原始資料內容」來編碼的方法,故它將每段重複的資料以二個位元組來表示。由於變動長度編碼法的演算法簡單、易懂、且程式設計十分簡單,所以被廣泛的運用在影像儲存方面。目前幾乎所有支援影像的軟體,都會使用 PCX 的檔案格式。然而,由於變動長度編碼法對於資料的內容相當敏感,隨著影像複雜度的不同,其壓縮率也會大幅的波動,因此PCX 並不能保持一定的壓縮水準,有時遇到重複性低的影像資料時, PCX 處理過的影像記憶體常常會不減反增。   
參考文獻和網址:http://www.jpeg.org/http://www.netmechanic2.com/GIFbotsample/faq.htm張真誠與蔡文輝(1994) :資料壓縮原理與實務。台北:松崗電腦圖書公司。戴顯權(1996):資料壓縮。台北:松崗電腦圖書公司。

沒有留言:

張貼留言