Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Adaptive "Match Pattern"

Hi,
I have an application where I have 18 distinguish parts being dropped on a vibrating conveyor.  From batch to batch the parts are not always the same dimension, but still different from each other.  When a certain part (Shape) is being dropped on the conveyor I want to track it.  My Idea is the take an image (image1) of the part, and use that as an template for the "Match Pattern" function.  The template will just cover the part and the ROI will sized so after one second the part is still inside the ROI.  I now take a new image (Image2), and use the "Match Pattern" (image1) to locate image2.  Image2 will now be my template for comparing to image3 one second later...... and so on.  At the end of the conveyor I will read the XY co-ordinates.
 
Has anyone done something like that, or does anyone know if it can be done?
 
Thanks,
gert
 
0 Kudos
Message 1 of 7
(4,520 Views)

I'm not sure why you would need to continuously redefine your pattern, but it would be difficult.  Training patterns can take seconds, so you wouldn't be able to keep retraining the pattern with live video.  In theory, it might work on batch processed images.

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 2 of 7
(4,495 Views)
And more dangerous than that : what will you do if you "learn" a wrong object, or a borken one or any other problem like that... I would definitly not go in that direction...

The biggest problem I think is that there should be a function where you learn a shape or pattern not just on 1 picture, but on 10, so the software learn internally the shape or aspect variations to take them into account statistically.

I know that some other vision systems can do it so why not Imaq ?
Doc-Doc
http://www.machinevision.ch
http://visionindustrielle.ch
Please take time to rate this answer
0 Kudos
Message 3 of 7
(4,492 Views)
Hi
    Are the parts always the same shape, just different scales? So you may have a screw, a washer, a nut and a bolt, but with each batch having different scales of the same parts. If this is the case then use classification and some centre of mass and orientation detection to give a pick and place location.

Mike
Message 4 of 7
(4,490 Views)

Thank you for all the replies,

You are properly correct, it is close to a no win application I am trying to do. 

The parts is not always exactly the same shape.  I have already tried to traine on one part and the try to find it at the end of the conveyor without luck. I then made a test where I took 10 images 1 sec of part, and manually did a pattern training and a pattern matching 10 times, and in that way I could track the part.  For the test I used Vision Builder, but if I somehow can do an adaptive training and pattern recognition, I understan that I have to use LabView.

When trying to find the part by its own at the end of the conveyor there are too many possibilities, but If I try do the pattern matching after 1 to 3 seconds, the image I try to recognize is almost the same as the one I tained.

thanks,

gert

 

 

 

 

0 Kudos
Message 5 of 7
(4,471 Views)
As mentionned in the previous post, I would use the Classification tool to diferenciate the parts. In the Classification tool, several parts can be learnt to form one familly. So it will determine wich places of your parts are changing overtime.

If high resolution is needed, once you know the part type, you can use a script to locate "remarkable" zones of your part and determine its position with a good accuracy.
Doc-Doc
http://www.machinevision.ch
http://visionindustrielle.ch
Please take time to rate this answer
Message 6 of 7
(4,461 Views)
Doc-Doc,
Thank you for your suggestion, I will try that.
 
gert
 
0 Kudos
Message 7 of 7
(4,417 Views)