From 91d42f2d057e077c267d6775cc109a801aa315c0 Mon Sep 17 00:00:00 2001 From: skal Date: Thu, 12 Feb 2026 11:34:50 +0100 Subject: CNN v2: parametric static features - Phases 1-4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Infrastructure for enhanced CNN post-processing with 7D feature input. Phase 1: Shaders - Static features compute (RGBD + UV + sin10_x + bias → 8×f16) - Layer template (convolution skeleton, packing/unpacking) - 3 mip level support for multi-scale features Phase 2: C++ Effect - CNNv2Effect class (multi-pass architecture) - Texture management (static features, layer buffers) - Build integration (CMakeLists, assets, tests) Phase 3: Training Pipeline - train_cnn_v2.py: PyTorch model with static feature concatenation - export_cnn_v2_shader.py: f32→f16 quantization, WGSL generation - Configurable architecture (kernels, channels) Phase 4: Validation - validate_cnn_v2.sh: End-to-end pipeline - Checkpoint → shaders → build → test images Tests: 36/36 passing Next: Complete render pipeline implementation (bind groups, multi-pass) Co-Authored-By: Claude Sonnet 4.5 --- src/tests/gpu/test_demo_effects.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'src/tests') diff --git a/src/tests/gpu/test_demo_effects.cc b/src/tests/gpu/test_demo_effects.cc index 01e6678..169db91 100644 --- a/src/tests/gpu/test_demo_effects.cc +++ b/src/tests/gpu/test_demo_effects.cc @@ -90,6 +90,7 @@ static void test_post_process_effects() { std::make_shared(fixture.ctx())}, {"VignetteEffect", std::make_shared(fixture.ctx())}, {"CNNEffect", std::make_shared(fixture.ctx())}, + {"CNNv2Effect", std::make_shared(fixture.ctx())}, }; int passed = 0; -- cgit v1.2.3