2017-12-27 13 views
0

Ich habe 5 digitale Hologramme, die ich mit einem CCD zu verschiedenen Zeiten aufgenommen habe. Ich würde gerne die 5.Wie man einen Satz von Bildern mittelt und das gemittelte Bild als gemitteltes Bild mit MATLAB speichert

Ich bin in der Lage, das durch den folgenden Code in MATLAB zu tun, außer dass ich die Datei nicht speichern kann, wie ich in MATLAB sehe. Stattdessen erhalte ich nach dem Speichern ein weißes Bild.

I0 = imread('snap1.bmp'); 
sumImage = double(I0); % Inialize to first image. 
for i=2:10 % Read in remaining images. 
    rgbImage = imread(['snap',num2str(i),'.bmp']); 
    sumImage = sumImage + double(rgbImage); 
end; 
meanImage = sumImage/5; 

figure 
imshow(meanImage,[]) 
imwrite(double(meanImage),'snap10.bmp') 

o=imread('snap10.bmp'); 
figure 
imagesc((o)) 

images can be found at

+0

https://www.jumbomail.me/he/Downloads.aspx?sid=56576F6875567969785676464B3342347436653838673D3D – sanjeev

Antwort

1

Wenn Sie das Bild in die uint8 verwandeln, wäre es richtig:

imwrite(uint8(meanImage),'snap10.bmp'); % instead of double 

Auch der Mittelwert ist falsch, wie Sie 1:10 Summe, aber geteilt, um die Summe von 5 .

+0

habe ich versucht, dass aber es zeigt Fehler Undefinierte Funktion ‚UNIT8‘ für Eingangsargumente des Typs ‚doppelte‘. – sanjeev

+0

@sanjeev ja. Du hast "uint8" falsch geschrieben. – OmG

+0

Omg !! Vielen Dank :) – sanjeev

Verwandte Themen