BIDS Senior Fellow Laura Waller and former BIDS Data Science Fellow Henry Pinkard, along with colleague Nico Stuurman, have developed Pycro-Manager, a new open source software tool for controlling different parts of
μManager using Python.
μManager is an open source microscopy acquisition software package that has been an essential tool for many microscopy experiments over the past 15 years. However it is not easy to use for experiments in which image acquisition and analysis are closely coupled, because
μManager libraries are written in C++ and Java, whereas image processing is increasingly carried out with data science and machine learning tools most easily accessible through the Python programming language.
Pycro-Manager provides access to a wealth of existing tools within
μManager through Python. It is designed for maximum flexibility, and serves as a building block for “smart” microscopes that use feedback from data or external instrumentation to control the process of acquiring data. Pycro-Manager is built on top of a high-performance data transfer layer that operates between Java and Python, which enables both the execution of abitrary Java code (as if it were written in Python), and the ability to control
μManager over a network.
According to Pinkard, "The access works through a behind-the-scenes high-speed bridge that dynamically “translates” between the Java and C++ parts of Micro-Manager and Python. This allows for Python users to use any of the existing Java/C++ APIs and plugins of micro-manager as if they had been written in pure Python. The translation between languages occurs dynamically at runtime, so any future development on the Java/C++ side will be available through Python as well."
Pycro-manager: open-source software for integrated microscopy hardware control and image processing
June 19, 2020 | Henry Pinkard, Nico Stuurman, Laura Waller | arXiv.org
May 14, 2020 | Henry Pinkard | Image.sc Forum