File size: 2,041 Bytes
caee978
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
{
 "_doc": "Graph-decoder settings used by decode.py (tuned on real sheets). Distances are in stride-2 grid px.",
 "settings": {
  "heat_thr": 0.4,
  "wire_thr": 0.5,
  "cut_pad": 1,
  "attach": 8.0,
  "bridge": 4,
  "spur": 6,
  "dir_len": 7,
  "pair_cos": -0.5,
  "t3": "pair",
  "through_cos": -0.8,
  "arrow_touch": 1.5,
  "arrow_reach": 16,
  "short_gap": 8,
  "virtual": true,
  "virtual_cluster": 10,
  "virtual_border": 3,
  "arrow_tip": 8
 },
 "notes": {
  "heat_thr": "tuned on real dev sheets 2026-09-27 (was 0.3): fewer weak false symbols",
  "wire_thr": "",
  "cut_pad": "grid px added around a symbol box before cutting the wire mask",
  "attach": "grid px: a stroke end this close to a box lands on it (tuned on real dev sheets; was 6)",
  "bridge": "grid px: junction clusters joined by a branch this short are one junction",
  "spur": "grid px: free-ended branches shorter than this are drawing noise (hash marks, tails)",
  "dir_len": "grid px along a branch used to measure its direction at a junction",
  "pair_cos": "a 4-way / 3-way pairing is trusted only if the pair is at least this opposite",
  "t3": "3-way junction away from symbols: \"pair\" joins the straight-through arms, \"all\" joins all",
  "through_cos": "arms this opposite at a junction on a symbol are a run crossing past it",
  "arrow_touch": "grid px: an end this close to an arrowhead is a home-run tip regardless of symbols",
  "arrow_reach": "grid px: an arrowhead no stroke reached belongs to the nearest symbol this close",
  "short_gap": "grid px: side-by-side symbols this close are tested for a run straight across the gap",
  "virtual": "stroke ends that reach no detected symbol become unrecognised devices",
  "virtual_cluster": "grid px: free ends this close are the same unrecognised symbol (runs arrive from sides)",
  "virtual_border": "grid px: free ends this close to the image edge are runs leaving the view, not devices",
  "arrow_tip": "grid px: a free end this close to an arrowhead is its tip, never an unrecognised device"
 }
}