Lee Kamentsky - Imaging platform / Broad Institute

Lee Kamentsky
Tracking with R
Brightfield and Convex Hull
If you got here from outside, I'm a software developer on the Imaging Platform at the Broad Institute. I'm the lead developer for CellProfiler. My e-mail is leek at broadinstitute dot org.

Links

  • Personal Windows build of CellProfiler I recommend the 64-bit Windows build. You can run using large images. It's a high-quality build that utilizes your machine's vector instruction set.
  • Software used by CellProfiler
    • Python
      • Numpy - matrix library and related mathematical software for high-performance scientific computing
      • Scipy - mathematical libraries for array manipulation built on top of Numpy
      • Cython - Cython is a hybrid of C and Python. It has Python-like syntax but can access C memory structures directly, avoiding inefficiency of the Python scripting engine. Cython code compiles to C. Cython automatically binds and manages Python objects and entry points for Python-callable functions. We use Cython to bind C libraries to Python (see LAP.pyx). We also use Cython to code compute-intensive algorithms for certain classes of algoritms (see _cpmorphology.pyx)
      • Matplotlib - library for scientific graphics
      • WX - our choice for multi-platform user interface and windowing.
    • Java software: CellProfiler has a JNI bridge to the Java VM. JNI is a high-performance C interface that lets a C programmer run Java code. We have built a lightweight interface between Python and Java in order to take advantage of Java microscopy imaging packages. CellProfiler is licensed under the GPL and we would welcome reuse of the bridge (see javabridge.pyx and jutil.py) in other projects.
      • ImageJ - We have integrated ImageJ into CellProfiler so that ImageJ plug-ins can be run in a CellProfiler pipeline (PC / Unix only at this point).
      • Bio-Formats - Our image reader / writer for microscopy formats