0

私はあなたを愛していると言うことから始めましょう。ありがとうございました。

次のビジネスオーダー:

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> 

Mac OS X(Snow Leopard)でOctave3.2.3を使用しています。これは、メモリを読み取って保存した画像を表示するための非常に基本的な試みです。この問題を解決するための助けをいただければ幸いです。ありがとう!

4

1 に答える 1

1

私の推測では、png ファイルを読み取るときは、グレースケール ファイルであることを確認してください。それ以外の場合は、3 つのマトリックス (RGB) があります。したがって、Gray Colormap は使用できません。

2Phone.png がカラー画像の場合は、試してください (少なくとも、これは Matlab で行うことです):

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

これにより、R マトリックスのみが表示されます。

または、RGB2Grayを使用することをお勧めします(もちろん、Octave に相当するものを使用してください)。

于 2009-12-29T10:08:13.483 に答える