为方便起见,我会尽量缩短。 我正在尝试计算某个图像渐变的每个像素的灰度值。
据我所知,G(x,y)(渐变图像中的像素x,y)可以用两种方式计算:
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)
两种方法都不能保证每个像素都在[0,255]中。如果您希望所有像素都在[0,255]中,则在找到渐变后可能需要normalize您的图像。
第二种方法是绝对差值的总和。找到绝对值比取平方根要快,因此方法2将比方法1更快。