欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python統(tǒng)計RGB圖片某像素的個數(shù)案例

 更新時間:2021年03月17日 09:39:25   作者:概率問題  
這篇文章主要介紹了python統(tǒng)計RGB圖片某像素的個數(shù)案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1.對于RGB三通道圖片,直接用兩層for循環(huán)的話,效率比較低

2.可以先將RGB圖片轉為灰度圖片,再利用numpy.where的廣播機制統(tǒng)計像素個數(shù)。這里有一個前提是提前知道與灰度圖片的像素值相對應RGB顏色。

代碼如下:

from PIL import Image
import numpy as np
import cv2

img_L = np.array(Image.open('test.png').convert("L"))
img_RGB = np.array(Image.open('test.png').convert("RGB"))

# temp = {}
# for i in range(img_L.shape[0]):
#   for j in range(img_L.shape[1]):
#     if not temp.get(int(img_L[i][j])):
#       temp[int(img_L[i][j])] = list(img_RGB[i][j])
# print(temp)

#這里得到灰度像素值0對應(0,0,0),62對應(19,69,139)
color_0_0_0 = np.where(img_L == 0)[0].shape[0]
color_19_69_139 = np.where(img_L == 62)[0].shape[0]

pixel_sum = img_L.shape[0] * img_L.shape[1]

print("0_0_0 像素個數(shù):{} 占比:%{}".format(color_0_0_0,color_0_0_0/pixel_sum*100))
print("19_69_139 像素個數(shù):{} 占比:%{}".format(color_19_69_139,color_19_69_139/pixel_sum*100))

補充:OpenCV---如何統(tǒng)計圖像的像素分布值個數(shù)(6)

代碼如下:

import cv2 as cv
import matplotlib.pyplot as plt
import numpy as np
def statistics():
  src = cv.imread("D:/matplotlib/0.jpg")
  cv.imshow("q",src)
  h,w,ch = np.shape(src)
  gray = cv.cvtColor(src,cv.COLOR_BGR2GRAY)
  cv.imshow("gray",gray)
  hest = np.zeros([256],dtype = np.int32)
  for row in range(h):
    for col in range(w):
      pv = gray[row,col]
      hest[pv] +=1
  plt.plot(hest,color = "r")
  plt.xlim([0,256])
  plt.show()
  cv.waitKey(0)
  cv.destroyAllWindows()
statistics()

運行效果:

像素分布統(tǒng)計圖

代碼解釋:

import cv2 as cv
import matplotlib.pyplot as plt
import numpy as np
def statistics():
  src = cv.imread("D:/matplotlib/0.jpg")
  cv.imshow("q",src)
  h,w,ch = np.shape(src)
  #讀取圖像屬性
  gray = cv.cvtColor(src,cv.COLOR_BGR2GRAY)
  #將圖像轉換成灰度圖,
  cv.imshow("gray",gray)
  hest = np.zeros([256],dtype = np.int32)
  #建立空白數(shù)組
  for row in range(h):
    for col in range(w):
      pv = gray[row,col]
      hest[pv] +=1
      #統(tǒng)計不同像素值出現(xiàn)的頻率
  plt.plot(hest,color = "r")
  plt.xlim([0,256])
  plt.show()
  #畫出統(tǒng)計圖
  cv.waitKey(0)
  cv.destroyAllWindows()
statistics()

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

  • 解決使用pandas聚類時的小坑

    解決使用pandas聚類時的小坑

    這篇文章主要介紹了解決使用pandas聚類時的小坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • 關于Python使用logging庫進行有效日志管理的方法詳解

    關于Python使用logging庫進行有效日志管理的方法詳解

    在開發(fā)大型軟件或處理復雜問題時,我們經(jīng)常需要一種方法來記錄和跟蹤程序的運行狀態(tài),Python 提供了一個名為 logging 的標準庫,可以幫助我們更好地完成這項任務,在這篇文章中,我們將介紹如何使用 Python 的 logging 庫進行日志記錄
    2023-06-06
  • 安裝PyTorch的詳細過程記錄

    安裝PyTorch的詳細過程記錄

    PyTorch是一個基于Python的科學計算框架,用于進行深度學習相關研究,下面這篇文章主要給大家介紹了關于安裝PyTorch的詳細過程,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • django站點管理詳解

    django站點管理詳解

    這篇文章主要介紹了django站點管理詳解,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python logging模塊進行封裝實現(xiàn)原理解析

    Python logging模塊進行封裝實現(xiàn)原理解析

    這篇文章主要介紹了Python logging模塊進行封裝實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • python保存兩位小數(shù)的多種方法匯總

    python保存兩位小數(shù)的多種方法匯總

    很多小伙伴在學習python的時候可能會遇到對數(shù)據(jù)進行格式化輸出的需求,其中最常見的需求為:保留幾位小數(shù),下面這篇文章主要給大家介紹了關于python保存兩位小數(shù)的多種方法,需要的朋友可以參考下
    2021-12-12
  • 簡單了解為什么python函數(shù)后有多個括號

    簡單了解為什么python函數(shù)后有多個括號

    這篇文章主要介紹了簡單了解為什么python函數(shù)后有多個括號,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Pandas使用query()優(yōu)雅的查詢實例

    Pandas使用query()優(yōu)雅的查詢實例

    本文主要介紹了Pandas使用query()優(yōu)雅的查詢實例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 使用Python代碼識別股票價格圖表模式實現(xiàn)

    使用Python代碼識別股票價格圖表模式實現(xiàn)

    這篇文章主要為大家介紹了使用Python代碼識別股票價格圖表模式的實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • Python中BeautifulSoup通過查找Id獲取元素信息

    Python中BeautifulSoup通過查找Id獲取元素信息

    這篇文章主要介紹了Python中BeautifulSoup通過查找Id獲取元素信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12

最新評論