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

 
			
					
				Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
				Добавлено: 19 сен 2022, 10:16
				 KassenovI
				trir писал(а): ↑19 сен 2022, 10:05gdaltindex
 
Обязательно попробую и Ваш вариант.
Благодарю за помощь!
 
			
					
				Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
				Добавлено: 19 сен 2022, 12:32
				 KassenovI
				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 - ???
 
			
					
				Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
				Добавлено: 19 сен 2022, 12:37
				 KassenovI
				
			
		
				
			 
- Снимок экрана 2022-09-19 153046.png (59.09 КБ) 3979 просмотров
 
Получается следующий запрос.
Допустим мой название файла исходного файла "123.tif"
 
			
					
				Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
				Добавлено: 19 сен 2022, 12:47
				 AlexRomantsov
				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.
			 
			
					
				Re: Создание контура - сканированного изображения (tiff) в ArcGis Desktop
				Добавлено: 19 сен 2022, 14:33
				 KassenovI
				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 полигонов в контуры?  
