python+matplotlib对柿子图的彩色和灰色直方图统计
生活随笔
收集整理的這篇文章主要介紹了
python+matplotlib对柿子图的彩色和灰色直方图统计
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
python+matplotlib對柿子圖的彩色和灰色直方圖統(tǒng)計(jì)
- 前言
- 代碼
- 有疑待查
- 參考鏈接
前言
最近在對柿子圖統(tǒng)計(jì)時(shí),遇到了np.histogram函數(shù)的參數(shù)bins的用法不理解,查找了大量資料后,有了初步理解,因此記錄下來。
代碼
#coding:utf8 import cv2 import matplotlib.pyplot as plt import numpy as np import sys import osfilename = 'E:\Study\preview.jpg' #柿子色彩圖 ##-------------色彩直方圖-----------## img = cv2.imread(filename) colors=['blue','green','red']for i in range(3):hist,x=np.histogram(img[:,:,i].ravel(),bins=256,range=(0,256))#img[:,:,i]是表示單個(gè)通道的集合.單個(gè)通道的集合是一行一行的,因此是二維數(shù)組,在這里使用raval方法切換為一維#bins是實(shí)際上對應(yīng)的就是X軸的坐標(biāo),你需要統(tǒng)計(jì)對某個(gè)元素進(jìn)行數(shù)量統(tǒng)計(jì)的集合,傳入256時(shí)表示從將rang(0-256)分成bins(即256等份,這樣間距剛好為1)份的每一個(gè)正整數(shù)都進(jìn)行數(shù)量統(tǒng)計(jì)#當(dāng)bins傳入指定數(shù)組時(shí)比如[0,1,3,4]則只會對這四個(gè)數(shù)進(jìn)行統(tǒng)計(jì)#rang是限制bins的上下限數(shù)值,超出range范圍的bins無效,比如當(dāng)range=(0,200)時(shí),bins=[80,100,244]中的255是無效的#返回值hist是每一個(gè)元素重復(fù)出現(xiàn)次數(shù)的合集#返回值X由bins決定,比如bins=256,則x就是0-256的所有整數(shù)和0的合集,如果bins傳入[0,1,2,4],那么x就只是[0,1,2,4]4個(gè)元素# print(hist)#print(x)# print(x[:-1])# print(x[1:])plt.plot(0.5*(x[:-1]+x[1:]),hist,label=colors[i],color=colors[i])#第一,第二個(gè)參數(shù)是x,y軸數(shù)值,后面的是風(fēng)格,label是標(biāo)簽說明,color是圖畫顏色#自己使用時(shí)發(fā)現(xiàn)必須使用legend方法才能顯示文字標(biāo)簽 plt.legend() plt.show() #------------------------------------------------------------# #灰度圖片直方圖統(tǒng)計(jì)imgGrey=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #直接拔柿子圖轉(zhuǎn)為灰度圖片 colors=['grey'] print(imgGrey.shape) for i in range(1):hist,x= np.histogram(imgGrey[:,:].ravel(),bins=256,range=(0,256))plt.plot(x[:-1],hist,label=colors[i],color=colors[i])plt.legend() plt.show()有疑待查
1.查找資料時(shí),發(fā)現(xiàn)作者在plt.plot中使用的是0.5*(x[:-1]+x[1:])來確定X軸的范圍,但我實(shí)際中發(fā)現(xiàn)x作為需要統(tǒng)計(jì)元素的集合,為何不直接使用x[:-1]作為X軸?所以在彩色圖和灰度圖中,我用了兩種不同的方法生成X軸坐標(biāo)
參考鏈接
https://blog.csdn.net/qq_37791134/article/details/104109378
總結(jié)
以上是生活随笔為你收集整理的python+matplotlib对柿子图的彩色和灰色直方图统计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: aardio - 虚表库全新升级,支持图
- 下一篇: websocket python爬虫_p