Создание контура - сканированного изображения (tiff) в ArcGis Desktop
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Добрый день,
Прошу помочь и/или посоветовать как решить проблему с созданием контура(границ) сканированного изображения.
Имеется более 10000 сканированных изображений различных карт, для лучшей навигации хотел бы создать для каждого контур в формате shape. К примеру я выделяю какую-то область в программе - и могу определить какие карты находятся там, за счет контуров.
Основная цель это упрощенная навигация по сканированным изображениям.
с уважением и без негатива)
Прошу помочь и/или посоветовать как решить проблему с созданием контура(границ) сканированного изображения.
Имеется более 10000 сканированных изображений различных карт, для лучшей навигации хотел бы создать для каждого контур в формате shape. К примеру я выделяю какую-то область в программе - и могу определить какие карты находятся там, за счет контуров.
Основная цель это упрощенная навигация по сканированным изображениям.
с уважением и без негатива)
-
- Гуру
- Репутация: 981
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
-
- Активный участник
- Сообщения: 134
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 66
- Откуда: Томск
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
В ArcGis не помню, и под рукой нет, а в QGIS можно так:
В QGIS, в "пустой" (без растров) карте,
Делаем раз:
Анализ данных - Инструмент работы со слоями - Извлечь охват слоя - Запускать как групповой процесс
Исходный слой - Автозаполнение - Выбрать файлы (Ваши растры с геопривязкой).
Охват (результат в шейп): Автозаполнение - Расчитать выражением (путь и имя шейпа)
'd:/.../shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
Запускаем.
После завершения процедуры в указанном месте шейпы, по одному на каждый растр.
Делаем два:
Собрать шейпы в один и открыть его в карте: Вектор - Управление данными - Объеденить векторные слои (можно также из файлов на диске, а не слоев карты).
Получим один шейп со всеми границами растров, в атрибутах координаты углов и имя растра (путь и имя исходного шейпа). Последнее поле лучше допилить калькулятором полей, убрать из него путь, заменить *.shp на *.tif.
В QGIS, в "пустой" (без растров) карте,
Делаем раз:
Анализ данных - Инструмент работы со слоями - Извлечь охват слоя - Запускать как групповой процесс
Исходный слой - Автозаполнение - Выбрать файлы (Ваши растры с геопривязкой).
Охват (результат в шейп): Автозаполнение - Расчитать выражением (путь и имя шейпа)
'd:/.../shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
Запускаем.
После завершения процедуры в указанном месте шейпы, по одному на каждый растр.
Делаем два:
Собрать шейпы в один и открыть его в карте: Вектор - Управление данными - Объеденить векторные слои (можно также из файлов на диске, а не слоев карты).
Получим один шейп со всеми границами растров, в атрибутах координаты углов и имя растра (путь и имя исходного шейпа). Последнее поле лучше допилить калькулятором полей, убрать из него путь, заменить *.shp на *.tif.
Последний раз редактировалось AlexRomantsov 21 сен 2022, 08:54, всего редактировалось 1 раз.
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Не совсем понял эту часть, а точнее выражение.AlexRomantsov писал(а): ↑19 сен 2022, 09:03Охват (результат в шейп): Автозаполнение - Расчитать выражением (путь и имя шейпа)
'd:/.../shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
Можете поподробнее, если можно?
-
- Активный участник
- Сообщения: 134
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 66
- Откуда: Томск
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
При работе "Извлечь охват слоя" в групповом процессе необходимо заполнить и настроить параметры. Что бы не вписывать в поле каждой строки ручками, можно воспользоваться расчетом выражения. В примере - готовый прототип такого выражения, где "d:/.../shp/" - ваш путь на диске (измените его под себя), общий для всех полученных шейпов с охватами, а " base_file_name( parameter( 'INPUT'))+'.shp" - расчетная часть, использует имя текущего растра и стандартное раcширение shp.
Шейп на каждый растр списка получится примерно таким и по такому размещению: d:/tmp/shp/rastr12345.shp, при выражении 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
Шейп на каждый растр списка получится примерно таким и по такому размещению: d:/tmp/shp/rastr12345.shp, при выражении 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
-
- Активный участник
- Сообщения: 134
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 66
- Откуда: Томск
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
В целом, полезная штука, которая позволяет в векторном слое выделить все растры (их векторные охваты) в нужной области, экспортировать этот список (названия растров) в csv/xls, и затем применить этот список как маску для выделения растров на диске (в ОС), ну например что бы скопировать их ...
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Благодарю за ответ.AlexRomantsov писал(а): ↑19 сен 2022, 09:48В целом, полезная штука, которая позволяет в векторном слое выделить все растры (их векторные охваты) в нужной области, экспортировать этот список (названия растров) в csv/xls, и затем применить этот список как маску для выделения растров на диске (в ОС), ну например что бы скопировать их ...
На единичном примере сработало.
Можно ли это выполнить на большем количестве?
-
- Гуру
- Репутация: 981
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
gdaltindexМожно ли это выполнить на большем количестве?
-
- Активный участник
- Сообщения: 134
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 66
- Откуда: Томск
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
конечно, для этого и режим "Как групповой процесс":
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Да, но я выбрал функцию добавить файлы по шаблону с форматом .tif.
Т.к. много дополнительных файлов в разделе.
Благодарю за помощь. Хорошего дня! Ловите плюсы в карму)

-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Кажется, я не достаточно корректно понял запрос.AlexRomantsov писал(а): ↑19 сен 2022, 09:38При работе "Извлечь охват слоя" в групповом процессе необходимо заполнить и настроить параметры. Что бы не вписывать в поле каждой строки ручками, можно воспользоваться расчетом выражения. В примере - готовый прототип такого выражения, где "d:/.../shp/" - ваш путь на диске (измените его под себя), общий для всех полученных шейпов с охватами, а " base_file_name( parameter( 'INPUT'))+'.shp" - расчетная часть, использует имя текущего растра и стандартное раcширение shp.
Шейп на каждый растр списка получится примерно таким и по такому размещению: d:/tmp/shp/rastr12345.shp, при выражении 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
Можете помочь разобрать запрос на составляющие?
base_file_name - это название исходного файла
parameter - ??
INPUT - ??
+ - ??
.shp - ???
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Допустим мой название файла исходного файла "123.tif"
-
- Активный участник
- Сообщения: 134
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 66
- Откуда: Томск
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
base_file_name - некоторая функция, которая возвращает название файла на входе (параметр INPUT). Таких функций несколько, есть функции, которые вернут полное имя с расширением (file_name() ), есть и такие, которые вернут путь к файлу (file_puth() ). Нам в данном случае нужно было только название исходного растра, и конструктор, который превратит это имя в *.shp.
Т.е. выражение 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
берет 'd:/tmp/shp/',
добавляет к нему имя растра, полученное функцией base_file_name( parameter( 'INPUT')),
и добавляет к нему расширение '.shp' , заодно подсказывая процедуре вычесления охвата, в каком формате сохранить вектор.
Эта функция откинет путь к файлу, откинет расширение tiff, оставит только 123.
Т.е. выражение 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
берет 'd:/tmp/shp/',
добавляет к нему имя растра, полученное функцией base_file_name( parameter( 'INPUT')),
и добавляет к нему расширение '.shp' , заодно подсказывая процедуре вычесления охвата, в каком формате сохранить вектор.
Эта функция откинет путь к файлу, откинет расширение tiff, оставит только 123.
-
- Новоприбывший
- Сообщения: 14
- Зарегистрирован: 19 сен 2022, 08:41
- Репутация: 0
- Откуда: Kz
Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
Благодарю. Разобрался дело было в разницу между знаками \ и /.AlexRomantsov писал(а): ↑19 сен 2022, 12:47base_file_name - некоторая функция, которая возвращает название файла на входе (параметр INPUT). Таких функций несколько, есть функции, которые вернут полное имя с расширением (file_name() ), есть и такие, которые вернут путь к файлу (file_puth() ). Нам в данном случае нужно было только название исходного растра, и конструктор, который превратит это имя в *.shp.
Т.е. выражение 'd:/tmp/shp/' + base_file_name( parameter( 'INPUT'))+'.shp'
берет 'd:/tmp/shp/',
добавляет к нему имя растра, полученное функцией base_file_name( parameter( 'INPUT')),
и добавляет к нему расширение '.shp' , заодно подсказывая процедуре вычесления охвата, в каком формате сохранить вектор.
Эта функция откинет путь к файлу, откинет расширение tiff, оставит только 123.
В нашем случае мы получаем полигоны, а не контуры. По моим предположениям 10 000 полигонов труднее технически отобразить на карте чем 10 000 контуров.
Можете направить меня или дать идею, как сконвертировать 10 000 полигонов в контуры?

Кто сейчас на конференции
Сейчас этот форум просматривают: Maka и 9 гостей