Преобразование информации GeoTIFF в структуру проекции карты
mstruct = geotiff2mstruct(proj)
mstruct = geotiff2mstruct(proj) преобразует структуру проекции GeoTIFF, proj, к структуре проекции карты, mstruct. Единица измерения длины mstruct проекция - метр.
Структура проекции GeoTIFF, proj, должна ссылаться на спроецированную систему координат, как указано значением 'ModelTypeProjected' в ModelType поле. Если ModelType имеет значение 'ModelTypeGeographic' тогда нет смысла преобразовывать в структуру проекции карты, и выдается ошибка.
Убедитесь, что отмена проецирования координат с помощью проекционной структуры GeoTIFF дает тот же результат, что и отмена проецирования с помощью проекционной структуры карты.
Для этого сначала необходимо получить структуру проекции GeoTIFF изображения. Преобразование координат угловой карты в широту и долготу путем вызова projinv и задают структуру проекции GeoTIFF.
proj = geotiffinfo('boston.tif');
x = proj.CornerCoords.X;
y = proj.CornerCoords.Y;
[latProj,lonProj] = projinv(proj,x,y);Получение структуры проекции карты из структуры проекции GeoTIFF с помощью geotiff2mstruct функция. Единица измерения длины для проекционных структур карты - метр, а координаты карты - в футах съемки. Поэтому преобразуйте координаты угловой карты из съемочных футов в метры. Затем отмените проецирование угловых координат путем вызова projinv и задают структуру проекции карты.
mstruct = geotiff2mstruct(proj); xsf = unitsratio('meter','sf') * x; ysf = unitsratio('meter','sf') * y; [latMstruct,lonMstruct] = projinv(mstruct,xsf,ysf);
Убедитесь, что значения находятся в пределах допуска друг к другу.
abs(latProj - latMstruct) <= 1e-7 abs(lonProj - lonMstruct) <= 1e-7
ans =
1 1 1 1
ans =
1 1 1 1