首页 > 解决方案 > 操作数不能与shapes(4,)(3,)一起广播,在python2.7中

问题描述

我有这个代码。我已经在 // 我现在所有这些代码中的每个元素的大小都是 3 而不是 1 是 4。并且它们必须全部具有相同的大小,否则其中之一就是一个。

当我尝试使用此行 i_arr-i_arr.resize(3) 将大小从 3 更改为 4 时,它无法工作。请帮助解决这个问题

def applyPadding(i, s, r) :
r_arr=np.asarray(r, dtype="int16") //[19,19,19]
i_arr=np.asarray(i.shape,dtype="int16") // [144,192,265,1]
r= np.array(r, dtype="int16") 
left_padding=(r - 1) / 2//[9,9,9]
right_padding=r - 1 - left_padding //[9,9,9]
extra_padding=np.maximum(0,np.asarray(s,dtype="int16")- 
(i_arr+left_padding+right_padding)) // s =[27, 27, 27]
right_padding+= extra_padding
paddingValues =((left_padding[0],right_padding[0]),
(left_padding[1],right_padding[1]),
(left_padding[2],right_padding[2]))
paddedImage = lib.pad(i, paddingValues, mode='reflect')
return [paddedImage, paddingValues]

我得到的错误是操作数不能与形状(4,)(3,)一起广播

标签: pythonarrayspython-2.7typed-arrays

解决方案


推荐阅读