0
$\begingroup$

I came across this 2D filter for enhancing circular dots in images, for example to enhance a dot with a diameter of 5 pixel, the filter is:

$\frac{1}{336}\left( \begin{array}{ccccccc} 0 & 0 & −21 & −21 & −21 & 0 & 0\\ 0 & −21 & 16 & 16 & 16 & −21 & 0\\ −21 & 16 & 16 & 16 & 16 & 16 & −21\\ −21 & 16 & 16 & 16 & 16 & 16 & −21\\ −21 & 16 & 16 & 16 & 16 & 16 & −21\\ 0 & −21 & 16 & 16 & 16 & −21 & 0\\ 0 & 0 & −21 & −21 & −21 & 0 & 0 \end{array} \right)$

Has this filter a name? Like Sobel or Scharr.

What is the rationale behind its coefficients?

$\endgroup$
1
$\begingroup$

This is a matched filter, where the shape of the filter coincides with the shape of the signal to be detected.

In this case, whenever the filter convolution overlaps a circular dot in the image, a maximum will be present in the output image. Thus, searching for the single maximum pixels in the output image will give the center position of dots in the original image.

Note that your linked source mentions that it is a matched filter.

$\endgroup$
  • 1
    $\begingroup$ I think this is not matched filter. The matched filter for dot does not have negative value (see "-21"). Yes, basis for this filter is matched filter, but this filter is more complicated. $\endgroup$ – SergV Apr 29 '15 at 3:07
1
$\begingroup$

The -21s make sure there's a transition to low values there (an edge) and the 0s dont contribute. Its like an edge detecting match-filter and should output between +-1 with 0 being the best score.

I don't know of a name for it though - many (complex) filters do not have names when using the framework of convolution/correlation, especially when they are combo operations like this.

$\endgroup$

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.