星期一, 8月 18, 2008

[Note]JFIF v.s Exif

JPEG的standard裡面
有提供了16個marker(FFE0~FFEF)給不同的application使用

這幾個marker 可是非常的好用呢
在WinXP 中檢視提供了 預覽縮圖,影片等方式
讓你可以不需要打開整張圖片
就可以看到小一點的圖
不知道有沒有人注意到
通常在第一次開這張圖片的時候
產生縮圖 會比較久
之後就很快可以看到小圖片了

這是因為阿 他把縮圖的資訊 記錄在App0 這個marker裡面了
另外常被這些marker也常被用來記錄照片的資訊
像是你用哪一家的相機 光圈調多少 快門的設定等等
都被記錄成這張圖片的資訊[EXIF(Exchangeable image file format)]

如果你聽過IJG(Independent JPEG Group)這個組織
他們也是有利用Appn來做一些紀錄的動作喔
由這個組織所建立的圖片 都會follow某個特別的標準
稱作 JFIF(JPEG File Interchange Format,JPEG檔案交換格式)

講這麼多東西 最主要的原因是
市面上一般由數位相機直接幫你存檔的jpeg圖片 都是附加EXIF
Even 是由photoshop 之累的軟體
也是會附加這張圖是由Adobe photoshop CS3 製作
(大家都喜歡蓋印章XDDD)
而OutGuess是利用IJG分享出來的source code做jpeg壓縮的動作
因此 當我們看到這張圖片的Appn 是JFIF格式的時候
相較於那些附加EXIF檔頭資訊的圖片
這張圖片有用outguess嵌入資訊的機率 就相對高了!!
--
附註
一直看那些16進位的東西很煩 看不懂亂碼
後來想想 搞不好EXIF 和JFIF都有固定的長相
到google找了一下
以下是JFIF Header的大概長相

然後這是Exif檔頭的樣子