Массовая обрезка растров по рамкам

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Массовая обрезка растров по рамкам

Сообщение Minstrel » 29 сен 2015, 10:11

Доброго времени суток! Передо мной стоит задача склеить отсканированные топографические планшеты для целого города в ArcGIS 10.1. Для этого я использовал слой базовой карты (спутник) и разграфку привязанную к карте. Планшеты я привязал к разграфке, все отлично сходится, но я не могу никак понять как можно удалить поля планшетов которые лежат за пределами съемки. Искал функцию обрезки растров по границам разграфки не нашел. Функцию удаления перекрывающихся областей, тоже нету. Подозреваю что решение кроется в мозаике. Буду весьма рад любым советам. Спасибо

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Массовая обрезка растров по рамкам

Сообщение Донецков » 29 сен 2015, 11:08

Если не хотите физически обрезать растры по рамкам до начала привязки, то есть возможность экранировать внешнюю часть растра по векторной рамке...

Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Re: Массовая обрезка растров по рамкам

Сообщение Minstrel » 29 сен 2015, 11:20

Интересная мысль. Спасибо.
Физически обрезать растр в другой программе не стал, так как при привязки использовал пересечение линий по углам рамки на планшетах, и дополнительно использовал проективное преобразование. Растры уже привязаны...
Донецков писал(а):... есть возможность экранировать внешнюю часть растра по векторной рамке...
т.е. не удалять внешнюю часть, а спрятать... Как такое осуществить? Можно ли будет в таком виде использовать мозаику? (много растров, данные тяжелые, отображение будет тормозить без мозаики (мое умозаключение)).

tishsh
Интересующийся
Сообщения: 21
Зарегистрирован: 03 мар 2012, 21:59
Репутация: 3

Re: Массовая обрезка растров по рамкам

Сообщение tishsh » 29 сен 2015, 13:31

Для обрезки растров есть инструмент в Toolbox Spatial Analyst Tools/Extraction/Extract by Mask. Чтобы обрезать сразу массово много растров применяется Batch.
Если нет модуля Spatial Analyst, то по слухам, если копировать растр и при этом в Environment Settings\Processing Extent поставить этот самый extent по векторному слою с рамкой для обрезания, то в итоге новый растр сохраняется уже обрезанным по рамке. Этот метод не проверяла.

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Массовая обрезка растров по рамкам

Сообщение Донецков » 29 сен 2015, 13:37

в итоге новый растр сохраняется уже обрезанным по рамке
вот именно...
Растры "тяжелые", попытайтесь их "облегчить", каково разрешение и цветность? И пирамиды использовать можно...

Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Re: Массовая обрезка растров по рамкам

Сообщение Minstrel » 29 сен 2015, 14:02

tishsh писал(а):Для обрезки растров есть инструмент в Toolbox Spatial Analyst Tools/Extraction/Extract by Mask. Чтобы обрезать сразу массово много растров применяется Batch.
А пакетно это как? Извините, я неопытен. Для одного растра Extract by Mask приемлемо. Не могу понять как это автоматизировать. Подскажите. Спасибо
Донецков писал(а):Растры "тяжелые", попытайтесь их "облегчить", каково разрешение и цветность?
Отлично, над этим тоже поработаю. Спасибо

tishsh
Интересующийся
Сообщения: 21
Зарегистрирован: 03 мар 2012, 21:59
Репутация: 3

Re: Массовая обрезка растров по рамкам

Сообщение tishsh » 29 сен 2015, 15:55

Для пакетной обработки щелкаете правой клавишей мыши по инструменту, Extract by mask в данном случае, и выбираете Batch из появившегося меню. Появляется таблица, куда изначально входит одна строка. Первый столбец - что обрезаем, второй - чем, третий - результат. Строки соответствуют каждой операции по обрезке растра.
Чтобы закинуть сразу все растры в обработку - правой клавишей по пустой ячейке Input raster, команда Browse, далее выбираете все файлы, которые нужно обрезать. Названия растров в таблицу загружаются согласно порядку сортировки в папке.
Основная проблема заключается в выборе соответствующих файлов с рамками для обрезки. Можно перетаскивать вручную в ячейки из ArcCataloga, попробовать командой Fill заполнить весь столбец одинаковыми значениями, вручную меняя части имени файла для соответствия растру, и тд. Все зависит от того, какие у Вас имена растров и соответствующих им рамок.
Для исключения ручного труда можно воспользоваться итерацией в ModelBuilder. Но это более сложный вариант и необходимо подробно изучить help по Iterators и Model only tools в ModelBuilder, далее потренироваться самостоятельно, постом в форуме алгоритм действий объяснить сложно.

Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Re: Массовая обрезка растров по рамкам

Сообщение Minstrel » 30 сен 2015, 06:48

tishsh писал(а):Для пакетной обработки щелкаете правой клавишей мыши по инструменту...
Спасибо за подробное описание, помогло, как много я оказывается не знал)

Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Re: Массовая обрезка растров по рамкам

Сообщение Minstrel » 28 окт 2015, 13:52

Доброго дня всем, вопрос вдогонку по этой же теме, как в таблицу атрибутов добавить поле с Названием слоя? Т.е. имеется море пространственных объектов, и нужно что у всех них появилось поле с названием файла...Решение наверно простое, но никак не могу найти ответа (или простуда не дает:( ). Спасибо

Andrey Zhukov
Гуру
Сообщения: 838
Зарегистрирован: 10 дек 2009, 23:24
Репутация: 169
Ваше звание: старик-гисовик
Откуда: Москва
Контактная информация:

Re: Массовая обрезка растров по рамкам

Сообщение Andrey Zhukov » 28 окт 2015, 14:18

Если нет знаний Python, то остается ModelBuilder. В нем итерировать фичеклассы, забирая наименование как переменную. Переменную скармливать CalculateField.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Массовая обрезка растров по рамкам

Сообщение giser » 28 окт 2015, 14:23

Можно руками :D
А можно, например, с помощью простого инструмента ModelBuilder (как сказал уважаемый товарищ выше). Правда, без итератора, но, если нужно, добавить не проблема (или просто делать Batch).
Вложения
Toolbox.7z
(5.4 КБ) 345 скачиваний

Minstrel
Участник
Сообщения: 71
Зарегистрирован: 16 фев 2015, 13:15
Репутация: 2

Re: Массовая обрезка растров по рамкам

Сообщение Minstrel » 30 окт 2015, 11:31

giser писал(а):Можно руками :D
А можно, например, с помощью простого инструмента ModelBuilder (как сказал уважаемый товарищ выше). Правда, без итератора, но, если нужно, добавить не проблема (или просто делать Batch).
Спасибо Вам отдельное за инструмент, очень нужная вещь!

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей