0

.tif イメージを書き込もうとしています。コマンドウィンドウまたはMatlabの関数ファイル内に次のコマンドを記述して、「A_exam」という名前のtifイメージを書き込みました。

出力画像 (A_exam.tif) のすべての値は 255 で、画像は表示されず、白い画面だけです。次のコードから行列が抽出されます。このコードを計算すると、A 行列の値は正しいです。問題は、画像ファイルを書き込むことから発生します。

[~,Ind_max] = max(vgt,[],3);
A= arrayfun(@(y) ...
arrayfun(@(x) emp(x,y, Ind_max(x,y)), 1:size(vgt,1)), ... 
1:size(vgt,2), 'UniformOutput',false);
A = reshape([A{:}], size(Ind_max))
imwrite(A,'A_exam.tif','tif')

ありがとうございました

whos A
  Name        Size            Bytes  Class     Attributes

  A         41x41             6724  single   
4

1 に答える 1

0

imwrite を呼び出す前のその形状変更には問題があるように見えます。私は変更します

imwrite(A,'A_exam.tif','tif') 

mat2grayへの呼び出しを追加するには

imwrite(mat2gray(A),'A_exam.tif');

行列と画像が混在していないことを確認してください。

于 2012-12-06T13:27:44.400 に答える