Cookies on this website
We use cookies to ensure that we give you the best experience on our website. If you click 'Continue' we will assume that you are happy to receive all cookies and you will not see this message again. Click 'Find out more' for information on how to change your cookie settings.

<jats:title>Abstract</jats:title><jats:p>Bespoke microscopes often require control of multiple hardware devices and precise hardware coordination. It is also desirable to have a control solution that is scalable to more complex systems and 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 bespoke microscopes. Python-Microscope offers an elegant pythonic software platform to control microscopes, abstracting differences between physical devices by providing a defined interface for different device types. These include cameras, filter wheels, light sources, deformable mirrors, and stages. Concrete implementations are provided for a range of specific hardware and a framework is in place for further expansion. Python-Microscope supports the distribution of devices over multiple computers while maintaining synchronisation via highly precise hardware triggers. We discuss the architecture choices of Python-Microscope that overcome the performance problems often raised against Python and demonstrate the different use cases that drove its design: its integration in user facing projects, namely in the Microscope-Cockpit project; in controlling complex microscopes at high speed while using the Python programming language; and as a microscope simulation tool for software development.</jats:p>

Original publication

DOI

10.1101/2021.01.18.427171

Type

Journal article

Publisher

Cold Spring Harbor Laboratory

Publication Date

20/01/2021