我有一个具有形状的 Numpy 图像数组(1000, 50, 100, 3)
(class 'numpy.ndarray'
),其中包含 1000 个 RGB 图像(高度 = 50,宽度 = 100,通道 = 3)。我想先转换RGB
价值观YUV
值并重新调整它们以获得yuv
价值观。下面给出了像素级转换器的原型实现。
我的问题: 有没有一种简单的方法可以实现这种转变?
def yuv(_pixel):
R, G, B = _pixel[0], _pixel[1], _pixel[2]
Y = 0.299 * R + 0.587 * G + 0.114 * B
y = Y / 127.5 - 1
u = (0.493 * (B - Y)) / 127.5 - 1
v = (0.887 * (R - Y)) / 127.5 - 1
return np.array([y, u, v])
你有没有调查过numpy.apply_along_axis ?
你可以这样做:
images_yuv = np.apply_along_axis( yuv, -1, images_rgb)
编辑:混淆了参数的顺序
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)