@Blowtorch, @Zdenko, others,
have you been able to try? Any results?
I would also appreciate some ImageDebugWrite images, as
personally I don't have any real HASL PCBs. Edit the pipeline and
enable the "deb0" stage:
Then do some fiducial vision, with, and without parallax.
Then you'll find images in the $HOME/.openpnp2/org.openpnp.vision.pipeline.stages.ImageWriteDebug
folder. Please send some.
I can then also illustrate the Wiki entry better. Thanks a lot! 😎
_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/1ba23588-47f9-48c9-8b7d-8a12382d63a7n%40googlegroups.com.
Hi Josef,
not every feature is listed in the Release Notes (especially in the test version). Look at the date at the top.
You'll see the new Parallax Diameter setting in the Fiducial Locator settings:Instructions for Use are here:
https://github.com/openpnp/openpnp/pull/1565
_Mark
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/20rW8feVfbI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/ca41c5c3-e668-4bf5-9d95-4816cbcd630dn%40googlegroups.com.
Thank you Josef!
It seems your diffuser is very diffuse and covering very close to
the camera (nicely done, please share your construction!) . Your
fiducials are a bit roughed up and have quite regular edge
beveling that reflects outwards, so the vision surely works even
without parallax.
But still: it is shown that with parallax it appears brighter and
fuller.
Perhaps one day you get a PCB with more reflective HASL (I've seen examples by users with almost mirror-quality), or where the beveling is very asymmetric (seen this too), so the parallax option could still become useful. 😎
_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/3a304ee4-8148-45ed-872f-962dd3470de6n%40googlegroups.com.
Thank you Zdenko,
your diffuser seems to have a large hole, right?
You need to go all the way out to get half decent reflection, and for large parts of the center it is almost black:
In fact it is so black that it contrasts enough with the
PCB material, so fiducial vision works too. 😂
If you ever want to improve the diffuser, move it as close a possible to the camera lens front without causing shadows, and then make the smallest hole for the camera to peek through.
> How does "Max Vision passes" work, if I understand it right from the https://github.com/openpnp/openpnp/pull/1565, it should only "try" a "n" amount of time if the fiducial is not recognized in the process right?
The "Max Vision passes" limits how many times this can happen. However, ideally it will stop before that, due to the detected offsets being small enough.
_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/2c740ae9-2547-4b7a-9242-5e89a71b9267n%40googlegroups.com.
> I do have one question - What is the purpose of the Parallax Angle setting?
The Parallax Angle determines the angle at
which the opposite view-points are spaced from each other in the
X/Y plane. Choose an angle which favors the faster axis of your
machine: 0° favors X, 90° favors Y.
Other angles might be used to target a specific LED pair in a LED ring reflection.
Using just a random image from the group here for illustration:
As you see, some diffusers cannot completely equalize the
brightness (that's okay). So it might make sense to rotate the
parallax so it puts a single LED reflection smack on the fiducial.
(image
by Philip)
_Mark
--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/20rW8feVfbI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b4d5ac90-93bc-4c0c-8236-371617ea3e8fn%40googlegroups.com.
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/20rW8feVfbI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/2a4aa374-bb13-5d34-349c-e7fd61a6de88%40makr.zone.
Hi Blowtorch,
> New fiducial locator vision is great - for the first time, I find it fiducials are useable. Before I was forced to set placement using components.
Thanks for trying to share the images, however (as already explained in the PM), I would not like to register with Drop Box, so please either use a different service or attach the best few images (before/after) directly to posts here.
> What is interesting with the panel I used, is that the break away rails are covered with dots the same size as fiducials, but it finds them 100% anyway. Happiness. Thank you.
Then all is good 😎, but still, I'm also interested. Do you use the latest stock pipeline? With the DetectCircularSymmetry stage?
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/6ad1d2c2-08ec-41cd-9f76-cca0488052d4n%40googlegroups.com.
Thanks! Nice case.
First, I think you should add more parallax, the reflection in the green PCB is more intensive out there, and the fiducial is still at "half moon", it should be "full moon" 😁:
> Re pipeline, not sure how to select different pipelines.
This is the old pipeline. Can you please try with the new stock
pipeline?
How?
Go to the Parts tab, the fiducial part should be selected, and then select the Stock Fiducial Vision Settings:
Go to the Fiducial Vision Settings detail tab and press
the Specialize for ... button:
Then press Pipeline Edit and enable the "deb0" and "deb1" stages, for debug image writing:
Also note the presence of the DetectCircularSymmetry
stage that indicates this is in-deed a modern stock pipeline.
Then retry with this pipeline. The source images should now be in
color (that's how I like them for the Wiki 😎).
Thanks for your help in testing and documentation! 💯
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/5b2d2a78-744b-4750-8e70-8e6c41cb0756n%40googlegroups.com.
Wow, now that fiducial is truly "full moon". 😎
But it still uses the old pipeline, as is evident by the rectangles with scores.
And once you've chnaged the pipeline, please also provide
Thank you, 😁
_Mark.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/3709607c-df95-4ef9-9e3c-7f12759661ebn%40googlegroups.com.
Yeah, I feared as much. That's why I wanted you to try, honestly. 😇
As you correctly guessed, the problem is the many very similar green-coated dots and it seems those are equally attractive for DetectCircularSymmetry.
The "clean" way to adjust this is by reducing the fiducial
locator Max. Distance to be less than half the
distance to the nearest green-coated dot of your PCB. From your
images, and assuming the typical 1mm fiducial and 2mm mask
diameter, it seems the nearest green dot is about 1.5mm away, so
~0.7mm is the Max. Distance you can live with:
Go to Machine Setup / Vision / Fiducial Locator and
adjust it accordingly, press Apply:
So you need to make sure, you got your PCB hand-positioned within
the ±0.7mm of where the camera will position to each fiducial.
Assuming not all the fiducials have green dots so near, this tight
tolerance would then also generate a proper error when that is not
the case, instead of wrongly positioning (and skewing) the PCB and
then messing up placements.
Note, this is a good thing. It was necessary for your "special" PCB. It's and not a flaw of the new pipeline. With 0.7mm it should then work very reliably. Otherwise it's a bug that I'll fix! 😁
Just to illustrate that point: an alternative way would be to
make the new pipeline behave like the old one. You can go into the
pipeline to the DetectCircularSymmetry stage and increase
the maxTargetCount. But before you
do that, read on:
The detection then takes the nearest fiducial of the
detected target list, so it will work in some cases. But you must note that this actually boils down
to the same thing: if the position of the camera is more
than half-way from the true fiducial towards a wrong green dot, it
will take the wrong one! So you still need to make sure you got
your PCB positioned within the ±0.7mm. But what's worse: you
won't get the proper error and your placements will be messed
up!
And to close the argument: that is actually also true for the old pipeline, for the same reason! 😉
More as a side remark: the DetectCircularSymmetry stage
also uses much more computation time when maxTargetCount
is more than 1, so we don't want that.
Finally, erm, the whole issue will perhaps teach "somebody" to not design the PCB like that in the future 😇. Even just a significantly different diameter would help...
I just use three good images:
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b6b1e34d-60a3-4f3e-8e3d-7184fa243219n%40googlegroups.com.
> BTW, the stock, old pipeline works 100% with no tweaks that I am aware of, other than the new offset search.
Read what I wrote carefully, and you'll see where the caveat lies. 😉
And btw. the odl stock pipeline is still available and slightly
modernized as Footprint Fiducial Vision Settings.
It also supports non-circular fiducials and now also in their properly rotated and offset form.
Enjoy Mrs. Blowtorch and meal!
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/9d84e0e5-07c9-4d36-80bb-9d17cf582f87n%40googlegroups.com.
> The max error seems to be a global setting, and not
assignable to a part / package...
Yes, it also occurred to me that this should be moved to the individual settings. I will keep this in mind and change that when I next touch that code.
> Very simple 3d printed part with strong neodynium magnet.
I gave up everything magnets, after I found that they sucked out
my 0402 resistors right from the tape pocket, from astonishingly
far away, sometimes they were also just flipped in their pocket.
Apparently the very plain-vanilla SMT resistors from Digikey have
ferro-magnetic contacts.
>I would say the new new Parallax View-Points method is a success. It certainly solved problems that have persisted for me previously.
However, also try it without parallax, but with the new Circular Symmetry pipeline. This might also already solve the problem, because Circular Symmetry should be happy with just a "solar corona" instead of a "full moon", and you seem to get that in the centered image. If this "corona" is always so even, it should work:
Yes, it devalues the parallax extension a bit (and this if what
the thread is about 😅), but if it robustly works for you with
just the corona, it is faster, of course.
No hurry. Thanks again.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/3efa09d4-f7d3-4ac3-9b16-5e819331fc72n%40googlegroups.com.
I should have used the term "solar eclipse" instead of "solar corona" 😎
https://commons.wikimedia.org/wiki/File:Annular_2003-05-31_Culloden.png
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/0e82a7ee-be4f-8949-8ab7-8cf582f20e1a%40makr.zone.
Thanks a lot! 😎
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/41e5a8ae-613a-4e58-b385-6ac76be400ban%40googlegroups.com.
Hi all
I finally made a Fiducial Locator Wiki page. I'm a bit pressed,
so i will improve in the coming days.
https://github.com/openpnp/openpnp/wiki/Fiducial-Locator
Comments welcome.
@Blowtorch, if I could bother you one more time... 😇
I would also like to explain the angled parallax.
If I judge your images right, the brightest LED reflections are
about like this:
So could you please make debug images ones more, with a larger parallax of ~9mm and an angle of maybe 17.5°.
Again the center and left/right parallax images, and for each
position both "source" and "result" would be perfect!
Many thanks for the continued effort 😁!
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/9b12682e-1b75-5008-757f-f376ac567ab5%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/79c4c5ae-0e4d-4868-99be-8515732efd1an%40googlegroups.com.