Loop into cell array
이전 댓글 표시
I am trying to combine 4 separate bands into a multispectral image (960x1280x4).
I have 4 cell arrays of 1315x1 each and I am using 'cat' function to combine.
test=cell(1315,1)
for i=1:1315
test(i)=cat(3,G{i},R{i},RE{i},N{i});
end
I am getting error as "Conversion to cell from uint16 is not possible."
Please help
댓글 수: 2
Bob Thompson
2018년 3월 2일
How does your code define G, R, RE, and N?
답변 (1개)
Image Analyst
2018년 3월 2일
You need to use braces to put each created image into a new cell. See the FAQ to get a good, intuitive feel for what a cell array is http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F
Try this:
numImages = length(G);
allImages = cell(numImages , 1);
for k = 1 : numImages
allImages{k} = cat(3, G{k}, R{k}, RE{k}, N{k});
end
카테고리
도움말 센터 및 File Exchange에서 Hyperspectral Image Processing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!