@fideus-labs/ngff-zarr 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/esm/browser-mod.d.ts +2 -0
  2. package/esm/browser-mod.d.ts.map +1 -1
  3. package/esm/browser-mod.js +1 -0
  4. package/esm/browser-mod.js.map +1 -1
  5. package/esm/io/itk_image_to_ngff_image.d.ts.map +1 -1
  6. package/esm/io/itk_image_to_ngff_image.js +63 -6
  7. package/esm/io/itk_image_to_ngff_image.js.map +1 -1
  8. package/esm/methods/itkwasm-browser.d.ts +2 -1
  9. package/esm/methods/itkwasm-browser.d.ts.map +1 -1
  10. package/esm/methods/itkwasm-browser.js +30 -30
  11. package/esm/methods/itkwasm-browser.js.map +1 -1
  12. package/esm/methods/itkwasm-node.d.ts +2 -1
  13. package/esm/methods/itkwasm-node.d.ts.map +1 -1
  14. package/esm/methods/itkwasm-node.js +30 -30
  15. package/esm/methods/itkwasm-node.js.map +1 -1
  16. package/esm/methods/itkwasm-shared.d.ts +3 -2
  17. package/esm/methods/itkwasm-shared.d.ts.map +1 -1
  18. package/esm/methods/itkwasm-shared.js +12 -2
  19. package/esm/methods/itkwasm-shared.js.map +1 -1
  20. package/esm/mod.d.ts +24 -23
  21. package/esm/mod.d.ts.map +1 -1
  22. package/esm/mod.js +22 -21
  23. package/esm/mod.js.map +1 -1
  24. package/esm/process/to_multiscales-shared.d.ts +16 -3
  25. package/esm/process/to_multiscales-shared.d.ts.map +1 -1
  26. package/esm/process/to_multiscales-shared.js +7 -2
  27. package/esm/process/to_multiscales-shared.js.map +1 -1
  28. package/esm/types/rfc4.d.ts +26 -0
  29. package/esm/types/rfc4.d.ts.map +1 -1
  30. package/esm/types/rfc4.js +84 -0
  31. package/esm/types/rfc4.js.map +1 -1
  32. package/esm/utils/codecs.d.ts +20 -0
  33. package/esm/utils/codecs.d.ts.map +1 -1
  34. package/esm/utils/codecs.js +12 -0
  35. package/esm/utils/codecs.js.map +1 -1
  36. package/package.json +1 -1
@@ -16,6 +16,8 @@ export * from "./types/multiscales.js";
16
16
  export * from "./types/ngff_image.js";
17
17
  export * from "./types/units.js";
18
18
  export * from "./types/zarr_metadata.js";
19
+ export type { ZarrCodec } from "./utils/codecs.js";
20
+ export { bytesOnlyCodecs, defaultCodecs } from "./utils/codecs.js";
19
21
  export type { ComputeOmeroFromMultiscalesOptions, ComputeOmeroOptions, } from "./utils/compute_omero.js";
20
22
  export { computeOmeroFromMultiscales, computeOmeroFromNgffImage, getDefaultColors, GLASBEY_COLORS, terminateOmeroWorkerPool, } from "./utils/compute_omero.js";
21
23
  export type { ChannelStatisticsAccumulator } from "./utils/compute_omero-shared.js";
@@ -1 +1 @@
1
- {"version":3,"file":"browser-mod.d.ts","sourceRoot":"","sources":["../src/browser-mod.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,WAAW,GACjB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,UAAU,EACV,KAAK,iBAAiB,EACtB,aAAa,EACb,KAAK,oBAAoB,GAC1B,MAAM,8BAA8B,CAAC;AAEtC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,YAAY,EACV,kCAAkC,EAClC,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAEpF,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"browser-mod.d.ts","sourceRoot":"","sources":["../src/browser-mod.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,WAAW,GACjB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,UAAU,EACV,KAAK,iBAAiB,EACtB,aAAa,EACb,KAAK,oBAAoB,GAC1B,MAAM,8BAA8B,CAAC;AAEtC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,YAAY,EACV,kCAAkC,EAClC,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAEpF,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC"}
@@ -28,6 +28,7 @@ export * from "./types/multiscales.js";
28
28
  export * from "./types/ngff_image.js";
29
29
  export * from "./types/units.js";
30
30
  export * from "./types/zarr_metadata.js";
31
+ export { bytesOnlyCodecs, defaultCodecs } from "./utils/codecs.js";
31
32
  // OMERO computation with WorkerPool
32
33
  export { computeOmeroFromMultiscales, computeOmeroFromNgffImage, getDefaultColors, GLASBEY_COLORS, terminateOmeroWorkerPool, } from "./utils/compute_omero.js";
33
34
  // Shared OMERO computation functions for benchmarking and direct use
@@ -1 +1 @@
1
- {"version":3,"file":"browser-mod.js","sourceRoot":"","sources":["../src/browser-mod.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+BAA+B;AAC/B,oCAAoC;AACpC,wEAAwE;AACxE,EAAE;AACF,kFAAkF;AAClF,yEAAyE;AAEzE,iCAAiC;AACjC,0EAA0E;AAC1E,iFAAiF;AACjF,OAAO,EAEL,YAAY,GAGb,MAAM,gCAAgC,CAAC;AACxC,gCAAgC;AAChC,OAAO,EACL,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AAEzC,gBAAgB;AAChB,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,UAAU,EAEV,aAAa,GAEd,MAAM,8BAA8B,CAAC;AACtC,wCAAwC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AAKzC,oCAAoC;AACpC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAElC,qEAAqE;AACrE,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"browser-mod.js","sourceRoot":"","sources":["../src/browser-mod.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+BAA+B;AAC/B,oCAAoC;AACpC,wEAAwE;AACxE,EAAE;AACF,kFAAkF;AAClF,yEAAyE;AAEzE,iCAAiC;AACjC,0EAA0E;AAC1E,iFAAiF;AACjF,OAAO,EAEL,YAAY,GAGb,MAAM,gCAAgC,CAAC;AACxC,gCAAgC;AAChC,OAAO,EACL,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AAEzC,gBAAgB;AAChB,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,UAAU,EAEV,aAAa,GAEd,MAAM,8BAA8B,CAAC;AACtC,wCAAwC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKnE,oCAAoC;AACpC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAElC,qEAAqE;AACrE,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"itk_image_to_ngff_image.d.ts","sourceRoot":"","sources":["../../src/io/itk_image_to_ngff_image.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAKtC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAMnD,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,KAAK,EACf,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,SAAS,CAAC,CAoIpB"}
1
+ {"version":3,"file":"itk_image_to_ngff_image.d.ts","sourceRoot":"","sources":["../../src/io/itk_image_to_ngff_image.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAKtC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASnD,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC5B;AA2BD;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,KAAK,EACf,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,SAAS,CAAC,CA0KpB"}
@@ -7,9 +7,30 @@ import * as zarr from "zarrita";
7
7
  // Import the get_strides function from zarrita utilities
8
8
  import { _zarrita_internal_get_strides as getStrides } from "zarrita";
9
9
  import { NgffImage } from "../types/ngff_image.js";
10
- import { itkLpsToAnatomicalOrientation } from "../types/rfc4.js";
10
+ import { itkDirectionToAnatomicalOrientation, itkLpsToAnatomicalOrientation, } from "../types/rfc4.js";
11
11
  import { defaultCodecs } from "../utils/codecs.js";
12
12
  import { zarrSet } from "../utils/worker_pool.js";
13
+ /**
14
+ * Check whether an ITK direction matrix is the identity matrix.
15
+ *
16
+ * When the direction is identity, the image axes align directly with
17
+ * the physical LPS axes and the simple LPS lookup is sufficient.
18
+ *
19
+ * @param direction - Flat (row-major) direction matrix from ITK-Wasm
20
+ * @param n - Number of spatial dimensions (2 or 3)
21
+ * @returns `true` if every element matches the identity matrix
22
+ */
23
+ function isIdentityDirection(direction, n) {
24
+ for (let row = 0; row < n; row++) {
25
+ for (let col = 0; col < n; col++) {
26
+ const expected = row === col ? 1 : 0;
27
+ if (Number(direction[row * n + col]) !== expected) {
28
+ return false;
29
+ }
30
+ }
31
+ }
32
+ return true;
33
+ }
13
34
  /**
14
35
  * Convert an ITK-Wasm Image to an NgffImage, preserving spatial metadata.
15
36
  *
@@ -116,14 +137,50 @@ export async function itkImageToNgffImage(itkImage, options = {}) {
116
137
  };
117
138
  // Write all data to the zarr array using worker-accelerated set function
118
139
  // This handles chunking and encoding automatically
119
- await zarrSet(zarrArray, selection, dataChunk); // Add anatomical orientation if requested
140
+ await zarrSet(zarrArray, selection, dataChunk);
141
+ // Add anatomical orientation if requested
120
142
  let axesOrientations;
121
143
  if (addAnatomicalOrientation) {
122
144
  axesOrientations = {};
123
- for (const dim of spatialDims) {
124
- const orientation = itkLpsToAnatomicalOrientation(dim);
125
- if (orientation !== undefined) {
126
- axesOrientations[dim] = orientation;
145
+ const direction = itkImage.direction;
146
+ const nSpatial = spatialDims.length;
147
+ // Check whether the direction matrix is available and has a
148
+ // non-identity rotation (permutation or oblique).
149
+ const hasDirection = direction !== undefined && direction.length > 0;
150
+ const hasNonIdentityDirection = hasDirection &&
151
+ !isIdentityDirection(direction, nSpatial);
152
+ if (hasNonIdentityDirection) {
153
+ // Use the direction cosine matrix to determine each axis'
154
+ // anatomical orientation. The direction matrix is stored
155
+ // row-major as a flat array: direction[row * nSpatial + col].
156
+ //
157
+ // spatialDims is in array order (e.g. ["z", "y", "x"]) and
158
+ // maps to reversed ITK axis indices:
159
+ // spatialDims[0] = "z" → ITK axis 2 → direction column 2
160
+ // spatialDims[1] = "y" → ITK axis 1 → direction column 1
161
+ // spatialDims[2] = "x" → ITK axis 0 → direction column 0
162
+ //
163
+ // Column j of the direction matrix contains the LPS-space
164
+ // direction cosine for ITK axis j.
165
+ for (let i = 0; i < nSpatial; i++) {
166
+ const dim = spatialDims[i];
167
+ // Reverse index: spatialDims[0] → last ITK axis, etc.
168
+ const itkAxisIndex = nSpatial - 1 - i;
169
+ // Extract direction column, handling both 2D and 3D cases
170
+ const col = [];
171
+ for (let row = 0; row < nSpatial; row++) {
172
+ col.push(Number(direction[row * nSpatial + itkAxisIndex]));
173
+ }
174
+ axesOrientations[dim] = itkDirectionToAnatomicalOrientation(col);
175
+ }
176
+ }
177
+ else {
178
+ // Identity direction or no direction: fall back to LPS labels
179
+ for (const dim of spatialDims) {
180
+ const orientation = itkLpsToAnatomicalOrientation(dim);
181
+ if (orientation !== undefined) {
182
+ axesOrientations[dim] = orientation;
183
+ }
127
184
  }
128
185
  }
129
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"itk_image_to_ngff_image.js","sourceRoot":"","sources":["../../src/io/itk_image_to_ngff_image.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+BAA+B;AAC/B;;GAEG;AAGH,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,yDAAyD;AACzD,OAAO,EAAE,6BAA6B,IAAI,UAAU,EAAE,MAAM,SAAS,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAwBlD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAAe,EACf,UAAsC,EAAE;IAExC,MAAM,EACJ,wBAAwB,GAAG,IAAI,EAC/B,IAAI,GAAG,OAAO,EACd,MAAM,GAAG,GAAG,GACb,GAAG,OAAO,CAAC;IAEZ,+CAA+C;IAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC5B,+EAA+E;IAC/E,oFAAoF;IACpF,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE/B,oDAAoD;IACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;IACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC;IAE1C,0EAA0E;IAC1E,0EAA0E;IAC1E,iEAAiE;IACjE,yEAAyE;IACzE,qBAAqB;IACrB,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IAE1B,0DAA0D;IAC1D,+CAA+C;IAC/C,IAAI,IAAc,CAAC;IAEnB,IAAI,IAAI,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC3B,+CAA+C;QAC/C,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACzB,CAAC;SAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,gEAAgE;QAChE,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;SAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,6BAA6B;QAC7B,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,gBAAgB;QAChB,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,8BAA8B;IAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAElE,oCAAoC;IACpC,+DAA+D;IAC/D,oDAAoD;IACpD,8FAA8F;IAC9F,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;IAClD,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC/B,KAAK,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,yCAAyC;IACzC,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;IAChD,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC/B,WAAW,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE9B,oDAAoD;IACpD,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ;QAC3C,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACtD,KAAK,EAAE,KAAK;QACZ,WAAW,EAAE,UAAU;QACvB,SAAS,EAAE,SAAS,CAAC,aAA8B;QACnD,UAAU,EAAE,CAAC;QACb,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC;KAC/C,CAAC,CAAC;IAEH,4CAA4C;IAC5C,qEAAqE;IAErE,wFAAwF;IACxF,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7C,iEAAiE;IACjE,kEAAkE;IAClE,gFAAgF;IAChF,oFAAoF;IACpF,MAAM,SAAS,GAAG;QAChB,IAAI,EAAE,QAAQ,CAAC,IAAuD;QACtE,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,yCAAyC;KAC1E,CAAC;IAEF,yEAAyE;IACzE,mDAAmD;IACnD,MAAM,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,0CAA0C;IAC1F,IAAI,gBAAmE,CAAC;IACxE,IAAI,wBAAwB,EAAE,CAAC;QAC7B,gBAAgB,GAAG,EAAE,CAAC;QACtB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,gBAAgB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;YACtC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,SAAS,CAAC;QACnB,IAAI,EAAE,SAAS;QACf,IAAI;QACJ,KAAK;QACL,WAAW;QACX,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,SAAS;QACpB,gBAAgB;QAChB,iBAAiB,EAAE,SAAS;KAC7B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"itk_image_to_ngff_image.js","sourceRoot":"","sources":["../../src/io/itk_image_to_ngff_image.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { NgffImage } from "../types/ngff_image.js";
2
+ import type { ZarrCodec } from "../utils/codecs.js";
2
3
  /**
3
4
  * Main downsampling function for ITK-Wasm (browser version)
4
5
  */
5
- export declare function downsampleItkWasm(ngffImage: NgffImage, scaleFactors: (Record<string, number> | number)[], smoothing: "gaussian" | "bin_shrink" | "label_image", chunks?: number | number[] | Record<string, number>): Promise<NgffImage[]>;
6
+ export declare function downsampleItkWasm(ngffImage: NgffImage, scaleFactors: (Record<string, number> | number)[], smoothing: "gaussian" | "bin_shrink" | "label_image", chunks?: number | number[] | Record<string, number>, codecs?: ZarrCodec[]): Promise<NgffImage[]>;
6
7
  //# sourceMappingURL=itkwasm-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"itkwasm-browser.d.ts","sourceRoot":"","sources":["../../src/methods/itkwasm-browser.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AA86BnD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EACjD,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,EACpD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClD,OAAO,CAAC,SAAS,EAAE,CAAC,CAyHtB"}
1
+ {"version":3,"file":"itkwasm-browser.d.ts","sourceRoot":"","sources":["../../src/methods/itkwasm-browser.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA47BpD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EACjD,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,EACpD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnD,MAAM,CAAC,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,SAAS,EAAE,CAAC,CA4HtB"}
@@ -6,9 +6,9 @@
6
6
  */
7
7
  import { downsample, downsampleBinShrink, downsampleLabelImage, } from "@itk-wasm/downsample";
8
8
  import * as zarr from "zarrita";
9
- import { zarrGet, zarrSet } from "../utils/worker_pool.js";
10
- import { defaultCodecs } from "../utils/codecs.js";
11
9
  import { NgffImage } from "../types/ngff_image.js";
10
+ import { defaultCodecs } from "../utils/codecs.js";
11
+ import { zarrGet, zarrSet } from "../utils/worker_pool.js";
12
12
  import { dimScaleFactors, itkImageToZarr, MAX_VECTOR_COMPONENTS, nextScaleMetadata, SPATIAL_DIMS, updatePreviousDimFactors, zarrToItkImage, } from "./itkwasm-shared.js";
13
13
  /**
14
14
  * Compute chunk shape from configurable chunks option
@@ -36,7 +36,7 @@ function computeChunkShape(shape, chunks, dims, defaultChunk = 256) {
36
36
  /**
37
37
  * Perform Gaussian downsampling using ITK-Wasm (browser version)
38
38
  */
39
- async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
39
+ async function downsampleGaussian(image, dimFactors, spatialDims, chunks, codecs) {
40
40
  // Handle time dimension by processing each time slice independently
41
41
  if (image.dims.includes("t")) {
42
42
  const tDimIndex = image.dims.indexOf("t");
@@ -62,7 +62,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
62
62
  chunk_shape: sliceChunkShape,
63
63
  data_type: image.data.dtype,
64
64
  fill_value: 0,
65
- codecs: defaultCodecs(image.data.dtype),
65
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
66
66
  });
67
67
  const fullSelection = new Array(sliceShape.length).fill(null);
68
68
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -79,7 +79,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
79
79
  computedCallbacks: image.computedCallbacks,
80
80
  });
81
81
  // Recursively downsample this slice (without 't', so no infinite loop)
82
- const downsampledSlice = await downsampleGaussian(sliceImage, dimFactors, spatialDims, sliceChunks);
82
+ const downsampledSlice = await downsampleGaussian(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
83
83
  downsampledSlices.push(downsampledSlice.data);
84
84
  }
85
85
  // Combine downsampled slices back into a single array with 't' dimension
@@ -101,7 +101,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
101
101
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
102
102
  data_type: image.data.dtype,
103
103
  fill_value: 0,
104
- codecs: defaultCodecs(image.data.dtype),
104
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
105
105
  });
106
106
  // Copy each downsampled slice into the combined array
107
107
  for (let t = 0; t < tSize; t++) {
@@ -154,7 +154,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
154
154
  chunk_shape: sliceChunkShape,
155
155
  data_type: image.data.dtype,
156
156
  fill_value: 0,
157
- codecs: defaultCodecs(image.data.dtype),
157
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
158
158
  });
159
159
  const fullSelection = new Array(sliceShape.length).fill(null);
160
160
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -171,7 +171,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
171
171
  computedCallbacks: image.computedCallbacks,
172
172
  });
173
173
  // Recursively downsample this slice (without 'c', so no infinite loop)
174
- const downsampledSlice = await downsampleGaussian(sliceImage, dimFactors, spatialDims, sliceChunks);
174
+ const downsampledSlice = await downsampleGaussian(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
175
175
  downsampledSlices.push(downsampledSlice.data);
176
176
  }
177
177
  // Combine downsampled slices back into a single array with 'c' dimension
@@ -193,7 +193,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
193
193
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
194
194
  data_type: image.data.dtype,
195
195
  fill_value: 0,
196
- codecs: defaultCodecs(image.data.dtype),
196
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
197
197
  });
198
198
  // Copy each downsampled slice into the combined array
199
199
  for (let c = 0; c < cSize; c++) {
@@ -238,7 +238,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
238
238
  // downsampled.size is in ITK order [x, y, z], reverse to get array order [z, y, x]
239
239
  const reversedShape = [...downsampled.size].reverse();
240
240
  const chunkShape = computeChunkShape(reversedShape, chunks, image.dims);
241
- const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims);
241
+ const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims, codecs);
242
242
  return new NgffImage({
243
243
  data: array,
244
244
  dims: image.dims,
@@ -252,7 +252,7 @@ async function downsampleGaussian(image, dimFactors, spatialDims, chunks) {
252
252
  /**
253
253
  * Perform bin shrink downsampling using ITK-Wasm (browser version)
254
254
  */
255
- async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
255
+ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks, codecs) {
256
256
  // Handle time dimension by processing each time slice independently
257
257
  if (image.dims.includes("t")) {
258
258
  const tDimIndex = image.dims.indexOf("t");
@@ -278,7 +278,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
278
278
  chunk_shape: sliceChunkShape,
279
279
  data_type: image.data.dtype,
280
280
  fill_value: 0,
281
- codecs: defaultCodecs(image.data.dtype),
281
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
282
282
  });
283
283
  const fullSelection = new Array(sliceShape.length).fill(null);
284
284
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -295,7 +295,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
295
295
  computedCallbacks: image.computedCallbacks,
296
296
  });
297
297
  // Recursively downsample this slice
298
- const downsampledSlice = await downsampleBinShrinkImpl(sliceImage, dimFactors, spatialDims, sliceChunks);
298
+ const downsampledSlice = await downsampleBinShrinkImpl(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
299
299
  downsampledSlices.push(downsampledSlice.data);
300
300
  }
301
301
  // Combine downsampled slices back into a single array with 't' dimension
@@ -317,7 +317,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
317
317
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
318
318
  data_type: image.data.dtype,
319
319
  fill_value: 0,
320
- codecs: defaultCodecs(image.data.dtype),
320
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
321
321
  });
322
322
  // Copy each downsampled slice into the combined array
323
323
  for (let t = 0; t < tSize; t++) {
@@ -370,7 +370,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
370
370
  chunk_shape: sliceChunkShape,
371
371
  data_type: image.data.dtype,
372
372
  fill_value: 0,
373
- codecs: defaultCodecs(image.data.dtype),
373
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
374
374
  });
375
375
  const fullSelection = new Array(sliceShape.length).fill(null);
376
376
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -387,7 +387,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
387
387
  computedCallbacks: image.computedCallbacks,
388
388
  });
389
389
  // Recursively downsample this slice (without 'c', so no infinite loop)
390
- const downsampledSlice = await downsampleBinShrinkImpl(sliceImage, dimFactors, spatialDims, sliceChunks);
390
+ const downsampledSlice = await downsampleBinShrinkImpl(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
391
391
  downsampledSlices.push(downsampledSlice.data);
392
392
  }
393
393
  // Combine downsampled slices back into a single array with 'c' dimension
@@ -409,7 +409,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
409
409
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
410
410
  data_type: image.data.dtype,
411
411
  fill_value: 0,
412
- codecs: defaultCodecs(image.data.dtype),
412
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
413
413
  });
414
414
  // Copy each downsampled slice into the combined array
415
415
  for (let c = 0; c < cSize; c++) {
@@ -451,7 +451,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
451
451
  // downsampled.size is in ITK order [x, y, z], reverse to get array order [z, y, x]
452
452
  const reversedShape = [...downsampled.size].reverse();
453
453
  const chunkShape = computeChunkShape(reversedShape, chunks, image.dims);
454
- const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims);
454
+ const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims, codecs);
455
455
  return new NgffImage({
456
456
  data: array,
457
457
  dims: image.dims,
@@ -465,7 +465,7 @@ async function downsampleBinShrinkImpl(image, dimFactors, spatialDims, chunks) {
465
465
  /**
466
466
  * Perform label image downsampling using ITK-Wasm (browser version)
467
467
  */
468
- async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks) {
468
+ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks, codecs) {
469
469
  // Handle time dimension by processing each time slice independently
470
470
  if (image.dims.includes("t")) {
471
471
  const tDimIndex = image.dims.indexOf("t");
@@ -491,7 +491,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
491
491
  chunk_shape: sliceChunkShape,
492
492
  data_type: image.data.dtype,
493
493
  fill_value: 0,
494
- codecs: defaultCodecs(image.data.dtype),
494
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
495
495
  });
496
496
  const fullSelection = new Array(sliceShape.length).fill(null);
497
497
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -508,7 +508,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
508
508
  computedCallbacks: image.computedCallbacks,
509
509
  });
510
510
  // Recursively downsample this slice
511
- const downsampledSlice = await downsampleLabelImageImpl(sliceImage, dimFactors, spatialDims, sliceChunks);
511
+ const downsampledSlice = await downsampleLabelImageImpl(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
512
512
  downsampledSlices.push(downsampledSlice.data);
513
513
  }
514
514
  // Combine downsampled slices back into a single array with 't' dimension
@@ -530,7 +530,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
530
530
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
531
531
  data_type: image.data.dtype,
532
532
  fill_value: 0,
533
- codecs: defaultCodecs(image.data.dtype),
533
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
534
534
  });
535
535
  // Copy each downsampled slice into the combined array
536
536
  for (let t = 0; t < tSize; t++) {
@@ -583,7 +583,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
583
583
  chunk_shape: sliceChunkShape,
584
584
  data_type: image.data.dtype,
585
585
  fill_value: 0,
586
- codecs: defaultCodecs(image.data.dtype),
586
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
587
587
  });
588
588
  const fullSelection = new Array(sliceShape.length).fill(null);
589
589
  await zarrSet(sliceArray, fullSelection, sliceData);
@@ -600,7 +600,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
600
600
  computedCallbacks: image.computedCallbacks,
601
601
  });
602
602
  // Recursively downsample this slice (without 'c', so no infinite loop)
603
- const downsampledSlice = await downsampleLabelImageImpl(sliceImage, dimFactors, spatialDims, sliceChunks);
603
+ const downsampledSlice = await downsampleLabelImageImpl(sliceImage, dimFactors, spatialDims, sliceChunks, codecs);
604
604
  downsampledSlices.push(downsampledSlice.data);
605
605
  }
606
606
  // Combine downsampled slices back into a single array with 'c' dimension
@@ -622,7 +622,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
622
622
  chunk_shape: computeChunkShape(combinedShape, chunks, image.dims),
623
623
  data_type: image.data.dtype,
624
624
  fill_value: 0,
625
- codecs: defaultCodecs(image.data.dtype),
625
+ codecs: codecs ?? defaultCodecs(image.data.dtype),
626
626
  });
627
627
  // Copy each downsampled slice into the combined array
628
628
  for (let c = 0; c < cSize; c++) {
@@ -670,7 +670,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
670
670
  // downsampled.size is in ITK order [x, y, z], reverse to get array order [z, y, x]
671
671
  const reversedShape = [...downsampled.size].reverse();
672
672
  const chunkShape = computeChunkShape(reversedShape, chunks, image.dims);
673
- const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims);
673
+ const array = await itkImageToZarr(downsampled, store, "image", chunkShape, image.dims, codecs);
674
674
  return new NgffImage({
675
675
  data: array,
676
676
  dims: image.dims,
@@ -684,7 +684,7 @@ async function downsampleLabelImageImpl(image, dimFactors, spatialDims, chunks)
684
684
  /**
685
685
  * Main downsampling function for ITK-Wasm (browser version)
686
686
  */
687
- export async function downsampleItkWasm(ngffImage, scaleFactors, smoothing, chunks) {
687
+ export async function downsampleItkWasm(ngffImage, scaleFactors, smoothing, chunks, codecs) {
688
688
  const multiscales = [ngffImage];
689
689
  const dims = ngffImage.dims;
690
690
  const spatialDims = dims.filter((dim) => SPATIAL_DIMS.includes(dim));
@@ -748,13 +748,13 @@ export async function downsampleItkWasm(ngffImage, scaleFactors, smoothing, chun
748
748
  }
749
749
  let downsampled;
750
750
  if (smoothing === "gaussian") {
751
- downsampled = await downsampleGaussian(sourceImage, sourceDimFactors, spatialDims, chunks);
751
+ downsampled = await downsampleGaussian(sourceImage, sourceDimFactors, spatialDims, chunks, codecs);
752
752
  }
753
753
  else if (smoothing === "bin_shrink") {
754
- downsampled = await downsampleBinShrinkImpl(sourceImage, sourceDimFactors, spatialDims, chunks);
754
+ downsampled = await downsampleBinShrinkImpl(sourceImage, sourceDimFactors, spatialDims, chunks, codecs);
755
755
  }
756
756
  else if (smoothing === "label_image") {
757
- downsampled = await downsampleLabelImageImpl(sourceImage, sourceDimFactors, spatialDims, chunks);
757
+ downsampled = await downsampleLabelImageImpl(sourceImage, sourceDimFactors, spatialDims, chunks, codecs);
758
758
  }
759
759
  else {
760
760
  throw new Error(`Unknown smoothing method: ${smoothing}`);
@@ -1 +1 @@
1
- {"version":3,"file":"itkwasm-browser.js","sourceRoot":"","sources":["../../src/methods/itkwasm-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"itkwasm-browser.js","sourceRoot":"","sources":["../../src/methods/itkwasm-browser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { NgffImage } from "../types/ngff_image.js";
2
+ import type { ZarrCodec } from "../utils/codecs.js";
2
3
  /**
3
4
  * Main downsampling function for ITK-Wasm (Node version)
4
5
  */
5
- export declare function downsampleItkWasm(ngffImage: NgffImage, scaleFactors: (Record<string, number> | number)[], smoothing: "gaussian" | "bin_shrink" | "label_image", chunks?: number | number[] | Record<string, number>): Promise<NgffImage[]>;
6
+ export declare function downsampleItkWasm(ngffImage: NgffImage, scaleFactors: (Record<string, number> | number)[], smoothing: "gaussian" | "bin_shrink" | "label_image", chunks?: number | number[] | Record<string, number>, codecs?: ZarrCodec[]): Promise<NgffImage[]>;
6
7
  //# sourceMappingURL=itkwasm-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"itkwasm-node.d.ts","sourceRoot":"","sources":["../../src/methods/itkwasm-node.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AA86BnD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EACjD,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,EACpD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClD,OAAO,CAAC,SAAS,EAAE,CAAC,CAyHtB"}
1
+ {"version":3,"file":"itkwasm-node.d.ts","sourceRoot":"","sources":["../../src/methods/itkwasm-node.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA47BpD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EACjD,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,EACpD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnD,MAAM,CAAC,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,SAAS,EAAE,CAAC,CA4HtB"}