이미지 압축을 연구하려는 옥타브 오류
-
12-09-2019 - |
문제
내가 당신을 사랑한다고 말하면서 시작하겠습니다. 고맙습니다.
다음 사업 순서 :
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)에서 Octave 3.2.3을 사용하고 있습니다. 이것은 메모리를 읽고 저장된 이미지를 표시하려는 매우 기본적인 시도입니다. 이 문제를 해결하는 데 도움이 될 것입니다. 감사!
해결책
내 생각에, PNG 파일을 읽을 때 - 그레이 스케일 파일인지 확인하십시오. 그렇지 않으면 3 개의 행렬 (RGB)이 있습니다. 따라서 회색 컬러 맵을 사용할 수 없습니다.
2phone.png가 색상 이미지 인 경우 시도해보십시오 (적어도 이것은 Matlab에서 할 일입니다) :
xin = imread('3Phone.png');
image(xin(:, :, 1);
colormap(gray(256));
이것은 R 행렬 만 표시됩니다.
또는 더 나은 사용 rgb2gray (물론 옥타브와 동등한 것을 사용하십시오).
제휴하지 않습니다 StackOverflow