Hi, i want to process a stream of gray level images periodically captured by the cameras. can any one tell me where should i start .I'm new to image processing toolbox .,kindly help me

1 view (last 30 days)
i have to design an algorithm for temporal correlation. create a program in MATLAB in which any random images are coming from the cameras. i have to set the threshold or time limit let say 10 min or 5 min after every 10 min check image if image is same as it is in the first image then don't send signal to the sink or destination only send signal or information to sink when images coming from the camera nodes are different .
e.g if image 1 -image 2=0 then don't send image or signal but if image1-image2= some value then send this information to sink .

Accepted Answer

Walter Roberson
Walter Roberson on 6 Nov 2012
Frames from adjacent images will seldom have no difference at all, even under constant illumination, because the sensors in camera are subject to thermal noise and quantum noise.
  2 Comments
Walter Roberson
Walter Roberson on 11 Nov 2012
Consider if you take two pictures with the same camera pointed at exactly the same place, in quick succession, with all vibrations dampened, when there has been no change in the lighting of the scene and not a single change has happened in the scene itself. The algorithm you have outlined requires that the two pictures would come out exactly the same. However, in practice they will never come out exactly the same. The electronic sensors in digital cameras are not perfet, and quantum mechanics says they cannot be perfect. So there will be a series of very small random variations in the two images. And that means that your algorithm cannot just "check image if image is same as it is in the first image": instead it means that you must check to see whether the differences between the two images are more than would be likely due to random variation.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 9 Nov 2012
You can cast the image from getsnapshot() to single, then subtract them and take the absolute values of the pixels and sum them. If that value is more than some value that you declare defines "different enough" then send your signal or email.
lastImageSnapped = single(getsnapshot());
% Subtract from the last image. twoImagesAgo must already be assigned.
differenceImage = abs(lastImageSnapped - twoImagesAgo);
differenceValue = sum(differenceImage (:));
if differenceValue > minAllowableDifference
% They are too different. Send the signal
else
% They are basically the same.
end
% Prepare for next time through:
twoImagesAgo = lastImageSnapped;
  1 Comment
Mehreen Hussain
Mehreen Hussain on 11 Nov 2012
Edited: Mehreen Hussain on 11 Nov 2012
THANKS for helping sir .but one thing i want to ask you is it possible to copy or upload a video stream in Matlab directory? plz help me in writing the code how would i set time limit in it? your answer will gratefully help me,waiting for your reply thanks in advance

Sign in to comment.

Categories

Find more on Signal Generation, Manipulation, and Analysis in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!