Skip to main content

Posts

Showing posts with the label micromanager

Control of sCMOS cameras with Python

Running a sCMOS camera using a software with GUI is nice, but at some point I want to control the camera from Jupyter notebook, so that I can acquire images and analyse them on the same page of code. Unfortunately many camera manufacturers don't provide Python API (any of them do?). So the hard way would to ferret out camera's drivers (.dll files), figure out the names and arguments of functions, and write a home-made Python wrapper for a DLL file using ctypes, like I did for Thorlabs wavefront sensor . This is a way of tears and pain. Luckily, there is a silk road to the camera control. The API for many cameras and other instruments is already implemented in MicroManager, which also has a Python wrapper MMCorePy  around it! So, after quick and easy installation of the  MMCorePy,  Python code becomes simple and clean, with all heavy lifting done in MicroManager API running under the hood:

Programming of DIY microscopes: MicroManager vs LabVIEW

In the flourishing field of DIY light microscopy, a decision of choosing the programming language to control the microscope is critically important. Modern microscopes are becoming increasingly intelligent. They orchestrate multiple devices (lasers, cameras, shutters, pockel cells) with ever increasing temporal precision, collect data semi-automatically following user-defined scenarios, adjust focus and illumination to follow the motion (or development) of a living organism. So, the programming language must seamlessly communicate with hardware, allow devices be easily added or removed, have rich libraries for device drivers and image processing, and allow coding of good-looking and smooth GUIs for end users. This is a long list of requirements! So, what are the  options for DIY microscope programming? There are currently two large schools of microscope programming - Labviewers and Micromanagers . (update: Matlab for microscope control also has a strong community, comparable t...