top bar

Difference between revisions of "Using the Micro-Manager python library"

m
(Add currently supported NumPy version)
Line 11: Line 11:
 
#** Required:
 
#** Required:
 
#*** [http://python.org/ python 2.7.x] (python 3.x is not yet supported)
 
#*** [http://python.org/ python 2.7.x] (python 3.x is not yet supported)
#*** [http://numpy.org/ numpy]
+
#*** [http://numpy.org/ numpy 1.7.x]
 
#** Optional:
 
#** Optional:
 
#*** [http://scipy.org/ scipy] for advanced image processing
 
#*** [http://scipy.org/ scipy] for advanced image processing

Revision as of 07:16, 17 May 2013

MMCorePy is a python library that wraps the Micro-Manager C++ core (on both Mac and Windows). The library allows you to control microscope hardware from python scripts or a python command line.

Here is how to get started with the Micro-Manager python library:

  1. Download and install Micro-Manager on your computer.
  2. Familiarize yourself with Micro-Manager and learn how to connect it to your hardware by using the existing Java-based GUI (graphical user interface).
  3. Install Python and Numpy:
  4. MMCorePy.py will be located in the main Micro-Manager directory; it requires many library files in that directory (with suffixes like .dll, .so, .pyd) to operate. At present it is necessary to run python from inside the Micro-Manager directory so that these files can be discovered.

Images returned by calls to an instance of the pythonized Micro-Manager core class (CMMCore) are stored in numpy arrays for convenience, and can be easily displayed by pylab (matplotlib) commands. Here is a short example (using matplotlib) that demonstrates use of the python wrapper to acquire and display an image.

# Create a Micro-Manager core object:
import MMCorePy
mmc = MMCorePy.CMMCore()

#  Load and initialize the demo camera device:
mmc.loadDevice("cam","DemoCamera","DCam")
mmc.initializeDevice("cam")

# Snap and retrieve an image:
mmc.snapImage()
im1 = mmc.getImage()

# Display the image:
from pylab import *
ion() # Activate interactive mode
figure()
imshow(im1,cmap = cm.gray)

A longer example script, MMCoreWrapDemo.py, is available in the Micro-Manager root directory.

© Micro-Manager : Vale Lab, UCSF 2006-2011 | All Rights Reserved | Contact