Python-Microscope - a new open-source Python library for the control of microscopes

Custom-built microscopes often require control of multiple hardware devices and precise hardware coordination. It is also desirable to have a solution that is scalable to complex systems and that is translatable between components from different manufacturers. Here we report Python-Microscope, a fre...

Full description

Saved in:
Bibliographic Details
Published inJournal of cell science Vol. 134; no. 19
Main Authors Susano Pinto, David Miguel, Phillips, Mick A, Hall, Nicholas, Mateos-Langerak, Julio, Stoychev, Danail, Susano Pinto, Tiago, Booth, Martin J, Davis, Ilan, Dobbie, Ian M
Format Journal Article
LanguageEnglish
Published England The Company of Biologists Ltd 01.10.2021
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Custom-built microscopes often require control of multiple hardware devices and precise hardware coordination. It is also desirable to have a solution that is scalable to complex systems and that is translatable between components from different manufacturers. Here we report Python-Microscope, a free and open-source Python library for high-performance control of arbitrarily complex and scalable custom microscope systems. Python-Microscope offers simple to use Python-based tools, abstracting differences between physical devices by providing a defined interface for different device types. Concrete implementations are provided for a range of specific hardware, and a framework exists for further expansion. Python-Microscope supports the distribution of devices over multiple computers while maintaining synchronisation via highly precise hardware triggers. We discuss the architectural features of Python-Microscope that overcome the performance problems often raised against Python and demonstrate the different use cases that drove its design: integration with user-facing projects, namely the Microscope-Cockpit project; control of complex microscopes at high speed while using the Python programming language; and use as a microscope simulation tool for software development.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 23
Handling Editor: Jennifer Lippincott-Schwartz
Present address: Department of Biology, Johns Hopkins University, Mudd Hall, 3400 N. Charles Street, Baltimore, MD 21218, USA.
ISSN:0021-9533
1477-9137
DOI:10.1242/jcs.258955