自动电子衍射数据采集的Python程序

instamatic的Python项目详细描述


GitHub Workflow StatusPyPI - Python VersionPyPIPyPI - DownloadsDOI

不稳定

Instamatic是一个Python程序,其目的是自动收集电子衍射数据。其核心是一个用于透射电子显微镜实验控制的Python库,它绑定了JEOL/FEI显微镜和gatan/timepix/tvips摄像机的接口。已经实现了收集串行电子衍射(串行)、连续旋转电子衍射(cRED)和逐步旋转电子衍射(RED)数据的例程。在

Instamatic是作为一个可移植的独立安装分发的,它包括来自:https://github.com/stefsmeets/instamatic/releases的所有所需库。但是,最新版本的代码(包括bug!)可从此存储库获取。在

支持的电子显微镜:

  • TEMCOM图书馆的JEOL显微镜
  • FEI显微镜通过脚本接口

支持的摄像头:

  • ASI Timepix(包括实时查看GUI)
  • 通过DM插件[1]的Gatan摄像头
  • 通过EMMENU4 API TVIPS摄像头

Instamatic已经在带有Timepix摄像头的JEOL-2100上进行了广泛测试,目前正在开发带有TVIPS摄像头的JEOL-1400和JEOL-3200(XF416/F416)。在

[1]:可以在dmscript上找到用于在OneView相机(或任何其他Gatan相机)上收集cRED数据的数字显微图像脚本。在

安装

pip install instamatic

或者,下载包含所有库/依赖项的可移植安装:https://github.com/stefsmeets/instamatic/releases/latest。解压缩存档文件,然后双击start_Cmder.exe打开一个终端。在

文件

有关如何设置和使用Instamatic,请参阅the documentation。在

使用pydoc访问完整的API引用:pydoc -b instamatic

参考文献

如果您发现Instamatic有用,请考虑引用它或下面的参考文献之一。在

每个软件版本都归档在Zenodo上,这为项目和每个版本提供了一个DOI。项目DOI 10.5281/zenodo.1090388将始终解析为最新的归档文件,其中包含引用该版本所需的所有信息。在

或者,在Instamatic中实现的一些方法描述如下:

源代码结构

  • demos/-Jupyter演示笔记本
  • docs/-文档
  • instamatic/
    • ^{str>{str}交互作用代码
    • calibrate/-校准工具
    • camera/-相机交互代码
    • config/-配置管理
    • experiments/特定的数据收集例程
    • formats/-图像格式和其他IO
    • gui/-GUI代码
    • ^{str1}$neural_network/-晶体质量预测
    • processing/-数据处理工具
    • server/-管理进程间/网络通信
    • utils/有用的实用程序
    • acquire_at_items.py-舞台移动/数据采集引擎
    • admin.py-检查管理员
    • banner.py——这是一条非常烦人的感谢短信
    • browser.py-蒙太奇浏览课
    • exceptions.py-内部异常
    • goniotool.py-goniool(JEOL)交互代码
    • gridmontage.py-网格蒙太奇数据收集代码
    • ^{27{str>{1}转换例程
    • imreg.py-图像注册(互相关)
    • io.py—一些与io相关的脚本
    • main.py-主入口点
    • montage.py-图像拼接
    • navigation.py-优化导航路径
    • tools.py-代码中使用的函数集合
  • scripts/有用的脚本
  • pyproject.toml-依赖关系/构建系统声明(poetry)
  • setup.py-旧式构建脚本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java迭代图形框架聚合达到内存限制的消息   反编译和开发人员向Android应用程序提供java安全密钥   活页夹中的java Vaadin上传组件,例如Crud编辑器   java如何定义0090当我有了每个字符   带有AOP的java截取私有注释方法   在Java中暂停并恢复动画(thread.sleep)   java在JavaFX中从不同的控制器向TableView添加行   java如何通过Spring使用脚本初始化inmemory HSQLDB   windows找到了绝对的java。通过编程从java代码获取exe路径   Java同步、信号量和队列的多线程性能   java异步任务回调未调用   java在迷宫中用坐标寻找最短路径   Java:并行处理数组,查找发生异常的位置   java我无法理解我收到的错误   如何调用。bat文件,并使用java中的ProcessBuilder发送字符串   java在mysql数据库中插入日期   将ArrayList的内容显示为格式正确的JSON for Java REST API   java@OneToMany注释SQLSyntaxErrorException:ORA000904无效标识符