У меня есть растровая таблица в postgresql, которую я создаю с помощью растра PostGIS. Если я хочу иметь средний растр из 3 растровых записей, учитывая, что нулевые значения пикселей не должны участвовать в операции усреднения. Я имею в виду, что значения пикселей результирующей растровой записи должны быть средними значениями соответствующих значений пикселей трех существующих растровых записей. Растровые записи содержат некоторые пиксели со значениями Null, и значения Null не должны участвовать в вычислениях. Является ли это возможным? sample_data_link — это ссылка на примеры данных, которые представляют собой изображения. Если в вашей системе установлен Postgis 2.0, следующие команды в командной строке Windows и для папки, в которую вы скопировали образцы данных, создадут результаты: raster2pgsql -r *_cropped.tif -F -I myschema.mytable > cropped_1.sql
и raster2pgsql -r *_cropped.tif -F -I myschema.mytable > cropped_1.sql
Средняя растровая запись по сравнению с другими растровыми записями в PostGIS Raster
Ответы (2)
вы можете превратить его в массив и выполнить над ним вычисления, а затем преобразовать массив в растр.
person
f.ashouri
schedule
20.11.2012
документация по ST_Union ссылается на некоторый код в исходном коде postgis, который реализует различные функции в plpgsql.
Вы можете взять один из них в качестве основы и изменить его, чтобы игнорировать нулевые пиксели. Линия 253 выглядит многообещающе. (Примечание: полученный код будет под лицензией GPL).
person
dwurf
schedule
18.11.2012
CREATE TABLE
иINSERT
для настройки минимального подмножества вашей среды. Таким образом, любой заинтересованный человек не должен тратить время на создание фиктивных данных для проверки возможных решений. - person Craig Ringer   schedule 13.11.2012