目录:

(一)直方图的使用

正文:

(一)直方图的使用

 1 from matplotlib import pyplot as plt
2 def plot_demo(image):
3 print(image.ravel())
4 plt.hist(image.ravel(),256,[0,256]) #ravel将图像3维转一维数组,便于统计频率
5 # 统计为256个bin,显示0-255bin,意思是全部显示,我们可以设置只显示一部分
6 plt.show()
7 8 src = cv.imread("./1.png") #读取图片
9 cv.namedWindow("input image",cv.WINDOW_AUTOSIZE) #创建GUI窗口,形式为自适应
10 cv.imshow("input image",src) #通过名字将图像和窗口联系
11 image_hist(src)
12 cv.waitKey(0) #等待用户操作,里面等待参数是毫秒,我们填写0,代表是永远,等待用户操作
13 cv.destroyAllWindows() #销毁所有窗口

1 def image_hist(image):
2 color = ("blue","green","red")
3 for i,color in enumerate(color):
4 hist = cv.calcHist([image],[i],None,[256],[0,256])
5 plt.plot(hist,color=color) #传入直方图数据,设置显示颜色
6 plt.xlim([0,256]) #设定图标的上下限,默认是全选,可不用设置
7 plt.show()
1.def calcHist(images, channels, mask, histSize, ranges, hist=None, accumulate=None): # real signature unknown; restored from __doc__

images:输入图像
channels:需要统计直方图的第几通道
mask:掩膜,,计算掩膜内的直方图 ...Mat()
histSize:指的是直方图分成多少个区间,就是 bin的个数
ranges: 统计像素值得区间
hist:输出的直方图数组
accumulate=false:在多个图像时,是否累计计算像素值得个数

参考:

https://www.cnblogs.com/ssyfj/p/9270333.html

最新文章

  1. Java JDBC使用方法
  2. 文件代码对比软件 Beyond Compare
  3. Clough-Tocher
  4. iOS - OC 语言新特性
  5. Github原理
  6. PAT 1034. Head of a Gang (30)
  7. sdut 上机练习8面向对象编程(对象的数组)
  8. GLFW3出error adding symbols: DSO missing from command line解决
  9. NancyFX 第十一章 Bootstrapping
  10. 嵌入式C语言预处理使用
  11. build.gradle文件的注释
  12. Java类型信息
  13. (转)注解用法详解—@@SuppressWarnings
  14. activeMQ安全配置及常见问题解决
  15. PHP mysql 扩展库 操作mysql数据库步骤
  16. 使用纯真IP库获取用户端地理位置信息
  17. FutureTask、Fork/Join、 BlockingQueue
  18. MVC中提交表单的4种方式
  19. Git安装部署
  20. 使用LookAndFeel为界面更换皮肤

热门文章

  1. Python代码阅读(第12篇):初始化二维数组
  2. 服务注册中心之Eureka使用
  3. The Data Way Vol.5|这里有一场资本与开源的 battle
  4. 洛谷4400 BlueMary的旅行(分层图+最大流)
  5. CVPR2021提出的一些新数据集汇总
  6. iOS能否自动扫描周边wifi信息并通过密码连接
  7. [JVM-6]类加载器
  8. props&attrs provide inject
  9. tomcat内存马原理解析及实现
  10. MySQL复习(二)MySQL基本数据类型