← back to test matrix

Test 1.4

Could a richer SAM3 prompt (box + mask, not just points) fix its broken redraw?

Partial answer. SAM3 genuinely accepts the richer prompt; we confirmed that by reading its code, not by running it. We still don't know if it actually helps. That step needs a GPU pod. None was running, so we stopped rather than risk another crash.
What it means for SailScan

Back in early September we tried using SAM3 to redraw Deep20's stripe lines by pointing at them. It made the lines worse on most stripes, a closed negative result. This test asks why: did SAM3 get too weak a hint (a few points), or is it just bad at this job regardless of the hint? A fuller prompt (points, a rough box around the stripe, a rough mask) could turn a weak hint into a usable one. If SAM3 still fails with all that help, that kills the idea for good.

We checked, without touching a GPU, whether SAM3 even accepts a box and a mask alongside points. It does. We traced the actual code path line by line rather than trusting the claim on its face. The richer-prompt idea is real and testable. What's missing is the measurement itself: run both versions on real photos and see which one draws closer to a human's line. That run needs a rented GPU. None was on, so the numbers aren't in yet.

Yes
SAM3 accepts box + mask prompts
Not run
no GPU pod was on
36.4px
points-only error (the closed negative being re-tested)
The detail
QuestionAnswer
Does SAM3 accept points + box + mask together?Yes. Traced the real code path used when our sam3.pt weights load: it's a point/box/mask-promptable architecture (not the separate text-only variant), and a supplied mask genuinely reaches the model's mask decoder rather than being silently ignored.
Was inference actually run to compare points-only vs. the richer prompt?No. We checked every prior GPU pod for this project live; all were off. Starting a new one wasn't authorized for this investigation. Running SAM3 locally caused a prior crash, so we stopped instead of risking that again.
Is the test harness ready to run?Yes. The predict script, pod launcher, and scorer all exist and are reviewed. Once a pod is up, this runs end to end on the same 332-photo frozen holdout used for every other model eval.
What was the original points-only result being re-tested?SAM3 redrawing every Deep20 stripe with points alone landed at 36.4px average error vs. a human line, catching only 40% of stripes within tolerance. Deep20's own lines score 23px error and catch 91%.

"Points-only" and "points + box + mask" in this test mean: Deep20 finds the stripes first (it already follows our sail rules), then SAM3 is asked to trace each one more precisely, either from a few clicked points alone or from those points plus a loose box around the stripe plus a rough guess-mask. We check whether the redrawn line lands closer to what a human traced.

Frozen 332-photo holdout (test-holdout-ids-canonical.json, frozen 2026-08-25), never used for training. Points-only baseline number is read from the 2026-09-02 run's own recorded results, same scoring method the richer-prompt test will use. Test-only investigation; nothing shipped, no production code touched.

raw data (JSON) →