2015-03-03 3 views
0

Я сделаю это как можно короче для вашего удобства. Я пытаюсь рассчитать серое значение каждого пикселя градиента некоторого изображения.Расчет градиента изображения

Насколько мне известно, G (х, у) (пиксел х, у в градиентном изображении) можно рассчитать двумя способами:

1. G(x,y) = sqrt(dx(x,y) * dx(x,y) + dy(x,y) * (dy(x,y)) 
2. G(x,y) = |dx(x,y)| + |dy(x,y)| 

Я пытаюсь понять, как первые результаты одного в значении в [0, 255], например dx (x, y) = 255, dy (x, y) = 255 приведет к ~ 360, что не определено в шкале серого.

Также, как определяется второй метод? что это означает | dx (x, y) | когда dx (x, y) принадлежит [0, 255], что положительно?

Спасибо!

ответ

0

Ни один из методов не гарантирует, что каждый пиксель будет находиться в [0, 255]. Если вы хотите, чтобы все пиксели находились в [0, 255], вам может понадобиться normalize ваше изображение после нахождения градиента.

Второй метод - это сумма абсолютной разницы. Поиск абсолютного значения происходит быстрее, чем использование квадратного корня, поэтому метод 2 будет быстрее, чем метод 1.

+0

Dx (x, y) означает производную от пикселя в направлении x. – johni

Смежные вопросы