Объединение каналов в один файл
- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Объединение каналов в один файл
Подскажите, пожалуйста, есть ли бесплатные программы под Linux, позволяющие объединять отдельные каналы в один файл (как Layer Stack в ERDAS).
			
									
									
						- Mavka
 - Гуру
 - Сообщения: 2060
 - Зарегистрирован: 14 мар 2008, 17:36
 - Репутация: 9
 
Re: Объединение каналов в один файл
Вроде бы gdal_merge может такое:
			
									
									Код: Выделить всё
gdal_merge.py -seperate red.tif nir.tif mir.tif -o stack.tifлангольеры под окном жрали время ом-ном-ном
						- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
Спасибо, Mavka, программа работает. Значения пикселей по каналам совпадают с результатами объединения каналов с помощью ERDAS.
Однако привязка полученного изображения получается по обоим осям смещенной, по-видимому, ровно на половину разрешения пикселя (проверил только для снимков Landsat - смещение было 15 м). Использовал gdal_merge.py в составе FWTools 2.0.6 (Linux x86 32bit). Неужели программа рассчитывает при привязке координаты угла пикселя? Или это ошибка программы?
			
									
									
						Однако привязка полученного изображения получается по обоим осям смещенной, по-видимому, ровно на половину разрешения пикселя (проверил только для снимков Landsat - смещение было 15 м). Использовал gdal_merge.py в составе FWTools 2.0.6 (Linux x86 32bit). Неужели программа рассчитывает при привязке координаты угла пикселя? Или это ошибка программы?
- Mavka
 - Гуру
 - Сообщения: 2060
 - Зарегистрирован: 14 мар 2008, 17:36
 - Репутация: 9
 
Re: Объединение каналов в один файл
Не проверял. Могу лишь предложить перепрошить заголовок с правильной привязкой.
Была какая то программа, которая брала заголовок одного tiff'а и пришивала его в другой.
Никак не могу вспомнить какая, но вот здесь - libgeotiff предлагают две:
listgeo и geotifcp - одна сохраняет, другая загружает.
			
									
									Была какая то программа, которая брала заголовок одного tiff'а и пришивала его в другой.
Никак не могу вспомнить какая, но вот здесь - libgeotiff предлагают две:
listgeo и geotifcp - одна сохраняет, другая загружает.
лангольеры под окном жрали время ом-ном-ном
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
На самом деле это известная фитча...
GeoTransform (начало координат изображения) может задаваться двумя способами:
1. Левый-верхний угол 1-го (верхнего левого) пикселя растра.
2. Центр 1-го пикселя.
О том какой именно способ используется должно быть сказано в документации к ПО, GDAL использует второй.
Какой программный продукт вы используете для проверки?
			
									
									
						GeoTransform (начало координат изображения) может задаваться двумя способами:
1. Левый-верхний угол 1-го (верхнего левого) пикселя растра.
2. Центр 1-го пикселя.
О том какой именно способ используется должно быть сказано в документации к ПО, GDAL использует второй.
Какой программный продукт вы используете для проверки?
- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
В использованных мною снимках Landsat привязка происходит по центру пикселя (обрабатывались в USGS с помощью LPGS_10.0.0), а после использования gdal_merge.py получилось смещение +15 м по оси x и -15 м по оси y. Привязку смотрел в ERDAS IMAGINE 8.7.
			
									
									
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
Возможно питоновская реализация глючит, я в свое время делал такую утилитку, если надо могу поискать...
			
									
									
						- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
Было бы интересно посмотреть
			
									
									
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
куда положить?
			
									
									
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
вот ловите...
Нужно положить рядом GDAL16.dll (ее найти не трудно, например утянуть с официального сайта http://gdal.org),
Далее в ком. строке запускаем утиль в качестве аргумента пихаем каналы ландсата или иконоса или пофиг чего.
							Нужно положить рядом GDAL16.dll (ее найти не трудно, например утянуть с официального сайта http://gdal.org),
Далее в ком. строке запускаем утиль в качестве аргумента пихаем каналы ландсата или иконоса или пофиг чего.
- Вложения
 - 
			
		
		
				
 stack.rar- внешний LayerStack
 - (34.07 КБ) 597 скачиваний
 
 
- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
Спасибо!
			
									
									
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
отпишите по результатам
			
									
									
						- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
Результаты точно такие же, как при использовании gdal_merge.py (значения пикселей правильные, но есть смещение привязки).
			
									
									
						- 
				pendduduk
 - Активный участник
 - Сообщения: 179
 - Зарегистрирован: 05 июл 2009, 22:18
 - Репутация: 47
 
Re: Объединение каналов в один файл
если у вас есть утилиты gdal, запустите пожалуйста команду gdalinfo в качестве аргумента укажите первый канал который стыкуете, запишите параметры которые выплюнет прога, затем сделайте тоже самое но с получившимся файлом. И сравните координаты. Они должны быть одинаковыми!Aleksander писал(а):Результаты точно такие же, как при использовании gdal_merge.py (значения пикселей правильные, но есть смещение привязки).
Дело в том, что я просто читаю то что записано в первом файле и записываю в выходной.
- 
				Aleksander
 - Участник
 - Сообщения: 60
 - Зарегистрирован: 12 май 2009, 13:03
 - Репутация: 0
 - Откуда: Минск
 
Re: Объединение каналов в один файл
В самом деле одинаковые, если сравнивать с помощью gdalinfo.
Однако теперь (сравнивая с помощью gdalinfo) смещенными получаются результаты объединения с помощью ERDAS
 .
			
									
									
						Однако теперь (сравнивая с помощью gdalinfo) смещенными получаются результаты объединения с помощью ERDAS
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 23 гостя