Cryo-EM、Cryo-ET和子tomogram平均数据IO中心。
项目描述
cryohub
cryohub是一个基于cryotypes规范的Cryo-ET数据读取和写入库的库。
安装
pip install cryohub
使用
cryohub提供了一些粒度化的I/O功能,如read_star和read_mrc,这些都将返回符合cryotypes规范的对象。
from cryohub.reading import read_star
poseset = read_star('/path/to/file.star')
一个称为read的高级函数为IO过程添加了一些魔法,猜测文件格式并返回一个cryotypes列表。
from cryohub import read
data = read('/path/to/file.star', '/path/to/directotry/', lazy=False, name_regex=r'tomo_\d+')
请参阅每个函数的帮助以获取更多信息。
类似于read_*函数,cryohub提供了一系列write_*函数和一个魔法高级write函数。
from cryohub import write
write([poseset1, poseset2], 'particles.tbl')
从命令行
cryohub可以用作所有可用格式之间的转换工具
cryohub convert input_file.star output_file.tbl
如果您只需要快速检查数据,但又希望比仅读取文本文件或标题更强大的功能,此命令将带您进入ipython shell,其中加载的数据以名为 data 的列表收集。
cryohub view path/to/files/* /other/path/to/file.star
print(data[0])
功能
目前,cryohub 可以读取以下格式的图像:
.mrc(以及.mrcs、.st、.map、.rec变体)=.tif(f)- Dynamo
.em - EMAN2
.hdf
以及以下格式的粒子数据:
- Relion
.star - Dynamo
.tbl - Cryolo
.cbox和.box - EMAN2
.json[^1]
目前存在的写入函数有
.mrc- EMAN2
.hdf - Dynamo
.em - Relion
.star - Dynamo
.tbl
[^1]:EMAN2 使用断层片的中心作为粒子坐标的原点。这意味着在打开断层片时,您必须根据其尺寸重新定位粒子。要自动完成此操作,您可以使用 center_on_tomo 参数提供一个包含要使用的断层片的 hdf 文件。
图像数据
当可能(除非禁用)时,cryohub 使用 dask 惰性加载图像。结果对象可以像普通的 numpy 数组一样处理,但需要在应用任何挂起的操作并返回结果之前调用 array.compute()。
贡献
欢迎贡献!如果您希望支持读取或写入的文件格式,只需针对它打开一个关于该规范的问题。或者,您也可以提交一个包含您提出的实现的PR;您可以查看现有函数以获得灵感。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。
源分布
cryohub-0.6.4.tar.gz (23.9 kB 查看哈希)
构建分布
cryohub-0.6.4-py2.py3-none-any.whl (30.0 kB 查看哈希)