plotting intensity over time

13 views (last 30 days)
Jenna
Jenna on 31 May 2013
Commented: laurent jalabert on 20 Dec 2022
I have 135 images, taken one after another. I want to plot the intensity of each pixel (let's say 25 x 25 pixels) as a function of time. How can I do that?

Answers (2)

Thomas
Thomas on 31 May 2013
Eg:
s=rand(3,3,10); % 10 images of size 3x3 in a 3d matrix s
pixel1(1,:)=s(1,1,:); % pixel 1,1 from each matrix into variable pixel1
plot(pixel1) % plot pixel1
Hope this helps

Image Analyst
Image Analyst on 31 May 2013
A plot of 625 curves (one curve for each of the 25 by 25 pixels) showing the pixel intensity as a function of image number (time the photo was taken) won't be very informative because it will be too cluttered. Why don't you take the mean of the 25 by 25 region and then plot only that one curve? Or else make the frames into a movie with the im2frame() function. I have demos for all that if you're interested.
  6 Comments
Hazmi Mazlaini
Hazmi Mazlaini on 20 Jan 2017
I have video of a whole face, but only want to plot a graph of total redness in forehead as an example
laurent jalabert
laurent jalabert on 20 Dec 2022
I guess you can define a ROI (rectangular for example) and crop the image there, then average the pixel intensities inside this ROI (it will become a vector9 and then plot versus time.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!