gpt4 book ai didi

python - 如何从 ndarray 的一个轴中的每个元素中减去一个标量

转载 作者:太空宇宙 更新时间:2023-11-03 15:53:09 25 4
gpt4 key购买 nike

我正在尝试标准化使用 imread() 读取的图像的背景,该图像会生成 NxMx3 ndarray。

为此,我需要从 255 中减去 NxMx0 轴,从 250 中减去 NxMx1 轴,从 225 中减去 NxMx2 轴。

我该怎么做?

最佳答案

您只需从 R、G 和 B 值数组中减去图像,numpy 就会 implicitly broadcast them 。这是有效的,因为 image 的最后一个维度与数组的维度匹配。

import numpy as np

# Some test data
image = np.random.randint(0, 255, (3,3,3))

# array([[[218, 51, 105],
# [227, 34, 20],
# [ 68, 65, 41]],
#
# [[ 43, 171, 110],
# [166, 253, 191],
# [ 86, 26, 28]],
#
# [[167, 117, 167],
# [ 96, 82, 21],
# [ 45, 232, 127]]])

result = [255, 250, 225] - image

# array([[[ 37, 199, 120],
# [ 28, 216, 205],
# [187, 185, 184]],
#
# [[212, 79, 115],
# [ 89, -3, 34],
# [169, 224, 197]],
#
# [[ 88, 133, 58],
# [159, 168, 204],
# [210, 18, 98]]])

关于python - 如何从 ndarray 的一个轴中的每个元素中减去一个标量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41071221/

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