Я пытаюсь сравнить два трехмерных массива и посчитать, сколько внутренних массивов равны.
Я сравниваю 2 фрагмента изображения и хочу знать, сколько пикселей равно, а не какмногие значения цвета равны.И было бы хорошо, если это эффективно, поэтому я использую NumPy.Я знаю, как сравнивать циклы for, но это слишком медленно.
Но я могу только посчитать это поэлементно, вот мой фрагмент:
import numpy as np
a = np.array([[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]],
[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]],
[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]],
[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]])
b = np.array([[[255, 255, 255],
[255, 255, 255],
[0, 0, 0],
[0, 0, 0]],
[[255, 255, 255],
[255, 255, 255],
[0, 0, 0],
[0, 0, 0]],
[[0, 0, 0],
[0, 0, 0],
[0, 0, 0],
[0, 0, 0]],
[[0, 0, 0],
[0, 0, 0],
[0, 0, 0],
[0, 0, 0]]])
print(np.sum(a[:, :] == b[:, :]))
# prints 12 and i would like to have a 4 in this example