Как рассчитывается фильтр Лапласа? - PullRequest
0 голосов
/ 29 ноября 2018

Я не очень понимаю, как они пришли к производному уравнению.Может кто-нибудь объяснить какие-нибудь подробности или даже ссылку куда-нибудь с достаточным математическим объяснением?

image

Лапласовский фильтр выглядит как

enter image description here

1 Ответ

0 голосов
/ 29 ноября 2018

Месье Лаплас придумал это уравнение.Это просто определение оператора Лапласа: сумма производных второго порядка (вы также можете видеть ее как след матрицы Гессе ).

Второе уравнение, которое вы показываете, это конечно-разностное приближение ко второй производной.Это простейшее приближение, которое вы можете сделать для дискретных (выборочных) данных.Производная определяется как наклон (уравнение из Wikipedia ):

Equation of derivative

В дискретной сетке наименьшее hравен 1. Таким образом, производная равна f(x+1)-f(x).Эта производная, поскольку она использует пиксель в x и единицу вправо, вводит сдвиг на полпикселя (т.е. вы вычисляете наклон между этими двумя пикселями).Чтобы получить производную порядка 2 nd , просто вычислите производную по результату производной:

f'(x) = f(x+1) - f(x)
f'(x+1) = f(x+2) - f(x+1)

f"(x) = f'(x+1) - f'(x)
      = f(x+2) - f(x+1) - f(x+1) + f(x)
      = f(x+2) - 2*f(x+1) + f(x)

Поскольку каждая производная представляет сдвиг на полпикселя, 2 Производная порядка nd заканчивается сдвигом в 1 пиксель.Таким образом, мы можем сместить вывод влево на один пиксель, что не приведет к смещению.Это приводит к последовательности f(x+1)-2*f(x)+f(x-1).

Вычисление этой производной 2-го порядка аналогично свертыванию с фильтром [1,-2,1].

Применение этого фильтра, а также его транспонирование и добавлениерезультаты, эквивалентные свертке с ядром

[ 0, 1, 0       [ 0, 0, 0       [ 0, 1, 0
  1,-4, 1    =    1,-2, 1    +    0,-2, 0
  0, 1, 0 ]       0, 0, 0 ]       0, 1, 0 ] 
...