zoukankan      html  css  js  c++  java
  • 图像二值化处理

    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位像素,彩色视频格式)
  • 相关阅读:
    马哥Linux——第三周作业
    [laravel]phpunit
    [laravel]要点
    [laravel]请求处理
    [angularJS]ng-hide|ng-show切换
    [yii2]urlmanger
    虚拟机bridged, NAT and host-only网络区别
    [yii]Fetch data from database and create listbox in yii
    [shell test] multiple conditions
    特殊的shell变量:
  • 原文地址:https://www.cnblogs.com/weixia-blog/p/12833624.html
Copyright © 2011-2022 走看看