Re: Интерполяция линейных обьектов
Добавлено: 10 дек 2012, 00:33
Интерполированный растр IDW.
Геоинформационные системы (ГИС) и Дистанционное зондирование Земли
https://gis-lab.info/forum/
Код: Выделить всё
(Tue Dec 18 10:54:37 2012)
r.grow.distance input=dp_car_1@ruska distance=dp_car_1x@ruska
map [dp_car_1x] - unable to write row 0
(Tue Dec 18 10:55:55 2012) Command finished (77 sec)
Код: Выделить всё
#!/bin/sh
...
i=1
while [ $i != size(raster_names_list)+1 ]
do
r.grow.distance input=$raster_names_list(i)@ruska distance='$raster_names_list(i)+x'@ruska
i = 'expr $i + 1'
done
Для начала банальность -- регион по растру задавали? Если можно, выложите растр "dp_car_1", надо смотреть.SBoris писал(а):Что это? Как поправить?Код: Выделить всё
r.grow.distance input=dp_car_1@ruska distance=dp_car_1x@ruska map [dp_car_1x] - unable to write row 0 (Tue Dec 18 10:55:55 2012) Command finished (77 sec)
Почему такая нелюбовь к пайпам? Они же наше всё Приведённый кусок кода слишком усложнён, по-моему.SBoris писал(а): И попутно, если есть возможность покажите куски скриптов для выборки растров по маске имен растров и цикл с иполнением комманд GRASS, например той же r.grow.distance (пайпа не надо)
Код: Выделить всё
g.mlist rast pat="dp_car_*" | while read r; do
g.region rast=$r
r.grow.distance input=$r distance=${r}x
done
amuriy писал(а):Для начала банальность -- регион по растру задавали?SBoris писал(а):Что это? Как поправить?Код: Выделить всё
r.grow.distance input=dp_car_1@ruska distance=dp_car_1x@ruska map [dp_car_1x] - unable to write row 0 (Tue Dec 18 10:55:55 2012) Command finished (77 sec)
Это после опыта с Octave/MatLab/R...Потому и попросил пример.amuriy писал(а):Почему такая нелюбовь к пайпам? Они же наше всё Приведённый кусок кода слишком усложнён, по-моему.
Да, всё так. Скорее, это в Octave/MatLab/R -- некое подобие, а "|" -- настоящий Unix pipe.SBoris писал(а): Если я правильно понял, read r читает список имен в переменную r и так до конца списка. А | - отдалённое подобие пайпа.
Код: Выделить всё
g.region rast=dp_car_1 zoom=dp_car_1
r.grow.distance in=dp_car_1 dist=dp_car_1.grow
Гм. а что у меня случилось? Не апдейтилсяб не доставлял, не сносил, не ковырялся... Гибернация. Работало - и вот те на... Перегружался. Не помогает. Может я лимит растров в наборе достиг? Где копать, - не знаю.amuriy писал(а):SBoris писал(а): Попробовал с вашим растром, прошло без каких-либо ошибок:
Код: Выделить всё
(Tue Dec 18 14:52:07 2012)
r.in.gdal input=/home/boris/Downloads/Trash/dp_car_01.tiff output=dp_car_01
Projection of input dataset and current location appear to match
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
error writing null row 5671
map [dp_car_01] - unable to write row 5718
error writing null row 5671
error writing null row 5672
error writing null row 5673
error writing null row 5674
error writing null row 5675
error writing null row 5676
error writing null row 5677
error writing null row 5678
error writing null row 5679
error writing null row 5680
error writing null row 5681
error writing null row 5682
error writing null row 5683
error writing null row 5684
error writing null row 5685
error writing null row 5686
error writing null row 5687
error writing null row 5688
error writing null row 5689
error writing null row 5690
error writing null row 5691
error writing null row 5692
error writing null row 5693
error writing null row 5694
error writing null row 5695
error writing null row 5696
error writing null row 5697
error writing null row 5698
error writing null row 5699
error writing null row 5700
error writing null row 5701
error writing null row 5702
error writing null row 5703
error writing null row 5704
error writing null row 5705
error writing null row 5706
error writing null row 5707
error writing null row 5708
error writing null row 5709
error writing null row 5710
error writing null row 5711
error writing null row 5712
error writing null row 5713
error writing null row 5714
error writing null row 5715
error writing null row 5716
error writing null row 5717
error writing null row 5718
error writing null row 5719
error writing null row 5720
error writing null row 5721
error writing null row 5722
error writing null row 5723
error writing null row 5724
error writing null row 5725
error writing null row 5726
error writing null row 5727
error writing null row 5728
error writing null row 5729
error writing null row 5730
error writing null row 5731
error writing null row 5732
error writing null row 5733
error writing null row 5734
error writing null row 5735
error writing null row 5736
error writing null row 5737
error writing null row 5738
error writing null row 5739
error writing null row 5740
error writing null row 5741
error writing null row 5742
error writing null row 5743
error writing null row 5744
error writing null row 5745
error writing null row 5746
error writing null row 5747
error writing null row 5748
error writing null row 5749
error writing null row 5750
error writing null row 5751
error writing null row 5752
error writing null row 5753
error writing null row 5754
error writing null row 5755
error writing null row 5756
error writing null row 5757
error writing null row 5758
error writing null row 5759
error writing null row 5760
error writing null row 5761
error writing null row 5762
error writing null row 5763
error writing null row 5764
error writing null row 5765
error writing null row 5766
error writing null row 5767
error writing null row 5768
error writing null row 5769
r.in.gdal complete. Raster map <dp_car_01> created.
(Tue Dec 18 14:52:14 2012) Command finished (6 sec)
Давайте сначала попробуем разобраться, где проблема -- в грасс или в библиотеках. Создайте еще один набор и попробуйте импортировать в него файлы. Если импортируются, попробуйте посчитать на них что-нибудь.SBoris писал(а): Гм. а что у меня случилось? Не апдейтилсяб не доставлял, не сносил, не ковырялся... Гибернация. Работало - и вот те на... Перегружался. Не помогает. Может я лимит растров в наборе достиг? Где копать, - не знаю.
KolesovDmitry писал(а):Давайте сначала попробуем разобраться, где проблема -- в грасс или в библиотеках. Создайте еще один набор и попробуйте импортировать в него файлы. Если импортируются, попробуйте посчитать на них что-нибудь.SBoris писал(а): Гм. а что у меня случилось? Не апдейтилсяб не доставлял, не сносил, не ковырялся... Гибернация. Работало - и вот те на... Перегружался. Не помогает. Может я лимит растров в наборе достиг? Где копать, - не знаю.
Код: Выделить всё
r.in.gdal input=/home/boris/dp_car_01.tiff output=dp_car_01
Projection of input dataset and current location appear to match
r.in.gdal complete. Raster map <dp_car_01> created.
(Tue Dec 18 16:30:39 2012) Command finished (4 sec)
Места не было, действительно (странно как то - отдельный диск для данных). Высвободил 1.5Гб. Проблема осталась.amuriy писал(а):Какая версия GRASS? Лимита растров в наборе, вроде бы, не бывает. Место на диске не могло закончиться (ну мало ли...)? Никакие файлы из набора PERMANENT не удалялись случайно?
а что вы складывали, если не секрет? треугольников так ну никак не должно получаться, там должны быть круги, возникающие в местах стыков линий разных типов из-за перекрытия буферов.SBoris писал(а):Поскольку буферная зона заокруглена, то в местах пересечения линий получаются треугольники, которые как бы налазят на линию и пробивают её тонкой линией насквозь.
Если речь идёт о ранних постах - то это были попытки уйти от изнурительно дистансинга и суммирования растров посредством буферных зон. Но как оказалось перекрытия зон не наблюдается. Алгоритм работает в таких местах как итнерполяция (равноудаление). Там я ничего не складывал простые буферы...gamm писал(а):а что вы складывали, если не секрет? треугольников так ну никак не должно получаться, там должны быть круги, возникающие в местах стыков линий разных типов из-за перекрытия буферов.SBoris писал(а):Поскольку буферная зона заокруглена, то в местах пересечения линий получаются треугольники, которые как бы налазят на линию и пробивают её тонкой линией насквозь.
Грассовские растры очень "тяжёлые".SBoris писал(а):Места не было, действительно (странно как то - отдельный диск для данных). Высвободил 1.5Гб. Проблема осталась.
Можно для начала попробовать скопировать растры в этот же набор (лучше сначала проверить на одном "сбойном" растре, сработает ли это):SBoris писал(а): Но теперь вопрос, как быстро перебросить все растры (гдето под 200) из глючного набора в новый?
Код: Выделить всё
for i in $(g.mlist rast); do g.copy rast=$i,${i}_copy; g.rename rast=${i}_copy,$i --o; done
Код: Выделить всё
find имя_набора -name "*имя_растра*"
Код: Выделить всё
~$ cd /media/data/Work/GiS_DB/Mk/
/media/data/Work/GiS_DB/Mk$ find ruska -name "*dp_car_01*"
ruska/cats/dp_car_01
ruska/cell/dp_car_01
ruska/cellhd/dp_car_01
ruska/cell_misc/dp_car_01
ruska/colr/dp_car_01
ruska/hist/dp_car_01
Код: Выделить всё
/media/data/Work/GiS_DB/Mk$ find test -name "*dp_car_01*"
test/cats/dp_car_01
test/cats/dp_car_01x
test/cell/dp_car_01
test/cell/dp_car_01x
test/cellhd/dp_car_01
test/cellhd/dp_car_01x
test/cell_misc/dp_car_01
test/cell_misc/dp_car_01x
test/colr/dp_car_01
test/colr/dp_car_01x
test/fcell/dp_car_01x
test/hist/dp_car_01
test/hist/dp_car_01x