#图像处理 #多维数组 #ndarray #数组 #图像 #多维 #矩阵

ndarray-ndimage

ndarray提供的多维数组数据结构ArrayBase的多维图像处理

9个不稳定版本 (3个重大变更)

0.4.0 2023年8月31日
0.3.0 2022年12月8日
0.2.2 2022年11月18日
0.1.3 2021年10月14日

#830 in 数据结构

Download history 603/week @ 2024-04-07 735/week @ 2024-04-14 594/week @ 2024-04-21 553/week @ 2024-04-28 636/week @ 2024-05-05 782/week @ 2024-05-12 757/week @ 2024-05-19 640/week @ 2024-05-26 795/week @ 2024-06-02 775/week @ 2024-06-09 581/week @ 2024-06-16 605/week @ 2024-06-23 461/week @ 2024-06-30 508/week @ 2024-07-07 529/week @ 2024-07-14 385/week @ 2024-07-21

每月下载量1,920
stonnx 中使用

MIT/Apache

97KB
2K SLoC

ndarray-ndimage

这个crate为ndarray的ArrayBase类型提供多维图像处理。目前主要关注3D数组/图像,但一些函数也适用于n维数组。

目标是

  • 作为scipy.ndimage的Rust替代品,并包括一些其他工具,如numpy.pad和任何其他与图像处理相关的工具。我们不希望提供scipy.ndimage提供的所有选项和参数,因为其中一些与Rust不兼容。我们希望提供最常用的选项。
  • scipy.ndimage更快或与其一样快。大部分都是Cython化的,所以并不像看起来那么容易。实际上,我通常无法比SciPy更快,但确实有些函数可以。
  • 避免使用unsafe。这不是一个不可破坏的规则。其使用将在pull requests中进行评估和讨论。

目前可用的例程包括

  • 过滤器:卷积/1D,相关/1D,高斯滤波/1D,最小/最大滤波器/1D,中值滤波,Prewitt,Sobel
  • 傅里叶滤波器:无。请使用优秀的rustfft crate
  • 插值:平移,spline_filter/1D,缩放
  • 测量:标记,标记直方图,最大连通组件,最频繁的标记
  • 形态学:二值闭合,二值膨胀,二值腐蚀,二值开运算。适用于所有核(结构元素)。
  • 填充:几乎所有的模式。适用于所有维度和数据类型。

这个crate是一个正在开发中的项目。只提供了scipy.ndimage函数的一部分,并且大多数提供的选项比SciPy少。一些只提供在3D中,边界模式较少,只有两种结构元素类型,只适用于二进制数据,只适用于f64等。

使用Cargo

[dependencies]
ndarray = "0.15"
ndarray-ndimage = "0.2"

贡献

ndarray-ndimage 需要您的帮助来成长。请随时创建问题和提交PR。因为它基于 scipy.ndimage,所以移植新的功能和测试非常容易。阅读Cython代码非常不愉快;移植到Rust的乐趣才刚刚开始!

许可协议

根据您的选择,许可协议为Apache License,版本2.0 https://apache.ac.cn/licenses/LICENSE-2.0 或MIT许可证 http://opensource.org/licenses/MIT。本文件不得复制、修改或分发,除非符合这些条款。

依赖项

约3.5MB
约60K SLoC