zoukankan      html  css  js  c++  java
  • python+matplotlib对图片的灰度化处理

    https://www.jianshu.com/p/02064982f9f9

    彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255255255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。

    • 对图片的灰度化处理主要有下面三种方法,我们用一个简单的例子介绍下
      %matplotlib inline使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中。
    import matplotlib.pyplot as plt
    %matplotlib inline
    #使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中。
    

    先使用plt.imread读取图片

    im_data = plt.imread(r'C:\Users\‘\Documents\Tencent Files\2569046373\Image\C2C\E481588D70689018F723ADBAC6D938EC.jpg')
    im_data.shape
    
    >>>(240, 240, 3)
    

    把图片在展示出来一下,方便对照

    plt.imshow(im_data)
    
     
     

      1. 使用最大值法
    #(240,240,3) --->>> (240,240)
    '''
    1. 使用最大值法
    
    '''
    im_data[0,0]
    im_data1 = im_data.max(axis=2)
    im_data1.shape
    plt.imshow(im_data1,cmap='gray')
    
     
     
    • 2.使用平均值
    '''
    2.使用平均值
    '''
    im_data2 = im_data.mean(axis=2)
    im_data2.shape
    plt.imshow(im_data2,cmap='gray')
    
     
     
    • 3.加权平均法
    '''
    3.加权平均法
    '''
    import numpy as np
    im_data3 = np.dot(im_data,[0.299,0.587,0.114])    #[0.299,0.587,0.114]固定值
    im_data3.shape
    plt.imshow(im_data3,cmap='gray')
    
     
     

    [0.299,0.587,0.114]是固定值,人眼对绿色的敏感度最高,对红色的敏感度次之,对蓝色的敏感度最低,因此使用不同的权重将得到比较合理的灰度图像。实验和理论推导得出 0.299、 0.587、 0.114。



    作者:_aLIEz
    链接:https://www.jianshu.com/p/02064982f9f9
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    golang:bson.ObjectId与string转化
    Go语言的序列化与反序列化(gob)
    Go语言使用匿名结构体解析JSON数据
    Java课程设计---创建数据库工具类
    Java课程设计---实现登录(1)
    Java课程设计---新建项目及导入如何jar包
    Java课程设计---Eclipse基本环境配置
    Java课程设计---WindowBuilder插件安装
    Spring简单介绍
    【软件工程】简单考试题
  • 原文地址:https://www.cnblogs.com/auschwitzer/p/15697290.html
Copyright © 2011-2022 走看看