[搬家]BMP與DPI

     最近在工作中遇到了關於圖像處理相關的問題,這部分之前一直都一知半解的,儘管自己其實也算是做和打印機相關的內容,但這部分的基礎知識還是欠缺很多的。

基本情況是這樣的,我們做一個CT圖像的接收轉換服務,最終輸出到打印機之前,需要由其他人對這個圖像進行加工處理,其實就是將CT圖像中的病人信息等內容寫入到圖像內容上去,之前來來回回幾次驗證性測試搞了個人仰馬翻,因爲這個不是主要的方向,所以放給我的時間就特別少,恨不得今天告訴你,明天就要交程序出來那種,要是驗證不通過也是不成的,我底層是用DCMTK這個庫的, 當時編譯也花了我很長時間,這個就不說了。總之在認爲我已經搞定的時候,忽然我的上司接到一封郵件,轉給我們說我們轉換生成的BMP文件的DPI只有96,而打印機輸出最高可以到1200DPI云云,總之就是認爲我們的生成的圖片精度不夠高。

什麼叫DPI,在我印象中只記得它確實與圖像的精度有點關係,但具體的關係又是什麼呢?百度之Google之,以下的答案僅供參考,如有錯漏請及時通知我!

Dots Per Inch的縮寫。每英寸所打印的點數或線數,用來表示打印機打印分辨率。這是衡量打印機打印精度的主要參數之一。一般來說,該值越大,表明打印機的打印精度越高。

  dpi是指單位面積內像素的多少,也就是掃描精度,目前國際上都是計算一平方英寸面積內像素的多少。dpi越小,掃描的清晰度越低,由於受網絡傳輸速度的影響,web上使用的圖片都是72dpi,但是沖洗照片不能使用這個參數,必須是300dpi或者更高350dpi。例如要衝洗4*6英寸的照片,掃描精度必須是300,那麼文件尺寸應該是(4*300)*(6*300)=1200像素*1800像素。

以上的內容摘自百度百科,關於這個定義在網上到處都可以搜索的到,意思嘛,其實也不難理解,就是在一定的單位,多半是英寸內可以打印的點數。而這個又和圖片的精度有什麼關係呢?其實想想應該也不難,覺個不恰當的例子,你把我們平時的用戶頭像的GIF文件放到到屏幕牆紙的時候,那圖像質量是不是下降了呢?從我們看到的一定單位內用來表現圖片的像素點是不是少了呢,恩,大概意思就是這樣吧。

而這裏另外的一個主角就要上場了,BMP文件,一個我熟悉又不熟悉的文件格式,我平時只是很概念化的認爲他是無壓縮的,圖片質量高,圖像的體積大,僅此而已,再次百度之Google之,以下摘錄一些關於BMP的內容:

  典型的BMP圖像文件由四部分組成:

  1:位圖文件頭數據結構,它包含BMP圖像文件的類型、顯示內容等信息;

  2:位圖信息數據結構,它包含有BMP圖像的寬、高、壓縮方法,以及定義顏色等信息;

  3:調色板,這個部分是可選的,有些位圖需要調色板,有些位圖,比如真彩色圖(24位的BMP)就不需要調色板;

  4:位圖數據,這部分的內容根據BMP位圖使用的位數不同而不同,在24位圖中直接使用RGB,而其他的小於24位的使用調色板中顏色索引值。

看起來好像有點暈,恩,我們先看最後的位圖數據,就我個人理解來看,RGB信息是我們所熟知的,一般表示一個點的信息通過這三個數字就可以完成,而這三個數字也恰好可以表示一個像素點的顏色信息,而把他們看成一個整體的話,一個512像素*512像素的圖像是不是可以看做一個二維數組,而每個像素點的顏色信息由RGB的顏色信息來表示?恩,現在我是這樣理解的,如果有錯誤,定馬上來更改。

位圖數據搞定了已經,那前三個數據結構是什麼意思呢?程序員還是用程序來說話比較合適吧,這裏請參考

http://blog.sina.com.cn/s/blog_531028f00100d422.html

這裏有一個完整的BMP生成的程序,寫的還挺不錯的,佩服佩服!

已經到這裏的時候,我已經算是稍微瞭解了一些BMP的知識了,但和DPI又有什麼關係,回到開頭的問題,那究竟能不能提高DPI到300呢,而到300究竟有意義嗎?其實我們從DPI的定義上已經瞭解了,其實就算是把DPI提高了,每指定單位的點數提高了,而總的點數仍然保持不變,整個圖像的必然會縮小,在事實已經很明顯的時候,我的Team Leader也已經瞭解了準備去回信的時候,我卻是一個不信邪的人,看着生成的BMP文件的那個96DPI怎麼看怎麼不順眼,到底怎麼着才能變成300呢?其實很簡單,還是在剛纔那篇文章上的提到的關於BMP文件的頭裏面有這樣兩個屬性

在位圖屬性的第二部分數據信息裏biXPelsPerMeter和biYPelsPerMeter,從命名上已經可以看出來分別是指在X軸和Y軸上每米有多少點,而DPI不是指英寸嗎?而英寸和米的換算單位是多少?我的像素有多少,好吧,這裏應該很明顯了,將這個值設置後,我的BMP果然DPI上去了,尺寸果然減少了,像素還是沒有改變,也就這樣吧。哪天把我後來改的程序也一起放上來吧~

以上有任何內容侵犯您的版權,請及時聯繫我!

http://blog.csdn.net/changyu496/article/details/5708070

發佈了23 篇原創文章 · 獲贊 3 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章