矩阵N x N x 3,获取内部3数组的第一个元素

时间:2019-04-28 06:45:20

标签: python-3.x numpy

我有一个代表图像的numpy矩阵,我想有效地获取每种颜色的第一个元素的数组。矩阵的大小为N x M x 3和x 3,因为它们是颜色。我想要的是总结所有的红色。接下来的示例:

a = np.random.randint(1,10,(2,4,3))
 a
array([[[1, 8, 8],[9, 9, 9],[4, 7, 7],[7, 1, 5]],[[3, 2, 2],[8, 5, 4],[3, 3, 5],[2, 2, 7]]])
sum_r = 0
for i in a:
    for j in i:
         sum_r += j[0]
print(sum_r)
37
1 + 9 + 4 + 7 + 3 + 8 + 3 + 2
37

1 个答案:

答案 0 :(得分:1)

def sumColumn(m):
    return [sum(col) for col in zip(*m)]


column = 0
matrix = [[1 , 4, 5, 12], 
          [-5, 8, 9, 0],
          [-6, 7, 11, 19]]

print("Sum of the elements in column", sumColumn(matrix)[column])