#zarr #data #manipulating #codec #benchmark #zarrs #ome-zarr

bin+lib zarrs_tools

用于创建和操作 Zarr V3 数据的工具

16 个版本 (4 个重大更新)

0.5.5 2024年7月31日
0.4.2 2024年5月16日
0.3.0 2024年2月22日
0.2.0 2023年12月26日

#414编码

Download history 187/week @ 2024-04-19 113/week @ 2024-04-26 138/week @ 2024-05-03 107/week @ 2024-05-10 43/week @ 2024-05-17 2/week @ 2024-05-24 2/week @ 2024-06-07 3/week @ 2024-06-14 155/week @ 2024-06-28 356/week @ 2024-07-05 28/week @ 2024-07-12 86/week @ 2024-07-19 395/week @ 2024-07-26 36/week @ 2024-08-02

每月567 次下载

MIT/Apache

295KB
6.5K SLoC

zarrs_tools

Latest Version msrv build

使用 Rust crate 创建和操作 Zarr v3 数据的多种工具。

更改日志可以在 此处 找到。

工具

所有工具都支持 Zarr V3 数据的输入和输出。一些工具还支持 Zarr V2 的 V3 兼容子集的输入。

  • zarrs_reencode:重新编码数组。操作块大小、分片大小、编解码器、填充值、块键编码分隔符和属性。
  • zarrs_filter(功能 filter):将简单的图像过滤器(变换)应用于数组。
  • zarrs_ome(功能 ome):将数组转换为 OME-Zarr 多尺度图像。
    • 支持 OME-Zarr 0.5-dev(作为 Zarr V3)和 0.5-dev1。第一个被 Neuroglancer 识别。
  • zarrs_info(功能 info):返回与数组相关的元数据信息或数组的范围/直方图。
  • zarrs_binary2zarr(功能 binary2zarr):从管道中的二进制数据创建数组。
  • zarrs_ncvar2zarr(功能 ncvar2zarr):将 netCDF 变量转换为数组。

请参阅docs/获取工具文档。

zarrs基准测试

  • zarrs_reencode:适用于往返基准测试。
  • zarrs_benchmark_read_sync (特性 benchmark):基准测试zarrs同步API。
  • zarrs_benchmark_read_async (特性 benchmark):基准测试zarrs异步API。

有关一些基准测试结果,请参阅docs/benchmarks.md

安装

来自crates.io

cargo install --all-features zarrs_tools

来自源代码

cargo install --all-features --path .
# cargo install --all-features --git https://github.com/LDeakin/zarrs_tools

启用SIMD内嵌函数

启用avx2/sse2(如果支持)可以改善编码和解码性能。

可以通过以下方式之一启用:

  • RUSTFLAGS="-C target-cpu=native"
  • RUSTFLAGS="-C target-feature=+avx2,+sse2"

启用非默认的zarrs编解码器

可以通过传递特性标志启用非默认的zarrs编解码器(请参阅zarrs crate features)。例如

cargo install zarrs_tools --all-features --features zarrs/bitround,zarrs/zfp,zarrs/bz2,zarrs/pcodec

许可协议

zarrs_tools采用以下任意一种许可协议:

除非您明确声明,否则根据Apache-2.0许可协议定义的,您有意提交的任何贡献,将根据上述方式双重许可,不附加任何额外条款或条件。

依赖关系

~26–65MB
~1M SLoC