用于压缩采样和重建原子力显微镜图像的 Python 包
项目描述
- 初级开发者:
克里斯蒂安·舒·奥克斯维格、帕特里克·史蒂芬·佩德森
- 其他开发人员:
Jan Østergaard、Thomas Arildsen、Tobias L. Jensen、Torben Larsen
- 机构:
奥尔堡大学,电子系统、信号和信息处理系
- 版本:
- 1.7.0
- Travis CI 测试状态:
介绍
Magni 是一个 Python 包,它提供了使用原子力显微镜 (AFM) 提高图像采集速度的功能。Magni 的图像采集算法基于压缩感知 (CS) 信号采集范式,包括感知和重建。采集的传感部分从可能使用 AFM 获取的常规图像中生成传感数据。这是通过 AFM 硬件仿真完成的。采集的重建部分从感测数据重建图像。这是通过使用为此目的而修改的众所周知的 CS 重建算法通过 CS 重建来完成的。上述功能的 Python 实现使用了标准库、许多第三方库以及专门为 Magni 设计和实现的附加实用程序功能。
原子力显微镜:AFM 特定功能,包括 AFM 图像采集、AFM 硬件模拟和 AFM 数据文件处理。
压缩传感:通用 CS 功能,包括信号重建和相变确定。
成像:除可视化和评估外,还包括测量矩阵和字典构建的一般成像功能。
再现性:可能有助于提高使用 Magni 获得的结果的再现性的工具。
实用程序:通用 Python 实用程序,包括多处理、跟踪和验证。
下载
Magni 可以通过多种方式下载:
Magni 的所有官方版本都可以在“ http://dx.doi.org/10.5278/VBN/MISC/Magni ”下载。
源代码托管在 GitHub 上的“ https://github.com/SIP-AAU/Magni ”上,每个版本的 Magni 都可供下载,并跟踪已知问题。
此外,magni 包的所有官方版本(没有示例和文档)都可以通过 PyPI 和 binstar 获得。这两个都被视为非官方渠道,仅为您提供方便。
使用位于“ https://pypi.python.org/pypi/magni/ ”的 PyPI。
使用位于“ https://anaconda.org/chroxvi/magni/ ”的 Anaconda.org。
安装
要使用 Magni,请提取下载的存档并将提取的 Magni 文件夹包含在您的 PYTHONPATH 中。
Magni 设计用于 Python 2 >= 2.7 或 Python 3 >= 3.3。
Magni 所需的第三方依赖项和可选的第三方依赖项列在已编译的文档中,该文档可在 Magni 文件夹中的“/doc/build/html/index.html”下找到。您可以使用“/magni/tests/”下的 Magni 文件夹中的“dep_check.py”脚本来检查 Magni 是否缺少依赖项。只需运行脚本即可打印依赖关系报告。
文档
包含的子包、模块、类和函数通过 Python 文档字符串记录,使用与第三方库 numpy 相同的格式,即使用 numpydoc 标准。因此,任何实体的描述都可以在该实体的文档字符串中的 Magni 源代码中找到。为便于阅读,文档已使用 Sphinx 编译以生成 HTML 页面,该页面可在 Magni 文件夹中的“/doc/build/html/index.html”下找到。整个文档也可在 Magni 文件夹中的“doc/pdf/index.pdf”下以 PDF 文件的形式提供。请注意,无论是 HTML 版本还是 PDF 版本的文档都不是通过 PyPI 和 Anaconda.org 提供的。
测试
Magni 中包含一个由单元测试、文档测试、IPython 笔记本示例和几个样式检查组成的测试套件。测试组织在“/magni/tests/”下的 Magni 文件夹中的 python 模块中。这些可以使用任何支持 unittest.TestCase 类的测试运行程序来调用。整个测试套件可以通过执行便利脚本“run_tests.py”来运行。代码是这个存储库由Travis CI持续测试。
例子
包括大量显示 Magni 功能的示例。其中一些示例采用 doctests 的形式,而更详细的示例采用 IPython notebook 示例的形式,可以在 Magni 文件夹中的“/examples/”下找到。
引用 Magni
Magni 软件元论文已发表:
CS Oxvig、PS Pedersen、T. Arildsen、J. Østergaard 和 T. Larsen,“Magni:用于压缩采样和重建原子力显微镜图像的 Python 包”,开放研究软件杂志,2(1):e29, 2014 年 DOI:http ://dx.doi.org/10.5334/jors.bk
此外,magni.utils.validation系统详述于:
PS Pedersen、CS Oxvig、J. Østergaard 和 T. Larsen,“Validating Function Arguments in Python Signal Processing Applications”,第 15 届 Python in Science Conference 论文集,第 106-113 页,美国德克萨斯州奥斯汀,7 月 11 日- 2016 年 17 月 17 日 URL:http ://conference.scipy.org/proceedings/scipy2016/patrick_pedersen.html
magni.reproducibility子包详细说明如下:
CS Oxvig、T. Arildsen 和 T. Larsen,“Storing Reproducible Results from Computational Experiments using Scientific Python Packages”,第 15 届 Python in Science Conference 论文集,第 45-50 页,美国德克萨斯州奥斯汀,7 月 11 日 - 2016 年 17 月 17 日网址:http ://conference.scipy.org/proceedings/scipy2016/christian_oxvig.html
如果您发表任何使用 Magni 的作品,请考虑引用其中一篇或多篇论文。