How to convert 3d array to raster (tiff)
이전 댓글 표시
Dear all,
I have a 3 dimension array (longitude*latidute*time) (1439*719*1512) which represents the value of precipitation for 0.25 * 0.25 degrees over the whole globe.
I want to have a raster file (tiff) for time=1. how to do it?
whos lon lat t precipitation
Name Size Bytes Class Attributes
lat 1x719 2880 double
lon 1x1419 5760 double
precipitation 1439x719x1512 12515017536 double
t 1512x1 12096 double
댓글 수: 3
Walter Roberson
2019년 10월 12일
If you want a raster file for time=1, then do I understand correctly that the task is to convert the lat/long referenced information precipitation(:,:,1) into a raster form?
BN
2019년 10월 12일
채택된 답변
추가 답변 (2개)
Sulaymon Eshkabilov
2019년 10월 11일
1 개 추천
Image Analyst
2019년 10월 12일
If "m" is your 3-D variable, then do this
time1 = m(:, :, 1);
imshow(time1, []);
This assumes your latitude and longitudes are uniformly spaced. If they're not, then you'll have to convert each into a row and column that is linear and assign the values one pixel at a time with the corrected (linear) latitude or longitude.
댓글 수: 3
BN
2019년 10월 12일
Walter Roberson
2019년 10월 12일
surf(lon, lat, precip(:,:,1).'); view(2)
BN
2019년 10월 12일
카테고리
도움말 센터 및 File Exchange에서 Data Import and Export에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!