summaryrefslogtreecommitdiff
path: root/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl
diff options
context:
space:
mode:
Diffstat (limited to 'workspaces/main/shaders/cnn/cnn_conv5x5.wgsl')
-rw-r--r--workspaces/main/shaders/cnn/cnn_conv5x5.wgsl14
1 files changed, 5 insertions, 9 deletions
diff --git a/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl b/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl
index 0f261dd..5570589 100644
--- a/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl
+++ b/workspaces/main/shaders/cnn/cnn_conv5x5.wgsl
@@ -1,5 +1,5 @@
// 5×5 variant for 7→4 channels (RGBD output)
-// Assumes 'tex' and 'original' are already normalized to [-1,1]
+// Assumes 'tex' is already normalized to [-1,1]
// UV coordinates remain in [0,1] and are normalized internally
// weights: array<array<f32, 8>, 100> (25 positions × 4 channels, each with 7 weights + bias)
fn cnn_conv5x5_7to4(
@@ -7,12 +7,10 @@ fn cnn_conv5x5_7to4(
samp: sampler,
uv: vec2<f32>,
resolution: vec2<f32>,
- original: vec4<f32>,
+ gray: f32,
weights: array<array<f32, 8>, 100>
) -> vec4<f32> {
let step = 1.0 / resolution;
-
- let gray = 0.2126*original.r + 0.7152*original.g + 0.0722*original.b;
let uv_norm = (uv - 0.5) * 2.0;
var sum = vec4<f32>(0.0);
@@ -44,7 +42,7 @@ fn cnn_conv5x5_7to4(
}
// 5×5 variant for 7→1 channel (scalar output)
-// Assumes 'tex' and 'original' are already normalized to [-1,1]
+// Assumes 'tex' is already normalized to [-1,1]
// UV coordinates remain in [0,1] and are normalized internally
// weights: array<array<f32, 8>, 25> (25 positions, each with 7 weights + bias)
fn cnn_conv5x5_7to1(
@@ -52,12 +50,10 @@ fn cnn_conv5x5_7to1(
samp: sampler,
uv: vec2<f32>,
resolution: vec2<f32>,
- original: vec4<f32>,
+ gray: f32,
weights: array<array<f32, 8>, 25>
) -> f32 {
let step = 1.0 / resolution;
-
- let gray = 0.2126*original.r + 0.7152*original.g + 0.0722*original.b;
let uv_norm = (uv - 0.5) * 2.0;
var sum = 0.0;
@@ -96,7 +92,7 @@ fn cnn_conv5x5_7to4_src(
let step = 1.0 / resolution;
let original = (textureSample(tex, samp, uv) - 0.5) * 2.0;
- let gray = 0.2126*original.r + 0.7152*original.g + 0.0722*original.b;
+ let gray = dot(original.rgb, vec3<f32>(0.2126, 0.7152, 0.0722));
let uv_norm = (uv - 0.5) * 2.0;
var sum = vec4<f32>(0.0);