diff options
| -rw-r--r-- | cnn_v1/README.md | 64 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN.md (renamed from doc/CNN.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_BIAS_FIX_2026-02.md (renamed from doc/CNN_BIAS_FIX_2026-02.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_DEBUG.md (renamed from doc/CNN_DEBUG.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_EFFECT.md (renamed from doc/CNN_EFFECT.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_FLATTEN_ANALYSIS.md (renamed from doc/CNN_FLATTEN_ANALYSIS.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_RGBD_GRAYSCALE_SUMMARY.md (renamed from doc/CNN_RGBD_GRAYSCALE_SUMMARY.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/docs/CNN_TEST_TOOL.md (renamed from doc/CNN_TEST_TOOL.md) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_activation.wgsl (renamed from workspaces/main/shaders/cnn/cnn_activation.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_conv1x1.wgsl (renamed from workspaces/main/shaders/cnn/cnn_conv1x1.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_conv3x3.wgsl (renamed from workspaces/main/shaders/cnn/cnn_conv3x3.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_conv5x5.wgsl (renamed from workspaces/main/shaders/cnn/cnn_conv5x5.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_conv7x7.wgsl (renamed from workspaces/main/shaders/cnn/cnn_conv7x7.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_layer.wgsl (renamed from workspaces/main/shaders/cnn/cnn_layer.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/shaders/cnn_weights_generated.wgsl (renamed from workspaces/main/shaders/cnn/cnn_weights_generated.wgsl) | 0 | ||||
| -rw-r--r-- | cnn_v1/src/cnn_effect.cc (renamed from src/effects/cnn_effect.cc) | 0 | ||||
| -rw-r--r-- | cnn_v1/src/cnn_effect.h (renamed from src/effects/cnn_effect.h) | 0 | ||||
| -rwxr-xr-x | cnn_v1/training/train_cnn.py (renamed from training/train_cnn.py) | 0 |
18 files changed, 64 insertions, 0 deletions
diff --git a/cnn_v1/README.md b/cnn_v1/README.md new file mode 100644 index 0000000..ad9b8f3 --- /dev/null +++ b/cnn_v1/README.md @@ -0,0 +1,64 @@ +# CNN v1: Original Post-Processing Neural Network + +**Architecture:** 3-layer convolution, generated shader weights +**Status:** Active (used in timeline), legacy architecture + +## Overview + +Original CNN implementation with per-layer WGSL shaders. Supports multiple kernel sizes (1×1, 3×3, 5×5, 7×7) with generated weight arrays. + +**For new work, use CNN v2** (`cnn_v2/`) which provides: +- Storage buffer architecture (~3.2 KB vs generated WGSL) +- 7D static features (RGBD + UV + sin + bias) +- Sigmoid activation with stable training +- Dynamic layer configuration + +## Quick Reference + +**Training:** +```bash +./cnn_v1/training/train_cnn.py --input training/input --target training/output \ + --layers 3 --kernel_sizes 3,5,3 --epochs 5000 +``` + +**Integration:** +- **C++:** `cnn_v1/src/cnn_effect.{h,cc}` +- **Assets:** `workspaces/main/assets.txt` (lines 40-46) +- **Timeline:** `workspaces/main/timeline.seq` (CNNEffect) + +## Documentation + +- [CNN.md](docs/CNN.md) - Architecture overview +- [CNN_EFFECT.md](docs/CNN_EFFECT.md) - Implementation details +- [CNN_TEST_TOOL.md](docs/CNN_TEST_TOOL.md) - Testing guide +- [CNN_DEBUG.md](docs/CNN_DEBUG.md) - Debugging notes + +## Directory Structure + +``` +cnn_v1/ +├── README.md # This file +├── src/ +│ ├── cnn_effect.h # Effect header +│ └── cnn_effect.cc # Effect implementation +├── shaders/ # WGSL shaders (7 files) +├── training/ # Python training script +└── docs/ # Documentation (7 markdown files) +``` + +## Differences from CNN v2 + +| Feature | CNN v1 | CNN v2 | +|---------|--------|--------| +| Architecture | Generated WGSL weights | Storage buffer weights | +| Input Features | 4D (RGBA/prev layer) | 12D (4D + 8D static) | +| Activation | ReLU | Sigmoid + ReLU | +| Size | ~Variable (WGSL gen) | ~3.2 KB (binary) | +| Training | Full-image | Patch-based (default) | +| Layer Config | Compile-time | Runtime (dynamic) | + +## Migration Notes + +CNN v1 remains in the timeline for historical validation. For new effects or experiments, use CNN v2's enhanced feature set and compact binary format. + +See `cnn_v2/docs/CNN_V2.md` for CNN v2 architecture details. diff --git a/doc/CNN.md b/cnn_v1/docs/CNN.md index 2dc3362..2dc3362 100644 --- a/doc/CNN.md +++ b/cnn_v1/docs/CNN.md diff --git a/doc/CNN_BIAS_FIX_2026-02.md b/cnn_v1/docs/CNN_BIAS_FIX_2026-02.md index 26db8eb..26db8eb 100644 --- a/doc/CNN_BIAS_FIX_2026-02.md +++ b/cnn_v1/docs/CNN_BIAS_FIX_2026-02.md diff --git a/doc/CNN_DEBUG.md b/cnn_v1/docs/CNN_DEBUG.md index ba220a0..ba220a0 100644 --- a/doc/CNN_DEBUG.md +++ b/cnn_v1/docs/CNN_DEBUG.md diff --git a/doc/CNN_EFFECT.md b/cnn_v1/docs/CNN_EFFECT.md index 40f095e..40f095e 100644 --- a/doc/CNN_EFFECT.md +++ b/cnn_v1/docs/CNN_EFFECT.md diff --git a/doc/CNN_FLATTEN_ANALYSIS.md b/cnn_v1/docs/CNN_FLATTEN_ANALYSIS.md index bf63c5d..bf63c5d 100644 --- a/doc/CNN_FLATTEN_ANALYSIS.md +++ b/cnn_v1/docs/CNN_FLATTEN_ANALYSIS.md diff --git a/doc/CNN_RGBD_GRAYSCALE_SUMMARY.md b/cnn_v1/docs/CNN_RGBD_GRAYSCALE_SUMMARY.md index 3439f2c..3439f2c 100644 --- a/doc/CNN_RGBD_GRAYSCALE_SUMMARY.md +++ b/cnn_v1/docs/CNN_RGBD_GRAYSCALE_SUMMARY.md diff --git a/doc/CNN_TEST_TOOL.md b/cnn_v1/docs/CNN_TEST_TOOL.md index 4307894..4307894 100644 --- a/doc/CNN_TEST_TOOL.md +++ b/cnn_v1/docs/CNN_TEST_TOOL.md diff --git a/workspaces/main/shaders/cnn/cnn_activation.wgsl b/cnn_v1/shaders/cnn_activation.wgsl index 4fe771e..4fe771e 100644 --- a/workspaces/main/shaders/cnn/cnn_activation.wgsl +++ b/cnn_v1/shaders/cnn_activation.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_conv1x1.wgsl b/cnn_v1/shaders/cnn_conv1x1.wgsl index f77cfa8..f77cfa8 100644 --- a/workspaces/main/shaders/cnn/cnn_conv1x1.wgsl +++ b/cnn_v1/shaders/cnn_conv1x1.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_conv3x3.wgsl b/cnn_v1/shaders/cnn_conv3x3.wgsl index f7d11b1..f7d11b1 100644 --- a/workspaces/main/shaders/cnn/cnn_conv3x3.wgsl +++ b/cnn_v1/shaders/cnn_conv3x3.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl b/cnn_v1/shaders/cnn_conv5x5.wgsl index 9328d75..9328d75 100644 --- a/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl +++ b/cnn_v1/shaders/cnn_conv5x5.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_conv7x7.wgsl b/cnn_v1/shaders/cnn_conv7x7.wgsl index e68d644..e68d644 100644 --- a/workspaces/main/shaders/cnn/cnn_conv7x7.wgsl +++ b/cnn_v1/shaders/cnn_conv7x7.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_layer.wgsl b/cnn_v1/shaders/cnn_layer.wgsl index cbd1686..cbd1686 100644 --- a/workspaces/main/shaders/cnn/cnn_layer.wgsl +++ b/cnn_v1/shaders/cnn_layer.wgsl diff --git a/workspaces/main/shaders/cnn/cnn_weights_generated.wgsl b/cnn_v1/shaders/cnn_weights_generated.wgsl index 510f86f..510f86f 100644 --- a/workspaces/main/shaders/cnn/cnn_weights_generated.wgsl +++ b/cnn_v1/shaders/cnn_weights_generated.wgsl diff --git a/src/effects/cnn_effect.cc b/cnn_v1/src/cnn_effect.cc index 49c5239..49c5239 100644 --- a/src/effects/cnn_effect.cc +++ b/cnn_v1/src/cnn_effect.cc diff --git a/src/effects/cnn_effect.h b/cnn_v1/src/cnn_effect.h index cdcd656..cdcd656 100644 --- a/src/effects/cnn_effect.h +++ b/cnn_v1/src/cnn_effect.h diff --git a/training/train_cnn.py b/cnn_v1/training/train_cnn.py index 4171dcb..4171dcb 100755 --- a/training/train_cnn.py +++ b/cnn_v1/training/train_cnn.py |
