loading
 
Gasket identification
Anonymous
5 years
Is there any way to identify missing gasket from multiple objects in the same image ?
Enclosed there's an example picture. Actually the number of parts to be checked at the same time has to be higher (20/30 min).

We can change the background colour and camera resolution.



 
Anonymous 5 years
Any chance you can change the background to either black or a colored background? Something that is much different from the color of the gaskets?

Also do not include the graphics in that one since we now know what to look for.

A closer shot would be better too.

It should be possible to detect the missing second black part of the end which should indicate the missing part. See attached image for the double sets of black parts (highlighted in red) with the one that is missing not being there. Once that is included with the rest of the gasket I think you will have what you need.

STeven.

 
Anonymous 5 years
Thanks for the quick reply.

We can change the background, I'll post a more accurate picture later, but I don't understand how I can manage to identify each terminal in order to look for the gasket.
Anonymous 5 years
Here are two picture with a different background. In one there's a missing gasket.
Do you think can be possible to identify it ? It seems a little hard...

Daniele

  
Anonymous 5 years
Daniele,

The camera angle is very good so please keep that. But ...

1. You have to spread them out a little like in the first image for now. Make sure that there is at least some of the background color inbetween the tubes/wires/etc.

2. Can you try this spread out photo again on a black background (by background I mean the color of the table that the tube is resting on ... currently white in your images above).

3. Again on a red or green background.

The different background colors will allow the segmentation of an entire wire/tube/whatever that is to help in identifying the missing gasket. Its all about context for this to work.

STeven.
Anonymous 5 years
I tried to shot pictures in a green background. It's actually far from the ideal one, I think we should use a matte surface. We still have to control lighting too... too many shiny spots.

What I don't understand, sorry for that, is what to do after segmentation.
Even if I'll be able to separate each pipe, how can I find, for each of them, the terminal part and then looking at the gasket position, I suppose to see wether is black or not.

Thanks for your help.

  
Anonymous 5 years
Even without a good background/lighting (I know it's a must but I just want to understand the steps I should implement), I was able to process the above picture.

With the blob filter function you can identify the top parts of the hoses only when the gasket is in place. It seems a good start but... any idea of a reliable way to continue ?

Daniele




 
Anonymous 5 years
Run the attached robofile against your processed file above. Note the green dots as the resulting image? The trick that we are using is to isolate the last tip of the pipe that is created by the presence of the gasket. With this filtered out we can compare the full pipe with what we expect to see at the top.

This all assumes that the pipe can be extracted from the background. So, again:

1. Use a black matte background (its what you ended up with in your above image ... may as well try to get there immediately). If you only have glossy backgrounds try a black cloth which has very little reflective properties.

2. Can you separate the pipes so they are NOT touching?

Given these changes the pipes should be easy to segment and use the included robofile to identify the green end points. If this works then the last step is to understand what type of output you need ... i.e. what to do with the green dots ...

STeven.


program.robo
Anonymous 5 years
Thanks Steven, I applied your robofile to the last image and it almost fully works. As you said, we still have to test/use the right background.

Our use would be in a manual production line.
We include this hoses into product boxes but we have to be sure that every component has the gasket in place.
At the moment the workers have to perform a visual check. It would be usefull to have an help from a computer.

The idea is:

1. The worker take a bunch of hoses (20/30)
2. He/she places them on the table under the camera
3. Looking at display the worker see immediately the missing gaskets (if any) position.

Green dots in your program show the gasket in place, but more than this we have to identify the missing ones.
My knowledge of the program (above all my experience of computer vision) is still very little. I don't know wether you can modify your script in order to obtain our need.

Thanks for the help.
Anonymous 5 years
Sorry for the long discussion but I'd really like the idea to implement such a vision system.
I used a green tissue background and it works much better. What I want to do now is this:

1. Elaborate the image in order to obtain a segmentated picture like the one I already sent.
2. Identify the top part of the hose (possible just when the gasket is in place). This can be done using the blob size filter function.
3. Check wether each of the above blob is vertical close to another blob (i.e. the hose)
4. Remove from the picture all the complied pairs.
5. What is going to remain are the blob corresponding to the wrong hoses (maybe a size filter will be needed)

I cannot test the idea now but I already have a question: can the "above" parameter be a good choice to identify the vertical proximity of two blobs ?

Daniele
Anonymous 5 years
Daniele,

Obviously we are willing to help ... but without any additional images as described previously there is not much we can do.

A black background would be a good start. If that works taking at least 5-10 additional images of how you would expect a worker to use the system would then follow.

We understand that given the circumstances that spacing between the pipes is probably an unreasonable requirement but do think that keeping all the pipes flat (i.e. so they do not overlap ontop of each other) is probably reasonable.

Your technique above sounds fine. We don't know if the 'above' qualification is a good choice without images to test on.

Sorry, but as you may expect we are very visually driven.

You can also post your script that you describe above with appropriate images and we can help you finish that line of thinking.

STeven.
Anonymous 5 years
Thanks for your help Steven, sorry if our expectation are a little difficult to obtain. I know it's not your software fault but it's due to our lack in understanding vision problematics.

We've changed the background to a black one and here enclosed you can find what we can obtain using our script. It's not 100% reliable but it's a start, and we're still working on lighting.

Anyway, our main problem now is to match the smaller blobs with the relative bigger ones. That's why I was speaking about a "proximity above" filter. I tryed it but with no result. How can we give an higher rating to the blobs which are vertically close to another one ?

Thanks and sorry again if I cannot be more precise.

  

program.robo
Anonymous 5 years
Please download the latest version of RoboRealm using the link you first received as we have added a new module that allows better results to be displayed for this problem.

Attached to this post is the full processing of the image you have included above. We have outlined the bad pipe in red to make that very visible to the operator.

Assuming you see the same results, the next step is to get many more images to test and ensure that the process works.

Note that the new module addresses your proximity filter question. The way this works is to ensure that the end tip of the pipe that is separated from the rest of the pipe by the gasket overlaps with what we think to be the entire pipe regardless of the gasket. So if we see a tip that in one set of filters is small and overlaps with an image from another set of filters meant to connect the entire pipe, we can deduce what pipe has a gasket and which does not.

STeven.

 

program.robo

This forum thread has been closed due to inactivity (more than 4 months) or number of replies (more than 50 messages). Please start a New Post and enter a new forum thread with the appropriate title.

 New Post   Forum Index