Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

count passing objects

I developed a Labview/vision program 6 or 7 years ago that would count small objects on a stationary platform.  It would count as many as 200 objects in a 2 inch square area. I now need to count approximatley 2000 of these small ojects on a conveyor belt.  These objects are not single file. 5 to 10 objects will pass a given point every second.  Any thoughts on the best method to do this?  My only thought is to use a line scan camera and create one big image file or several and then patch together.

 

Thanks,

Eric 

0 Kudos
Message 1 of 12
(4,129 Views)

I now need to count approximatley 2000 of these small ojects on a conveyor belt.  These objects are not single file. 5 to 10 objects will pass a given point every second.

Let me know If my understanding is right. 5 to 10 objects will pass a particular point evry second and u need to count them? or do you mean in each oh the object that is passing through there will be particles in the range of 2000 that you need to process and count?

0 Kudos
Message 2 of 12
(4,123 Views)
hanks for the reply, 

The quantity of objects has increased. So now, instead of counting only 100 to 200 objects, we need to count approximately 2000 objects.  The current system is most effective at counting approx. 100 objects.  So now, with the new batch orders of 2000, we have to make 20 plus counts in order to verify a count of 2000. I want to streamline the counting process and run them across a small conveyor and count them on the fly. These objects are a small titanium wire.  .032" diameter and .177" long. very shiny and easy to detect against a black background.  All wires are the same size, there are no additional particles. The speed at which they pass a certain point is really yet to be determine.  The main point is that they are not single file. So the idea is similar to an aircraft passing across a radar screen. indentify each object, mark it, count it once and let it pass off the radar on the other side.

 

Thanks,

Eric

0 Kudos
Message 3 of 12
(4,113 Views)

These objects are a small titanium wire.  .032" diameter and .177" long. very shiny and easy to detect against a black background.  All wires are the same size, there are no additional particles. The speed at which they pass a certain point is really yet to be determine.

 

1. The speed if in cconsistent will be a problem with the line scan camera unless you get a feedback

2. Since these are titanium wires why not use a through beam sensor.

By using a through beam sensor you can count as many objects as possible  even if the conveyor speed is varying.

 

Even better i will suggest you use a through beam sensor as a trigger for capturing the image.

0 Kudos
Message 4 of 12
(4,109 Views)
Another option, depending on speed is to use an Area Scan camera and trigger each image off of an encoder. Then use IMAQ Count Objects VI where you need to be careful on how you set the option - "Ignore Objects touching Image Borders". There are several ways to ensure you do not count edge objects twice, but it all depends on what your time restraints are and how much processing time we are limited to.
--Michelle

National Instruments
0 Kudos
Message 5 of 12
(4,099 Views)
Yes I agree with michelle.A lot depends on the processing time required. And as he has mentioned there needs to be method to avoid double triggering.
0 Kudos
Message 6 of 12
(4,086 Views)

I recently did an application similar to this.  I acquired a strip at a time from a linescan camera.  I thresholded the strip, then added it to the top of my processing image.  I use particle analysis to get information on each item in this image.  All the particles touching the top edge (y min = 1 or 0) are ignored and left for future analysis.  All the particles that are not touching the top edge are processed (counted in your case) and removed from the image.  In your case, you could use IMAQ Label to number the particles, then use threshold to eliminate the higher numbered particles that aren't touching the edge.  Slide the processing image down to make space for the new strip at the top and repeat the loop.

 

This algorithm gives you fast, realtime counting of the objects.  It does assume that nothing is touching each other, though.  You would have to add some more to the particle analysis to determine if a single particle was actually multiple pieces.  I would consider looking at the area of the particle, which would be a multiple of the area of a single piece.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 7 of 12
(4,059 Views)

Bruce,

          You would you got an encoder feedback for this right?

0 Kudos
Message 8 of 12
(4,034 Views)

On my application, I had to know the exact size and location of each piece, so I used an encoder to control the linescan camera.

 

In this application, if you are just trying to count binary particles, the size and shape are not critical.  As long as the conveyor is moving at a fairly constant speed, it should work fine.  If the conveyor is starting and stopping or moves erratically, I would recommend an encoder to trigger the camera.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 9 of 12
(4,028 Views)

conveyor is moving at a fairly constant speed, it should work fine.  If the conveyor is starting and stopping or moves erratically, I would recommend an encoder to trigger the camera.
That was exactly what i meant when the member said his conveyor speed is inconsistent.
0 Kudos
Message 10 of 12
(4,023 Views)