フィルターのクリア

Hi i created a matfile of hourly temperature 334*334*2928 . how i can convert the .mat file to Tif file ?

32 ビュー (過去 30 日間)
attached the screen shot
  2 件のコメント
Umar
Umar 2024 年 7 月 19 日 6:20

Hi Vineetha,

To convert a .mat file to a TIF file in Matlab, you can use the following steps:

% Load the .mat file

load('hourly_temperature_data.mat');

% Reshape the data to a 3D matrix

temperature_data = reshape(hourly_temperature_data, [334, 334, 2928]);

% Loop through each slice and save as TIF

for i = 1:2928

    imwrite(temperature_data(:,:,i), ['temperature_slice_', num2str(i), '.tif']);
end

So, you load the .mat file, reshape the data to a 3D matrix, and then loop through each slice to save it as a TIF file. Each slice will be saved as a separate TIF file with a unique name. Hope this should help resolve your problem.

vineetha vincent
vineetha vincent 2024 年 7 月 19 日 6:34
Hi Umar,
Thanks for the suggestion . The converted Tif files, i couldnt able to open in Arcgis pro .

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2024 年 7 月 19 日 6:19
I suggest using the Mapping Toolbox, geotiffwrite
  3 件のコメント
Umar
Umar 2024 年 7 月 19 日 8:10
Hi Walter,
Thanks for your contribution. Please correct me if I am wrong, it is preferable to use geotiffwrite instead of imwrite in Matlab because geotiffwrite allows you to write GeoTIFF files which contains georeferencing information essential for GIS applications so ArcGIS Pro can correctly interpret the spatial data.
Walter Roberson
Walter Roberson 2024 年 7 月 19 日 18:12
geotiffwrite() knows how to automatically take care of multiple bit planes.
In theory you can do the same thing by using the Tiff library, but you need to know how to handle the extra bit planes and need to know what tags to use.
One thing I just realized is that your data is double(). geotiffwrite() handles that internally. imwrite() converts double to uint8 if I recall correctly. To write double precision tiff images you need to use geotiffwrite() or you need to use the Tiff interface (there is, by the way, a file exchange contribution that correctly handles double precision tiff.)

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by