Массовая обрезка растров по рамкам
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Массовая обрезка растров по рамкам
Доброго времени суток! Передо мной стоит задача склеить отсканированные топографические планшеты для целого города в ArcGIS 10.1. Для этого я использовал слой базовой карты (спутник) и разграфку привязанную к карте. Планшеты я привязал к разграфке, все отлично сходится, но я не могу никак понять как можно удалить поля планшетов которые лежат за пределами съемки. Искал функцию обрезки растров по границам разграфки не нашел. Функцию удаления перекрывающихся областей, тоже нету. Подозреваю что решение кроется в мозаике. Буду весьма рад любым советам. Спасибо
-
- Гуру
- Сообщения: 3058
- Зарегистрирован: 19 май 2010, 19:44
- Репутация: 189
Re: Массовая обрезка растров по рамкам
Если не хотите физически обрезать растры по рамкам до начала привязки, то есть возможность экранировать внешнюю часть растра по векторной рамке...
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Re: Массовая обрезка растров по рамкам
Интересная мысль. Спасибо.
Физически обрезать растр в другой программе не стал, так как при привязки использовал пересечение линий по углам рамки на планшетах, и дополнительно использовал проективное преобразование. Растры уже привязаны...
Физически обрезать растр в другой программе не стал, так как при привязки использовал пересечение линий по углам рамки на планшетах, и дополнительно использовал проективное преобразование. Растры уже привязаны...
т.е. не удалять внешнюю часть, а спрятать... Как такое осуществить? Можно ли будет в таком виде использовать мозаику? (много растров, данные тяжелые, отображение будет тормозить без мозаики (мое умозаключение)).Донецков писал(а):... есть возможность экранировать внешнюю часть растра по векторной рамке...
-
- Интересующийся
- Сообщения: 21
- Зарегистрирован: 03 мар 2012, 21:59
- Репутация: 3
Re: Массовая обрезка растров по рамкам
Для обрезки растров есть инструмент в Toolbox Spatial Analyst Tools/Extraction/Extract by Mask. Чтобы обрезать сразу массово много растров применяется Batch.
Если нет модуля Spatial Analyst, то по слухам, если копировать растр и при этом в Environment Settings\Processing Extent поставить этот самый extent по векторному слою с рамкой для обрезания, то в итоге новый растр сохраняется уже обрезанным по рамке. Этот метод не проверяла.
Если нет модуля Spatial Analyst, то по слухам, если копировать растр и при этом в Environment Settings\Processing Extent поставить этот самый extent по векторному слою с рамкой для обрезания, то в итоге новый растр сохраняется уже обрезанным по рамке. Этот метод не проверяла.
-
- Гуру
- Сообщения: 3058
- Зарегистрирован: 19 май 2010, 19:44
- Репутация: 189
Re: Массовая обрезка растров по рамкам
вот именно...в итоге новый растр сохраняется уже обрезанным по рамке
Растры "тяжелые", попытайтесь их "облегчить", каково разрешение и цветность? И пирамиды использовать можно...
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Re: Массовая обрезка растров по рамкам
А пакетно это как? Извините, я неопытен. Для одного растра Extract by Mask приемлемо. Не могу понять как это автоматизировать. Подскажите. Спасибоtishsh писал(а):Для обрезки растров есть инструмент в Toolbox Spatial Analyst Tools/Extraction/Extract by Mask. Чтобы обрезать сразу массово много растров применяется Batch.
Отлично, над этим тоже поработаю. СпасибоДонецков писал(а):Растры "тяжелые", попытайтесь их "облегчить", каково разрешение и цветность?
-
- Интересующийся
- Сообщения: 21
- Зарегистрирован: 03 мар 2012, 21:59
- Репутация: 3
Re: Массовая обрезка растров по рамкам
Для пакетной обработки щелкаете правой клавишей мыши по инструменту, Extract by mask в данном случае, и выбираете Batch из появившегося меню. Появляется таблица, куда изначально входит одна строка. Первый столбец - что обрезаем, второй - чем, третий - результат. Строки соответствуют каждой операции по обрезке растра.
Чтобы закинуть сразу все растры в обработку - правой клавишей по пустой ячейке Input raster, команда Browse, далее выбираете все файлы, которые нужно обрезать. Названия растров в таблицу загружаются согласно порядку сортировки в папке.
Основная проблема заключается в выборе соответствующих файлов с рамками для обрезки. Можно перетаскивать вручную в ячейки из ArcCataloga, попробовать командой Fill заполнить весь столбец одинаковыми значениями, вручную меняя части имени файла для соответствия растру, и тд. Все зависит от того, какие у Вас имена растров и соответствующих им рамок.
Для исключения ручного труда можно воспользоваться итерацией в ModelBuilder. Но это более сложный вариант и необходимо подробно изучить help по Iterators и Model only tools в ModelBuilder, далее потренироваться самостоятельно, постом в форуме алгоритм действий объяснить сложно.
Чтобы закинуть сразу все растры в обработку - правой клавишей по пустой ячейке Input raster, команда Browse, далее выбираете все файлы, которые нужно обрезать. Названия растров в таблицу загружаются согласно порядку сортировки в папке.
Основная проблема заключается в выборе соответствующих файлов с рамками для обрезки. Можно перетаскивать вручную в ячейки из ArcCataloga, попробовать командой Fill заполнить весь столбец одинаковыми значениями, вручную меняя части имени файла для соответствия растру, и тд. Все зависит от того, какие у Вас имена растров и соответствующих им рамок.
Для исключения ручного труда можно воспользоваться итерацией в ModelBuilder. Но это более сложный вариант и необходимо подробно изучить help по Iterators и Model only tools в ModelBuilder, далее потренироваться самостоятельно, постом в форуме алгоритм действий объяснить сложно.
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Re: Массовая обрезка растров по рамкам
Спасибо за подробное описание, помогло, как много я оказывается не знал)tishsh писал(а):Для пакетной обработки щелкаете правой клавишей мыши по инструменту...
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Re: Массовая обрезка растров по рамкам
Доброго дня всем, вопрос вдогонку по этой же теме, как в таблицу атрибутов добавить поле с Названием слоя? Т.е. имеется море пространственных объектов, и нужно что у всех них появилось поле с названием файла...Решение наверно простое, но никак не могу найти ответа (или простуда не дает:( ). Спасибо
-
- Гуру
- Сообщения: 838
- Зарегистрирован: 10 дек 2009, 23:24
- Репутация: 169
- Ваше звание: старик-гисовик
- Откуда: Москва
- Контактная информация:
Re: Массовая обрезка растров по рамкам
Если нет знаний Python, то остается ModelBuilder. В нем итерировать фичеклассы, забирая наименование как переменную. Переменную скармливать CalculateField.
-
- Завсегдатай
- Сообщения: 388
- Зарегистрирован: 09 ноя 2012, 09:25
- Репутация: 113
- Откуда: Москва
Re: Массовая обрезка растров по рамкам
Можно руками
А можно, например, с помощью простого инструмента ModelBuilder (как сказал уважаемый товарищ выше). Правда, без итератора, но, если нужно, добавить не проблема (или просто делать Batch).

А можно, например, с помощью простого инструмента ModelBuilder (как сказал уважаемый товарищ выше). Правда, без итератора, но, если нужно, добавить не проблема (или просто делать Batch).
- Вложения
-
Toolbox.7z
- (5.4 КБ) 345 скачиваний
-
- Участник
- Сообщения: 71
- Зарегистрирован: 16 фев 2015, 13:15
- Репутация: 2
Re: Массовая обрезка растров по рамкам
Спасибо Вам отдельное за инструмент, очень нужная вещь!giser писал(а):Можно руками![]()
А можно, например, с помощью простого инструмента ModelBuilder (как сказал уважаемый товарищ выше). Правда, без итератора, но, если нужно, добавить не проблема (или просто делать Batch).
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей