Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Which is more computationally efficient: DoG or Sobel + Magnitude

I would like to do crude edge detection. Which of the following techniques would be faster/more computationally efficient?

Technique 1:

  • GaussianBlur() image with kernel 5,5.
  • GaussianBlur() image with kernel 11,11.
  • Subtract the 2 images

    • Benefits of this technique; less noise/eliminates smaller/weaker edges. Anything else?
    • Cons of this technique; less accurate

Technique 2:

  • Sobel() image to get horizontal edges
  • Sobel() image to get vertical edges
  • magnitude() to get edge strengths

    • Benefits of this technique; more accurate
    • Cons of this technique; more noise/shows weaker edges