Variation in brightness & spectral composition within a stack

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Variation in brightness & spectral composition within a stack

Tom_R
Hi Everyone,
I have a bit of a problem I hope you can help me with:

- I have a stack of colour time-lapse JPEGs (approx 2000 in each).
- I convert these to RGB stack
- Within the stack there is daily variation in the brightness and spectral composition which I'd like to remove.
- On each image I have a standard grey-card (reflects 18% of all light).

QUESTION: How exactly can I use this reflectance standard to remove the daily  variation across the stack?

Note, that I don't want to convert to greyscale, as the RGB colour information is essential for object identification (via  process -> binary -> find maxima).

If you have any suggestions, could you please give specific instructions, as I am an ImageJ novice.

MANY THANKS !

Tom
Reply | Threaded
Open this post in threaded view
|

Re: Variation in brightness & spectral composition within a stack

Tom_R
I forgot to mention, that the position if the grey card is identical for all images in the stack.
Reply | Threaded
Open this post in threaded view
|

Re: Variation in brightness & spectral composition within a stack

Rasband, Wayne (NIH/NIMH) [E]
In reply to this post by Tom_R
On Mar 8, 2010, at 7:33 AM, Tom_R wrote:

> Hi Everyone,
> I have a bit of a problem I hope you can help me with:
>
> - I have a stack of colour time-lapse JPEGs (approx 2000 in each).
> - I convert these to RGB stack
> - Within the stack there is daily variation in the brightness and
> spectral composition which I'd like to remove.
> - On each image I have a standard grey-card (reflects 18% of all light).
>
> QUESTION: How exactly can I use this reflectance standard to
> remove the daily  variation across the stack?
>
> Note, that I don't want to convert to greyscale, as the RGB colour
> information is essential for object identification (via  process ->
> binary -> find maxima).
>
> If you have any suggestions, could you please give specific
> instructions, as I am an ImageJ novice.

You could use this macro, which normalize the stack by adding, to each image, the intensity difference between the reference standard of the displayed image and the reference standard of the image.

   n = nSlices;
   if (n==1) exit("Stack required");
   type = selectionType;
   if (type<0||type>4)
      exit("Area selection required");
   getSelectionCoordinates(xpoints, ypoints);
   Stack.getStatistics(count, stackMean);
   for (i=1; i<=n; i++) {
      setSlice(i);
      makeSelection("polygon", xpoints, ypoints);
      getStatistics(count, mean);
      run("Select None");
      run("Add...", "slice value="+(stackMean-mean));
   }

-wayne
Reply | Threaded
Open this post in threaded view
|

Re: Variation in brightness & spectral composition within a stack

Tom_R
Hi Wayne,
I Just applied that macro (controlling for fluctuations in intesnity) and while it does help, I am still having problems controlling for fluctuations in colour composition:

- The trouble is that the ambient light (in the room in which the experiment was conducted) changed over the course of the day.
- Your macro controls for intensity changes, but is it possible to compensate for changes in spectral composition, for each photo?
- For example, is it possible to normalise the colour composition across the stack in the same way as above for the intensity?

Cheers,
Tom



Reply | Threaded
Open this post in threaded view
|

Re: Variation in brightness & spectral composition within a stack

Tom_R
HI,
as requested, here is a (relatively small) stack:
<https://www.bris.ac.uk/fluff/u/bztor/ZFoxULq_OXAUIDyBVAypjwGk/>

It will be available for download until 23rd march.
Reply | Threaded
Open this post in threaded view
|

Re: Variation in brightness & spectral composition within a stack

Gabriel Landini
In reply to this post by Tom_R
On Monday 08 Mar 2010  09:30:02 you wrote:
> - The trouble is that the ambient light (in the room in which the
> experiment was conducted) changed over the course of the day.
> - Your macro controls for intensity changes, but is it possible to
> compensate for changes in spectral composition, for each photo?
> - For example, is it possible to normalise the colour composition across
> the stack in the same way as above for the intensity?

Tom,
It will be extremely difficult to do this unless properly there is some
reference chart in the frames.  If you have those in, you could try something
like this:

http://imagejdocu.tudor.lu/doku.php?id=plugin:color:chart_white_balance:start

You can't do this with any arbitrary object in the image because of the
problem of metamerism. One needs one of these colour charts.

Cheers

G