目录
  • python直方图的计算

    直方图的定义

    直方图的性质

    只统计某个灰度级出现的次数,图像的大小不一样的话, 某灰度值的像素出现的次数是不一样的。
    那如果我们在这基础上除以像素总个数的话,那就是某一灰度级出现的概率,那么这样的话不同大小的同一内容图像其灰度直方图是一样的。

    直方图的应用

    图像增强

    图像分割

    图像识别

    python直方图的计算

    import cv2
    import numpy as np
    import matplotlib.pyplot as plt
    img = cv2.imread('cameraman.tif',0)
    img = img.flatten()
    img = img.tolist()
    myhist = []
    for i in range(0,256):
    	myhist.append(img.count(i))
    plt.rcparams['font.sans-serif'] = ['simhei']  # 用来显示中文标签
    # plt.rcparams['figure.dpi'] = 100 # 每英寸点数
    plt.figure()
    plt.bar(x=range(0,256),height=myhist,width=0.5)
    plt.title('直方图')
    plt.xlabel("灰度值")
    plt.ylabel("像素个数")
    plt.show()
    

    运行结果图:

    plt.rcparams参数设置:

    import matplotlib.pyplot as plt
    plt.rcparams['font.sans-serif']=['simhei'] # 用来显示中文标签
    plt.rcparams['axes.unicode_minus']=false # 用来显示负号
    plt.rcparams['figure.figsize'] = (16.0, 10.0) # 调整生成的图表最大尺寸
    plt.rcparams['figure.dpi'] = 300 # 每英寸点数
    调用plt.rcparams.keys()可获取rcparams的全部参数以及默认值。
    例如:
    'figure.dpi': 100.0   每英寸点数
    'figure.figsize': [6.0, 4.0]  生成的图表最大尺寸
    'font.size': 10.0  字体大小
    'hist.bins': 10  直方图分箱个数
    'lines.linewidth': 1.5  线宽
    'lines.marker': 'none'  标记样式
    'savefig.format': 'png'  保存图片的格式
    'savefig.jpeg_quality': 95  图片质量
    'text.color': 'black'  文本颜色
    'timezone': 'utc'  时区格式
    
    
    

    以上就是python数字图像处理基础直方图详解的详细内容,更多关于python数字图像处理基础直方图的资料请关注www.887551.com其它相关文章!