From 4c21145ce5e408dd38e8374eed320fcfac97c0c4 Mon Sep 17 00:00:00 2001 From: skal Date: Fri, 13 Feb 2026 16:54:47 +0100 Subject: CNN v2: Add TODO for flexible feature layout in binary format v3 Document future enhancement for arbitrary feature vector layouts. Proposed feature descriptor in binary format v3: - Specify feature types, sources, and ordering - Enable runtime experimentation without shader recompilation - Examples: [R,G,B,dx,dy,uv_x,bias] or [mip1.r,mip2.g,laplacian,uv_x,sin20_x,bias] Added TODOs in: - CNN_V2_BINARY_FORMAT.md: Detailed proposal with struct layout - CNN_V2.md: Future extensions section - train_cnn_v2.py: compute_static_features() docstring - cnn_v2_static.wgsl: Shader header comment - cnn_v2_effect.cc: Version check comment Current limitation: Hardcoded [p0,p1,p2,p3,uv_x,uv_y,sin10_x,bias] layout. Co-Authored-By: Claude Sonnet 4.5 --- training/train_cnn_v2.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'training/train_cnn_v2.py') diff --git a/training/train_cnn_v2.py b/training/train_cnn_v2.py index 3d49d13..1487c08 100755 --- a/training/train_cnn_v2.py +++ b/training/train_cnn_v2.py @@ -33,6 +33,12 @@ def compute_static_features(rgb, depth=None, mip_level=0): (H, W, 8) static features: [p0, p1, p2, p3, uv_x, uv_y, sin10_x, bias] Note: p0-p3 are parametric features generated from specified mip level + + TODO: Binary format should support arbitrary layout and ordering for feature vector (7D), + alongside mip-level indication. Current layout is hardcoded as: + [p0, p1, p2, p3, uv_x, uv_y, sin10_x, bias] + Future: Allow experimentation with different feature combinations without shader recompilation. + Examples: [R, G, B, dx, dy, uv_x, bias] or [mip1.r, mip2.g, laplacian, uv_x, sin20_x, bias] """ h, w = rgb.shape[:2] -- cgit v1.2.3