Паншарпенинг данных Landsat 8 средствами свободного ПО: различия между версиями
Sygsky (обсуждение | вклад) м (замена неработающей ссылки) |
|||
(не показана 31 промежуточная версия 3 участников) | |||
Строка 1: | Строка 1: | ||
{{Статья|Черновик}} | {{Статья|Черновик}} | ||
{{Аннотация| Здесь будет описано (если будет), как можно сделать паншарпенинг данных Landsat 8 с помощью инструментов | {{Аннотация| Здесь будет описано (если будет), как можно сделать паншарпенинг данных Landsat 8 с помощью инструментов различного свободного ПО.}} | ||
=Что такое паншарпенинг?= | |||
По мотивам [http://gis-lab.info/forum/viewtopic.php?f=29&t=15422 этой] темы на форуме. | |||
== Что такое "паншарпенинг"? == | |||
Паншарпенинг (от англ. "panchromatic sharpening" или "pan sharpening") — процесс, позволяющий получить из панхроматического и мультиспектрального каналов двух продуктов одно изображение. Панхроматический канал, как правило, имеет более высокое пространственное разрешение, мультиспектральный — более низкое. В результате слияния каналов получается цветное изображение с высоким разрешением [http://www.racurs.ru/wiki/index.php/%D0%93%D0%BB%D0%BE%D1%81%D1%81%D0%B0%D1%80%D0%B8%D0%B9_%D1%82%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%BE%D0%B2_%D0%94%D0%97%D0%97._%D0%9F%D0%B0%D0%BD%D1%88%D0%B0%D1%80%D0%BF%D0%B5%D0%BD%D0%B8%D0%BD%D0%B3]. | |||
Теория о методе, когда впервые появился, кто создатель - <span style="color:blue;background-color:yellow">мне кажется, это лишнее (А.М.)''</span> | |||
Методы паншарпенинга - <span style="color:blue;background-color:yellow">лучше кратко (А.М.)''</span> | |||
* brovey | * brovey | ||
* IHS | BandRed_out = BandRed_in / [(BandBlue_in + BandGreen_in + BandRed_in) * BandPan] | ||
* PCA | * IHS (Intensity, Hue, Saturation) | ||
=Условия выполнения= | * PCA (Principal Component Analysis) | ||
Данные Landsat 8 поставляются в 16-битном растровом формате (Tiff). | |||
== Кратко о Landsat 8 == | |||
[http://ru.wikipedia.org/wiki/Landsat_8 Landsat 8] - это американский спутник дистанционного зондирования земли, запущенный 11 февраля 2013 года. Спутник создан совместными усилиями NASA и USGS. | |||
== Тестовые данные == | |||
В качестве тестовых данных используется сцена Landsat 8 от 29.06.2013 (Entity ID: LC81710172013180LGN00). В архиве с данными 12 растров, 11 из которых несут информацию узкого диапазона электромагнитного спектра. Двенадцатый растр с суффиксом QA предназначен для оценки качества съёмки. Кроме этого данные Landsat 8 поставляются с файлом метаданных, который необходим для проведения атмосферной коррекции. | |||
=== Как получить данные? === | |||
Получить снимки можно с помощью [http://earthexplorer.usgs.gov/ EarthExplorer]. На вкладке "Search Criteria" в графе "Path/Row" вводим соответственно "170" для "Path" и "17" для "Row", в графе "Data Range" для "Search from:" и "to:" вписываем дату снимка "06/29/2013" ; затем на вкладке "Data Sets" выбираем "Landsat Archive" -> "L8 OLI/TIRS"; выбор закончен, жмём "Results>>". На странице результатов жмём на иконку с зелёной стрелкой "Download Options", в появившемся окне выбираем нижний вариант (Level 1 GeoTIFF Data Product (821.9 MB)) -> "Select Download Option" -> "Download". '''Внимание:''' загружаемый архив весит около 822 Мб, а в разархирированном виде сцена занимает на диске около 2 Гб. | |||
== Условия выполнения == | |||
Данные Landsat 8 поставляются в 16-битном растровом формате (Tiff). Модуль GRASS ''i.pansharpen'' работает пока только с 8-битными форматами данных. Поэтому для получения растров повышенного разрешения необходимо сначала преобразовать входные данные в 8-битовый формат. В GDAL ресемплинг и пересчет каналов преобразованием Бровея осуществляется с 16-битными данными. Преобразование в 8-битные происходит непосредственно перед созданием цветного композита. | |||
''Это точно? Или речь идет о каких-то конкретных алгоритмах? (Просто я постоянно работаю с 16-битными данными и никаких проблем не встречал -- КД)'' | ''Это точно? Или речь идет о каких-то конкретных алгоритмах? (Просто я постоянно работаю с 16-битными данными и никаких проблем не встречал -- КД)'' | ||
''(Действительно не совсем так. В GDAL ресемплинг и пересчет каналов преобразованием Бровея осуществляется с 16-битными данными. Преобразование в 8-битные происходит непосредственно перед созданием цветного композита -- Strix)'' | |||
''Моя ошибка. Модуль работает только 8-битными данными -- rhot'' | |||
== Паншарпенинг средствами свободного ПО == | |||
=== GRASS === | |||
См. http://courses.neteler.org/processing-landsat-8-data-in-grass-gis-7-rgb-composites-and-pan-sharpening/ | См. http://courses.neteler.org/processing-landsat-8-data-in-grass-gis-7-rgb-composites-and-pan-sharpening/ | ||
# r.rescale.eq | # r.rescale.eq | ||
# i.pansharpen | # i.pansharpen | ||
# r.composite | |||
=== GDAL === | |||
* допиленный gdal_calc.py + gdal_contrast_stretch (dans-gdal-scripts) <span style="color:red;background-color:yellow">''Хорошо бы сюда ссылку на этот допиленный скрипт и вкраце показать, где он допилен. -- rhot''</span> ''Да, я обязательно это все добавлю -- Strix'' | |||
Ресемплинг каналов с разрешением 30 м/пиксель до разрешения 15 м/пиксель (кроме bilinear возможные методы: ear, cubic, cubicspline, lanczos, average, mode) ''(-что и в каких случаях лучше? -- Strix)'' | |||
gdalwarp -tr 15 15 -r bilinear r.tif r_res.tif | |||
gdalwarp -tr 15 15 -r bilinear g.tif g_res.tif | |||
gdalwarp -tr 15 15 -r bilinear b.tif b_res.tif | |||
Паншарпенинг отдельных каналов преобразованием Бровея | |||
gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=r_res_pan.tif --calc="(D*A)/(A+B+C)" | |||
gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=g_res_pan.tif --calc="(D*B)/(A+B+C)" | |||
gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=b_res_pan.tif --calc="(D*C)/(A+B+C)" | |||
Преобразование 16-битных каналов в 8-битные с коррекцией гистограммы | |||
gdal_contrast_stretch -histeq 100 r_res_pan.tif r_res_pan8.tif | |||
gdal_contrast_stretch -histeq 100 g_res_pan.tif g_res_pan8.tif | |||
gdal_contrast_stretch -histeq 100 b_res_pan.tif b_res_pan8.tif | |||
Сборка отдельных каналов в rgb-композит | |||
gdal_merge.py -separate r_res_pan8.tif g_res_pan8.tif b_res_pan8.tif -o rgb.tif | |||
* https://www.mapbox.com/blog/pansharpening-satellite-imagery-openstreetmap/ | |||
=== ImageMagick === | |||
Ресемплинг каналов с разрешением 30 м/пиксель до разрешения 15 м/пиксель c одновременной коррекцией гистограммы | |||
convert -contrast-stretch 0.1%x3% -resize 200% r.tif r_res.tif | |||
convert -contrast-stretch 0.1%x3% -resize 200% g.tif g_res.tif | |||
convert -contrast-stretch 0.1%x3% -resize 200% b.tif b_res.tif | |||
Коррекция гистограммы панхроматического канала | |||
convert -contrast-stretch 0.1%x3% pan.tif panhist.tif | |||
Сборка цветного композита | |||
convert r_res.tif g_res.tif b_res.tif -combine -set colorspace RGB rgb.tif | |||
Разложение цветного композита на отдельные каналы в цветовом пространстве IHS (HSL) | |||
convert rgb.tif -colorspace HSL -separate separate_HSL_%d.tif | |||
Паншарпенинг | |||
convert separate_HSL_0.tif separate_HSL_1.tif panhist.tif -combine -set colorspace HSL rgbpan.tif | |||
Преобразование rgb-композита с 16-битами на канал в композит с 8-битами на канал | |||
convert rgbpan.tif -depth 8 rgbpan8.tif | |||
Дамп метаданных из панхроматического канала с помощью listgeo из набора утилит geotiff-bin | |||
listgeo pan.tif > geo | |||
Географическая привязка итогового цветного композита, полученного в результате паншарпенинга, переносом дампа с помощью geotifcp из набора утилит geotiff-bin | |||
geotifcp -g geo rgbpan8.tif rgbpan8gr.tif | |||
=== Orfeo Toolbox / Monteverdi === | |||
http://live.osgeo.org/ru/overview/otb_overview.html | |||
http://www.orfeo-toolbox.org/Applications/Pansharpening.html | |||
otbcli_Pansharpening | |||
=== SAGA === | |||
Imagery - Tools <span style="color:red;background-color:yellow">''Намного больше опций, чем в том же GRASS. -- rhot''</span> | |||
* Colour Normalized Brovey Sharpening | |||
* Colour Normalized Spectral Sharpening | |||
* IHS Sharpening | |||
* Principle Components Based Image Sharpening | |||
=== R === | |||
--- | |||
--- | |||
=== Whitebox GAT === | |||
http://www.uoguelph.ca/~hydrogeo/Whitebox/Help/PanSharpening.html | |||
* Brovey transformation | |||
* Intensity-Hue-Saturation (IHS) | |||
==Результаты== | |||
===Проверка результатов работы=== | |||
http://www.digitalglobe.com/downloads/WorldView-2_Pan-Sharpening.pdf - по ссылке файла нет, найден другой, с тем же названием: | |||
http://www.asprs.org/a/publications/proceedings/sandiego2010/sandiego10/Padwick.pdf |
Текущая версия от 12:51, 30 октября 2015
Здесь будет описано (если будет), как можно сделать паншарпенинг данных Landsat 8 с помощью инструментов различного свободного ПО.
По мотивам этой темы на форуме.
Что такое "паншарпенинг"?
Паншарпенинг (от англ. "panchromatic sharpening" или "pan sharpening") — процесс, позволяющий получить из панхроматического и мультиспектрального каналов двух продуктов одно изображение. Панхроматический канал, как правило, имеет более высокое пространственное разрешение, мультиспектральный — более низкое. В результате слияния каналов получается цветное изображение с высоким разрешением [1].
Теория о методе, когда впервые появился, кто создатель - мне кажется, это лишнее (А.М.)
Методы паншарпенинга - лучше кратко (А.М.)
- brovey
BandRed_out = BandRed_in / [(BandBlue_in + BandGreen_in + BandRed_in) * BandPan]
- IHS (Intensity, Hue, Saturation)
- PCA (Principal Component Analysis)
Кратко о Landsat 8
Landsat 8 - это американский спутник дистанционного зондирования земли, запущенный 11 февраля 2013 года. Спутник создан совместными усилиями NASA и USGS.
Тестовые данные
В качестве тестовых данных используется сцена Landsat 8 от 29.06.2013 (Entity ID: LC81710172013180LGN00). В архиве с данными 12 растров, 11 из которых несут информацию узкого диапазона электромагнитного спектра. Двенадцатый растр с суффиксом QA предназначен для оценки качества съёмки. Кроме этого данные Landsat 8 поставляются с файлом метаданных, который необходим для проведения атмосферной коррекции.
Как получить данные?
Получить снимки можно с помощью EarthExplorer. На вкладке "Search Criteria" в графе "Path/Row" вводим соответственно "170" для "Path" и "17" для "Row", в графе "Data Range" для "Search from:" и "to:" вписываем дату снимка "06/29/2013" ; затем на вкладке "Data Sets" выбираем "Landsat Archive" -> "L8 OLI/TIRS"; выбор закончен, жмём "Results>>". На странице результатов жмём на иконку с зелёной стрелкой "Download Options", в появившемся окне выбираем нижний вариант (Level 1 GeoTIFF Data Product (821.9 MB)) -> "Select Download Option" -> "Download". Внимание: загружаемый архив весит около 822 Мб, а в разархирированном виде сцена занимает на диске около 2 Гб.
Условия выполнения
Данные Landsat 8 поставляются в 16-битном растровом формате (Tiff). Модуль GRASS i.pansharpen работает пока только с 8-битными форматами данных. Поэтому для получения растров повышенного разрешения необходимо сначала преобразовать входные данные в 8-битовый формат. В GDAL ресемплинг и пересчет каналов преобразованием Бровея осуществляется с 16-битными данными. Преобразование в 8-битные происходит непосредственно перед созданием цветного композита.
Это точно? Или речь идет о каких-то конкретных алгоритмах? (Просто я постоянно работаю с 16-битными данными и никаких проблем не встречал -- КД) (Действительно не совсем так. В GDAL ресемплинг и пересчет каналов преобразованием Бровея осуществляется с 16-битными данными. Преобразование в 8-битные происходит непосредственно перед созданием цветного композита -- Strix) Моя ошибка. Модуль работает только 8-битными данными -- rhot
Паншарпенинг средствами свободного ПО
GRASS
- r.rescale.eq
- i.pansharpen
- r.composite
GDAL
- допиленный gdal_calc.py + gdal_contrast_stretch (dans-gdal-scripts) Хорошо бы сюда ссылку на этот допиленный скрипт и вкраце показать, где он допилен. -- rhot Да, я обязательно это все добавлю -- Strix
Ресемплинг каналов с разрешением 30 м/пиксель до разрешения 15 м/пиксель (кроме bilinear возможные методы: ear, cubic, cubicspline, lanczos, average, mode) (-что и в каких случаях лучше? -- Strix)
gdalwarp -tr 15 15 -r bilinear r.tif r_res.tif gdalwarp -tr 15 15 -r bilinear g.tif g_res.tif gdalwarp -tr 15 15 -r bilinear b.tif b_res.tif
Паншарпенинг отдельных каналов преобразованием Бровея
gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=r_res_pan.tif --calc="(D*A)/(A+B+C)" gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=g_res_pan.tif --calc="(D*B)/(A+B+C)" gdal_calc.py -A r_res.tif -B g_res.tif -C b_res.tif -D pan.tif --outfile=b_res_pan.tif --calc="(D*C)/(A+B+C)"
Преобразование 16-битных каналов в 8-битные с коррекцией гистограммы
gdal_contrast_stretch -histeq 100 r_res_pan.tif r_res_pan8.tif gdal_contrast_stretch -histeq 100 g_res_pan.tif g_res_pan8.tif gdal_contrast_stretch -histeq 100 b_res_pan.tif b_res_pan8.tif
Сборка отдельных каналов в rgb-композит
gdal_merge.py -separate r_res_pan8.tif g_res_pan8.tif b_res_pan8.tif -o rgb.tif
ImageMagick
Ресемплинг каналов с разрешением 30 м/пиксель до разрешения 15 м/пиксель c одновременной коррекцией гистограммы
convert -contrast-stretch 0.1%x3% -resize 200% r.tif r_res.tif convert -contrast-stretch 0.1%x3% -resize 200% g.tif g_res.tif convert -contrast-stretch 0.1%x3% -resize 200% b.tif b_res.tif
Коррекция гистограммы панхроматического канала
convert -contrast-stretch 0.1%x3% pan.tif panhist.tif
Сборка цветного композита
convert r_res.tif g_res.tif b_res.tif -combine -set colorspace RGB rgb.tif
Разложение цветного композита на отдельные каналы в цветовом пространстве IHS (HSL)
convert rgb.tif -colorspace HSL -separate separate_HSL_%d.tif
Паншарпенинг
convert separate_HSL_0.tif separate_HSL_1.tif panhist.tif -combine -set colorspace HSL rgbpan.tif
Преобразование rgb-композита с 16-битами на канал в композит с 8-битами на канал
convert rgbpan.tif -depth 8 rgbpan8.tif
Дамп метаданных из панхроматического канала с помощью listgeo из набора утилит geotiff-bin
listgeo pan.tif > geo
Географическая привязка итогового цветного композита, полученного в результате паншарпенинга, переносом дампа с помощью geotifcp из набора утилит geotiff-bin
geotifcp -g geo rgbpan8.tif rgbpan8gr.tif
Orfeo Toolbox / Monteverdi
http://live.osgeo.org/ru/overview/otb_overview.html
http://www.orfeo-toolbox.org/Applications/Pansharpening.html otbcli_Pansharpening
SAGA
Imagery - Tools Намного больше опций, чем в том же GRASS. -- rhot
- Colour Normalized Brovey Sharpening
- Colour Normalized Spectral Sharpening
- IHS Sharpening
- Principle Components Based Image Sharpening
R
--- ---
Whitebox GAT
http://www.uoguelph.ca/~hydrogeo/Whitebox/Help/PanSharpening.html
- Brovey transformation
- Intensity-Hue-Saturation (IHS)
Результаты
Проверка результатов работы
http://www.digitalglobe.com/downloads/WorldView-2_Pan-Sharpening.pdf - по ссылке файла нет, найден другой, с тем же названием: http://www.asprs.org/a/publications/proceedings/sandiego2010/sandiego10/Padwick.pdf