微管理器的设备控制层MMCore的Python绑定
pymmcore的Python项目详细描述
pymmcore:MMCore的Python绑定
Status:尚不适用于pip install
,但可以构建并正常工作。在
pymmcore包为Micro Manager的MMCore提供了python3.x绑定 (低层设备控制/采集接口)。在
注意:pymmcore非常类似于遗留的MMCorePy模块(仅限于python2.x),
分布式应用程序管理器。但是,的Python包
pymmcore被命名为pymmcore
,而不是MMCorePy
。这在一定程度上是为了避免
在pymmcore
(通常通过
pip
)和MMCorePy
(与Micro Manager应用程序一起安装或由
user)两者都存在。在
因为pymmcore是与Micro Manager分开发布的,所以它需要 “指向”现有的Micro Manager安装以访问设备适配器。 (参见下面的示例。)
安装
一旦pymmcore被释放,以下命令将起作用:
python -m pip install --user pymmcore
您还需要安装Micro Manager应用程序。在
简单的例子
^{pr2}$我们目前没有针对CMMCore
的特定于Python的文档。C++
documentation
是最好的资源。在
匹配Micro Manager和pymmcore版本
pymmcore的版本号独立于Micro Manager版本 数字。在
为了使用给定的Micro Manager安装,设备接口
版本必须在pymmcore和Micro Manager设备适配器之间匹配
(Windows上的mmgr_dal_*.dll
)。在
给定Micro Manager安装的设备接口版本可以是 在帮助中查看>;关于Micro Manager。在
给定pymmcore版本的设备接口版本可以视为 以下内容:
importpymmcorepymmcore.CMMCore().getAPIVersionInfo()
请注意,getAPIVersionInfo()
不应与getVersionInfo()
混淆,
返回MMCore的版本号。(MMCore版本是前3个版本
pymmcore版本的一部分。)
- 例如,pymmcore
10.0.0.0
基于MMCore10.0.0
。那个版本的 MMCore具有设备接口版本69
。在 - 通常MMCore版本的最后一位数字(补丁版本)会发生变化 当设备接口版本发生更改时。在
- 但多个MMCore版本可能共享相同的设备接口版本。在
在Windows上加载设备适配器
大多数设备适配器应加载一次
setDeviceAdapterSearchPaths()
已使用正确的目录调用,
就像上面的例子。但是,设备适配器可能有问题
这又依赖于外部DLL(通常是设备供应商库)。在
要解决此问题,首先确保Micro Manager应用程序可以正确 使用相同的配置文件加载所有设备。然后,使用其中一个 以下内容:
- 在
暂时将当前目录更改为Micro Manager安装 加载配置文件时(使用
在os.chdir()
)。在 - 在
将Micro Manager目录添加到
在PATH
环境变量中。在
第一种方法模拟Micro Manager应用程序的工作方式(它总是运行 当前目录设置为安装目录)。但是 第二种方法在外部DLL轮流加载的情况下可能更健壮 以后再添加DLL。在
请报告Micro Manager应用程序可以加载 配置,但pymmcore不能,即使使用上述方法。在
许可证
pymmcore本身的许可证是lgpl2.1(请参见LICENSE.txt
)。MMCore公司
Micro Manager组件(内置于pymmcore中)也位于
同样的许可证。Micro Manager的其他部分使用不同的许可证。在
- 项目
标签: