我想计算 GPU 上图像的自相关。但是,当我使用 cupy 相关函数时,我得到的结果与 CPU 计算不同。是因为 cupyx.scipy.ndimage.correlate 通过统一图像的自相关自动归一化结果吗?
import numpy as np
import scipy.signal as sc
import cupy as cp
import cupyx.scipy.ndimage as cnd
from matplotlib import pyplot as plt
ones = np.ones((128,128))
corr_cpu = sc.correlate2d(ones,ones)
corr_gpu = cnd.correlate(cp.array(ones),cp.array(ones))
plt.figure()
plt.imshow(corr_cpu)
plt.colorbar()
plt.title('Correlation CPU')
plt.figure()
plt.imshow(cp.asnumpy(corr_gpu))
plt.colorbar()
plt.title('Correlation GPU')
plt.show()