Thread View: pl.comp.gis
7 messages
7 total messages
Started by Mateuszzz
Thu, 07 Apr 2011 01:18
przeskalowanie rastra
Author: Mateuszzz
Date: Thu, 07 Apr 2011 01:18
Date: Thu, 07 Apr 2011 01:18
14 lines
490 bytes
490 bytes
Witam, skoro z modułu GDAL używa większość programów GISowych, to może ktoś zetknął się z następującym problemem. Z nieznanej mi przyczyny nie mogę wykonać przeskalowania rastra w formacie ASCII (próbowałem przed konwersją zapisać go w postaci GeoTiff - to również nie pomaga): gdal_translate -outsize 5% 5% -of AAIGrid /home/costam.asc /home/costam2.asc Za każdym razem widzę błąd dotyczący nieprawidłowych wymiarów (0x0 TIFF). Co może być przyczyną?
Re: przeskalowanie rastra
Author: mt
Date: Thu, 07 Apr 2011 02:03
Date: Thu, 07 Apr 2011 02:03
22 lines
695 bytes
695 bytes
Mateuszzz pisze: > Witam, > > skoro z modułu GDAL używa większość programów GISowych, to może ktoś > zetknął się z następującym problemem. > > Z nieznanej mi przyczyny nie mogę wykonać przeskalowania > rastra w formacie ASCII (próbowałem przed konwersją zapisać go w postaci > GeoTiff - to również nie pomaga): > > gdal_translate -outsize 5% 5% -of AAIGrid /home/costam.asc > /home/costam2.asc > > Za każdym razem widzę błąd dotyczący nieprawidłowych wymiarów > (0x0 TIFF). Co może być przyczyną? A podejrzałeś tego grida w jakimś edytorze tekstowym? Wygląda na to, że grid nie ma podanej wartości ncols i nrows (dwa pierwsze wpisy). -- marcin
Re: przeskalowanie rastra
Author: Mateuszzz
Date: Thu, 07 Apr 2011 07:55
Date: Thu, 07 Apr 2011 07:55
26 lines
1000 bytes
1000 bytes
> A podejrzałeś tego grida w jakimś edytorze tekstowym? Wygląda na to, że > grid nie ma podanej wartości ncols i nrows (dwa pierwsze wpisy). > GRID stworzyłem "samodzielnie" (napisałem skrypt, który wypisuje odpowiednie wartości do pliku tekstowego). Jego (pliku .asc) zawartość to: ncols 9 nrows 5 xllcorner 19.875 yllcorner 51.875 DX 0.25 DY 0.25 NODATA_value -9999 1.9922307E-5, 1.894646E-5, 1.8956462E-5, 1.9361845E-5, 1.9511384E-5, 1.9329693E-5, 1.9673384E-5, 1.8383538E-5, 1.8088462E-5 1.7483077E-5, 2.0421385E-5, 1.9258154E-5, 1.9281846E-5, 1.8062461E-5, 1.7116461E-5, 1.5586462E-5, 1.8733692E-5, 1.9904E-5 1.781323E-5, 1.8908308E-5, 2.055877E-5, 1.998077E-5, 1.9613231E-5, 1.8095077E-5, 1.7196462E-5, 1.5384308E-5, 1.757877E-5 1.9018922E-5, 1.895046E-5, 1.830677E-5, 2.0832154E-5, 2.051923E-5, 2.0070462E-5, 1.8988E-5, 1.7819077E-5, 1.753277E-5 1.7792923E-5, 1.8765691E-5, 1.9184923E-5, 1.8667384E-5, 2.1397693E-5, 2.1273538E-5, 2.0916308E-5, 1.9450616E-5, 1.8722461E-5
Re: przeskalowanie rastra
Author: mt
Date: Thu, 07 Apr 2011 09:00
Date: Thu, 07 Apr 2011 09:00
18 lines
688 bytes
688 bytes
Mateuszzz pisze: >> A podejrzałeś tego grida w jakimś edytorze tekstowym? Wygląda na to, że >> grid nie ma podanej wartości ncols i nrows (dwa pierwsze wpisy). >> > > GRID stworzyłem "samodzielnie" (napisałem skrypt, który wypisuje > odpowiednie wartości do pliku tekstowego). > Jego (pliku .asc) zawartość to: Wygląda na ok, jedyne co może być problematyczne, to DX i DY (po skalowaniu przyjmują różne wartości), część programów tego nie obsługuje, bezpieczniej zastąpić jednym parametrem cellsize. A jakiej implementacji i wersji GDAL-a używasz? U mnie wtyczka do QGIS oparta na GDAL 1.7.3 wykonała bez problemu skalowanie Twojego pliku. -- marcin
Re: przeskalowanie rastra
Author: mt
Date: Thu, 07 Apr 2011 09:13
Date: Thu, 07 Apr 2011 09:13
17 lines
446 bytes
446 bytes
Mateuszzz pisze: > GRID stworzyłem "samodzielnie" (napisałem skrypt, który wypisuje > odpowiednie wartości do pliku tekstowego). > Jego (pliku .asc) zawartość to: > > ncols 9 > nrows 5 Ok, już wiem, gdzie leży błąd. Jeżeli próbujesz przeskalować grida o wymiarach 9x5 o 5% to wynikowy będzie mieć rozmiary poniżej 1x1, a tak się nie da stąd zwraca Ci błąd. Albo większy grid albo mniejsze przeskalowanie. -- marcin
Re: przeskalowanie rastra
Author: Mateuszzz
Date: Thu, 07 Apr 2011 20:21
Date: Thu, 07 Apr 2011 20:21
34 lines
1614 bytes
1614 bytes
> Ok, już wiem, gdzie leży błąd. Jeżeli próbujesz przeskalować grida o > wymiarach 9x5 o 5% to wynikowy będzie mieć rozmiary poniżej 1x1, a tak > się nie da stąd zwraca Ci błąd. Albo większy grid albo mniejsze > przeskalowanie. > Hmmm...czyli najwidoczniej wpisuję złą wartość... może opiszę całą sytuację.... chcę wykonać wykresy rozrzutu (oraz analizę statystyczną) danych znajdujących się w dwóch rastrach. Jeśli dobrze rozumuję, oba muszą mieć identyczne wymiary (myślę o współrzędnych rogów) i identyczną rozdzielczość. W jaki sposób wykonać taką operację w QGISie? Samo obcięcie nie jest kłopotliwe (Raster-->Kadruj, po czym można wpisać współrzędne rogów uzyskane przy pomocy narzędzia gdalinfo. Nie wiem za bardzo jak "zmniejszyć" boki rastra (czy należy to zrealizować przez przeskalowanie?) Kiedy wykonać taką operację - wydaje mi się, że logiczne byłoby zrobienie tego przed "kadrowaniem", jednak nawet w tej sytuacji może okazać się, że po obcięciu komórki jednego nie pokrywają się idealnie z bokami drugiego. Wpadło mi do głowy użycie narzędzia gdal2xyz - zapisanie danych z rastra do pliku ze współrzędnymi oraz wartościami. Następnym krokiem byłoby dodanie dodatkowych punktów (np. w 1/4 odległości od środka rastra) z przepisaną wartością. Tak dużą ilość punktów można byłoby "obciąć" do rozmiarów pierwszego z rastrów, po czym wykonać interpolację metodą najbliższego sąsiada. Czy jest to dobry pomysł? W jaki sposób szybko "zwielokrotnić" ilość punktów w rastrze?
Re: przeskalowanie rastra
Author: Mateuszzz
Date: Sat, 09 Apr 2011 17:43
Date: Sat, 09 Apr 2011 17:43
12 lines
426 bytes
426 bytes
> Ok, już wiem, gdzie leży błąd. Jeżeli próbujesz przeskalować grida o > wymiarach 9x5 o 5% to wynikowy będzie mieć rozmiary poniżej 1x1, a tak > się nie da stąd zwraca Ci błąd. Albo większy grid albo mniejsze > przeskalowanie. > Dlaczego jest to niemożliwe? Chciałbym uzyskać rastry o jeszcze mniejszym "oczku" (teraz mam 0,25 piksela - chcę mieć mniejsze). Czy możliwe jest wykonanie tej czynności?
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads