Generujesz DEM z pliku konturów za pomocą QGIS?


12

Chcę utworzyć DEM z konturów głębokości (plik kształtu) w QGIS. Próbowałem wypracować sposób na zrobienie tego na podstawie poprzedniego pytania , zwłaszcza z tego linku z tej strony, jednak utknąłem i miałem nadzieję, że ktoś może pomóc.

Mój postęp / proces do tej pory:

  1. otwórz nową mapę w QGIS, zaimportuj plik kształtów konturu
  2. ustaw zakres GRASS, ustaw nowy plik mapy GRASS itp
  3. spróbuj „zaimportować” plik kształtu do trawy, konwertując go do pliku trawy, w oparciu o przeczucie sformułowania z tej strony (szukaj na stronie: „użycie qgis i trawy”): zarządzanie plikami, import do trawy, importowanie wektora do trawy zaimportuj załadowany wektor (v.in.ogr.qgis), a następnie przejrzyj dane wyjściowe. To tworzy identycznie wyglądającą warstwę.
  4. spróbuj użyć r.surf.contour na tym - nie pozwala na wybranie warstwy.
  5. spróbuj użyć do tego r.surf.contour2 - albo zawiesza QGIS, albo tworzy pełny blok koloru.

Wszelkie przemyślenia / wskazówki na temat tego, co powinienem robić inaczej?


Błąd interpolacji, próbowałem wszystkiego w GRASS i we wtyczce GRASS, nie powiodło się, czy problem może wynikać z pliku źródłowego?

Czego nauczyłem się gdzie indziej to „narzędzia geometrii> sprawdź poprawność geometrii”, które uruchomiłem na pliku kształtu konturu i znalazłem mnóstwo błędów.

Zastanawiam się, czy to może być powód, dla którego wszystkie moje wysiłki zmierzające do stworzenia DEM kończą się niepowodzeniem?

Czy ktoś wyświadczyłby mi ogromną przysługę, że rzucił okiem na mój plik kształtu, aby sprawdzić, czy jestem po prostu bezużyteczny, czy też jest to problem, którego względny nowicjusz byłby usprawiedliwiony za nie przewidywanie?


Czy próbowałeś użyć wtyczki do interpolacji? Trawa nie jest konieczna ...
Gerardo Jimenez

Cześć Gerardo, dzięki za pomysł. Bawiłem się tym bez większego sukcesu. Używam konturów 10 m dla całej Irlandii i interpolacja nie wydaje się skutkować wysoką rozdzielczością, której szukam ... czy powinienem być w stanie uzyskać wynik, którego potrzebuję z tej metody?
dez93_2000

Odpowiedzi:


6

Wykorzystałem ten samouczek do stworzenia cyfrowego modelu terenu (DTM).

Wykorzystuje jako wejściowe kształty kształtu przekształcone w kontury rastrowe, które są później interpolowane w DTM (wygląda jak ciągła mapa ciepła)

Nie używa QGIS, tylko GRASS, ale może być wykonalne dzięki wtyczce Grass firmy QGIS.


Link do samouczka jest zepsuty
MDHald

@PolyGeo Osoba, która edytowała mój post i przekształciła mój link w ukryty link, przegapiła ostatnie „l” z „html”, więc teraz link kończy się teraz na „htm”. Dodaj l, a będzie działać. Próbowałem edytować swój post, ale nie mogłem znaleźć sposobu, aby to zrobić. Mam nadzieję, że osoba, która zredagowała i popełniła błąd, może to naprawić. Dla Twojej wygody dodaję go w tym komentarzu: dobry link do samouczka
Bogdan

To był mój błąd, za który przepraszam. Naprawiłem to. Powinieneś być w stanie to naprawić za pomocą przycisku edycji pod odpowiedzią.
PolyGeo

@PolyGeo Przepraszamy, mogłem nie być zalogowany. Teraz widzę link do edycji.
Bogdan

4

Samouczek GRASS wygląda jak bilet. Czy podążając tymi krokami, czy konwertujesz kontury na raster gdzieś pomiędzy 1 a 4?

Ostatni akapit w sekcji Informacje:

Wiele modułów r.surf. * Chce, aby dane wejściowe były już w formie rastrowej, więc rasteryzujemy linie konturu, używając kolumny poziomu dla wartości wysokości. Również niektóre starsze moduły r.surf. * Lubią pracować tylko na liczbach całkowitych, więc aby zachować dokładność poniżej metra, robimy małą sztuczkę, w której mnożymy przez dużą liczbę, wykonujemy proces, a następnie dzielimy przez tę liczbę ponownie (aby unikaj tarasowania, upewnij się, że jest to liczba zmiennoprzecinkowa, a nie liczba całkowita).


więc proces rasteryzacji jest tym, gdzie prawdopodobnie popełniam błąd. Czy powinienem najpierw zaimportować wektor do trawy, czy przekształcić go w raster? Czy w tym celu muszę używać v.to.rast.constant w trawie, czy też wersji QGIS?
dez93_2000

3
Procedura powinna polegać na: zaimportowaniu linii konturowych do GRASS, konwersji wektora GRASS na raster za pomocą v.to.rast.attr. Następnie uruchom r.surf.contour, aby pobrać dem.
Micha

Micha, wielkie dzięki za przewodnik, który to uporządkował. Rodzaj: jakieś wskazówki na temat uzyskiwania wyższej rozdzielczości wyjściowej dla rastra? Wydaje się, że nie ma takiej opcji. Zobacz link do obrazu z zaimportowanymi do konturów GRASS (cienkie linie), wynikowym rastrem (czerwone kwadraty) i DEM z rastra (gradient kolorów): imgur.com/miHRcF4
dez93_2000


Dzięki Barrett, teraz na to patrzę. Jeśli zdarzy ci się wiedzieć, jakie są rozmiary komórek poza czubkiem głowy, daj mi znać! Twoje zdrowie.
dez93_2000

4

Z wielkim powodzeniem stosuję następującą procedurę. Otwórz przybornik „Przetwarzanie” w QGIS, kliknij „SAGA”, kliknij „Narzędzia do tworzenia rastra”, a na koniec kliknij „Triangulacja”. W oknie dialogowym „triangulacja” wybierz plik kształtu, który zawiera punkty danych użyte do utworzenia konturu. Wybierz pole atrybutu zawierające dane wysokości, określ rozmiar komórki. Im mniejsza wartość wielkości komórki, tym wyższa będzie rozdzielczość. Uruchom, a plik rastrowy zostanie utworzony i załadowany jako warstwa pamięci.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.