Я пытаюсь найти corr coef между двумя изображениями. И теперь у меня есть эта проблема: RuntimeWarning: переполнение, обнаруженное в ubyte_scalars? Из-за этого у меня есть corr coef = -243, поэтому мне нужно решить эту проблему проблема
import PIL
import numpy as np
img = PIL.Image.open("SR1.png").convert("L")
im = np.array(img)
img2 = PIL.Image.open("SR11.png").convert("L")
im2 = np.array(img2)
import math
import cmath
def correlationCoefficient(X, Y, n) :
sum_X = 0
sum_Y = 0
sum_XY = 0
squareSum_X = 0
squareSum_Y = 0
i = 0
for i in range(n) :
sum_X = sum_X + X[i]
sum_Y = sum_Y + Y[i]
sum_XY = sum_XY + X[i] * Y[i]
squareSum_X = squareSum_X + X[i] * X[i]
squareSum_Y = squareSum_Y + Y[i] * Y[i]
i = i + 1
corr = (float)(n * sum_XY - sum_X * sum_Y) / (float)(np.sqrt((n * squareSum_X - sum_X * sum_X)* (n * squareSum_Y - sum_Y * sum_Y)))
return corr
X = im.flatten()
Y = im2.flatten()
n = len(Y)
print ('{0:.6f}'.format(correlationCoefficient(X, Y, n)))