Я работал над компьютерным зрением и openCV (C ++)
Я применил фильтр
[0,0,0,0,0,1,0,0,0]
на изображение и получил результат image_result.
Я взял разницу:
image_result - image.
Но я нашел пару программ, где вычитание выполняется следующим образом:
image_result - image + image - image_result
Может ли кто-нибудь дать мне представление о том, почему вычитание выполняется вышеупомянутым способом и является ли правильным способом найти разницу между двумя изображениями?
Спасибо
Я предполагаю, что это специально для неподписанных пикселей и использует арифметику насыщенности, где вычитание, которое приводит к отрицательному числу, дает 0. Первое вычитание дает вам значения, где результат больше, а второе, где результат меньше. Результат будет эквивалентен abs(image-image_result)
если используется нормальная арифметика со знаком.
Других решений пока нет …