Я пытаюсь читать с веб-картографического сервера без использования инструментария картографирования (точнее, без использования объекта WebMapServer). Я могу сам создать URL-адрес без проблем и могу просто использовать imread для WMS, которые возвращают файлы bmp. Однако одна из WMS возвращает файлы BIL (Band InterLeaved), и функция imread() не распознает ее.
Как я могу прочитать файл BIL с URL-адреса без использования набора инструментов сопоставления?
Изменить: вот пример URL-адреса, который я хотел бы прочитать:
Кроме того, если я попытаюсь просто получить байтовые данные с URL-адресом, а затем записать их в файл, некоторые значения будут потеряны.
bytedata = urlread( mapurl );
fp = fopen( 'tmp.bil', 'w' );
fwrite( fp, bytedata, 'uint8' );
fclose( fp );
fp = fopen( 'tmp.bil', 'r' );
z = fread( fp, 'int16' );
imagesc( reshape( z, 925, 1113 )' );
Приведенное выше отображает изображение, похожее на то, которое возвращает набор инструментов сопоставления, но есть регионы, для которых установлено постоянное значение, которое не должно быть.
matlab bandinterleaved
, первый результат — mathworks.com/help /matlab/ref/multibandread.html - person slayton   schedule 15.10.2012multibandread
открыть этот темповый файл. Затем, если это сработает, я бы прочитал исходный код дляmultibandread
и реализовал свой собственный ридер. - person slayton   schedule 15.10.2012