How to save the required output?
1 次查看(过去 30 天)
显示 更早的评论
Suppose we have two folders A and B , both contain images.
Let folder A have 6 images:a1,a2,...,a6
folder B have 60 images: b1,b2,...,b60.
I want to select 10 images in B for each image in A, in the following way
for a1 select b1,b2,...,b10
for a2 select b11,b12,...,b20
The code is as;
%Select image folder A
A_dir = uigetdir();
%Select image folder B
B_dir = uigetdir();
%Identify files of interest
A_files=dir(fullfile(A_dir,'*.tif'));
B_files=dir(fullfile(B_dir,'*.tif')); % *
%Load images
for i = 1:length(A_files)
A_image = imread([A_dir,filesep,A_files(i).name]);
if i == 1
for ii = 1:10
B_images(ii,:,:) = imread([B_dir,filesep,B_files(ii).name]);
end
else
for ii = 1:10
B_images(ii,:,:) = imread([B_dir,filesep,B_files((i-1)*10+(ii-1)).name]);
end
end
end
Now how to save the required output in the following form
A=<6×11 cell> which is in the form
<256×256 uint8> <256×256 uint8> <256×256 uint8> ... <256×256 uint8>
First column contain image A and other 10 columns contain corresponding 10 images B
0 个评论
采纳的回答
DGM
2021-9-21
Something like this:
%Select image folder A
A_dir = uigetdir();
%Select image folder B
B_dir = uigetdir();
%Identify files of interest
A_files=dir(fullfile(A_dir,'*.tif'));
B_files=dir(fullfile(B_dir,'*.tif'));
nfiles = [numel(A_files) numel(B_files)];
%Load images
imagearray = cell(nfiles(1),nfiles(2)/nfiles(1) + 1);
for ax = 1:nfiles(1)
imagearray{ax,1} = imread([A_dir,filesep,A_files(ax).name]);
for bx = 1:nfiles(2)/nfiles(1)
imagearray{ax,bx+1} = imread([B_dir,filesep,B_files((ax-1)*10 + bx).name]);
end
end
2 个评论
DGM
2021-9-21
Hmm. The site is flaky sometimes. I have a slow connection and run into a lot of bogus errors because of scripts timing out or breaking. In that particular experience, it often works to leave the page and then naturally navigate back to it in a few minutes. That said, if the answer satisfactorily helped you, then don't worry too much about it if you still can't accept the answer.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!