segment 060 · cluster c12 gated as hedge
your Fig. 3 wall
lowrej_060_c12_s0
lowrej_060_c12_s1
lowrej_060_c12_s2
miss_060_tall_s0
Q1 — 060 c12: hedge (not tree) or trees?
answer: Q1: hedge / Q1: trees / Q1: mixed - <where>
Headline. v4 is the only post-v0 variant with a positive weighted score (0.695 vs v0 0.250;
v1 / v2 / v3nh / v3 are all negative at fp_rate 0.846). v4 = recall 0.848, fp_rate 0.077.
The single remaining FP is acc_003_c6_s0 — the spot you just flipped to not_tree — so v4 has
exactly one FP and it is the disputed hedge. v2 has the best raw recall (0.919) but 11 of 13 not_tree spots
become FPs.
What I need from you: 13 hedge-or-trees calls on the boundary bands (section 3), one call on the contested spot (section 4), and a yes/no on the proposed A1 config (section 5).
reject_rf_hedge_band).113 spots on 14 segments (truth_v2: 99 tree / 13 not_tree / 1 contested; min-points 200, r_eval 6 m); labels from two Opus judges calibrated on your Fig. 5 / 7 / 8 vs Fig. 3 examples; weighted = recall − 2 × FP-rate. The judges are unreliable exactly on the 2–3 m continuous bands shown below, which is why you are asked.
| variant | recall | fp_rate | weighted | TP | FN | FP | TN | accepted pts | rf-rejected pts | n_tiles | hedge-gated parents |
|---|---|---|---|---|---|---|---|---|---|---|---|
| v0 | 0.404 | 0.077 | 0.250 | 40 | 59 | 1 | 12 | 767,206 | 8,965,303 | 0 | 0 |
| v1 | 0.909 | 0.846 | -0.783 | 90 | 9 | 11 | 2 | 6,910,545 | 2,757,622 | 40 | 0 |
| v2 | 0.919 | 0.846 | -0.773 | 91 | 8 | 11 | 2 | 6,945,425 | 2,722,742 | 40 | 0 |
| v3nh | 0.909 | 0.846 | -0.783 | 90 | 9 | 11 | 2 | 6,976,175 | 2,693,699 | 34 | 0 |
| v3 | 0.798 | 0.846 | -0.894 | 79 | 20 | 11 | 2 | 6,688,449 | 2,982,468 | 22 | 12 |
| v4 | 0.848 | 0.077 | 0.695 | 84 | 15 | 1 | 12 | 6,311,828 | 3,366,925 | 30 | 4 |
| variant | acc (n=15) | acclow (n=16) | anchor (n=2) | bigrej (n=31) | lowrej (n=23) | midrej (n=12) |
|---|---|---|---|---|---|---|
| v0 | 0.93 | 0.94 | 1.00 | 0.00 | 0.17 | 0.42 |
| v1 | 1.00 | 1.00 | 1.00 | 1.00 | 0.83 | 0.58 |
| v2 | 1.00 | 1.00 | 1.00 | 1.00 | 0.83 | 0.67 |
| v3nh | 1.00 | 1.00 | 1.00 | 1.00 | 0.83 | 0.58 |
| v3 | 1.00 | 0.94 | 1.00 | 0.84 | 0.65 | 0.50 |
| v4 | 1.00 | 1.00 | 1.00 | 0.90 | 0.70 | 0.58 |
| variant | obj recall | obj fp_rate | obj TP | obj FN | obj FP | obj TN |
|---|---|---|---|---|---|---|
| v0 | 0.517 | 0.143 | 31 | 29 | 1 | 6 |
| v1 | 0.900 | 0.714 | 54 | 6 | 5 | 2 |
| v2 | 0.917 | 0.714 | 55 | 5 | 5 | 2 |
| v3nh | 0.900 | 0.714 | 54 | 6 | 5 | 2 |
| v3 | 0.783 | 0.714 | 47 | 13 | 5 | 2 |
| v4 | 0.867 | 0.143 | 52 | 8 | 1 | 6 |
v4 object FN (8): acc_022_c5 (= lowrej_022_c5), bigrej_003_c7,
lowrej_003_c1, lowrej_066_c8, lowrej_086_c5,
midrej_002_c17 (partial), midrej_003_c3, midrej_087_c40.
v4 object FP (1): acc_003_c6.
Flips v4 vs v3nh: 16 flips, all in the "v4 drops" direction, zero gains.
10 correct drops (not_tree): lowrej_002_c0_s0/s1/s2, lowrej_060_c12_s0/s1/s2,
lowrej_060_c5_s0/s1/s2, miss_060_tall_s0 — this is what takes fp_rate
0.846 → 0.077. 6 wrong drops (tree), all in segment 003: bigrej_003_c7_s0/s1/s2 and
lowrej_003_c1_s0/s1/s2 (n_tree 36k–49k → 0–70); all six sit on the c1 band that v4 gates.
| segment | cluster | n_points | h_top | length | relief | area | stems/10 m | reason |
|---|---|---|---|---|---|---|---|---|
| 002 | c0 | 390,177 | 2.69 | 101.3 m | 1.275 | 1301.5 m2 | 1.283 | band_shape+band_surface |
| 003 | c1 | 222,150 | 2.818 | 61.9 m | 1.232 | 502.25 m2 | 0.162 | band_shape+band_surface |
| 060 | c5 | 97,626 | 2.257 | 30.1 m | 0.819 | 359.25 m2 | 1.330 | band_shape+band_surface |
| 060 | c12 | 230,053 | 2.610 | 58.5 m | 1.153 | 935.0 m2 | 1.196 | band_shape+band_surface |
One card per parent. BEFORE = today's detector (v0), AFTER = v4. Green paint = points claimed as tree. Answer each Q with one word. Click any image to open it full-resolution; ← / → (or swipe) step through the images of that question only, Esc closes. Each caption also links the top-down view.
your Fig. 3 wall
Q1 — 060 c12: hedge (not tree) or trees?
answer: Q1: hedge / Q1: trees / Q1: mixed - <where>
Q2 — 060 c5: hedge (not tree) or trees?
answer: Q2: hedge / Q2: trees / Q2: mixed - <where>
Q3 — 002 c0: hedge (not tree) or trees?
answer: Q3: hedge / Q3: trees / Q3: mixed - <where>
gated by v4 as a band; c7 spots sit on it. c7 itself was TILED (3/7 tiles accepted) but its truth spots still end at 0-40 tree points, so all 6 wrong drops of v4 are here.
Q4 — 003 c1: hedge (not tree) or trees?
answer: Q4: hedge / Q4: trees / Q4: mixed - <where>
kept only by the stem count (1.92 > 1.6 threshold)
Q5 — 066 c15: hedge (not tree) or trees?
answer: Q5: hedge / Q5: trees / Q5: mixed - <where>
flat, kept only by the area floor (132 < 250 m2); tiles rejected by the RF anyway
Q6 — 066 c8: hedge (not tree) or trees?
answer: Q6: hedge / Q6: trees / Q6: mixed - <where>
Q7 — 023 c3: hedge (not tree) or trees?
answer: Q7: hedge / Q7: trees / Q7: mixed - <where>
Q8 — 086 c5: hedge (not tree) or trees?
answer: Q8: hedge / Q8: trees / Q8: mixed - <where>
Q9 — 087 c3: hedge (not tree) or trees?
answer: Q9: hedge / Q9: trees / Q9: mixed - <where>
1.5 m wide sliver, not gated (area below the 250 m2 floor), tiles rejected anyway
Q10 — 093 c0: hedge (not tree) or trees?
answer: Q10: hedge / Q10: trees / Q10: mixed - <where>
relief just above 1.5 m -> rescued
No v4 render exists for this spot (segment 094 was not re-rendered) — only the BEFORE views are shown.
No v4 render exists for this spot (segment 094 was not re-rendered) — only the BEFORE views are shown.
No v4 render exists for this spot (segment 094 was not re-rendered) — only the BEFORE views are shown.
Q11 — 094 c1: hedge (not tree) or trees?
answer: Q11: hedge / Q11: trees / Q11: mixed - <where>
rescued; 1.24 M points
Q12 — 018 c0: hedge (not tree) or trees?
answer: Q12: hedge / Q12: trees / Q12: mixed - <where>
control: should look identical before/after
Q13 — 085 c2: hedge (not tree) or trees?
answer: Q13: hedge / Q13: trees / Q13: mixed - <where>
acclow_087_c42_s0 contestedQ-c: tree or not?
answer: Q-c: tree / Q-c: not tree
Runtime. Segment 051 (worst case): baseline 1221 s, tile-all 1642 s (+34 %). Rescue-only
re-measures only the rejected parents, so the real cost is lower; corpus numbers will land in
/home/ai/veg373_work/recall/phase3/eval/corpus_v4.md when the corpus run finishes (that file does not
exist yet).
Proposed A1 config (code defaults stay OFF):
tile_enabled true
tile_size_m 8
tile_rescue_only true
tile_parent_hedge_gate true
tile_hedge_gate_max_seed_per_10m 1.6
tile_hedge_gate_min_area_m2 250
Files. /home/ai/veg373_work/recall/phase3/eval/compare4.md plus
<v>.json / <v>.csv for v0, v1, v2, v3nh, v3, v4. Builder script:
/home/ai/veg373_work/recall/phase3/eval/_mk_compare4.py. No errors; all 14/14 segments had
tree_clusters.csv in every variant. v3e / v3e2 skipped as instructed.
Copy, fill in, send back. hedge / trees / mixed - <where> for
Q1–Q13.
Q1:
Q2:
Q3:
Q4:
Q5:
Q6:
Q7:
Q8:
Q9:
Q10:
Q11:
Q12:
Q13:
Q-c:
Q-cfg: (A1 config as proposed? yes / no + change)