绘制直方图


1,直方图

  横坐标——图像中各个像素的灰度级

  纵坐标——具有该灰度级像素的个数

2,归一化直方图:

  横坐标:图像中各个像素的灰度级

  纵坐标:出现该灰度级的概率

3,参数

DIMS----使用参数的数量(维度)

BINS-----参数子集的数目(对自变量分组的情况描述)

RANGE----统计灰度值的范围,一般为(0~255)。最小值:0,黑色;最大值:255,白色;(越深的颜色灰度值越小)

 

绘制直方图:

  1. 利用python库函数:matplotlib数据包:
    • hist函数:语法:hist(数据源,像素级)
      • 数据源:图像,必须是一维数组;一维数组=朵唯数组.ravel()————将二维数组转化为一维数组
      • 像素级一般是256
    • import cv2
      import matplotlib.pyplot as plt

      o=cv2.imread("G:\\photo\\blog\\img\\waterbox.jpg")
      cv2.imshow("original",o)
      plt.hist(o.ravel(),256)
      plt.show()
      cv2.waitKey()
      cv2.destroyAllWindows()
  2. 利用opencv里的函数统计直方图:
    • calchist函数:语法:
      • plt.plot(“img”)
      • plt.show()
  3. 直方图均值化:
    • 前提:如果一副图像占有全部可能的灰度级,并且均匀分布
    • 结论:该图像具有高对比度和多变的灰度色调
    • 外观:图像细节丰富,质量更高。
    • 原理:
      • 计算累计直方图
      • 将累计直方图进行区间转换
      • 在累计直方图中,概率相近的原始值,会被处理为相同的值
  4. subpolt函数:
    • 在一个界面里面显示几张图片
    • subplot(nrows,ncols,plot_number)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM