What would be the most significant difference when using either a sobel filter or a gaussian-derivative filter, apart from the obvious difference of the size of the 2 filters?


The Sobel kernels can also be thought of as $3 × 3$ approximations to first-derivative-of-Gaussian kernels.

The Sobel filter is nothing but jointly applying the following:

  • Smoothing in the perpendicular direction of the derivative such as $h_s=[1,2,1]^T$

  • Simple central difference in the derivative direction such as $h_d=[1,0,-1]$

Then $$h_{sobel} = h_s h_d$$

The smoothing factor is an approximate triangle shaped filter. A Gaussian is naturally a better replacement. In fact, if larger sizes of Sobel is desired, people first smooth the image with a Gaussian filter, then apply the Sobel kernel as is. That's because:

$$ \frac{\partial}{\partial x} {(I*G)} = I*\frac{\partial}{\partial x} {(G)} $$

This approximation enables the Sobel operator to be computed quite quickly, while Gaussian derivatives might be more accurate.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.