Неправильные значения при возведении в квадрат двух значений RGB-пикселей (OpenCV + Python) - PullRequest
0 голосов
/ 06 декабря 2018

Я пытался вычислить ssd между двумя изображениями rgb и обнаружил, что возвращаемые значения содержат отрицательные значения, что странно, поскольку ssd возводит в квадрат различия до их суммирования.Итак, я проанализировал проблему, и оказалось, что проблема в возведении в квадрат.

Это моя функция ssd:

def ssd(kernel_left, kernel_right):
    return np.sum((kernel_left- kernel_right)**2)

Вот как я анализировал проблему:

print(kernel_left[1,1]) # = [61 57 56]
print(kernel_right[1,1]) # = [87 59 29]
print(kernel_left[1,1] - kernel_right[1,1])  # = [-26  -2  27]
print((kernel_left[1,1] - kernel_right[1,1])**2) # = [-92   4 -39]

, что не имеет никакого смысла для меня, как возведение в квадрат дает неправильные и отрицательные значения.

...