我在许多图像上训练过每像素模型,并希望在新图像上进行评估。
我想做的是每个形状图像(N,M,3),以这种方式应用函数:
myfunc(array[i, j, :], i, j)
# Takes (3,1) input and indices
def myfunc(input, i, j):
ret1, ret2 = model[i,j].predict(input)
# returns a single float value
return ret1[1]
其中i,j是索引,其中myfunc将查找要应用的正确模型参数。如果它有帮助,模型可以是一个numpy对象数组,其尺寸与原始输入的前两个维度(N,M)相同
我正在看ufuncs和vectorize,并不确定他们是否做了我想要的。是否有提供的接口用于执行此操作,或者我必须自己遍历数组(丑陋且可能比在python中更慢)。
或者,如何将相同的函数应用于每个值?
e.g。
myfunc(array[i, j, :])
# Takes (3,1) input
def myfunc(input):
ret1, ret2 = model.predict(input)
# returns a single float value
return ret1[1]