当前位置:首页  精选百科

精选百科

matlab直方图怎么画(直方图怎么画)

2023-09-13 09:34:08
导读 大家好,小活来为大家解答以上问题。matlab直方图怎么画,直方图怎么画很多人还不知道,现在让我们一起来看看吧!1、这里使用的模块是cv2,

大家好,小活来为大家解答以上问题。matlab直方图怎么画,直方图怎么画很多人还不知道,现在让我们一起来看看吧!

1、 这里使用的模块是cv2,默认的通道顺序是BGR:

2、 import cv2

3、 import numpy as np

4、 from matplotlib import pyplot as plt

5、 img=cv2.imread('b.png')

6、 img*[1,0,0]

7、 获取图片第一个通道的亮度统计(即像素值):

8、 import cv2

9、 import numpy as np

10、 from matplotlib import pyplot as plt

11、 img=cv2.imread('b.png')

12、 h=cv2.calcHist([img],[0],None,[256],[0,256])

13、 print(h)

14、 这里,h是一个255*1的列表。

15、 画出这个通道的直方图。

16、 因为这个通道是蓝色通道,所以直方图在这里被涂成蓝色:

17、 plt.plot(h,color='b')

18、 plt.xlim([0,256])

19、 plt.show()

20、 绿色通道的直方图:

21、 h=cv2.calcHist([img],[1],None,[256],[0,256])

22、 plt.plot(h,color='g')

23、 plt.xlim([0,256])

24、 plt.show()

25、 红色通道的直方图:

26、 h=cv2.calcHist([img],[2],None,[256],[0,256])

27、 plt.plot(h,color='r')

28、 plt.xlim([0,256])

29、 plt.show()

30、 组合三个通道的直方图,形成一个完整的直方图:

31、 c=('b','g','r')

32、 for i,col in enumerate(c):

33、 h=cv2.calcHist([img],[i],None,[256],[0,256])

34、 plt.plot(h,color=col)

35、 plt.xlim([0,256])

36、 plt.show()

本文到此结束,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!