This interface provide functionalities of circle detection. More...
Public Member Functions | |
LPVErrorCode | Detect (ILImage *img, ILAnnulusRegion *region, ILCircleResults **results) |
![]() | |
ILObject * | Copy () |
LPVErrorCode | Load (LString filename) |
void | Reset () |
LPVErrorCode | Save (LString filename) |
BOOL | Valid () |
Properties | |
int | AcceptScore [get, set] |
The accept score used in detection. It defines the minimum score for identifying the edge as a good circle. You may pick a proper score with help of circle score chart. More... | |
int | EdgeWidth [get, set] |
The edge width of the circle used in detection, in 1 ~ 10. Edge width defines the count of pixels along the whole edge transition. Blurred edge indicates larger edge width value to find a stable result. Usually, it's fine to just use default setting (3). | |
LPVFindBy | FindBy [get, set] |
The detection searching strategy. It defines how to select the result circles if there's more than expected circle candidates. | |
int | MaxCount [get, set] |
The maximum of circles to find. | |
BOOL | NormScore [get, set] |
Whether we should normalize the score based on maximum gradient in region. | |
LPVPolarity | Polarity [get, set] |
The detection edge polarity. Polarity defines the edge transition according to region's direction, black pixels are dark, white pixels are light. More... | |
![]() | |
LString | Name [get, set] |
Name of the object. By default, the object has no name. In most cases, LPV classes don't make use of the names. The name is drawn on canvas around the object if ILDrawable::SetDrawName() is enabled. More... | |
This interface provide functionalities of circle detection.
Circle detector is designed to locate a single or multiple circle edges in given image and inside the annulus region.
The algorithm is real-time and of sub-pixel accuracy, while the limitation is it could only detect concentric circles whose center is near the center of the annulus region. So, to use this detector, you should have a basic idea of the target circles' center and size.
To use this interface, you should create a LCircleDetector object.
LPVErrorCode Detect | ( | ILImage * | img, |
ILAnnulusRegion * | region, | ||
ILCircleResults ** | results | ||
) |
Detect circles using the circle detector.
[in] | img | ![]() ![]() |
[in] | region | Input region, it should be a annulus region placed near the estimated circle center. Pass in null to use the center of the image as the estimated circle center. |
[out] | results | Return the circle results. |
error | Return error code if anything is wrong. |
|
getset |
The accept score used in detection. It defines the minimum score for identifying the edge as a good circle. You may pick a proper score with help of circle score chart.
|
getset |