最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python+OpenCV繪制灰度直方圖詳解

 更新時(shí)間:2022年03月22日 10:09:51   作者:Vertira  
一幅圖像由不同灰度值的像素組成,圖像中灰度的分布情況是該圖像的一個(gè)重要特征。圖像的灰度直方圖就描述了圖像中灰度分布情況。本文將利用Python和OpenCV繪制灰度直方圖,需要的可以參考一下

1.直方圖的概念

圖像直方圖是反映一個(gè)圖像像素分布的統(tǒng)計(jì)表,其實(shí)橫坐標(biāo)代表了圖像像素的種類,可以是灰度的,也可以是彩色的??v坐標(biāo)代表了每一種顏色值在圖像中的像素總數(shù)或者占所有像素個(gè)數(shù)的百分比。圖像是由像素構(gòu)成,因?yàn)榉从诚袼胤植嫉闹狈綀D往往可以作為圖像一個(gè)很重要的特征。

圖像灰度直方圖:

一幅圖像由不同灰度值的像素組成,圖像中灰度的分布情況是該圖像的一個(gè)重要特征。圖像的灰度直方圖就描述了圖像中灰度分布情況,能夠很直觀的展示出圖像中各個(gè)灰度級(jí)所占的多少。圖像的灰度直方圖是灰度級(jí)的函數(shù),描述的是圖像中具有該灰度級(jí)的像素的個(gè)數(shù):其中,橫坐標(biāo)是灰度級(jí),縱坐標(biāo)是該灰度級(jí)出現(xiàn)的頻率

歸一化直方圖:

通常會(huì)將縱坐標(biāo)歸一化到[0,1]區(qū)間內(nèi),也就是將灰度級(jí)出現(xiàn)的頻率(像素個(gè)數(shù))除以圖像中像素的總數(shù)?;叶戎狈綀D的計(jì)算公式如下:

其中,rk是像素的灰度級(jí),nk是具有灰度rk的像素的個(gè)數(shù),MN是圖像中總的像素個(gè)數(shù)。

代碼

import cv2 as cv
import numpy as np
 
from matplotlib import pyplot as plt
#%matplotlib inline
 
def plot_demo(image):
    plt.hist(image.ravel(), 256, [0, 256]) #image.ravel()#ravel函數(shù)功能是將多維數(shù)組降為一維數(shù)組,統(tǒng)計(jì)各個(gè)bin的頻次,256:bin的個(gè)數(shù),[0, 256]:范圍
    plt.show("直方圖") #和OpenCV中的想要的直方圖不同
"""
畫灰度圖直方圖:
繪圖都可以調(diào)用matplotlib.pyplot庫來進(jìn)行,其中的hist函數(shù)可以直接繪制直方圖。
plt.hist(arr, bins=50, normed=1, facecolor='green', alpha=0.75)
hist的參數(shù)非常多,但常用的就這五個(gè),只有第一個(gè)是必須的,后面四個(gè)可選
arr: 需要計(jì)算直方圖的一維數(shù)組
bins: 直方圖的柱數(shù),可選項(xiàng),默認(rèn)為10
normed: 是否將得到的直方圖向量歸一化。默認(rèn)為0
range參數(shù)表示箱子的下限和上限。即橫坐標(biāo)顯示的范圍,范圍之外的將被舍棄
"""
 
def image_hist(image):
    color = ('blue', 'green', 'red')  #圖像三通道
    for i, color in enumerate(color):
        hist = cv.calcHist([image], [i], None, [256], [0, 256]) #繪制各個(gè)通道的直方圖
        plt.plot(hist, color=color) #定義線的顏色
        plt.xlim([0, 256]) #x軸的范圍
    plt.show()
"""
calcHist(images, channels, mask, histSize, ranges[, hist[, accumulate]]) 
images參數(shù)表示輸入圖像,傳入時(shí)應(yīng)該用中括號(hào)[ ]括起來
channels參數(shù)表示傳入圖像的通道,如果是灰度圖像,那就不用說了,只有一個(gè)通道,值為0,
如果是彩色圖像(有3個(gè)通道),那么值為0,1,2,中選擇一個(gè),對(duì)應(yīng)著BGR各個(gè)通道。這個(gè)值也得用[ ]傳入。
mask參數(shù)表示掩膜圖像。如果統(tǒng)計(jì)整幅圖,那么為None。
主要是如果要統(tǒng)計(jì)部分圖的直方圖,就得構(gòu)造相應(yīng)的掩膜來計(jì)算。
histSize參數(shù)表示灰度級(jí)的個(gè)數(shù),需要中括號(hào),比如[256]
ranges參數(shù)表示像素值的范圍,通常[0,256]。此外,假如channels為[0,1],ranges為[0,256,0,180],
則代表0通道范圍是0-256,1通道范圍0-180。
hist參數(shù)表示計(jì)算出來的直方圖。
"""
 
 
src = cv.imread("F:/images/lena.png")
cv.namedWindow("input image", cv.WINDOW_AUTOSIZE)
cv.imshow("input image", src)
plot_demo(src)
image_hist(src)
cv.waitKey(0)
 
cv.destroyAllWindows()

原圖

二維直返圖

RGB直方圖

到此這篇關(guān)于Python+OpenCV繪制灰度直方圖詳解的文章就介紹到這了,更多相關(guān)Python OpenCV灰度直方圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python基于twisted實(shí)現(xiàn)簡單的web服務(wù)器

    Python基于twisted實(shí)現(xiàn)簡單的web服務(wù)器

    這篇文章主要介紹了Python基于twisted實(shí)現(xiàn)簡單的web服務(wù)器,可模擬出簡單的web服務(wù)器功能,是很實(shí)用的技巧,需要的朋友可以參考下
    2014-09-09
  • 使用Arcgis做路徑規(guī)劃方式(使用python腳本調(diào)用)

    使用Arcgis做路徑規(guī)劃方式(使用python腳本調(diào)用)

    本文介紹了如何使用ArcGIS和Python來解決鐵路路徑規(guī)劃問題,通過配置ArcGIS、導(dǎo)入路網(wǎng)數(shù)據(jù)和列車行駛點(diǎn)數(shù)據(jù)、處理線要素、構(gòu)建拓?fù)浣Y(jié)構(gòu),可以使用Network?Analyst工具進(jìn)行路徑分析,最后,通過Python腳本自動(dòng)化處理大量數(shù)據(jù),生成最優(yōu)路徑
    2024-12-12
  • Python入門(六)Python數(shù)據(jù)類型

    Python入門(六)Python數(shù)據(jù)類型

    這篇文章主要介紹了Python入門(六)Python數(shù)據(jù)類型,Python是一門非常強(qiáng)大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • 利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程

    利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程

    這篇文章主要介紹了利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程,示例基于CentOS操作系統(tǒng),需要的朋友可以參考下
    2015-05-05
  • Spring http服務(wù)遠(yuǎn)程調(diào)用實(shí)現(xiàn)過程解析

    Spring http服務(wù)遠(yuǎn)程調(diào)用實(shí)現(xiàn)過程解析

    這篇文章主要介紹了Spring http服務(wù)遠(yuǎn)程調(diào)用實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 用Python進(jìn)行簡單圖像識(shí)別(驗(yàn)證碼)

    用Python進(jìn)行簡單圖像識(shí)別(驗(yàn)證碼)

    這篇文章主要為大家詳細(xì)介紹了用Python進(jìn)行簡單圖像識(shí)別驗(yàn)證碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Pytorch Tensor 輸出為txt和mat格式方式

    Pytorch Tensor 輸出為txt和mat格式方式

    今天小編就為大家分享一篇Pytorch Tensor 輸出為txt和mat格式方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • sklearn線性邏輯回歸和非線性邏輯回歸的實(shí)現(xiàn)

    sklearn線性邏輯回歸和非線性邏輯回歸的實(shí)現(xiàn)

    這篇文章主要介紹了sklearn線性邏輯回歸和非線性邏輯回歸的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • python升級(jí)pip及失敗處理方式

    python升級(jí)pip及失敗處理方式

    這篇文章主要介紹了python升級(jí)pip及失敗處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 在Python3 numpy中mean和average的區(qū)別詳解

    在Python3 numpy中mean和average的區(qū)別詳解

    今天小編就為大家分享一篇在Python3 numpy中mean和average的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評(píng)論

江门市| 包头市| 陇南市| 和田县| 西吉县| 车险| 扎鲁特旗| 绿春县| 左贡县| 凤城市| 中超| 博野县| 章丘市| 佳木斯市| 五指山市| 湖北省| 新乡市| 海林市| 光泽县| 买车| 甘肃省| 陆丰市| 青岛市| 吉木萨尔县| 高安市| 原阳县| 张家川| 勐海县| 仪征市| 台南县| 安乡县| 陇南市| 博爱县| 太白县| 灵石县| 正阳县| 大邑县| 嘉祥县| 宝兴县| 甘孜| 太仆寺旗|