圖像二值化處理


RGB色彩描述模式

描述圖像的色彩模式有很多,比如RGB、HSB、CMYK,它們分別對應不同的描述媒介。其中RGB(紅綠藍,既光的三原色)是基於電子屏幕的一種色彩描述模式

電子圖像一般以像素為單位描述寬高,每個像素的顏色由R、G、B三個分量決定,每個分量取值范圍是0~255(RGB圖像是基於8位的圖像)

灰度化

圖像的灰度化處理,即根據算法讓R=G=B

from PIL import Image
image = Image.open('path')
Image.convert('L')

上面的代碼會將圖像轉換為8位的灰度圖像(只有黑、白),每個像素的灰度值范圍在0~255;

from PIL import Image
image = Image.open('path')
Image.convert('1')

上面的代碼會將圖像轉換為1位的灰度圖像(只有黑、白),每個像素的灰度值范圍在0-1;

二值化處理

二值化處理即灰度圖的灰度值只有兩個取值

我們通常使用Image.point方法進行二值化處理

Image.point(lut, mode=None)

lut可以是長度為256的查找列表,也可以是lambda表達式

處理灰度圖時,該方法使用每個像素的灰度值作為查找列表的索引進行查找,並將索引結果賦給灰度值;如果使用lambda表達式,會將灰度值作為參數傳入匿名函數中,並將結果賦給相應的像素

附Pillow模式描述

  • 1 (1位黑白像素,每字節存儲一個像素)
  • L (8位像素,黑白)
  • P (8位像素,使用調色板映射到任何其他模式)
  • RGB (3x8位像素,真彩色)
  • RGBA (4x8位像素,帶透明蒙版的真彩色)
  • CMYK (4x8位像素,分色)
  • YCbCr (3x8位像素,彩色視頻格式)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM