Bottom Vision doesn't find parts if too off-centre on nozzle.

36 views
Skip to first unread message

Samuel Sebire

unread,
Mar 20, 2023, 3:47:22 AM3/20/23
to OpenPnP
Hi

I'm currently using the rectilinear symmetry as it's the only one I can get to work. If however, a pick is too far off center, it won't find the part. I nudge the part then restart the job and all is fine. Many of the components get picked fine, but quite a few are picked off centre. While I will be improving on the picking accuracy, I'm limited at the moment to strip feeders (set up as tray feeders) in a temporary setup that's not ideal.

I'd like some resilience in the machine vision pipeline even though in the long run it shouldn't normally need to be challenged this much. miss1.PNGmiss2.PNG

See attached images, these aren't from real rejects, but I've manually nudged the component in two ways to show the type of scenarios it fails in.

It would be great to know how/if this can be fixed, or if this behaviour is expected/unavoidable.

Secondly, in the long run it would probably be better to use stock vision pipeline (great if both can work to cover any weird edge cases/build in redundancy), but there's some glare in the bottom right hand corner of the image so and while it is ignored in rectilinear symmetry, it causes havoc to the stock pipeline.

I would like to know what parameters determine the masking circle for the stock vision pipeline as these must be either footprint or nozzle tip related I expect.

Many thanks

Samuel Sebire

unread,
Mar 20, 2023, 3:50:28 AM3/20/23
to OpenPnP
A couple more reject examples.
miss4.PNGmiss3.PNG

mark maker

unread,
Mar 20, 2023, 4:55:56 AM3/20/23
to ope...@googlegroups.com

Hi Samuel,

the allowable Pick Tolerance can be set on the Nozzle Tip:

https://github.com/openpnp/openpnp/wiki/DetectRectlinearSymmetry#nozzle-tip-configuration

However be warned, increasing that will increase the computation time for DetectRectlinearSymmetry dramatically, as far as I recall, at last to the square of the increase, i.e. twice the pick tolerance means four times computation time.

Please also read about the other settings there, Min. Part Diameter, Max. Part Diameter and how they are related.

Note these nozzle tip properties are not only relevant for the DetectRectlinearSymmetry stage, but also for other modern stages, their automatic pipeline control, and other functions like background calibration, part height detection auto-focus etc.

So if you use the "- Stock Bottom Vision Settings -", it should for instance also use the Max. Part Diameter to control the circular mask diameter. The circular mask diameter in turn should suppress that peripheral glare you have. Therefore I expect the stock pipeline to work if everything is configured correctly on the nozzle tip. Needless to say, it would be better to fix the glare physically, perhaps by moving the background shade closer to the camera.

Aside from the computation time concern, using the stock pipeline has the advantage that it also support Vision Compositing a.k.a. "Multi-Shot" bottom vision. So if you are concerned that the Max. Part Diameter is too limiting, i.e., the circular mask cutting away too much of your camera real estate, don't worry, Multi-shot bottom vision can still align your larger parts.

https://github.com/openpnp/openpnp/wiki/Vision-Compositing

Watch the video:
https://youtu.be/P-ZudS7QQeE

It is really a lost opportunity that the LumenPnP default config drags along all this very outdated stuff, and leaves out the modern config like these nozzle tip properties, even though each machine and included nozzle tips are the same.

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/60470a42-7d4c-4d19-abff-d3b214065e85n%40googlegroups.com.

Jan

unread,
Mar 20, 2023, 5:02:22 AM3/20/23
to ope...@googlegroups.com
Hi Samuel!
If that happens the next time, I'd suggest to open the pipeline editor
(Parts -> Pipeline -> Edit) and step thru the stages. In the stock
pipeline there is the MaskCircle stage, that's driven by the "Max. Part
Diameter" and probably the "Max. pick Tolerance" on the nozzle tip page.
Probably one of the two needs adjustment. (You can change the values and
verify the changes in the pipeline editor or using the "Test Alignment"
button on the Parts -> Bottom Vision Settings tab.)

Jan

On 20.03.2023 08:50, Samuel Sebire wrote:
> A couple more reject examples.
> miss4.PNGmiss3.PNG
>
> On Monday, March 20, 2023 at 7:47:22 AM UTC Samuel Sebire wrote:
>
> Hi
>
> I'm currently using the rectilinear symmetry as it's the only one I
> can get to work. If however, a pick is too far off center, it won't
> find the part. I nudge the part then restart the job and all is
> fine. Many of the components get picked fine, but quite a few are
> picked off centre. While I will be improving on the picking
> accuracy, I'm limited at the moment to strip feeders (set up as tray
> feeders) in a temporary setup that's not ideal.
>
> I'd like some resilience in the machine vision pipeline even though
> in the long run it shouldn't normally need to be challenged this
> much. miss1.PNGmiss2.PNG
>
> See attached images, these aren't from real rejects, but I've
> manually nudged the component in two ways to show the type of
> scenarios it fails in.
>
> It would be great to know how/if this can be fixed, or if this
> behaviour is expected/unavoidable.
>
> Secondly, in the long run it would probably be better to use stock
> vision pipeline (great if both can work to cover any weird edge
> cases/build in redundancy), but there's some glare in the bottom
> right hand corner of the image so and while it is ignored in
> rectilinear symmetry, it causes havoc to the stock pipeline.
>
> I would like to know what parameters determine the masking circle
> for the stock vision pipeline as these must be either footprint or
> nozzle tip related I expect.
>
> Many thanks
>
> --
> You received this message because you are subscribed to the Google
> Groups "OpenPnP" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to openpnp+u...@googlegroups.com
> <mailto:openpnp+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/60470a42-7d4c-4d19-abff-d3b214065e85n%40googlegroups.com <https://groups.google.com/d/msgid/openpnp/60470a42-7d4c-4d19-abff-d3b214065e85n%40googlegroups.com?utm_medium=email&utm_source=footer>.
Reply all
Reply to author
Forward
0 new messages