Ottava errori nel tentativo di studiare compressione delle immagini
-
12-09-2019 - |
Domanda
Vorrei iniziare col dire TI AMO. Grazie.
Avanti ordine del giorno:
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>
Sto usando Octave 3.2.3 su Mac OS X (Snow Leopard). Questo è un tentativo molto semplice per visualizzare un'immagine che è stato letto e conservato la memoria. Qualsiasi aiuto per risolvere questo problema sarebbe molto apprezzato. Grazie!
Soluzione
La mia ipotesi, quando si legge un file PNG - Assicurarsi che sia un file in scala di grigi. In caso contrario, ci sono 3 Matrici (RGB). Therfore non è possibile utilizzare Grey mappa colori.
Se 2Phone.png è un'immagine a colori, Prova (Almeno questo è quello che vorrei fare in Matlab):
xin = imread('3Phone.png');
image(xin(:, :, 1);
colormap(gray(256));
Questa visualizzerebbe solo la matrice R.
O meglio, utilizzare RGB2Gray (Of Naturalmente, utilizzare l'equivalente di ottava).