summaryrefslogtreecommitdiff
path: root/TODO.md
diff options
context:
space:
mode:
Diffstat (limited to 'TODO.md')
-rw-r--r--TODO.md36
1 files changed, 18 insertions, 18 deletions
diff --git a/TODO.md b/TODO.md
index 39b6857..a1ee9a2 100644
--- a/TODO.md
+++ b/TODO.md
@@ -24,33 +24,33 @@ Self-contained workspaces for parallel demo development.
---
-## Priority 2: CNN v2 - Parametric Static Features (Task #85) [READY FOR TRAINING]
+## Priority 2: CNN v2 - Parametric Static Features (Task #85) [COMPLETE]
Enhanced CNN post-processing with multi-dimensional feature inputs.
**Design:** `doc/CNN_V2.md`
**Status:**
-- ✅ Phase 1: Static features shader (RGBD + UV + sin encoding + bias → 8×f16, 3 mip levels)
-- ✅ Phase 2: C++ effect class (CNNv2Effect skeleton, multi-pass architecture)
-- ✅ Phase 3: Training pipeline (`train_cnn_v2.py`, `export_cnn_v2_shader.py`)
-- ✅ Phase 4: Validation tooling (`scripts/validate_cnn_v2.sh`)
-- ✅ Phase 5: Render pipeline (compute passes, bind groups, texture management)
+- ✅ Phase 1-5: All implementation phases complete
+- ✅ Storage buffer architecture (dynamic layer count support)
+- ✅ Binary weight format (header + layer info + f16 weights)
+- ✅ Training pipeline with live progress display
+- ✅ Complete validation tooling (`train_cnn_v2_full.sh --validate`)
+- ✅ All tests passing (36/36)
-**Implementation complete:**
-- Static features compute pass functional
-- Multi-pass architecture ready
-- Layer shader integration structure in place
-- All tests passing (36/36)
+**Features:**
+- 7D static feature input (RGBD + UV + sin encoding + bias)
+- Storage buffer weights (~3.2 KB for 3-layer, 8→4→4 config)
+- Dynamic layer count (not hardcoded)
+- Single compute shader with per-layer params
+- Patch-based training (harris detector, 32×32 patches)
+- Fast training config: 100 epochs, 3×3 kernels
-**Next:** Train model, generate layer shaders, integrate into demo
+**Performance:**
+- Storage buffer overhead: ~10-20% vs constants (negligible @ 60fps)
+- Target achieved: <10 KB for 64k demo constraint
-**Key improvements over v1:**
-- 7D static feature input (vs 4D RGB)
-- Per-layer configurable kernels (1×1, 3×3, 5×5)
-- Float16 weight storage (~6.4 KB)
-
-**Target:** <10 KB for 64k demo constraint
+**TODO:** 8-bit quantization for 2× size reduction (~1.6 KB). Requires QAT.
---