Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Iterate ROI for IMAQ Find Circular Edge

Hello,

 

I am trying to work out a grid based system for checking for circular edges on a live image.

 

Essentially, I want to feed a live image to IMAQ Find Circular Edge that has one circular edge somewhere on a grid and I want the program to tell me where this droplet currently is. Because the grid system is quite large and can change depending on scale, I don't want to make a manual sequence of IMAQ Find Circular Edge VIs that feed into each other, but would rather iterate through a set amount of ROIs. The ROI Descriptor has the Global Rectangle and Annulus descriptors that I need to modify, but I am unsure of how to implement it.

 

Capture.PNG

 

How would I go about achieving this programatically?

 

Thank you kindly,

Konstantine

0 Kudos
Message 1 of 4
(4,851 Views)

ROI Descriptors can be tricky to modify. One simpler approach would be to create an array of annuluses (IMAQ Circle Type Def) and call IMAQ Convert Annulus to ROI and IMAQ Find Circular Edge in a loop.

IMAQ Find Circular Edge does not support ROIs with multiple contours.

 

Christophe

Message 2 of 4
(4,847 Views)

Would you be so kind as to describe the steps in creating such an array? Because the IMAQ Find Circular Edge requires both a global rectangle and annulus coordinates, I am a bit confused as to how to create something like that

 

Thank you in advance,

Konstantine

0 Kudos
Message 3 of 4
(4,842 Views)

I am attaching a example VI. Just fill in the constant array with the hardcoded values of the annulus you want.

If the problem is to locate the droplet, this brute force approach is probably not the best solution.

If you attach a couple images, we could help better advising on how to locate the droplet.

 

Best regards,

 

Christophe

0 Kudos
Message 4 of 4
(4,824 Views)