Measuring intensity fluctuations of a regular array of lights

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

Measuring intensity fluctuations of a regular array of lights

Roger Baker-2
Greetings,

I am a novice at using ImageJ, but I would like to get started in the best
direction as early as possible.

My problem is to measure the individual intensity variations within a
regular 24x24 array of 576 small LED lights seen against a black background.
This is to be recorded on a short video clip less than a minute long.

I think my array and camera optics are precise enough that the pixel
clusters on the video image slices could each be isolated within its own
cell of a 24x24 virtual grid imposed on the slice.

Since most of the pixels are black, I think the total of pixel values
contained within each cell could be added to accurately represent the
intensity of each of the individual spots of light seen by the camera in
each slice. This would generate numbers that could be exported as a serial
string corresponding to the light intensities, for further analysis.

Does this description suggest any details of the best practical approach to
solving this kind of problem?

-- Roger Baker, Austin, Texas
Reply | Threaded
Open this post in threaded view
|

Re: Measuring intensity fluctuations of a regular array of lights

jmutterer
Roger,
you could try and adapt the following macro to your LED array images. Go to
Plugins/New... , create a new macro window, paste the following code in it
and run the macro using ctrl-R.

// this first part just creates an example stack
run("Dot Blot (7K)");
run("Duplicate...", "title=Dot_Blot-1.jpg");
run("Flip Horizontally");
run("Duplicate...", "title=Dot_Blot-2.jpg");
run("Flip Vertically");
run("Images to Stack");
run("Invert", "stack");

// the real part starts here.
w = getWidth(); h = getHeight();
rows = 4; columns = 7;
run("New... ", "name=LED_Array type=Table");
headings="z\t";
for (i=0;i<columns;i++) headings = headings+i+"\t";
print ("[LED_Array]","\\Headings:"+headings);
for (z=1;z<=nSlices;z++) {
setSlice(z);
for(y=0;y<rows;y++) {
line = ""+z+"\t";
for (x=0;x<columns;x++) {
makeRectangle(x*(w/columns),y*(h/rows),w/columns,h/rows);
getStatistics(area, mean, min, max, std, histogram);
sum = area*mean;
line = "" + line+sum+"\t";
} // columns loop
print ("[LED_Array]",line);
wait(100);
} // rows loop
} // slice loop
// end macro.

On Dec 19, 2007 11:02 PM, Roger Baker <[hidden email]> wrote:

> Greetings,
>
> I am a novice at using ImageJ, but I would like to get started in the best
> direction as early as possible.
>
> My problem is to measure the individual intensity variations within a
> regular 24x24 array of 576 small LED lights seen against a black
> background.
> This is to be recorded on a short video clip less than a minute long.
>
> I think my array and camera optics are precise enough that the pixel
> clusters on the video image slices could each be isolated within its own
> cell of a 24x24 virtual grid imposed on the slice.
>
> Since most of the pixels are black, I think the total of pixel values
> contained within each cell could be added to accurately represent the
> intensity of each of the individual spots of light seen by the camera in
> each slice. This would generate numbers that could be exported as a serial
> string corresponding to the light intensities, for further analysis.
>
> Does this description suggest any details of the best practical approach
> to
> solving this kind of problem?
>
> -- Roger Baker, Austin, Texas
>
Reply | Threaded
Open this post in threaded view
|

Re: Measuring intensity fluctuations of a regular array of lights

Robert Dougherty
Roger,

Jerome's suggestion brings another method to mind: the MicroArray Profile
plugin on my web site.  This plugin would make is easier to isolate the LEDs
from the background.

Bob

Robert P. Dougherty, Ph.D.
President, OptiNav, Inc.
[hidden email]
Phone (425) 467-1118
Cell (425) 891-4883
Fax (425) 467-1119
www.optinav.com
-----Original Message-----
From: ImageJ Interest Group [mailto:[hidden email]] On Behalf Of Jerome
Mutterer
Sent: Thursday, December 20, 2007 1:33 AM
To: [hidden email]
Subject: Re: Measuring intensity fluctuations of a regular array of lights

Roger,
you could try and adapt the following macro to your LED array images. Go to
Plugins/New... , create a new macro window, paste the following code in it
and run the macro using ctrl-R.

// this first part just creates an example stack
run("Dot Blot (7K)");
run("Duplicate...", "title=Dot_Blot-1.jpg");
run("Flip Horizontally");
run("Duplicate...", "title=Dot_Blot-2.jpg");
run("Flip Vertically");
run("Images to Stack");
run("Invert", "stack");

// the real part starts here.
w = getWidth(); h = getHeight();
rows = 4; columns = 7;
run("New... ", "name=LED_Array type=Table");
headings="z\t";
for (i=0;i<columns;i++) headings = headings+i+"\t";
print ("[LED_Array]","\\Headings:"+headings);
for (z=1;z<=nSlices;z++) {
setSlice(z);
for(y=0;y<rows;y++) {
line = ""+z+"\t";
for (x=0;x<columns;x++) {
makeRectangle(x*(w/columns),y*(h/rows),w/columns,h/rows);
getStatistics(area, mean, min, max, std, histogram);
sum = area*mean;
line = "" + line+sum+"\t";
} // columns loop
print ("[LED_Array]",line);
wait(100);
} // rows loop
} // slice loop
// end macro.

On Dec 19, 2007 11:02 PM, Roger Baker <[hidden email]> wrote:

> Greetings,
>
> I am a novice at using ImageJ, but I would like to get started in the best
> direction as early as possible.
>
> My problem is to measure the individual intensity variations within a
> regular 24x24 array of 576 small LED lights seen against a black
> background.
> This is to be recorded on a short video clip less than a minute long.
>
> I think my array and camera optics are precise enough that the pixel
> clusters on the video image slices could each be isolated within its own
> cell of a 24x24 virtual grid imposed on the slice.
>
> Since most of the pixels are black, I think the total of pixel values
> contained within each cell could be added to accurately represent the
> intensity of each of the individual spots of light seen by the camera in
> each slice. This would generate numbers that could be exported as a serial
> string corresponding to the light intensities, for further analysis.
>
> Does this description suggest any details of the best practical approach
> to
> solving this kind of problem?
>
> -- Roger Baker, Austin, Texas
>
Reply | Threaded
Open this post in threaded view
|

Re: Measuring intensity fluctuations of a regular array of lights

Schierenbeck
In reply to this post by Roger Baker-2
Where can i find a small, battery operated floodlight to use at night with my camcorder, not an LED type?

12v led strip
T5 LED Tube wholesale
LED Panel Light manufacturer