|
Re: Ellipse Detection
There is a white paper on the ni site that covers vision and some of the things that affect performance the most.
The IMAQ library internally has two shape detection methods, Hough, and geometric matching. Both initially perform a horizontal and vertical rake to identify edge crossings and to greedily trace the edges within the rake width.
After the rake, the ellipse and other geometric shape detection filters the traces based on length, corners, straight edges, and the like. Then it fits an geometric ellipse to the trace, selecting the ones with the highest scores.
The Hough shape detection tends to be used for more complex shapes -- the ones where you train the library on your template shape. I really can't compare the OpenCV performance to the IMAQ performance, except to say that if the OpenCV is faster, the NI IMAQ guys should and probably have updated their algorithm and implementation to match or exceed. At least I hope that is what they do with their time.
If you can list the parameters you are using, I can tell you if anything stands out.
Greg McKaskle
|