how to get image average
24 次查看(过去 30 天)
显示 更早的评论
hello to all
i have an 4-D dimension Array that contain some RGB picture and i want to set an image that each pixel of it is average of other corresponding pixel in all picture.i wrote below code but doesn't work correctly.
if any one know the correct solution please help me
best regards
if true
clc;
obj=mmreader('street.avi');
Frames = obj.NumberOfFrames;
vidHeight = obj.Height;
vidWidth = obj.Width;
a=read(obj);
im = a(:,:,:,8);
sum = uint16(0);
imframe =(zeros(vidHeight,vidWidth,3));
imframe1=uint16(zeros(vidHeight,vidWidth,3,Frames));
imframe2=uint16(zeros(vidHeight,vidWidth,3));
for p = 1:250
imframe1(:,:,:,p)=(im2uint16(a(:,:,:,p))); %sum = sum + uint16(a(m,n,k,p));
end
for p = 1:250
imframe2=imadd(imframe1(:,:,:,p),imframe2);
end
0 个评论
采纳的回答
Walter Roberson
2013-3-5
Replace nearly all your code with
mean(a,4)
You might need
mean(double(a),4)
0 个评论
更多回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!