Skip to content

Commit 2a2d130

Browse files
committed
Refactor input/output normalizations
1 parent 29f3b30 commit 2a2d130

File tree

34 files changed

+364
-628
lines changed

34 files changed

+364
-628
lines changed

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project>
22
<PropertyGroup>
3-
<Version>0.1.27</Version>
3+
<Version>0.1.30</Version>
44
<Company>TensorStack</Company>
55
<Copyright>TensorStack - 2025</Copyright>
66
<RepositoryUrl>https://github.com/TensorStack-AI/TensorStack</RepositoryUrl>

Examples/TensorStack.Example.Extractors/Common/ExtractorModel.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ public record ExtractorModel
1010
public ExtractorType Type { get; set; }
1111
public int Channels { get; set; }
1212
public int SampleSize { get; set; }
13-
public Normalization Normalization { get; set; }
14-
public Normalization OutputNormalization { get; set; }
13+
public Normalization Normalization { get; set; } = Normalization.ZeroToOne;
14+
public Normalization OutputNormalization { get; set; } = Normalization.OneToOne;
1515
public int OutputChannels { get; set; }
1616
public bool IsDynamicOutput { get; set; }
1717
public string Path { get; set; }

Examples/TensorStack.Example.Extractors/Services/ExtractorService.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,9 +175,6 @@ public async Task<ImageInput> ExecuteAsync(BackgroundImageRequest options)
175175
Image = options.Image
176176
}, cancellationToken: _cancellationTokenSource.Token));
177177

178-
if (options.IsTransparentSupported)
179-
return new ImageInput(imageTensor.ToImageTransparent());
180-
181178
return new ImageInput(imageTensor);
182179
}
183180
}

Examples/TensorStack.Example.Extractors/Settings.json

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
"Channels": 3,
99
"SampleSize": 0,
1010
"OutputChannels": 1,
11-
"Normalization": "OneToOne",
12-
"OutputNormalization": "OneToOne",
1311
"Path": "Models\\Canny.onnx",
1412
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/Canny.onnx?download=true"
1513
},
@@ -21,8 +19,6 @@
2119
"Channels": 3,
2220
"SampleSize": 0,
2321
"OutputChannels": 1,
24-
"Normalization": "OneToOne",
25-
"OutputNormalization": "ZeroToOne",
2622
"Path": "Models\\SoftEdge.onnx",
2723
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/SoftEdge.onnx?download=true"
2824
},
@@ -33,7 +29,6 @@
3329
"Channels": 3,
3430
"SampleSize": 0,
3531
"OutputChannels": 1,
36-
"Normalization": "OneToOne",
3732
"OutputNormalization": "MinMaxOneToOne",
3833
"IsDynamicOutput": true,
3934
"Path": "Models\\Depth.onnx",
@@ -46,8 +41,6 @@
4641
"Channels": 3,
4742
"SampleSize": 0,
4843
"OutputChannels": 1,
49-
"Normalization": "OneToOne",
50-
"OutputNormalization": "ZeroToOne",
5144
"Path": "Models\\LineDrawing.onnx",
5245
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/LineDrawing.onnx?download=true"
5346
},
@@ -59,7 +52,6 @@
5952
"SampleSize": 0,
6053
"OutputChannels": 1,
6154
"IsDynamicOutput": true,
62-
"Normalization": "OneToOne",
6355
"OutputNormalization": "MinMaxOneToOne",
6456
"Path": "Models\\DepthAnything-Small.onnx",
6557
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/DepthAnything-Small.onnx?download=true"
@@ -72,7 +64,6 @@
7264
"SampleSize": 0,
7365
"OutputChannels": 1,
7466
"IsDynamicOutput": true,
75-
"Normalization": "OneToOne",
7667
"OutputNormalization": "MinMaxOneToOne",
7768
"Path": "Models\\DepthAnything-Base.onnx",
7869
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/DepthAnything-Base.onnx?download=true"
@@ -85,7 +76,6 @@
8576
"SampleSize": 0,
8677
"OutputChannels": 1,
8778
"IsDynamicOutput": true,
88-
"Normalization": "OneToOne",
8979
"OutputNormalization": "MinMaxOneToOne",
9080
"Path": "Models\\DepthAnything-Large.onnx",
9181
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/DepthAnything-Large.onnx?download=true"
@@ -97,8 +87,6 @@
9787
"Channels": 3,
9888
"SampleSize": 1024,
9989
"OutputChannels": 1,
100-
"Normalization": "ZeroToOne",
101-
"OutputNormalization": "OneToOne",
10290
"Path": "Models\\BiRefNet.onnx",
10391
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/BiRefNet.onnx?download=true"
10492
},
@@ -110,8 +98,6 @@
11098
"Channels": 3,
11199
"SampleSize": 1024,
112100
"OutputChannels": 1,
113-
"Normalization": "ZeroToOne",
114-
"OutputNormalization": "OneToOne",
115101
"Path": "Models\\RMBGv1.4.onnx",
116102
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/RMBGv1.4.onnx?download=true"
117103
},
@@ -122,8 +108,6 @@
122108
"Channels": 3,
123109
"SampleSize": 1024,
124110
"OutputChannels": 1,
125-
"Normalization": "ZeroToOne",
126-
"OutputNormalization": "OneToOne",
127111
"Path": "Models\\RMBGv2.0.onnx",
128112
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Extractor/RMBGv2.0.onnx?download=true"
129113
},

Examples/TensorStack.Example.Upscaler/Common/UpscaleModel.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ public class UpscaleModel : BaseModel
1313
public int Channels { get; init; } = 3;
1414
public int SampleSize { get; init; }
1515
public int ScaleFactor { get; init; } = 1;
16-
public Normalization Normalization { get; init; }
16+
public Normalization Normalization { get; init; } = Normalization.ZeroToOne;
17+
public Normalization OutputNormalization { get; init; } = Normalization.OneToOne;
1718
public string Path { get; set; }
1819
public string UrlPath { get; set; }
1920
}

Examples/TensorStack.Example.Upscaler/Services/UpscaleService.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ public async Task LoadAsync(UpscaleModel model, Device device)
9292
{
9393
Channels = model.Channels,
9494
Normalization = model.Normalization,
95+
OutputNormalization = model.OutputNormalization,
9596
SampleSize = model.SampleSize,
9697
ScaleFactor = model.ScaleFactor,
9798
Path = model.Path

Examples/TensorStack.Example.Upscaler/Settings.json

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
"Channels": 3,
88
"SampleSize": 0,
99
"ScaleFactor": 2,
10-
"Normalization": "ZeroToOne",
1110
"Path": "Models\\BSRGAN-2x.onnx",
1211
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/BSRGAN-2x.onnx?download=true"
1312
},
@@ -17,7 +16,6 @@
1716
"Channels": 3,
1817
"SampleSize": 0,
1918
"ScaleFactor": 2,
20-
"Normalization": "ZeroToOne",
2119
"Path": "Models\\RealESRGAN-2x.onnx",
2220
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/RealESRGAN-2x.onnx?download=true"
2321
},
@@ -27,7 +25,6 @@
2725
"Channels": 3,
2826
"SampleSize": 0,
2927
"ScaleFactor": 4,
30-
"Normalization": "ZeroToOne",
3128
"Path": "Models\\RealESRGAN-4x.onnx",
3229
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/RealESRGAN-4x.onnx?download=true"
3330
},
@@ -38,7 +35,6 @@
3835
"Channels": 3,
3936
"SampleSize": 0,
4037
"ScaleFactor": 4,
41-
"Normalization": "ZeroToOne",
4238
"Path": "Models\\RealESR-General-4x.onnx",
4339
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/RealESR-General-4x.onnx?download=true"
4440
},
@@ -48,7 +44,6 @@
4844
"Channels": 3,
4945
"SampleSize": 0,
5046
"ScaleFactor": 2,
51-
"Normalization": "ZeroToOne",
5247
"Path": "Models\\Swin2SR-Classical-2x.onnx",
5348
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/Swin2SR-Classical-2x.onnx?download=true"
5449
},
@@ -58,7 +53,6 @@
5853
"Channels": 3,
5954
"SampleSize": 0,
6055
"ScaleFactor": 4,
61-
"Normalization": "ZeroToOne",
6256
"Path": "Models\\Swin2SR-Classical-4x.onnx",
6357
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/Swin2SR-Classical-4x.onnx?download=true"
6458
},
@@ -68,7 +62,6 @@
6862
"Channels": 3,
6963
"SampleSize": 0,
7064
"ScaleFactor": 4,
71-
"Normalization": "ZeroToOne",
7265
"Path": "Models\\SwinIR-BSRGAN-4x.onnx",
7366
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/SwinIR-BSRGAN-4x.onnx?download=true"
7467
},
@@ -78,7 +71,6 @@
7871
"Channels": 3,
7972
"SampleSize": 0,
8073
"ScaleFactor": 4,
81-
"Normalization": "ZeroToOne",
8274
"Path": "Models\\UltraMix-Smooth-4x.onnx",
8375
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/UltraMix-Smooth-4x.onnx?download=true"
8476
},
@@ -88,7 +80,6 @@
8880
"Channels": 3,
8981
"SampleSize": 0,
9082
"ScaleFactor": 4,
91-
"Normalization": "ZeroToOne",
9283
"Path": "Models\\UltraSharp-4x.onnx",
9384
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/UltraSharp-4x.onnx?download=true"
9485
},
@@ -98,7 +89,6 @@
9889
"Channels": 3,
9990
"SampleSize": 0,
10091
"ScaleFactor": 2,
101-
"Normalization": "ZeroToOne",
10292
"Path": "Models\\APISR_RRDB_GAN_2x.onnx",
10393
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/APISR_RRDB_GAN_2x.onnx?download=true"
10494
},
@@ -108,7 +98,6 @@
10898
"Channels": 3,
10999
"SampleSize": 0,
110100
"ScaleFactor": 4,
111-
"Normalization": "ZeroToOne",
112101
"Path": "Models\\APISR_GRL_GAN_4x.onnx",
113102
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/APISR_GRL_GAN_4x.onnx?download=true"
114103
},
@@ -118,7 +107,6 @@
118107
"Channels": 3,
119108
"SampleSize": 0,
120109
"ScaleFactor": 4,
121-
"Normalization": "ZeroToOne",
122110
"Path": "Models\\RealWebPhoto_RGT_4x.onnx",
123111
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/RealWebPhoto_RGT_4x.onnx?download=true"
124112
},
@@ -128,7 +116,6 @@
128116
"Channels": 3,
129117
"SampleSize": 0,
130118
"ScaleFactor": 2,
131-
"Normalization": "ZeroToOne",
132119
"Path": "Models\\AnimeSharpV2_ESRGAN_Soft_2x.onnx",
133120
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV2_ESRGAN_Soft_2x.onnx?download=true"
134121
},
@@ -138,7 +125,6 @@
138125
"Channels": 3,
139126
"SampleSize": 0,
140127
"ScaleFactor": 2,
141-
"Normalization": "ZeroToOne",
142128
"Path": "Models\\AnimeSharpV2_MoSR_Sharp_2x.onnx",
143129
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV2_MoSR_Sharp_2x.onnx?download=true"
144130
},
@@ -148,7 +134,6 @@
148134
"Channels": 3,
149135
"SampleSize": 0,
150136
"ScaleFactor": 2,
151-
"Normalization": "ZeroToOne",
152137
"Path": "Models\\AnimeSharpV2_MoSR_Soft_2x.onnx",
153138
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV2_MoSR_Soft_2x.onnx?download=true"
154139
},
@@ -158,7 +143,6 @@
158143
"Channels": 3,
159144
"SampleSize": 0,
160145
"ScaleFactor": 2,
161-
"Normalization": "ZeroToOne",
162146
"Path": "Models\\AnimeSharpV2_RPLKSR_Sharp_2x.onnx",
163147
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV2_RPLKSR_Sharp_2x.onnx?download=true"
164148
},
@@ -168,7 +152,6 @@
168152
"Channels": 3,
169153
"SampleSize": 0,
170154
"ScaleFactor": 2,
171-
"Normalization": "ZeroToOne",
172155
"Path": "Models\\AnimeSharpV2_RPLKSR_Soft_2x.onnx",
173156
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV2_RPLKSR_Soft_2x.onnx?download=true"
174157
},
@@ -178,7 +161,6 @@
178161
"Channels": 3,
179162
"SampleSize": 0,
180163
"ScaleFactor": 2,
181-
"Normalization": "ZeroToOne",
182164
"Path": "Models\\AnimeSharpV3_2x.onnx",
183165
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/AnimeSharpV3_2x.onnx?download=true"
184166
},
@@ -188,7 +170,6 @@
188170
"Channels": 3,
189171
"SampleSize": 0,
190172
"ScaleFactor": 4,
191-
"Normalization": "ZeroToOne",
192173
"Path": "Models\\Swin2SR-RealWorld-BSRGAN-PSN-4x.onnx",
193174
"UrlPath": "https://huggingface.co/TensorStack/TensorStack/resolve/main/Upscaler/Swin2SR-RealWorld-BSRGAN-PSN-4x.onnx?download=true"
194175
}

0 commit comments

Comments
 (0)