Python實現(xiàn)計算圖像RGB均值方式
要求
存在一個文件夾內(nèi)有若干張圖像,需要計算每張圖片的RGB均值,并計算全部圖像的RGB均值。
代碼
# -*- coding: utf-8 -*-
"""
Created on Thu Nov 1 10:43:29 2018
@author: Administrator
"""
import os
import cv2
import numpy as np
path = 'C:/Users/Administrator/Desktop/rgb'
def compute(path):
file_names = os.listdir(path)
per_image_Rmean = []
per_image_Gmean = []
per_image_Bmean = []
for file_name in file_names:
img = cv2.imread(os.path.join(path, file_name), 1)
per_image_Bmean.append(np.mean(img[:,:,0]))
per_image_Gmean.append(np.mean(img[:,:,1]))
per_image_Rmean.append(np.mean(img[:,:,2]))
R_mean = np.mean(per_image_Rmean)
G_mean = np.mean(per_image_Gmean)
B_mean = np.mean(per_image_Bmean)
return R_mean, G_mean, B_mean
if __name__ == '__main__':
R, G, B= compute(path)
print(R, G ,B)
這里需要注意cv2.imread()讀取順序為BGR問題。
注意
路徑不能出現(xiàn)中文,不然容易出錯。
錯誤如下:
TypeError: 'NoneType' object is not subscriptable
結(jié)果

補充知識:Image得到圖片像素的RGB
我就廢話不多說了,大家還是直接看代碼吧!
from PIL import Image
image = Image.open('./3.png')
print(image)#查看mode是否等于RGB,
image_rgb = image.convert("RGB")
image_rgb.getcolors()
打印結(jié)果
<PIL.PngImagePlugin.PngImageFile image mode=P size=500x332 at 0x7F53383FADA0> [(10990, (192, 0, 128)),#10990表示像素總數(shù),(192, 0, 128)表示RGB值 (7589, (224, 224, 192)), (5706, (192, 128, 128)), (3913, (0, 64, 0)), (137802, (0, 0, 0))]
以上這篇Python實現(xiàn)計算圖像RGB均值方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實戰(zhàn)之天氣預(yù)報系統(tǒng)的實現(xiàn)
本文主要和大家介紹了如何用代碼寫一款Python版天氣預(yù)報系統(tǒng),是Tkinter界面化的,還會制作溫度折線圖跟氣溫餅圖哦!感興趣的小伙伴可以嘗試一下2022-12-12
Python實現(xiàn)多組數(shù)據(jù)三維繪圖系統(tǒng)
這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)多組數(shù)據(jù)三維繪圖系統(tǒng),文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以了解下2023-08-08
Python+matplotlib+numpy實現(xiàn)在不同平面的二維條形圖
這篇文章主要介紹了Python+matplotlib+numpy實現(xiàn)在不同平面的二維條形圖,具有一定借鑒價值,需要的朋友可以參考下2018-01-01
深度學習TextLSTM的tensorflow1.14實現(xiàn)示例
這篇文章主要為大家介紹了深度學習TextLSTM的tensorflow1.14實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01

