How to image one text file from many
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dinos Layiotis
am 9 Feb. 2022
Bearbeitet: Turlough Hughes
am 10 Feb. 2022
I have a set of text files consisting of depth values named '00.txt', '01.txt', '02.txt' etc, and I have imported them as shown below:
Images=dir(fullfile('folder1\folder2\','*.txt'));
ImageD = fullfile({Images.folder},{Images.name});
for i = 1:numel(ImageD)
dataImage(:,:,i)=importdata(ImageD{i}).data;
end
Now I would like to image only one of the files. How can I do that?
2 Kommentare
Akzeptierte Antwort
Turlough Hughes
am 9 Feb. 2022
dataImage = randi(1000,100,100,5); % example data you could have for dataImage
imagesc(dataImage(:,:,1))
Note, dataImage doesnt have the typical scale that an image does, which I expect is the case for you.
figure(), imshow(dataImage(:,:,1),[])
1 Kommentar
Turlough Hughes
am 10 Feb. 2022
Bearbeitet: Turlough Hughes
am 10 Feb. 2022
If it's a suface plot that you're looking for then you can use:
surf(dataImage(:,:,i))
To do a surface plot of each one (one figure each), you can write:
for ii = 1:size(dataImage,3)
figure()
surf(dataImage(:,:,ii))
end
Or you might prefer to use a tiledlayout:
N = size(dataImage,3);
m = ceil(N/3);
figure(), tiledlayout(m,ceil(N/m))
for ii = 1:size(dataImage,3)
nexttile
surf(dataImage(:,:,ii))
end
Weitere Antworten (1)
yanqi liu
am 10 Feb. 2022
Images=dir(fullfile('folder1\folder2\','*.txt'));
ImageD = fullfile({Images.folder},{Images.name});
for i = 1:numel(ImageD)
dataImage(:,:,i)=importdata(ImageD{i}).data;
end
for i = 1 : size(dataImage, 3)
figure; imshow(mat2gray(dataImage(:,:,i)));
end
0 Kommentare
Siehe auch
Kategorien
Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!