Building My Own Tool Scanner — Part 7: The Only Test That Really Matters

By this point, I'd accumulated quite a lot of numbers.

Calibration residuals.

Hold-out tests.

Checkerboard tests.

Reference bars.

Physical squares.

Pixel-to-millimetre mappings.

Everything suggested that the scanner was accurate enough for what I wanted.

But none of those numbers answered the question that actually mattered:

If I scan a real tool, make an insert from it and print it... will the bloody thing fit?

There was only one way to find out.

From pixels to plastic

This was the first time the entire workflow was being tested as one system.

Not just the camera.

Not just the calibration.

Not just the segmentation.

Not just the vector.

And not just the Gridfinity Generator.

The complete chain:

Physical tool

↓

Scanner

↓

Mask

↓

Vector profile

↓

Gridfinity Generator

↓

3D model

↓

Slicer

↓

Printer

↓

Physical insert

Every stage introduces its own potential source of error.

A fraction of a millimetre during scanning.

A little more during segmentation.

Something during vectorisation.

CAD tolerances.

Then finally the dimensional accuracy of the 3D printer itself.

The calibration numbers could look fantastic while the complete process still produced something useless.

The first proper tool

One of the early tests gave me a scanned tool profile approximately:

116.010 mm wide × 94.731 mm high.

The raw contour contained 1,747 points.

After simplification, that became 469 SVG points.

It also correctly retained an internal hole.

So I took that profile through the rest of the workflow and printed the resulting insert.

Then came the highly scientific final validation procedure:

Put tool in hole.

And...

It fitted.

Not “close enough if I force it.”

Not “I'll increase the clearance and print it again.”

It fitted like a glove.

That was probably the first point where I looked at the scanner and thought:

Right. This actually works.

Calibration accuracy isn't the whole story

Physical testing also immediately highlighted something the calibration statistics couldn't.

A mathematically accurate profile isn't necessarily the ideal profile to print.

Sharp corners are a good example.

An internal corner in a printed pocket behaves differently from the corresponding external corner on the physical tool.

Printer resolution, extrusion width and the geometry itself all start to matter.

So certain areas — particularly sharp features below roughly 90 degrees — benefited from additional clearance.

That's not really a scanner calibration problem.

It's a manufacturing tolerance problem.

And that distinction matters.

The scanner's job is to tell me what the tool looks like.

The generator's job is to turn that information into geometry suitable for manufacturing.

Those aren't necessarily exactly the same shape.

Then I started moving things around

Another important test was position.

If the calibration really represented the complete workspace, the same object should measure approximately the same regardless of where I put it.

So tools and test objects started moving around the scanning area.

Top.

Bottom.

Left.

Right.

Centre.

The results weren't mathematically identical — I never expected them to be — but they remained within the tolerance I needed for printed tool storage.

That was much more important to me than finding one location where the scanner produced a perfect number.

I wanted the workspace to be useful.

Good enough is an engineering decision

There's always another decimal place to chase.

I could spend months trying to turn a webcam-based tool scanner into a metrology system.

But that isn't what I'm building.

I'm making 3D-printed tool inserts.

At some point, improving calibration by another hundredth of a millimetre stops producing any meaningful improvement in the thing coming off the printer.

The first successful physical inserts proved I'd crossed that line.

The scanner was accurate enough.

The workflow worked.

The tools fitted.

Project finished?

Obviously not. 😂

Because now I had a functioning scanner, I started wondering:

How much better could I make it?

And sitting directly above the scanning area was the most obvious candidate.

The camera.

Or, more specifically...

The lens.


Next: Part 8 — The Lens Rabbit Hole

The Logitech C920 was working.

Which naturally meant I took it apart.

Because apparently leaving functioning equipment alone isn't something I'm particularly good at.