Spaces:
Running
Running
force recovery: methods, evaluation, debug log
Browse files- .gitattributes +18 -0
- assets/debug/cnc_01.png +3 -0
- assets/debug/cnc_04.png +3 -0
- assets/debug/cnc_08.png +3 -0
- assets/debug/cnc_11.png +3 -0
- assets/debug/cnc_14.png +3 -0
- assets/debug/cnc_17.png +3 -0
- assets/debug/feats_01.png +3 -0
- assets/debug/feats_04.png +3 -0
- assets/debug/feats_08.png +3 -0
- assets/debug/feats_11.png +3 -0
- assets/debug/feats_14.png +3 -0
- assets/debug/feats_17.png +3 -0
- assets/debug/glowtact_01.png +3 -0
- assets/debug/glowtact_04.png +3 -0
- assets/debug/glowtact_08.png +3 -0
- assets/debug/glowtact_11.png +3 -0
- assets/debug/glowtact_14.png +3 -0
- assets/debug/glowtact_17.png +3 -0
- debug_pipeline.html +106 -0
- debug_pipeline_zh.html +93 -0
- results.html +4 -0
- results_zh.html +2 -0
.gitattributes
CHANGED
|
@@ -75,3 +75,21 @@ assets/glowtact_comparison.png filter=lfs diff=lfs merge=lfs -text
|
|
| 75 |
assets/results_cnc.png filter=lfs diff=lfs merge=lfs -text
|
| 76 |
assets/results_feats.png filter=lfs diff=lfs merge=lfs -text
|
| 77 |
assets/results_glowtact.png filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 75 |
assets/results_cnc.png filter=lfs diff=lfs merge=lfs -text
|
| 76 |
assets/results_feats.png filter=lfs diff=lfs merge=lfs -text
|
| 77 |
assets/results_glowtact.png filter=lfs diff=lfs merge=lfs -text
|
| 78 |
+
assets/debug/cnc_01.png filter=lfs diff=lfs merge=lfs -text
|
| 79 |
+
assets/debug/cnc_04.png filter=lfs diff=lfs merge=lfs -text
|
| 80 |
+
assets/debug/cnc_08.png filter=lfs diff=lfs merge=lfs -text
|
| 81 |
+
assets/debug/cnc_11.png filter=lfs diff=lfs merge=lfs -text
|
| 82 |
+
assets/debug/cnc_14.png filter=lfs diff=lfs merge=lfs -text
|
| 83 |
+
assets/debug/cnc_17.png filter=lfs diff=lfs merge=lfs -text
|
| 84 |
+
assets/debug/feats_01.png filter=lfs diff=lfs merge=lfs -text
|
| 85 |
+
assets/debug/feats_04.png filter=lfs diff=lfs merge=lfs -text
|
| 86 |
+
assets/debug/feats_08.png filter=lfs diff=lfs merge=lfs -text
|
| 87 |
+
assets/debug/feats_11.png filter=lfs diff=lfs merge=lfs -text
|
| 88 |
+
assets/debug/feats_14.png filter=lfs diff=lfs merge=lfs -text
|
| 89 |
+
assets/debug/feats_17.png filter=lfs diff=lfs merge=lfs -text
|
| 90 |
+
assets/debug/glowtact_01.png filter=lfs diff=lfs merge=lfs -text
|
| 91 |
+
assets/debug/glowtact_04.png filter=lfs diff=lfs merge=lfs -text
|
| 92 |
+
assets/debug/glowtact_08.png filter=lfs diff=lfs merge=lfs -text
|
| 93 |
+
assets/debug/glowtact_11.png filter=lfs diff=lfs merge=lfs -text
|
| 94 |
+
assets/debug/glowtact_14.png filter=lfs diff=lfs merge=lfs -text
|
| 95 |
+
assets/debug/glowtact_17.png filter=lfs diff=lfs merge=lfs -text
|
assets/debug/cnc_01.png
ADDED
|
Git LFS Details
|
assets/debug/cnc_04.png
ADDED
|
Git LFS Details
|
assets/debug/cnc_08.png
ADDED
|
Git LFS Details
|
assets/debug/cnc_11.png
ADDED
|
Git LFS Details
|
assets/debug/cnc_14.png
ADDED
|
Git LFS Details
|
assets/debug/cnc_17.png
ADDED
|
Git LFS Details
|
assets/debug/feats_01.png
ADDED
|
Git LFS Details
|
assets/debug/feats_04.png
ADDED
|
Git LFS Details
|
assets/debug/feats_08.png
ADDED
|
Git LFS Details
|
assets/debug/feats_11.png
ADDED
|
Git LFS Details
|
assets/debug/feats_14.png
ADDED
|
Git LFS Details
|
assets/debug/feats_17.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_01.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_04.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_08.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_11.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_14.png
ADDED
|
Git LFS Details
|
assets/debug/glowtact_17.png
ADDED
|
Git LFS Details
|
debug_pipeline.html
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!doctype html><html lang="en"><head><meta charset="utf-8">
|
| 2 |
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
| 3 |
+
<title>Pipeline debug — raw image to force, step by step</title>
|
| 4 |
+
<style>
|
| 5 |
+
:root{--paper:#0d1526;--ink:#dce7f5;--dim:#7c8db0;--grid:#1a2540;
|
| 6 |
+
--force:#ffb347;--target:#ff7847;--ok:#7be0a0;--card:#111b31;--line:#24345;}
|
| 7 |
+
*{box-sizing:border-box}
|
| 8 |
+
body{margin:0;background:var(--paper);color:var(--ink);
|
| 9 |
+
font-family:'IBM Plex Sans','Noto Sans SC',sans-serif;line-height:1.65;font-size:16px;
|
| 10 |
+
background-image:linear-gradient(var(--grid) 1px,transparent 1px),
|
| 11 |
+
linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:44px 44px}
|
| 12 |
+
.wrap{max-width:880px;margin:0 auto;padding:0 24px 80px}
|
| 13 |
+
h1,h2{font-family:'Fraunces','Noto Serif SC',serif}
|
| 14 |
+
h1{font-size:2.1rem;font-weight:700;line-height:1.2;margin:0 0 10px}
|
| 15 |
+
h2{font-size:1.25rem;font-weight:600;margin:46px 0 8px;color:var(--force)}
|
| 16 |
+
.kicker{font-family:'IBM Plex Mono',monospace;font-size:.76rem;letter-spacing:.16em;
|
| 17 |
+
text-transform:uppercase;color:var(--force);margin-bottom:14px}
|
| 18 |
+
header{padding:60px 0 26px;border-bottom:1px dashed var(--line)}
|
| 19 |
+
.sub{color:var(--dim);max-width:720px}
|
| 20 |
+
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;
|
| 21 |
+
padding:18px 22px;margin:14px 0}
|
| 22 |
+
.step{display:grid;grid-template-columns:34px 200px 1fr;gap:12px;
|
| 23 |
+
padding:10px 0;border-bottom:1px solid var(--line);align-items:baseline}
|
| 24 |
+
.step:last-child{border-bottom:none}
|
| 25 |
+
.step .n{font-family:'Fraunces',serif;font-size:1.25rem;color:var(--target)}
|
| 26 |
+
.step .t{font-family:'IBM Plex Mono',monospace;font-size:.85rem}
|
| 27 |
+
.step .d{color:var(--dim);font-size:.9rem}
|
| 28 |
+
table{border-collapse:collapse;width:100%;font-size:.88rem;margin:10px 0;
|
| 29 |
+
font-variant-numeric:tabular-nums}
|
| 30 |
+
th,td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:right}
|
| 31 |
+
th{color:var(--dim);font-family:'IBM Plex Mono',monospace;font-size:.72rem;
|
| 32 |
+
text-transform:uppercase;letter-spacing:.08em}
|
| 33 |
+
td:first-child,th:first-child{text-align:left}
|
| 34 |
+
img{max-width:100%;border-radius:8px;border:1px solid var(--line);display:block;margin:12px auto}
|
| 35 |
+
a{color:#4fd8e0}a:hover{color:var(--force)}
|
| 36 |
+
.pill{display:inline-block;border:1px solid var(--line);border-radius:999px;
|
| 37 |
+
padding:3px 12px;font-size:.75rem;font-family:'IBM Plex Mono',monospace;
|
| 38 |
+
color:var(--dim);margin-right:8px;margin-top:12px;text-decoration:none}
|
| 39 |
+
code{font-family:'IBM Plex Mono',monospace;background:#0a1120;padding:1px 5px;
|
| 40 |
+
border-radius:4px;font-size:.85em}
|
| 41 |
+
.ok{color:var(--ok)}.warn{color:#e0b34f}
|
| 42 |
+
footer{margin-top:60px;padding-top:18px;border-top:1px dashed var(--line);
|
| 43 |
+
color:var(--dim);font-size:.8rem}
|
| 44 |
+
@media(max-width:640px){.step{grid-template-columns:28px 1fr;grid-auto-flow:dense}
|
| 45 |
+
.step .d{grid-column:2}
|
| 46 |
+
h1{font-size:1.45rem}
|
| 47 |
+
table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
|
| 48 |
+
th,td{white-space:normal;min-width:110px}}
|
| 49 |
+
.srow img{width:100%;max-width:1700px;background:#fff;
|
| 50 |
+
border-radius:6px;margin:4px 0}</style></head><body><div class="wrap">
|
| 51 |
+
<div class="kicker">React force recovery · pipeline debug
|
| 52 |
+
<span style="float:right"><a href="debug_pipeline_zh.html">中文</a></span></div>
|
| 53 |
+
<h1>From raw image to force, step by step</h1>
|
| 54 |
+
<p>Each row: raw → reference → dI=img−ref → valid mask
|
| 55 |
+
→ |LUT gradient| → Poisson depth → features and predicted vs
|
| 56 |
+
ground-truth force. Same pipeline, three datasets.</p>
|
| 57 |
+
<h2>Why cnc_Mini looked broken — and what it actually was</h2>
|
| 58 |
+
<p>Neither bad labels nor a broken reconstruction: the cnc press grid spans
|
| 59 |
+
the full 20×16 mm pad while the cropped camera view sees only
|
| 60 |
+
≈13×10 mm, so two thirds of the presses are partially outside the
|
| 61 |
+
image and their contact features are systematically underestimated. Restricted
|
| 62 |
+
to presses fully in view, the same reconstruction reaches GlowTact-level
|
| 63 |
+
accuracy. Label quality is fine (force CV 4.5% at fixed probe/position/depth).
|
| 64 |
+
This retracts our earlier “dataset ceiling” argument: in-view
|
| 65 |
+
ρ=0.94 exceeds the commanded-depth proxy (0.78–0.88) that argument
|
| 66 |
+
relied on.</p>
|
| 67 |
+
<table><tr><th>scope (cnc, 3351 frames)</th><th>n</th>
|
| 68 |
+
<th>per-probe ρ (A–F)</th><th>median ρ</th><th>MAE</th></tr>
|
| 69 |
+
<tr><td>all press positions</td><td>3351</td><td>0.09–0.16</td>
|
| 70 |
+
<td>0.113</td><td>0.74 N</td></tr>
|
| 71 |
+
<tr><td>interior x∈[3.5,14.5]</td><td>1232</td><td>0.79–0.85</td>
|
| 72 |
+
<td>0.835</td><td>0.39 N</td></tr>
|
| 73 |
+
<tr><td><b>strictly in view x∈[5,13]</b></td><td>671</td>
|
| 74 |
+
<td><b>0.94 0.94 0.93 0.91 0.95 0.95</b></td><td><b>0.941</b></td>
|
| 75 |
+
<td><b>0.26 N</b></td></tr></table>
|
| 76 |
+
<p class="note">Per-probe half/half fit, 7 seeds, LUT pipeline with
|
| 77 |
+
z-supervised gain field. Dot-type control: FEATS presses are always centered,
|
| 78 |
+
so the raw pipeline already gives ρ=0.72 there, vs 0.46 raw on GlowTact —
|
| 79 |
+
the gain field and scope, not markers, are the binding factors.</p>
|
| 80 |
+
<h2>GlowTact — markerless, the LUT's home sensor (control)</h2><div class='srow'>
|
| 81 |
+
<img src='assets/debug/glowtact_01.png' loading='lazy'>
|
| 82 |
+
<img src='assets/debug/glowtact_04.png' loading='lazy'>
|
| 83 |
+
<img src='assets/debug/glowtact_08.png' loading='lazy'>
|
| 84 |
+
<img src='assets/debug/glowtact_11.png' loading='lazy'>
|
| 85 |
+
<img src='assets/debug/glowtact_14.png' loading='lazy'>
|
| 86 |
+
<img src='assets/debug/glowtact_17.png' loading='lazy'>
|
| 87 |
+
</div>
|
| 88 |
+
<h2>FoTa cnc_Mini — markerless, foreign sensor, press grid larger than the field of view</h2><div class='srow'>
|
| 89 |
+
<img src='assets/debug/cnc_01.png' loading='lazy'>
|
| 90 |
+
<img src='assets/debug/cnc_04.png' loading='lazy'>
|
| 91 |
+
<img src='assets/debug/cnc_08.png' loading='lazy'>
|
| 92 |
+
<img src='assets/debug/cnc_11.png' loading='lazy'>
|
| 93 |
+
<img src='assets/debug/cnc_14.png' loading='lazy'>
|
| 94 |
+
<img src='assets/debug/cnc_17.png' loading='lazy'>
|
| 95 |
+
</div>
|
| 96 |
+
<h2>FEATS — dot/marker type; difference imaging cancels static markers</h2><div class='srow'>
|
| 97 |
+
<img src='assets/debug/feats_01.png' loading='lazy'>
|
| 98 |
+
<img src='assets/debug/feats_04.png' loading='lazy'>
|
| 99 |
+
<img src='assets/debug/feats_08.png' loading='lazy'>
|
| 100 |
+
<img src='assets/debug/feats_11.png' loading='lazy'>
|
| 101 |
+
<img src='assets/debug/feats_14.png' loading='lazy'>
|
| 102 |
+
<img src='assets/debug/feats_17.png' loading='lazy'>
|
| 103 |
+
</div>
|
| 104 |
+
<footer>React force recovery · <a href="index.html">overview</a> ·
|
| 105 |
+
<a href="results.html">results</a> · <a href="method.html">method design</a>
|
| 106 |
+
</footer></div></body></html>
|
debug_pipeline_zh.html
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!doctype html><html lang="zh-CN"><head><meta charset="utf-8">
|
| 2 |
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
| 3 |
+
<title>管线调试 — 从原始图像到力,逐步展示</title>
|
| 4 |
+
<style>
|
| 5 |
+
:root{--paper:#0d1526;--ink:#dce7f5;--dim:#7c8db0;--grid:#1a2540;
|
| 6 |
+
--force:#ffb347;--target:#ff7847;--ok:#7be0a0;--card:#111b31;--line:#24345;}
|
| 7 |
+
*{box-sizing:border-box}
|
| 8 |
+
body{margin:0;background:var(--paper);color:var(--ink);
|
| 9 |
+
font-family:'IBM Plex Sans','Noto Sans SC',sans-serif;line-height:1.65;font-size:16px;
|
| 10 |
+
background-image:linear-gradient(var(--grid) 1px,transparent 1px),
|
| 11 |
+
linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:44px 44px}
|
| 12 |
+
.wrap{max-width:880px;margin:0 auto;padding:0 24px 80px}
|
| 13 |
+
h1,h2{font-family:'Fraunces','Noto Serif SC',serif}
|
| 14 |
+
h1{font-size:2.1rem;font-weight:700;line-height:1.2;margin:0 0 10px}
|
| 15 |
+
h2{font-size:1.25rem;font-weight:600;margin:46px 0 8px;color:var(--force)}
|
| 16 |
+
.kicker{font-family:'IBM Plex Mono',monospace;font-size:.76rem;letter-spacing:.16em;
|
| 17 |
+
text-transform:uppercase;color:var(--force);margin-bottom:14px}
|
| 18 |
+
header{padding:60px 0 26px;border-bottom:1px dashed var(--line)}
|
| 19 |
+
.sub{color:var(--dim);max-width:720px}
|
| 20 |
+
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;
|
| 21 |
+
padding:18px 22px;margin:14px 0}
|
| 22 |
+
.step{display:grid;grid-template-columns:34px 200px 1fr;gap:12px;
|
| 23 |
+
padding:10px 0;border-bottom:1px solid var(--line);align-items:baseline}
|
| 24 |
+
.step:last-child{border-bottom:none}
|
| 25 |
+
.step .n{font-family:'Fraunces',serif;font-size:1.25rem;color:var(--target)}
|
| 26 |
+
.step .t{font-family:'IBM Plex Mono',monospace;font-size:.85rem}
|
| 27 |
+
.step .d{color:var(--dim);font-size:.9rem}
|
| 28 |
+
table{border-collapse:collapse;width:100%;font-size:.88rem;margin:10px 0;
|
| 29 |
+
font-variant-numeric:tabular-nums}
|
| 30 |
+
th,td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:right}
|
| 31 |
+
th{color:var(--dim);font-family:'IBM Plex Mono',monospace;font-size:.72rem;
|
| 32 |
+
text-transform:uppercase;letter-spacing:.08em}
|
| 33 |
+
td:first-child,th:first-child{text-align:left}
|
| 34 |
+
img{max-width:100%;border-radius:8px;border:1px solid var(--line);display:block;margin:12px auto}
|
| 35 |
+
a{color:#4fd8e0}a:hover{color:var(--force)}
|
| 36 |
+
.pill{display:inline-block;border:1px solid var(--line);border-radius:999px;
|
| 37 |
+
padding:3px 12px;font-size:.75rem;font-family:'IBM Plex Mono',monospace;
|
| 38 |
+
color:var(--dim);margin-right:8px;margin-top:12px;text-decoration:none}
|
| 39 |
+
code{font-family:'IBM Plex Mono',monospace;background:#0a1120;padding:1px 5px;
|
| 40 |
+
border-radius:4px;font-size:.85em}
|
| 41 |
+
.ok{color:var(--ok)}.warn{color:#e0b34f}
|
| 42 |
+
footer{margin-top:60px;padding-top:18px;border-top:1px dashed var(--line);
|
| 43 |
+
color:var(--dim);font-size:.8rem}
|
| 44 |
+
@media(max-width:640px){.step{grid-template-columns:28px 1fr;grid-auto-flow:dense}
|
| 45 |
+
.step .d{grid-column:2}
|
| 46 |
+
h1{font-size:1.45rem}
|
| 47 |
+
table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
|
| 48 |
+
th,td{white-space:normal;min-width:110px}}
|
| 49 |
+
.srow img{width:100%;max-width:1700px;background:#fff;
|
| 50 |
+
border-radius:6px;margin:4px 0}</style></head><body><div class="wrap">
|
| 51 |
+
<div class="kicker">React force recovery · 管线调试
|
| 52 |
+
<span style="float:right"><a href="debug_pipeline.html">English</a></span></div>
|
| 53 |
+
<h1>从原始图像到力,逐步展示</h1>
|
| 54 |
+
<p>每行:原图 → 参考帧 → 差分 dI=img−ref → 有效掩码 → |LUT 梯度| → Poisson 深度 → 特征与预测力 vs 真值。同一管线,三个数据集。</p>
|
| 55 |
+
<h2>cnc_Mini 为何看起来失效 — 真正的原因</h2>
|
| 56 |
+
<p>既不是标签质量差,也不是重建失效:cnc 的按压网格覆盖整块 20×16 mm 凝胶,而裁剪后的相机视野只有约 13×10 mm——三分之二的按压部分在画面外,接触特征被系统性低估。仅取完全在视野内的按压,同一重建管线达到 GlowTact 同级精度。标签质量合格(固定探头/位置/深度下力的变异系数 4.5%)。这也撤回了我们此前的“数据集天花板”论证:视野内 ρ=0.94 超过了该论证依赖的指令深度代理值(0.78–0.88)。</p>
|
| 57 |
+
<table><tr><th>作用域(cnc,3351 帧)</th><th>n</th>
|
| 58 |
+
<th>per-probe ρ (A–F)</th><th>median ρ</th><th>MAE</th></tr>
|
| 59 |
+
<tr><td>全部按压位置</td><td>3351</td><td>0.09–0.16</td>
|
| 60 |
+
<td>0.113</td><td>0.74 N</td></tr>
|
| 61 |
+
<tr><td>内部 x∈[3.5,14.5]</td><td>1232</td><td>0.79–0.85</td>
|
| 62 |
+
<td>0.835</td><td>0.39 N</td></tr>
|
| 63 |
+
<tr><td><b>严格视野内 x∈[5,13]</b></td><td>671</td>
|
| 64 |
+
<td><b>0.94 0.94 0.93 0.91 0.95 0.95</b></td><td><b>0.941</b></td>
|
| 65 |
+
<td><b>0.26 N</b></td></tr></table>
|
| 66 |
+
<p class="note">每探头半半分拟合,7 种子,LUT 管线 + z 监督增益场。dot 类型对照:FEATS 按压恒居中,原始管线即得 ρ=0.72,而 GlowTact 原始条件仅 0.46——起决定作用的是增益场与作用域,而非 marker。</p>
|
| 67 |
+
<h2>GlowTact — 无 marker,LUT 标定所用传感器(对照)</h2><div class='srow'>
|
| 68 |
+
<img src='assets/debug/glowtact_01.png' loading='lazy'>
|
| 69 |
+
<img src='assets/debug/glowtact_04.png' loading='lazy'>
|
| 70 |
+
<img src='assets/debug/glowtact_08.png' loading='lazy'>
|
| 71 |
+
<img src='assets/debug/glowtact_11.png' loading='lazy'>
|
| 72 |
+
<img src='assets/debug/glowtact_14.png' loading='lazy'>
|
| 73 |
+
<img src='assets/debug/glowtact_17.png' loading='lazy'>
|
| 74 |
+
</div>
|
| 75 |
+
<h2>FoTa cnc_Mini — 无 marker,外来传感器,按压网格大于视野</h2><div class='srow'>
|
| 76 |
+
<img src='assets/debug/cnc_01.png' loading='lazy'>
|
| 77 |
+
<img src='assets/debug/cnc_04.png' loading='lazy'>
|
| 78 |
+
<img src='assets/debug/cnc_08.png' loading='lazy'>
|
| 79 |
+
<img src='assets/debug/cnc_11.png' loading='lazy'>
|
| 80 |
+
<img src='assets/debug/cnc_14.png' loading='lazy'>
|
| 81 |
+
<img src='assets/debug/cnc_17.png' loading='lazy'>
|
| 82 |
+
</div>
|
| 83 |
+
<h2>FEATS — dot/marker 类型;差分成像抵消静态 marker</h2><div class='srow'>
|
| 84 |
+
<img src='assets/debug/feats_01.png' loading='lazy'>
|
| 85 |
+
<img src='assets/debug/feats_04.png' loading='lazy'>
|
| 86 |
+
<img src='assets/debug/feats_08.png' loading='lazy'>
|
| 87 |
+
<img src='assets/debug/feats_11.png' loading='lazy'>
|
| 88 |
+
<img src='assets/debug/feats_14.png' loading='lazy'>
|
| 89 |
+
<img src='assets/debug/feats_17.png' loading='lazy'>
|
| 90 |
+
</div>
|
| 91 |
+
<footer>React force recovery · <a href="index.html">overview</a> ·
|
| 92 |
+
<a href="results.html">results</a> · <a href="method.html">method design</a>
|
| 93 |
+
</footer></div></body></html>
|
results.html
CHANGED
|
@@ -119,6 +119,10 @@ where no trained model matches the domain: the physics pipeline is the only
|
|
| 119 |
option that works out of the box — and its FEATS-dataset score (0.74) shows
|
| 120 |
what it does on a domain nobody tuned it for.</p></div>
|
| 121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
<footer>React force recovery · <a href="index.html">overview</a> ·
|
| 123 |
<a href="method.html">method design</a> · <a href="gallery.html">gallery</a> ·
|
| 124 |
data: FEATS (2411.03315) · FoTa/T3 (2406.13640) · GlowTact
|
|
|
|
| 119 |
option that works out of the box — and its FEATS-dataset score (0.74) shows
|
| 120 |
what it does on a domain nobody tuned it for.</p></div>
|
| 121 |
|
| 122 |
+
<p><a href="debug_pipeline.html"><b>Pipeline debug page</b></a>: raw
|
| 123 |
+
image → force step by step on all three datasets, and the cnc
|
| 124 |
+
field-of-view ablation (in-view ρ=0.94).</p>
|
| 125 |
+
|
| 126 |
<footer>React force recovery · <a href="index.html">overview</a> ·
|
| 127 |
<a href="method.html">method design</a> · <a href="gallery.html">gallery</a> ·
|
| 128 |
data: FEATS (2411.03315) · FoTa/T3 (2406.13640) · GlowTact
|
results_zh.html
CHANGED
|
@@ -110,6 +110,8 @@ FeelAnyForce(20 万帧)——一致性 ρ=0.91,且物理管线判无接触的每
|
|
| 110 |
物理管线独立审计,分歧行打标。<b>换任何新 gel 或新传感器</b>、没有训练模型匹配该域时:
|
| 111 |
物理管线是唯一开箱即用的选项——它在 FEATS 数据集上的 0.74 就是"无人为它调过的域"上的表现。</p></div>
|
| 112 |
|
|
|
|
|
|
|
| 113 |
<footer>React 力恢复 · <a href="index.html">总览</a> ·
|
| 114 |
<a href="method_zh.html">方法设计</a> · <a href="gallery.html">图库</a> ·
|
| 115 |
数据:FEATS (2411.03315) · FoTa/T3 (2406.13640) · GlowTact
|
|
|
|
| 110 |
物理管线独立审计,分歧行打标。<b>换任何新 gel 或新传感器</b>、没有训练模型匹配该域时:
|
| 111 |
物理管线是唯一开箱即用的选项——它在 FEATS 数据集上的 0.74 就是"无人为它调过的域"上的表现。</p></div>
|
| 112 |
|
| 113 |
+
<p><a href="debug_pipeline.html"><b>管线调试页</b></a>:三个数据集上从原始图像到力的逐步展示,以及 cnc 视野消融(视野内 ρ=0.94)。</p>
|
| 114 |
+
|
| 115 |
<footer>React 力恢复 · <a href="index.html">总览</a> ·
|
| 116 |
<a href="method_zh.html">方法设计</a> · <a href="gallery.html">图库</a> ·
|
| 117 |
数据:FEATS (2411.03315) · FoTa/T3 (2406.13640) · GlowTact
|