What does the sensitivity parameter do in imfindcircles?

2 次查看(过去 30 天)
One of the parameter name-value pairs for the IMFINDCIRCLES function is 'Sensitivity'. I want to know what it does. I understand that increasing the sensitivity results in more (potentially false) detections, but I am looking for more details than that.
After looking through the code, it appears that sensitivity is used in two ways:
  1. (line 180) As an input to the CHCENTERS function, which I think has to do with peak-finding in the accumulator array.
  2. (line 187) As a threshold (1-sensitivity) on the scoring metric of detected circles.
I understand the second one, but I don't know what is happening in the first one and I am hoping someone in this community does.
  2 个评论
Jay
Jay 2017-3-22
I am also interested in the functional form of 'sensitivity'. It might have something to do with the magnitude plot I guess.

请先登录,再进行评论。

回答(2 个)

KSSV
KSSV 2016-10-8
Circles in the image might be weak, bright and few circles may not be clear. To detect such circles you need to play around with sensitivity parameter.
  3 个评论
KSSV
KSSV 2016-10-8
It might get multiplied with the color information to detect the circles
Matthew Eicholtz
Matthew Eicholtz 2016-10-8
Yes, that could be. Although that would feel redundant to me considering it is already used as a threshold after the CHCENTERS function.

请先登录,再进行评论。


Jay
Jay 2017-3-22
编辑:Jay 2017-3-22
Blog states that:
"In simple terms it means that the detector's confidence in a certain (circle) detection has to be greater than a certain level before it is considered a valid detection. imfindcircles has a parameter 'Sensitivity' which can be used to control this internal threshold, and consequently, the sensitivity of the algorithm. A higher 'Sensitivity' value sets the detection threshold lower and leads to detecting more circles. This is similar to the sensitivity control on the motion detectors used in home security systems."
To my best guess, it is the threshold of magnitude plot.
For example, let's say you are using the phase coding method. In that method you will come up with the magnitude image and phase image. Magnitude image is similar to the accumulator array.
If its sensitivity is 0.95, it should cancel lower (100-97)% values in magnitude image. Then regional maxima are obtained to locate the centers.
This is my guess. I might be wrong.

类别

Help CenterFile Exchange 中查找有关 Array Geometries and Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by