Я хочу оценить c автокорреляцию изображения на графическом процессоре. Однако, когда я использую функцию корреляции 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()
Результат CPU
Результат GPU