Clear Filters
Clear Filters

creating a code to upload and read tif images

8 views (last 30 days)
Mario
Mario on 3 Apr 2024
Edited: Stephen23 on 8 Apr 2024
Hi,
I got a series of tif images and I am trying to create a matlab code to upload and read it. can somebody helps me?
  1 Comment
Mann Baidi
Mann Baidi on 3 Apr 2024
Hi Mario,
Have you tried using the 'imread' function. If not you can try using it using the following link

Sign in to comment.

Answers (1)

Gayatri
Gayatri on 3 Apr 2024
Hi Mario,
To handle a series of TIF images in MATLAB, write a script that can iterate through all the TIF files in a given directory, read each image, and display them for further analysis.
Below is a sample MATLAB code to achieve this:
% Define the directory where your TIF images are stored
imageDir = 'your_directory_path'; % Change this to your directory path
% List all TIF files in the directory
imageFiles = dir(fullfile(imageDir, '*.tif'));
% Loop through each image file
for i = 1:length(imageFiles)
% Construct the full file path for the image
filePath = fullfile(imageDir, imageFiles(i).name);
% Read the image
img = imread(filePath);
% Display the image
imshow(img);
title(['Image ' num2str(i)]);
end
This script will read and display each TIF image stored in the specified directory. Adjust the directory path and other options as necessary to fit your specific requirements.
Please refer the below documentation for 'imread' and 'imshow' functions:
I hope it helps!
  4 Comments
Mario
Mario on 8 Apr 2024
Thanks Stephen,
I tried the code and the result of S(2).data is matrix 1400x1400 uint8. I tried transfer the matrix to double matrix to be 1400x1400x 500 double using the below command:
U(k)=double(S(k).data)
but it transfer only the last velocity field to double not the whole series. can you please advice me how to correct my command?
Stephen23
Stephen23 on 8 Apr 2024
Edited: Stephen23 on 8 Apr 2024
If you want all of the images concatenated into one 3D array then use CAT() e.g.:
A = cat(3,S.data)
Note that the order of the files returned by DIR() may not be what you expect (particularly if the filenames have numbers in them). If you expect the filenames to be sorted into alphanumeric order then you will need to ensure this yourself, e.g.:
  • using sufficient leading zeros in the filenames, or
  • downloading NATSORTFILES() and calling it before the FOR-loop, e.g.:
S = natsortfiles(S);

Sign in to comment.

Tags

Products


Release

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!