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

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

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

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

2.可以先將RGB圖片轉(zhuǎn)為灰度圖片,再利用numpy.where的廣播機(jī)制統(tǒng)計(jì)像素個(gè)數(shù)。這里有一個(gè)前提是提前知道與灰度圖片的像素值相對(duì)應(yīng)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對(duì)應(yīng)(0,0,0),62對(duì)應(yīng)(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 像素個(gè)數(shù):{} 占比:%{}".format(color_0_0_0,color_0_0_0/pixel_sum*100))
print("19_69_139 像素個(gè)數(shù):{} 占比:%{}".format(color_19_69_139,color_19_69_139/pixel_sum*100))

補(bǔ)充:OpenCV---如何統(tǒng)計(jì)圖像的像素分布值個(gè)數(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()

運(yùn)行效果:

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

代碼解釋:

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)
  #將圖像轉(zhuǎn)換成灰度圖,
  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)計(jì)不同像素值出現(xiàn)的頻率
  plt.plot(hest,color = "r")
  plt.xlim([0,256])
  plt.show()
  #畫出統(tǒng)計(jì)圖
  cv.waitKey(0)
  cv.destroyAllWindows()
statistics()

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

相關(guān)文章

最新評(píng)論

台东市| 辽阳县| 宜丰县| 布拖县| 台中市| 两当县| 肇东市| 灵丘县| 孟村| 鄯善县| 固阳县| 永定县| 邵阳县| 德化县| 北辰区| 峨眉山市| 马公市| 谢通门县| 年辖:市辖区| 双辽市| 库车县| 本溪| 来凤县| 赤壁市| 汝阳县| 竹北市| 镇平县| 丰镇市| 灵川县| 武强县| 许昌市| 佛坪县| 甘南县| 重庆市| 延边| 广德县| 临桂县| 泾川县| 呼伦贝尔市| 南雄市| 册亨县|