Tricky Background Subtraction Problem

Hello All,

We are having a problem getting adequate background subtraction for a high-content cell counting & morphology assay. In short, we use a BD Pathway 855, that has the ability to montage (ie; take multiple seamless images/areas and stitch together in one big image), to capture entire 384-well areas and count every cell in a well. We are using Hoechst-33342 to stain the nuclei and there is also persistent background in the cytoplasm of these cells at a lower level that permits a two-level segmentation of nuclei and cell/cytoplasm with just one image using a 4X objective.

This is very nice because we can get both nuclei and cells from one dye, thereby reducing the acquisition time and allowing for more multiplexing. Here is an example:

This is a single field at 4X and I am using identify primary objects with a high threshold correction factor (like 2.5) to get the nuclei, and then identify secondary objects with a more lenient threshold correction factor (maybe zero point eight). This works well and we can identify all the cells and cytoplasm in a single field. This relies on good background subtraction and there is a strong background illumination pattern at 4X, which is fairly easy to flatten in a single image.

This is the problem: When we take the entire well, we get an image like this:

Here is the original 12-bit tiff in a 16-bit container (10mb file):

You can see the four images stitched together and the outline of the well. The problem is that the background subtraction algorithms all fit functions to the background, and this background is actually four illumination functions put together with discontinuities at the seams. This makes it impossible to fit a good background function because the slope is undefined at the seams and there can be a big offset at the edge.

My question is: How should we approach the background subtraction, so that we can accurately identify all cells and dilate out to the edge of the cytoplasm region? I think that this technique is generally useful because a two-pass hi-low segmentation using threshold correction factor works great with just one dye to identify nuclei and cytoplasmic regions. And, if we have a good solution for background subtraction, then many users with the capability to montage will be able to do this kind of high-content image cytometry which we find very useful.

We have tried all the settings in CorrectIllumination module to background subtract, but are always left with lines at the image intersections.
We have taken the images apart with crop and then background subtract, but when we put them back together, there is always a discontinuity at the borders, which interferes with the segmentation.

Right now, we just take the images apart into the four respective images (de-montage), and then process them separately. We still have a problem with a persistent border around the edge of the well. We have tried identifying the well region using identify primary objects (like in the thread about identifying an entire piece of tissue), and that isn’t very robust and causes the pipeline to crash constantly.

Any thoughts about 1) how to background subtract for montaged images and 2) remove the boundaries of the well shape to allow for accurate nuclear and cell identification in these low-mag/whole well images?

Thanks in advance for any help!


PS: Let me know if it is useful to post some of our pipelines or if more example images are needed.

Hi Jonny,

I took a stab at your problem, and it is tricky, but I think I have a pipeline that will get you pointed in the right direction. It probably not too different from what you’ve tried already, but I want to mention the following:

  • I created a masking binary image for the well using ApplyThreshold, which I then cropped and applied to each tile.The well background is darker than the fluorescence background, which makes this approach feasible.
  • Using the Regular method for background correction still left some residual background illumination and produced the lines between tiles, but the Background method seemed to work better.
  • Otsu three-class thresholding and adjustment of the threshold correction factor seem to be good job at detecting the nuclei and cells.
  • The division between tiles are still apparent, but I think a good choice of lower threshold bound should take care of this. I haven’t adjusted this yet, just you can check the results out for yourself.

Let me know how this works for you!

2012_08_24.cp (19.1 KB)

Hi Mark,

Great, thanks so much! I’ll try this today and see what happens.

The combination of a repeating illumination function and a well outline is really tricky.

I have tried taking the illumination function and tiling it and then subtracting it, but that leaves artifacts around the well-edge. We have also tried averaging the image set to generate a homogeneous background for subtraction, but the well position within the image varies a bit from 1st to last well…

One of our best attempts was to un-tile the images and generate individual images (ie: 2x2 montage -> 4 separate images). We can background subtract those easily, but the problem is in putting them back together. A solution to our problem could be a re-tiling module that could ensure that the edges meet with the same average background intensity so there are no large steps at the boundaries.

I will try this out and post back some results.

Thanks again,


The cool thing here is the CorrectIlluminationCalculate pays attention to whether a mask is associated with an image or not, and excludes pixels that are outside the mask from consideration. We probably should include that in the documentation :smiley:

Let us know what you find!