Commit ·
fc0df67
1
Parent(s): f3ad0d2
Tighten the copy across hero, demo, why-video, and results, and wrap the table caption so no line is left an orphan
Browse files- index.html +6 -6
index.html
CHANGED
|
@@ -179,7 +179,7 @@
|
|
| 179 |
.metric-note b{color:var(--ink);font-weight:600}
|
| 180 |
.btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
|
| 181 |
h1,h2,h3,.sub,.lede,.slead,.caption,.metric-note,figcaption{text-wrap:balance}
|
| 182 |
-
.fnote,.abcard>p,.whygrid .wc p,p{text-wrap:pretty}
|
| 183 |
footer .a a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px}
|
| 184 |
footer .a a:hover{border-color:var(--accent-2)}
|
| 185 |
footer .aff a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}
|
|
@@ -211,7 +211,7 @@
|
|
| 211 |
<span class="kick hrise" style="--d:.05s">V2N · To appear at ISMIR 2026</span>
|
| 212 |
<h1 class="hrise" style="--d:.14s">Video to <span class="g">Notes</span></h1>
|
| 213 |
<div class="sub hrise" style="--d:.28s">Piano, transcribed by sight.</div>
|
| 214 |
-
<p class="lede hrise" style="--d:.4s">The first complete<a href="#notes" class="fn" aria-label="what complete means">†</a> visual piano transcription system. It
|
| 215 |
<div class="cta hrise" style="--d:.52s"><a class="btn pr" href="#demo">See the demo</a><a class="link" href="https://github.com/yonghyunk1m/V2N">Get the code ›</a></div>
|
| 216 |
</div>
|
| 217 |
</section>
|
|
@@ -219,7 +219,7 @@
|
|
| 219 |
<section id="demo"><div class="wrap wide">
|
| 220 |
<span class="kick blk reveal">On real PianoVAM footage</span>
|
| 221 |
<h2 class="stitle reveal">Watch it read every key.</h2>
|
| 222 |
-
<p class="slead reveal">A real recording plays on top. Below
|
| 223 |
|
| 224 |
<div class="pieces reveal" id="pieces"></div>
|
| 225 |
|
|
@@ -243,12 +243,12 @@
|
|
| 243 |
<span class="hint">video keeps playing, sound switches</span>
|
| 244 |
</div>
|
| 245 |
</div>
|
| 246 |
-
<p class="caption reveal">Filled bars are V2N, outlines are the ground
|
| 247 |
</div></section>
|
| 248 |
|
| 249 |
<section id="why" class="alt"><div class="wrap"><span class="kick blk reveal">Why video</span>
|
| 250 |
<h2 class="stitle reveal">Audio loses the moment a key lifts.</h2>
|
| 251 |
-
<p class="slead reveal">
|
| 252 |
<figure class="paperfig reveal">
|
| 253 |
<img src="fig1.png" alt="Key mechanics. Key Hold, read from video, spans key press to key release. Audio Active, read from audio, extends past it through the sustain pedal.">
|
| 254 |
<figcaption>From the paper. <b>Key Hold</b> (video) runs from key press to key release. <b>Audio Active</b> (audio) reaches further, held up by the sustain pedal, so the two agree only when no pedal is down. V2N reads the key edge that audio never sees, and the same view carries velocity.</figcaption>
|
|
@@ -285,7 +285,7 @@
|
|
| 285 |
</div>
|
| 286 |
<p class="metric-note reveal">Read the columns as cumulative. <b>Onset</b> counts a note when its pitch and onset land within the tolerance. <b>+Off</b> also requires the offset to match, <b>+Vel</b> also requires velocity within 10 percent, and <b>+Off+Vel</b> requires all four at once.</p>
|
| 287 |
<div class="scroll-x reveal"><table class="res">
|
| 288 |
-
<caption>PianoVAM, R3s, and R3x
|
| 289 |
<thead><tr><th>Method</th><th>Onset</th><th>+Off</th><th>+Vel</th><th>+Off+Vel</th></tr></thead>
|
| 290 |
<tbody>
|
| 291 |
<tr class="grp"><td colspan="5">Trained on PianoVAM, tested on PianoVAM</td></tr>
|
|
|
|
| 179 |
.metric-note b{color:var(--ink);font-weight:600}
|
| 180 |
.btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
|
| 181 |
h1,h2,h3,.sub,.lede,.slead,.caption,.metric-note,figcaption{text-wrap:balance}
|
| 182 |
+
.fnote,.abcard>p,.whygrid .wc p,p,table.res caption{text-wrap:pretty}
|
| 183 |
footer .a a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px}
|
| 184 |
footer .a a:hover{border-color:var(--accent-2)}
|
| 185 |
footer .aff a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}
|
|
|
|
| 211 |
<span class="kick hrise" style="--d:.05s">V2N · To appear at ISMIR 2026</span>
|
| 212 |
<h1 class="hrise" style="--d:.14s">Video to <span class="g">Notes</span></h1>
|
| 213 |
<div class="sub hrise" style="--d:.28s">Piano, transcribed by sight.</div>
|
| 214 |
+
<p class="lede hrise" style="--d:.4s">The first complete<a href="#notes" class="fn" aria-label="what complete means">†</a> visual piano transcription system. It reads the keyboard and writes full MIDI from silent video alone.</p>
|
| 215 |
<div class="cta hrise" style="--d:.52s"><a class="btn pr" href="#demo">See the demo</a><a class="link" href="https://github.com/yonghyunk1m/V2N">Get the code ›</a></div>
|
| 216 |
</div>
|
| 217 |
</section>
|
|
|
|
| 219 |
<section id="demo"><div class="wrap wide">
|
| 220 |
<span class="kick blk reveal">On real PianoVAM footage</span>
|
| 221 |
<h2 class="stitle reveal">Watch it read every key.</h2>
|
| 222 |
+
<p class="slead reveal">A real recording plays on top. Below it, the notes V2N predicted for the same clip line up against the ground truth as the playhead moves, all computed ahead of time. Pick a performance, and switch <b class="wp">between</b> the real audio and <b class="wp">V2N</b>'s transcription played through a synth.</p>
|
| 223 |
|
| 224 |
<div class="pieces reveal" id="pieces"></div>
|
| 225 |
|
|
|
|
| 243 |
<span class="hint">video keeps playing, sound switches</span>
|
| 244 |
</div>
|
| 245 |
</div>
|
| 246 |
+
<p class="caption reveal">Filled bars are V2N, outlines are the ground truth. Where they line up, the model got it right, across onset, offset, key hold, and velocity. <b>Nothing runs live. These are saved predictions, so you can check them against the truth and against the sound.</b></p>
|
| 247 |
</div></section>
|
| 248 |
|
| 249 |
<section id="why" class="alt"><div class="wrap"><span class="kick blk reveal">Why video</span>
|
| 250 |
<h2 class="stitle reveal">Audio loses the moment a key lifts.</h2>
|
| 251 |
+
<p class="slead reveal">Press the sustain pedal and a note rings on long after the key lifts. Audio hears only the tail, so it cannot tell when the note truly ended. Video sees the key itself.</p>
|
| 252 |
<figure class="paperfig reveal">
|
| 253 |
<img src="fig1.png" alt="Key mechanics. Key Hold, read from video, spans key press to key release. Audio Active, read from audio, extends past it through the sustain pedal.">
|
| 254 |
<figcaption>From the paper. <b>Key Hold</b> (video) runs from key press to key release. <b>Audio Active</b> (audio) reaches further, held up by the sustain pedal, so the two agree only when no pedal is down. V2N reads the key edge that audio never sees, and the same view carries velocity.</figcaption>
|
|
|
|
| 285 |
</div>
|
| 286 |
<p class="metric-note reveal">Read the columns as cumulative. <b>Onset</b> counts a note when its pitch and onset land within the tolerance. <b>+Off</b> also requires the offset to match, <b>+Vel</b> also requires velocity within 10 percent, and <b>+Off+Vel</b> requires all four at once.</p>
|
| 287 |
<div class="scroll-x reveal"><table class="res">
|
| 288 |
+
<caption>F1 at 50 ms on PianoVAM, R3s, and R3x, under our strict offset convention. V2N leads every column, p<0.01 against the runner-up. Parenthesized scores mark a degenerate baseline head, constant velocity for all prior systems and near-zero-duration offsets for Li et al. The full 50 and 100 ms tables are in the paper.</caption>
|
| 289 |
<thead><tr><th>Method</th><th>Onset</th><th>+Off</th><th>+Vel</th><th>+Off+Vel</th></tr></thead>
|
| 290 |
<tbody>
|
| 291 |
<tr class="grp"><td colspan="5">Trained on PianoVAM, tested on PianoVAM</td></tr>
|