こんにちは、
多くのマルチバンド画像 (画像ごとに 6 バンド) を含む cell 配列があります。私の多次元配列は「D」と呼ばれ、2 つの列があります。最初の列は画像の名前で、2 番目の列は画像ファイル (行、バンド...) です。まず、以下のコードで double 形式 (現在は uint16) に変換したいのですが、「??? Error using ==> double Too many input arguments.」というエラーが表示されます。
D= double(C{:,1});
そして、私はその値を持っています:
a1=1957
a2= 1900
a3= 1554
a4=1036
a5=215
a6=80
そして、私がやろうとしているのは、画像のすべてのバンドで同じ操作を行う必要があるため、ループを作成することです (質問を単純化しています)。コードは次のようになります。
for k = 1:band(D{:,1})
band1= D(:,:,1);
band2= D(:,:,2);
...
band1*a1=output1
band2*a2=output2
end
でも、それをどう表現したらいいのかわからない。事前に本当にありがとう
cell 配列の各行には、マルチバンド イメージがあります。これは私が作成した方法です:
fileNames = dir(fullfile(myPath, '*.tif'));
C = cell(length(fileNames), 2);
for k = 1:length(fileNames)
filename = fileNames(k).name;
C{k, 1} = filename;
C{k, 2} = imread(filename);
end