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 回表示 (過去 30 日間)
古いコメントを表示
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 .
0 件のコメント
採用された回答
Walter Roberson
2012 年 11 月 6 日
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 件のコメント
Walter Roberson
2012 年 11 月 11 日
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.
その他の回答 (1 件)
Image Analyst
2012 年 11 月 9 日
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;
参考
カテゴリ
Help Center および File Exchange で Signal Generation, Manipulation, and Analysis についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!