NI Home > Community > NI Discussion Forums

Machine Vision

Showing results for 
Search instead for 
Do you mean 
Reply
Member
Eric Bow
Posts: 5
0 Kudos

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 

Proven Zealot
muks
Posts: 7,208
0 Kudos

Re: count passing objects


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?

Member
Eric Bow
Posts: 5
0 Kudos

Re: count passing objects

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

Proven Zealot
muks
Posts: 7,208
0 Kudos

Re: count passing objects


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.

Active Participant
Michelle_B
Posts: 381
0 Kudos

Re: count passing objects

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

Instrument Control R&D
National Instruments
Instrument Control
Machine Vision
Proven Zealot
muks
Posts: 7,208
0 Kudos

Re: count passing objects

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.
Trusted Enthusiast
BruceAmmons
Posts: 2,492
0 Kudos

Re: count passing objects

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
Proven Zealot
muks
Posts: 7,208
0 Kudos

Re: count passing objects

Bruce,

          You would you got an encoder feedback for this right?

Trusted Enthusiast
BruceAmmons
Posts: 2,492
0 Kudos

Re: count passing objects

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
Proven Zealot
muks
Posts: 7,208
0 Kudos

Re: count passing objects


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.