Frage

Lassen Sie mich zunächst sagen, dass ich dich liebe. Danke.

Als nächster Auftrag des Geschäfts:

octave-3.2.3:8> xin = imread('3Phone.png');
octave-3.2.3:9> colormap(gray(256));
octave-3.2.3:10> image(xin);
error: invalid value for array property "cdata"
error: set: expecting argument 2 to be a property name
error: set: expecting argument 4 to be a property name
error: set: expecting argument 6 to be a property name
error: called from:
error:   /Applications/Octave.app/Contents/Resources/share/octave/3.2.3/m/image/__img__.m at line 57, column 7
error:   /Applications/Octave.app/Contents/Resources/share/octave/3.2.3/m/image/image.m at line 75, column 5
error: A(I): Index exceeds matrix dimension.
error: called from:
error:   /Applications/Octave.app/Contents/Resources/share/octave/3.2.3/m/plot/__go_draw_axes__.m at line 383, column 22
error:   /Applications/Octave.app/Contents/Resources/share/octave/3.2.3/m/plot/__go_draw_figure__.m at line 92, column 3
error:   /Applications/Octave.app/Contents/Resources/share/octave/3.2.3/m/plot/gnuplot_drawnow.m at line 91, column 5
octave-3.2.3:10> 

Ich bin mit Octave 3.2.3 auf Mac OS X (Snow Leopard). Dies ist ein sehr einfacher Versuch, ein Bild anzuzeigen, das den Speicher gelesen und gespeichert wurde. Jede Hilfe zu Behebung dieses Problems wäre sehr geschätzt. Dank!

War es hilfreich?

Lösung

Meine Vermutung, Wenn Sie eine PNG-Datei zu lesen - Stellen Sie sicher, dass es eine Graustufen-Datei. Ansonsten gibt es 3 Matrices (RGB). Therfore können Sie nicht Grau Colormap verwenden.

Wenn 2Phone.png ein Farbbild ist, versuchen Sie (zumindest das ist, was ich in Matlab tun):

xin = imread('3Phone.png');
image(xin(:, :, 1);
colormap(gray(256));

Dies würde nur die R-Matrix-Display.

Oder besser, verwenden Sie RGB2Gray (Of natürlich verwenden das Äquivalent von Octave).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top