gpt4 book ai didi

python - 如何计算10张图片上相同像素点的平均值?

转载 作者:太空宇宙 更新时间:2023-11-03 21:32:31 24 4
gpt4 key购买 nike

我想对这10张图片的每张图片求出相同像素(150,220)的平均值。

怎么做?

每张图片大小相同。

例如:

img1[220,150]=[1,2,3]

img2[220,150]=[2,3,4]

……

img9[220,150]=[9,10,11]

img10[220,150]=[10,11,12]

avg_value = [(1+2+……+9+10)/10,(2+3+……+10+11)/10,(3+4+……+11+12)/10 ]

我的代码:

import cv2

img1 = cv2.imread( r'E:/0001.jpg' )
img2 = cv2.imread( r'E:/0002.jpg' )
img3 = cv2.imread( r'E:/0003.jpg' )
img4 = cv2.imread( r'E:/0004.jpg' )
img5 = cv2.imread( r'E:/0005.jpg' )
img6 = cv2.imread( r'E:/0006.jpg' )
img7 = cv2.imread( r'E:/0007.jpg' )
img8 = cv2.imread( r'E:/0008.jpg' )
img9 = cv2.imread( r'E:/0009.jpg' )
img10 = cv2.imread( r'E:/0010.jpg' )

img_array = [img1,img2,img3,img4,img5,img6,img7,img8,img9,img10]

最佳答案

下面是我们如何使用 numpy 计算一组图像中特定像素的平均像素值。

import numpy as np
import cv2

names = [r'E:/0001.jpg',
r'E:/0002.jpg',
r'E:/0003.jpg',
r'E:/0004.jpg',
r'E:/0005.jpg',
r'E:/0006.jpg',
r'E:/0007.jpg',
r'E:/0008.jpg',
r'E:/0009.jpg',
r'E:/0010.jpg'];


#Read all the images
images = [cv2.imread(i) for i in names];

#Get that specific pixel of all the images (making a 2D array). Exclude non-existing images
vals = np.array([im[220,150,:] for im in images if im is not None]);

#Compute mean along the first axis of 2D array
m = np.mean(vals, axis=0);

print(m)

在 Ubuntu 14.04 上使用 Python 3.4OpenCV 3.4 进行测试。

关于python - 如何计算10张图片上相同像素点的平均值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48343583/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com