我是新手,并试图了解它。
我搜索了谷歌上的各种链接,但有一些关于 如果你能告诉我如何对梯度进行计算,我会很高兴但是通过计算prewitt算子。
例如:
你有图像5X5 - > I(x,y)= | 4-i-j |;
我,j = 0..4;
如何用prewitt算子(Gx和Gy)计算?
答案 0 :(得分:1)
使用名为convolution的数学运算执行图像的梯度计算。下面给出了两个矩阵f
和g
的卷积公式。
在伪代码中,算法将是:
let f be the prewitt (convolution) operator
let g be the image
let h be the convolution result
for x from 1 to height of h
for y from 1 to width of h
h[x,y] = 0;
for n1 from top to bottom of f
for n2 from left to right of f
h[x,y] += f[n1,n2]*g[x-n1,y-n2]
有些语言/库会为您实现卷积。
conv2
numpy.convolve
答案 1 :(得分:0)
python的热门scipy
包有一个内置函数prewitt
,用于准确计算您描述的内容: