我有两个大小为
例如:
显然,当输入包含许多图片时,这种方法非常缓慢,并且如果
明显的优化是跳过循环并将所有内容直接馈送到已编译的相关函数中。目前我正在使用scipy的
有关如何使scipy的
(n,m,m)
的数组(n
表示大小为(m,m)
的n
张图像)。我想在这两个数组中的每个对应的n
之间执行交叉相关。例如:
n=1
-> corr2d([m,m]<sub>1</sub>,[m,m]<sub>2</sub>)
我的当前方法在Python中包含一堆for循环。for i in range(len(X)):
X_co = X[i,0,:,:]/(np.max(X[i,0,:,:]))
X_x = X[i,1,:,:]/(np.max(X[i,1,:,:]))
autocorr[i,0,:,:]=correlate2d(X_co, X_x, mode='same', boundary='fill', fillvalue=0)
显然,当输入包含许多图片时,这种方法非常缓慢,并且如果
(m,m) << n.
,它会成为总运行时间的重要组成部分。明显的优化是跳过循环并将所有内容直接馈送到已编译的相关函数中。目前我正在使用scipy的
correlate2d
。我查找了一些函数,但没有找到允许沿某个轴或多个输入进行相关操作的函数。有关如何使scipy的
correlate2d
起作用或替代方法的任何提示吗?