繁体   English   中英

如何计算每行每列的颜色像素值

[英]How to calculate the color pixel value in each row and column

我正在使用一个示例说明如何使用 Python 使用以下公式计算每行和每列中每个像素的值。

公式是在此处输入图片说明

其中 M 表示图像矩阵维度 N 表示像素总数,P(i, j) 是第 i 行第 j 列的颜色像素值

如果您使用的是 python,则可以使用 numpy

import numpy as np
import cv2 

img = cv2.imread('img.png')
# in case of overall mean
np.mean(img)

#in case of channel wise mean
np.mean(img, axis=(0, 1))

如果您的矩阵具有矩形形状,则可以应用此方法

像素通道的平均值计算起来相当简单,但不一定非常有意义 - 根据用例,找到主色更具说明性。 这个答案展示了一种寻找主色的方法。

这是一个玩具示例,用于使用图像查找图像像素的通道方式

在此处输入图片说明

import cv2
import numpy as np

im = cv2.imread('opencvtest.png')

# Find the average of each channel across the image
mean = [np.mean(im[:,:,i]) for i in range(im.shape[2])]

print(mean)
[132.6709785196566, 92.74899063496903, 81.57176387455432]

所以代码找到的平均颜色是

这与我对测试图像的期望一致。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM