Go to content Go to navigation Go to search

geo-spatial.org: An elegant place for sharing geoKnowledge & geoData

Căutare



RSS / Atom / WMS / WFS


Contact


Lista de discuții / Forum


Publicat cu Textpattern


Comunitatea:

Conferința FOSS4G-Europe 2017
Conferința FOSS4G 2017

Realizarea unui model 3D animat al terenului folosind SAGA GIS

de Matei Domnița

Publicat la 13 Nov 2009 | Secţiunea: Tutoriale | Categoria: Vis-sim/
Nivel de dificultate:
25.10.2014 Tutorialul de fața folosește o versiunea mai veche a softului prezentat. Va rugăm consultați versiunea actualizată sau contactați autorul.

Există mai multe metode de a realiza modele 3D ale terenului mai simple sau mai complexe folosind diverse utilitare. Aceste modele pot fi doar afișate ca imagine sau animate, în funcție de dorință. Acest tutorial dorește să prezinte modul de realizare a unui asemenea model și animarea acestuia în 3D folosind aplicația open-source SAGA GIS.

Datele inițiale

Pentru a realiza animația 3D utilizatorul are nevoie de un minimum de date inițiale în format raster. Cel mai important este modelul de elevație al terenului (DEM). Acesta este punctul de pornire în realizarea reprezentării în 3 dimensiuni și a animației.

Imaginile și pașii prezentați presupun că doar modelul de elevație este încărcat în SAGA GIS. Dar după realizarea reprezentării 3D orice fel de straturi raster sau vector care se află în același sistem de coordinate pot fi utilizate în reprezentarea și animația 3D.

Primul pas în realizarea animației este încărcarea unui DEM în SAGA GIS.

După încărcarea și afișarea acestuia pe o hartă, reprezentarea lui va fi modificată pentru vizualizare folosind o paletă de culori potrivită.

Acest pas este opțional, în funcție de datele care trebuie afișate. În acest tutorial am reprezentat terenul cu o paletă de culori potrivită reprezentării topografice, pentru că această reprezentare va fi obiectul animației realizate în final. Dacă din DEM doar elevația este importantă și stratul afișat în final va reprezenta altceva decât altitudinea, acest pas nu este necesar.

  • din fereastra Object Properties se selectează opțiunea modificării paletei de culori

Fig. 1 modificarea paletei de culori

  • se creează sau se încarcă o paletă de culori potrivită pentru reprezentarea datelor dorite. Paleta creată în imagine este doar un exemplu. După cum se știe, există multiple opțiuni de afișare a variației altitudinale.

Fig. 2 crearea unei palete de culori

Pentru afișarea mai plăcută a terenului, un hillshade poate ajuta foarte mult. Pentru realizarea acestuia poate fi folosit modulul Terrain analysis – Lightning, visibility – Analytical hillshade.

Fig. 3 Creare hillshade

Hillshade-ul obținut va fi afișat pe ecran.

Fig. 4 Hillshade

Pentru a îmbunătăți aspectul modelului, DEM-ul poate fi setat semitransparent și plasat peste hillshade astfel încât hillshade-ul să poată fi văzut de dedesubt. Modificarea transparenței DEM-ului poate fi realizată folosind funcția Transparency din Object Properties.

Fig. 5 Modificare transparență

După încărcarea și prelucrarea dorită, dacă este cazul, a DEM-ului pot fi adăugate orice alte date pentru a fi reprezentate în 3D.În acest exemplu am adăugat curbele de nivel după care a fost realizat DEM-ul și le-am setat proprietățile de afișare după dorință.

Fig. 6 Adăugarea altor straturi

Orice alte date pot fi adăugate în hartă, cu observația că aceste date vor fi convertite în reprezentare raster în rezultatul final.

Activarea vizualizării 3D și setarea opțiunilor

După adăugarea straturilor la harta afișată și afișarea acestora cu simbolurile dorite se poate trece la reprezentarea în 3 dimensiuni. Pentru aceasta se folosește butonul 3D View din fereastra de SAGA.

Fig. 7 Butonul 3D View

La pornirea acestei funcții SAGA afișează un meniu pentru configurarea vizualizării în 3 dimensiuni a datelor. În acest meniu pot fi setați parametrii doriți.

Fig. 8 Meniul 3D

  • Cel mai important și obligatoriu este modelul de elevație (Elevation). Acesta trebuie ales din lista de straturi încărcate în SAGA GIS.
  • În cazul exemplului prezentat (o zonă de deal) diferențele de altitudine nu erau foarte mari și a fost necesară modificarea exagerării verticale (Vertical Exaggeration)
  • O altă opțiune importantă este rezoluția dorită a rezultatului. Rezoluția reprezintă dimensiunea în pixeli a laturii modelului, nu dimensiunea unei celule așa cum mă așteptam eu. Valoarea default este foarte mică, așa că va trebui modificată după preferințe. Atenție însă la plusurile și minusurile evidente (la rezoluție mai mare se vede mai bine dar și sistemul este mai solicitat) în alegerea unei valori cât mai potrivite

După apăsarea butonului Ok, SAGA va deschide o fereastră de vizualizare 3D.

Fig. 9 Fereastra de vizualizare 3D

Navigarea prin reprezentarea 3D

Pentru navigarea prin reprezentarea 3D pot fi folosite meniurile de sus sau mouse-ul. Cu click stânga apăsat modelul poate fi rotit în jurul centrului. Cu click dreapta modelul poate fi deplasat. Butoanele din partea superioară permit deplasări mai complexe în cadrul modelului.

Crearea unei animații

Pentru realizarea unei animații folosind modelul, SAGA folosește navigarea prin model și adăugarea unor puncte fixe (Viewpoints). După adăugarea unui număr de puncte, SAGA realizează o animație prin care se deplasează între aceste puncte cu o viteza dorită. Modul de realizare este următorul:

  • Folosind meniul dedicat (Sequencer – Add Position) sau butonul ”A” se adaugă o nouă poziție fixă.

Fig. 10 Adăugarea unei poziții fixe pentru animația 3D

  • Pentru fiecare poziție fixă dorită se realizează deplasarea prin model și se adaugă în același fel. Animația va fi realizată în ordinea în care au fost adăugate pozițiile fixe.
  • După adăugarea tuturor pozițiilor (sau nu neapărat), detalii despre acestea pot fi modificate din meniul Sequencer – Edit position.

Fig. 11 Editarea pozițiilor adăugate

Cea mai importantă modificare care se poate realiza aici este numărul de pași prin care se realizează deplasarea între două poziții fixe. Cu cât e mai mare numărul de pași cu atât animația va fi mai uniformă, dar sistemul va fi mai solicitat.

Vizualizarea animației

Pentru a vedea rezultatul se folosește, evident, meniul Sequencer – Play sau tasta ”P”.

Fig. 12 Rularea animației

La accesarea acestui meniu animația va fi rulată pe ecran cu setările stabilite. După definirea pașilor necesari în realizarea animației pot fi modificați parametrii hărții (straturile afișate, culorile, modul de afișare, etc). De asemenea, folosind meniul 3D view – Properties, se pot modifica parametrii afișării 3D (rezoluția, spre exemplu).

Salvarea rezultatelor

Pentru salvarea rezultatelor (animației) poate fi folosită funcția care exportă secvența de imagini corespunzătoare acestei animații (Sequencer – Play and Save as Images).

Fig. 13 Salvarea animației ca secvență de imagini

Această funcție va salva o serie de imagini, câte una pentru fiecare pas din animație (în funcție de setările de la Edit Positions). Această serie de imagini poate fi folosită pentru a realiza o animație în format .avi sau în orice alt format video dorit.

Realizarea unei animații din imaginile exportate folosind VirtualDub

Eu am realizat o animație scurtă în format .avi, de încercare, folosind utilitarul opensource VirtualDub (http://virtualdub.org/download.html), dar există o mulțime de metode de a anima o secvență de imagini obținute de pe HDD.

Pentru realizarea acestei secvențe folosind VirtualDub se procedează astfel:

  • Respectarea cerințelor codecului folosit la compresie trebuie verificată. În general dimensiunea imaginii din care se face video trebuie să fie multiplu de 2 pe fiecare latură, dar depinde de codecul folosit.
  • Imaginile trebuie să aibă aceași dimensiune în pixeli pentru a putea realiza filmul. În cazul în care nu se respectă cerința asta va fi nevoie de un resize la unele imagini.
  • Se denumește secvența de imagini astfel încât să conțină imagini cu același nume de bază și un index (care crește din 1 în 1) după acesta, dacă este cazul. SAGA GIS a denumit greșit imaginile în cazul meu, și a fost nevoie să le redenumesc. Eu am folosit Multi Rename Tool din Total Commander pentru aceasta.

Fig. 14 Redenumirea de fișiere multiple în Total Commander

  • se deschide Virtual Dub și se folosește funcția File-Open pentru a deschide prima imagine din secvență. VirtualDub va încărca celelalte imagini automat dacă sunt denumite corect.

Fig. 15 Încărcarea unei secvențe de imagini în VirtualDub

  • După aceasta filmul poate fi exportat în format .avi. În funcție de codecurile instalate se poate alege tipul de compresie (codecul) dorit din meniul Video – Compression. Eu am ales XVID, dar orice codec instalat pe calculator poate fi ales și configurat.

Fig. 16 alegerea unui codec pentru compresia filmului

  • După configurarea codecului un simplu File – Save as avi rezolvă conversia din secvență de imagini în video.

Fig. 17 Salvarea filmului în format avi

Animația creată de mine în acest fel are 35 de secunde (355 cadre la 10 fps) și poate fi văzută aici:

Bibliografie:

Victor Olaya – A gentle introduction to SAGA GIS
Cimmery – SAGA 2 User Guide
SAGA GIS project

Discută articolul (3 comentarii)

Categorii