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...

ver descrição completa

Detalhes bibliográficos
Principais autores: Susano Pinto, DM, Phillips, MA, Hall, N, Mateos-Langerak, J, Stoychev, D, Susano Pinto, T, Booth, MJ, Davis, I, Dobbie, IM
Formato: Journal article
Idioma:English
Publicado em: Company of Biologists 2021
_version_ 1826309137071341568
author Susano Pinto, DM
Phillips, MA
Hall, N
Mateos-Langerak, J
Stoychev, D
Susano Pinto, T
Booth, MJ
Davis, I
Dobbie, IM
author_facet Susano Pinto, DM
Phillips, MA
Hall, N
Mateos-Langerak, J
Stoychev, D
Susano Pinto, T
Booth, MJ
Davis, I
Dobbie, IM
author_sort Susano Pinto, DM
collection OXFORD
description 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.
first_indexed 2024-03-07T07:31:12Z
format Journal article
id oxford-uuid:f90c88bc-d8c5-4deb-a477-e9eba3950e7d
institution University of Oxford
language English
last_indexed 2024-03-07T07:31:12Z
publishDate 2021
publisher Company of Biologists
record_format dspace
spelling oxford-uuid:f90c88bc-d8c5-4deb-a477-e9eba3950e7d2023-01-05T14:44:49ZPython-Microscope - a new open-source Python library for the control of microscopesJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:f90c88bc-d8c5-4deb-a477-e9eba3950e7dEnglishSymplectic ElementsCompany of Biologists2021Susano Pinto, DMPhillips, MAHall, NMateos-Langerak, JStoychev, DSusano Pinto, TBooth, MJDavis, IDobbie, IMCustom-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.
spellingShingle Susano Pinto, DM
Phillips, MA
Hall, N
Mateos-Langerak, J
Stoychev, D
Susano Pinto, T
Booth, MJ
Davis, I
Dobbie, IM
Python-Microscope - a new open-source Python library for the control of microscopes
title Python-Microscope - a new open-source Python library for the control of microscopes
title_full Python-Microscope - a new open-source Python library for the control of microscopes
title_fullStr Python-Microscope - a new open-source Python library for the control of microscopes
title_full_unstemmed Python-Microscope - a new open-source Python library for the control of microscopes
title_short Python-Microscope - a new open-source Python library for the control of microscopes
title_sort python microscope a new open source python library for the control of microscopes
work_keys_str_mv AT susanopintodm pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT phillipsma pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT halln pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT mateoslangerakj pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT stoychevd pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT susanopintot pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT boothmj pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT davisi pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes
AT dobbieim pythonmicroscopeanewopensourcepythonlibraryforthecontrolofmicroscopes