We’ve talked to others about using CellProfiler on embedded platforms and I think we see part of our mission as aiding these efforts. CellProfiler is designed to run on a computer with a reasonable amount of memory and disk storage and its general-purpose nature has led to the inclusion of a lot of libraries (for instance those that use pixel-based machine learning) that are used in just a few places and a lot of others (for instance Bio-formats) that could be replaced with something simpler for an application dedicated to a single assay.
Having said that, the algorithms that we’ve written are BSD-licensed and CellProfiler is a good tool for prototyping an analysis. Python is a small language that’s good for embedding. One strategy might be to create a pipeline that can work with your images, examine the modules being called and string the algorithms run by the modules together to create a program dedicated to your analysis. It might also be possible to call the pipeline runner in a headless mode and run your pipeline directly without a user interface and without many of the packages in full-blown CellProfiler.
I worked with FPGAs many years ago - I’m guessing that at this point, you can find open-source CPU cores that fit on an FPGA along with support for compiling with GCC. Theoretically, it should be possible to compile Python, Numpy and Scipy (the core components that CellProfiler depends on) for this sort of platform, but it will be difficult and you may run into problems that you’re the first to encounter. FPGAs would offer some ability to craft faster operations, for example for array operations, but much of CellProfiler’s code is typical linear computer logic best suited for a general-purpose CPU so it might be good to weigh the flexibility of an FPGA against the lesser development cost of using components with a larger user community and a well-tested set of software packages. An alternate direction would be to use a C / C++ imaging library such as ITK. ITK should have most of the pieces that you’d require to implement your assay and the resulting program could be compiled using a single toolchain. This is probably your most lightweight option and it avoids having to deal with some of the implicit assumptions in Python’s design (that you have an operating system / disk / console, etc.)
Good luck, and feel free to get back to us if you need further help.