What printing precision should fiducials have?

following my struggle with https://forum.ubiquityrobotics.com/t/move-basic-tutorial-is-my-map-ok

I did measure 8 fiducials out of the 70~80 units already printed and taped on ceiling. with a caliper.

I observe inconsistant values instead of the expected 140 x 140mm.
(however, with my ladder + bending my back in akward position => it’s likely the measures contain error too)


on average, they’re slighly higher (141.9 mm) than large (141.3 mm).
overall, they’re on average 141.6mm with 0.45 standard deviation.

Such inconsistancy may explain the difference in height and/or orientation i can see on the rviz map. dunno.

So well, I’m gonna use a plotter that notorioulsy makes 1:1 drawings (but we never actually measured its precision). Given the trouble i’ve been through, it’s likely i’ll have a professional printer to print them on adhesive paper / pvc / whatever.

Since this is just ordering a machined part, the question then becomes: what tolerance should I demand the print shop to match? (0.1mm feels fine. but i thought i should ask here)

We used our bigger A0 printer with A4 paper (yeah i know… it’s a bit stupid, espcially since you have to print them one by one…)

I measured with a caliper on a table (before actually taping them on the ceiling then) something much closer to 140 x 140 mm. it’s a bit hard to measure if my precision is in the 0.1mm range since my own measurement using my naked eye to position the caliper might not be that great either.

we’ll see


Wow, that’s really interesting data. Its not totally surprising that the printer prints something a little too big or a little too small. It is surprising that the printer prints something that is inconsistent. Normally I would expect tens of micron level consistency.

The distance accuracy is proportional to the width accuracy. I think you are right at 0.1mm error is likely fine. At 5 meters It will contribute less than 1cm in distance error which is significantly lower than the error you are likely to encounter from other sources.

One thing that we’ve done in the past is print multiple fiducials on a single sheet of big paper. It usually doesn’t make sense but if you are using a giant plotter anyways…

This looks like your print settings on the lexmark are wonky, make sure you don’t have “Best Fit” or “Fit to Page” or anything like that enabled, as that will really screw things up.

Another note, non-squareness is the real killer as it creates angular error in the fiducial pose estimation, so when combining multiple fiducial estimates together you end up with massive inconsistency and the map blowing up.


blowing up is kinda exactly what i experienced with the lexmark printed fiducials. It may have had “autoscale”, i dont have a clue about default parameters, i just hit the print button.

check that mapping video => https://drive.google.com/open?id=1i247bLml9KBs4PrU4kIJqr6HajczuCLw

at 2:30 everything’s fine.

but then at 2:39 it looks like an explosion indeed.

and from then, the next fiducials are completely wrong.

hopefully this behavior will be gone with the new 140x140 fiducials. we’ll see…

just an update here. I got some new fiducials printed on what i beleive is 3mm foamcore (forex). I mesured 8 units with a caliper and they look pretty damn close to 140mm. I feel like most of the discrepencies between measures is mostly lkely due to the measurement itself with my bare fingers poorly trying to position the caliper properly.

(in grey below)