Sunteți pe pagina 1din 70

Adugarea coordonatelor X i Y unui set

de puncte
de Mihai Terente
Publicat la 23 Nov 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:

Tutorialul urmtor i propune s ofere o soluie la problema ridicat n acest topic de pe


forumul geo-spatial.org, folosind o aplicaie GIS gratuit i open-source (FOSS), ca
alternativ la soluiile proprietare oferite pe forumul respectiv. Acest aplicaie este
SAGA (versiunea 2.0.3). Pentru exemplificare se va folosi stratul de cldiri din muncipiul
Suceava, pus la dispoziie n seciunea Download de ctre Adrian Antoci i Vasile
Crciunescu. Acest tip de date este foarte potrivit pentru genul acesta de probleme: de
multe ori e necesar s se cunoasc valorile coordonatelor punctelor de inflexiune ale
parcelelor construite.
Vom lucra n 2 etape:
1. Transformarea vertecilor poligoanelor n puncte ntr-un fiier .shp separat
2. Adaugarea valorilor coordonatelor X si Y in tabelul de atribute, pentru fiecare
punct in parte
1. Transformarea vertecilor n puncte ntr-un fiier separat
Pentru aceast etap se vor folosi modulele Shapes-Lines>Convert polygon to lines i
Shapes-Points>Points from lines
SAGA este o aplicaie care suport direct formatul de fiier .shp.
Se deschide fiierul descrcat de aici (fig. 1)

Fig. 1
Se acceseaz modulul Convert Polygons to Lines din lista de module, din seciunea
Shapes-Lines cu click pe numele su i se selecteaz ca input fiierul cu poligoane. Se
execut cu click pe Execute n fereastra din dreapta.

Fig. 2. Executarea modulului Convert Polygons to Lines


Transformarea s-a realizat prin crearea unui nou fiier .shp, de tip linie, care se poate
accesa din fereastra de Workspace din stnga, din tabul Data, cu dublu-click pe numele
su. Se poate selecta s se afieze n alt fereastr sau n cea care e deschis deja i care
afieaz .shp-ul cu poligoane (fig. 3). Trebuie precizat c toate produsele create de
aplicaie n urma executrii modulelor sunt stocate pe RAM i doar pn la nchiderea
sesiunii de lucru. Atunci aplicaia ofer posibilitatea salvrii tuturor fiierelor astfel
create, dar se recomand salvarea acestora imediat dup generare pentru a preveni
pierderea lor din cauza unei nchideri neateptate a programului. Pentru aceasta, clickdreapta pe numele fiierului i Save Shapes As.

Fig. 3
Se nelege c .shp-ul de tip linie proaspt creat este doar intermediar. El are aceeai
denumire cu cea a .shp-ului poligon din care a rezultat i de accea l vom redenumi pentru
a nu se crea confuzii n pasul urmtor. Pentru aceasta se selecteaz din tab-ul Data i se
redenumete n cmpul Name din fereastra din dreapta. (fig. 4)

Fig. 4. Redenumirea unui fiier

Pentru a extrage punctele din vertecii liniilor (i implicit ai poligoanelor din care au
rezultat liniile) se utilizeaz n mod analog modulul Points from Lines din seciunea
Shapes-Points (fig. 5). Acest modul permite chiar ndesirea punctelor pe fiecare linie, n
afar de verteci, la o anumit distan, n unitatea de msur a sistemului de coordonate.
n tutorialul de fa nu vom folosi ns aceast opiune, care poate fi accesat cu bifnd
csua Insert Additional Points din secunea Options a modulului.

Fig. 5
n acest moment .shp-ul cu puncte e gata. Acestea reprezint exact vertecii poligoanelor
iniiale ale cldirilor din Suceava. Se redenumete i se vizualizeaz dup plac (fig. 6).

Fig. 6
2. Adugarea coordonatelor
Pentru aceast etap se va folosi modulul Add Coordinates to Points. Acesta se acceseaz
din seciunea Shapes-Points. n fereastra din dreapa se selecteaz .shp-ul de input i se
execut (fig. 7).

Fig. 7
Se verific n tabelul de atribute al .shp-ului cu puncte, care ar trebui s arate ca n fig. 08.

Fig. 8
Rezultatul se salveaz pe hard dup cum s-a artat mai devreme i se poate folosi n orice
aplicaii care suport formatul shapefile.
Iat un bun exemplu care arat c aplicaia SAGA, dei se concentreaz pe manipularea
datelor raster, se dovedete o soluie foarte potrivit i pentru lucrul cu date de tip vector.

Conversia fiierelor din format DXF n


format ESRI Shapefile i invers
de Florin Iosub
Publicat la 20 Nov 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:

Datele spaiale se gsesc stocate n diferite formate. De multe ori, pentru a lucra cu ele,
suntem nevoii s le convertim dintr-un format n altul. n acest material vom vorbi
despre conversia datelor din format DXF (Drawing eXchange Format) n format ESRI
Shapefile i invers.
Formatul DXF a fost dezvoltat de compania Autodesk i folosit pentru prima dat n
decembrie 1982. Acest format este folosit n special n de ctre cei ce lucreaz n
domeniul proiectrii asistate de calculator, cunoscut generic sub denumirea de CAD.
Formatatul shapefile a fost dezvoltat de compania ESRI i introdus pe pia odat cu
lansarea versiunii 2.0 a aplicaiei ArcView GIS, n anul 1990.
Pentru acest lucru s-au utilizat programele AutoCAD Map 3D, ArcGis 9.2 i Global
Mapper, dei probabil exist i alte soluii.

1. Conversia fiierelor DXF n fiiere shapefile


Vom folosi pentru exemplificare un fiier de tip poligon, cu indexarea aerofotogramelor
ce acoper Romnia la scara 1:5000. Conversia poate fi realizat n dou moduri:
a). Folosind AutoCAD Map 3D
Se lansez aplicaia AutoCAD Map 3D i se deschide fiierul pe care dorim s l
convertim (Figura 1).

Figura 1.
Urmtorul pas const n exportarea diferitelor layere n format shapefile folosind
urmatoarele comenzi: File Export As SDF, se deschide o nou fereastr n care
trebuiesc trecute numele fiierului i tipul n care dorim s l salvm (ESRI shapefile),
click OK, dup care se deschide o ferestr nou cu mai multe tab-uri. n tabul Selection,
la Object Type, selectm de ce tip s fie vectorii exportai (n cazul nostru de tip poligon),
iar la Filter selection Layers se pot selecta unul sau mai multe layere pe care dorim s
le exportm (n cazul nostru stratul index). n tab-ul Data de la Select Attributes Object
Properties AcDbEntity se selecteaz General apoi click OK (Figura 2).

Figura 2.
b). Folosind ArcGIS

O alt modalitate, mai simpl, de a converti fiierele din format DXF n format shapefile,
presupune utilizrea aplicaiei ArcGIS. Paii sunt urmtorii:
Se lanseaz aplicaia ArcGIS i se ncarc fiierul DXF (programul ArcGIS citete
nativ astfel de formate) (Figura 3).

Figura 3.
Pentru salvarea n format shapefile se procedeaz astfel: click dreapta n fereastra Layers
pe stratul index.dxf, polygon n cazul nostru (acelasi lucru se poate face si pentru celelalte
straturi), urmat de comanda Data Export Data, se alege calea unde vrem s fie salvat
fiierul i tipul acestuia (Figura 4).

Figura 4.

O problema care apare n momentul conversiei fiierelor DXF este legat de atributele
datelor vectoriale. De regul, n mediu CAD, datele de tip atribut sunt stocate pe acelai
layer sau pe un layer separat, sub form de etichete de tip text. Fiierele shapefile
stocheaza aceast informaie ntr-un fiier separat, de tip tabel, cu extensia .dbf. Problema
poate fi rezolvat n ArcGIS folosind comanda Spatial Join. Paii sunt:

click dreapta pe stratul cruia vrem s i atam atributele;


urmeaz comanda Joins and Relates Join, moment n care se deschide o
fereastr nou.
pentru What do you want to join to this layer alegem Join data from another layer
based on spatial location
pentru Choose the layer to join to this layer alegem layer-ul care conine
atributele (n cazul nostru index.dxf Annotation)
selectm Each polygon will be given all the atributes i calea unde vrem s
salvm fiierul (Figura 5).

Figura 5.

2. Conversia fiierelor Shapefile n fiiere DXF


O cale destul de uoar este folosind aplicaia Global Mapper. Vom folosi fiierul
shapefile obinut la pasul de mai sus, dupa cum urmeaz:
Se lanseaz aplicaia Global Mapper, se ncarc fiierul i se seteaz proiecia (n cazul
nostru Stereo 70) (Figura 6).

Figura 6.
Se deschide fereastra Control Center (click pe butonul Open Control Center). Se opteaza
pentru afiarea n fereastra de lucru a atributele stratului respectiv (Options de unde se
selecteaz Use Selected Attribute Value for Name) (Figura 7).

Figura 7.
Ultimul pas const n exportul fiierului shapefile n format DXF, dupa cum urmeaz:

File Export Vector Data Export DXF;


se deschide o fereastr nou se bifeaz Include Display Labels as Attributes i,
opional, Generate Projection (PRJ) File dac dorim s avem i fiierul cu
proiecia (Figura 8).

Figura 8.

Utilizare Quantum GIS. Partea a II-a:


Digitizarea i editarea datelor
de Cornel Tudose
Publicat la 17 Oct 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:
Tutorialul are la baz materialul Shuffling Quantum GIS into the Open Source GIS Stack scris de
Gary Sherman. Varianta original (englez) poate fi consultat la adresa
http://www.foss4g2007.org/workshops/W-02/.

Convenii
n text vom folosi urmtoarele convenii pentru a indica anumite elemente sau aciuni:

close Buton ntr-o caset de dialog


QInputDialog nume de clas
LENGTH nume de cmp ntr-un tabel
orase.shp nume de fiier sau director
Enter Tast
getName metoda unei clase
File element dintr-un meniu
localhost- nume de server
geometry_columns un tabel dintr-o baz de date
Open Table un instrument din bara de instrumente
Textdescris Text de scris

Date
Putei descrca de aici fiierul raster necesar pentru completarea tutorialului.

Introducere
QGIS suport module de digitizare i sprijin editarea elementelor spaiale ntr-o gam
larg de formate, inclusiv shapefiles, straturi PostGIS, i straturi GRASS.

Digitizarea

Scopul nostru este de a digitiza unele obiecte din rasterul 47_45.tif (este vorba de una din
foile de harta austriece, disponibile la http://earth.unibuc.ro/download/harile-austriece1910-reproiectate-in-stereo70).
Exerciiul 1. Crearea unui nou Shapefile
Vom crea un shapefile cu un ID i NUME
1). Alegem New Vector Layer. de la meniul Layer
2). Alegem opiunea poligon la Type
3). n Attributes introducem la Name ID iar la Type alegem Integer
4). Facem click pe butonul Add
5). n Attributes introducem la Name Nume iar la Type alegem String
6). Facem click pe butonul Add
Cnd totul este setat, fereastra de dialog ar trebui s arate ca n Figura 1:

Figura 1. Fereastra de dialog New Vector Layer.


Facem click pe OK pentru a crea un strat. Acesta deschide fereastra de dialog pentru a
salva fiierul, permindu-ne navigarea la directorul ales i alegerea numelui.

Fiierul shapefile este creat i afiat n QGIS. Pentru a ncepe digitizarea avem nevoie de
permisiunea editrii pentru noul strat: click dreapta pe tem i din meniul de tip pop-up
alegem Toggle editing (Figura 2).

Figura 2. Activarea optiunii Toggle editing.


nainte de a ncepe editarea, trebuie s ne asigurm c bara de instrumente digitizare este
vizibil. Dac nu, facem click dreapta pe bara de instrumente i bifm din meniul de tip
pop-up Digitizing. Unele din butoane de pe bara de instrumente sunt dezactivate (gri), n
special butoanele pentru punct i linie, pentru c QGIS tie c se editeaz un strat poligon
i nu ne permite s adugm obiete greite (linii sau puncte).
Exerciiul 2. Digitizarea unui lac
S ncepem digitizarea:
1). Mrim o zon din 47_45.tif n care exist unul sau mai multe lacuri. Dac vrem o
reprezentare detaliat a lacului, avem nevoie de o mrire mult mai mare i de panoramare
n jurul lacului pe care l digitizm (Figura 3)
2). Dac nu suntem deja n modul Editare, facem click pe instrumentul Toggle editing
3). Facem click pe butonul Capture Poligon aflat pe bara de instrumente digitizare
4). Pentru a digitiza, facem click cu butonul stnga al mouse-ului i ncepem micarea dea lungul liniei de rm. Facem clic la fiecare locaie n care exist o schimbare de direcie
5). Dac ajungem la marginea hrii i trebuie s vedei mai mult din lac, inem apsat
tasta Space i micai mouse-ul pentru muta harta.

6). Dac n timpul digitizrii trebuie s mrim sau s micorm utilizai scrol-ul mouseului.
7). Pentru a termina editarea lacului, efectum click-dreapta la punctul final Acest lucru
deschide o caset de dialog n care vom introduce valorile atributelor definite la exerciiul
8). Introducem un numr de identificare i un nume pentru lac (Figura 4).
Pentru a salva modificrile trebuie s oprim editarea, fcnd clic pe instrumentul Toggle
editing din bara de instrumente. O caset de dialog apare i alegem YES pentru a salva
editrile (Figura 5).

Figura 3. Centrare harta.

Figura 4. Fereastra de dialog Enter Attributes Values.

Figura 5. Salvarea modificarilor.


Lacul acum apare ca un poligon regulat i l putem identifica i s-i vizualizm atributele.
Putei continua digitizarea folosind instrumentul Toggle editing (Figura 6).

Figura 6. Rezultatul digitizarii lacului.

Editarea trsturilor
Am observat c n timpul digitizrii nu am putut corecta greelile fcute. Din fericire se
pot face corecturi asupra obiectelor digitizate. QGIS indic prin verteci (sau puncte)
locul unde s-au marcat punctele de inflexiune ale poligonului. Instrumentele folosite
pentru digitizare se afla n bara de instrumente digitizare i permit s adugai, s tergei
i s mutm verteci pentru a modifica un obiect (Figura 7).

Figura 7. Bara de instrumente Digitizing.

De la stnga la dreapta, instrumentele sunt:


1. Toggle editing pornete/oprete editarea
2. Capture Point insereaz puncte
3. Capture Line insereaz linii
4. Capture Poligon insereaz poligoane
5. Add Ring adaug un inel n interiorul unui poligon
6. Add Island adug o insula la poligoane selectate
7. Split Feature mparte o trstur n 2 sectoare
8. Move Feature mut o trstur
9. Move Vertex mut un vertex
10. Add Vertex adaug un vertex
11. Delete Vertex terge un vertex
12. Delete Selected terge obiectele selectate
13. Cut Feature taie obiectele selectate
14. Copy Feature copiaz obiectele selectate
15. Paste Feature lipete obiectele selectate

Setarea toleranei snap


nainte de a putea edita verteci, avem nevoie de a seta tolerana snap. Aceasta este
distana pe care QGIS o utilizeaz pentru a cauta verteci pe care ncercm s i editm
atunci cnd facem click pe hart. Dac nu suntem n parametrii toleranei snap QGIS nu
va gsi i selecta verteci pentru editare. Tolerana este stabilit n unitatea de msur a
hrii deci este posibil s avem nevoie de cteva ncercri pentru a gsi valoarea bun sau
s mrim poriunea da hart aleas pentru editare. Dac specificm o toleran prea mare,
QGIS poate sri la un vertex greit, mai ales dac sunt un numr mare de verteci n
imediata apropiere. Dac o setm prea mic, nu va gsi nimic i va afia o fereastr de
avertisment n acest sens.
Pentru a seta tolerana snap, alegem Project Properties de la meniul Settings i facem
click pe opiunea Snapping options. Ne amintim unitatea de msur a hrii i adugm
la Tolerance valoarea dorit (Figura 8).

Figura 8. Fereastra Snapping Options.

Editarea vertecilor
Odat ce tolerana este stabilit, putem muta verteci pentru a corecta greelile pentru a se
suprapune ct mai bine peste linia de rm. Doar facem click pe butonul Move Vertex,
plasm cursorul peste vertexul care se va muta i l micm n noua locaie. Cnd se
elibereaz mouse-ul, vertexul este mutat iar forma de poligonului sufer modificri
(Figura 9).

Figura 9. Editarea vertecilor.


Dac am pierdut unele detalii ale conturului putei aduga unul sau mai muli verteci
pentru a rezolva problema. Prima dat utilizm instrumentul Add Vertex pentru a
aduga verteci, fcnd click pe linia care trebuie modificat. Odat ce am adugat
vertecii de care avem nevoie, utilizm instrumentul Move Vertex pentru a-i muta n
poziiile dorite.
Dac avem prea muli verteci utilizm instrumentul Delete Vertex pentru a-i terge pe
cei de care nu avem nevoie. Cnd tergem un vertex poligonul se redeseneaz n mod
automat.

Copiere, Decupare i Lipire


Ce facem dac am dori s tergem un poligon? Putem face aceasta prin selecia
poligonului (n exemplul nostru, un lac), utiliznd instrumentul Select Feature. Putem
s selectm mai multe obiecte pentru tergere. Odat ce avem seleciile stabilite, utilizm
instrumentul Delete Selected pentru a terge obiectele. ATENIE! Nu exist funcia
anulare (Undo), dar v amintesc c un strat nu este schimbat cu adevrat pn cnd oprim
editarea i salvm modificrile. Deci, dac am fcut o greeal, putem oricnd anula
salvarea modificrilor.
Instrument Cut Feature de pe bara de instrumente digitizare poate fi utilizat pentru a
terge. Acesta terge obiectele, dar le reine n memoria clipboard. Aa c dac am tiat
un obiect pentru al terge, putem apoi s utilizm instrument Paste pentru a pune-l napoi,
oferindu-ne o modalitate de a anula operaiile. Copiere, decupare i lipire lucreaz pe
obiecte selectate n mod curent, putnd astfel opera pe mai multe obiecte la un moment
dat.
Se poate s editam mai mult de un strat la un moment dat i copia/lipi ntre straturi
diverse obiecte de acelai fel. De ce am vrem s facem aceasta? S spunem c ne trebuie
pentru un proiect un nou strat, dar avem nevoie de unul sau dou lacuri, nu de 5000 de
lacuri din stratul nostru. Avem posibilitatea de a crea un nou strat i de a folosi funciile
copy/paste pentru a aduga lacurile necesare n acest strat.
Exerciiul 3. Copierea obiectelor ntre straturi
ncercm s copiem unele lacuri ntr-un nou strat:
1.ncrcm stratul de pe care dorim s o copiem (stratul surs)
2.ncrcm stratul pe care dorim s o lipim (stratul int)
3.ncepem editarea pentru ambele straturi
4.Facem stratul surs activ, efectund click pe el n legend
5.Folosim unealta de selectare pentru a selecta obiectul (ele) de pe stratul surs
6.Facem click pe instrumentul Copy Feature
7.Facem stratul int activ, efectund click pe el n legend
8.Facem click pe instrumentul Paste Feature
9.Oprim editarea i salvam modificrile

Ce se ntmpl dac de stratul surs i stratul int au scheme diferite (nume de cmpuri i
tipurile nu sunt aceleai)? QGIS populeaz ceea ce se potrivete i ignor restul. Dac nu
ne pas despre atributele copiate n stratul int, nu conteaz cum definim cmpurile i
tipurile de date. Dac dorim pstram n totalitate cmpurile trebuie s ne asigurm c
scheme se potrivesc.

Georeferenierea unei hri scanate


de Mihai Terente
Publicat la 20 Jul 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:

Problema georeferenierii unei imagini scanate este una curent, mai ales cnd
principalele surse de informaii sunt hrile tiprite. Ne propunem realizarea unui tutorial
prin care s artm ce reprezint georeferenierea i cum se poate realiza aceasta cu o
aplicaie GIS open-source.
Georeferenierea unei imagini presupune alinierea acesteia la un sistem de coordonate
definit. Matematic, este o operaie de translaie i/sau rotaie a sistemului de coordonate
al imaginii (care numeroteaz coloanele i liniile de pixeli ncepnd cu cel din stnga sus)
fa de sistemul de coordonate n care se realizeaz georeferenierea. Problema se rezum
la rezolvarea unor sisteme de ecuaii i aflarea unor coeficieni care se aplic fiecrui
pixel al imaginii pentru a-l face s corespund unei anumite poziii geografice, definite
printr-o pereche de coordonate matematice/geografice.
Concret, utilizatorul ofer ca input puncte de pe imagine ale cror coordonate le cunoate,
iar programul aplic un algoritm n funcie de numrul de puncte introduse (care oricum
trebuie s fie cel puin trei). Imaginea este astfel rectificat i poate fi salvat separat,
mpreun cu informaiile de georefereniere (care se salveaz fie ntr-un fiier separat, cu
acelai nume dar cu extensie diferit, de ex. .jgw, .tfw, .eww, fie n headerul imaginii, n
cazul fiierelor geotiff).
Vom exemplifica georeferenierea unei imagini n aplicaia open source Quantum GIS.
Imaginea este un fragment dintr-o hart a a pantelor pentru bazinul montan al
Teleajenului, i este n proiecie Stereo 70 (fig. 1)

Fig. 1. Harta ce urmeaz a fi georefereniat n sistem Stereo 70


Primul lucru ce trebuie urmrit este localizarea a minim trei puncte de coordonate
cunoscute. Pe hrile topografice cele mai bune sunt interseciile liniilor caroiajului
pentru c valorile coordonatelor acestora sunt redate pe marginea hrii. Este i cazul
imaginii din acest exerciiu (Fig. 1).
Se pornete aplicaia Quantum GIS i, n cadrul acesteia, plugin-ul Georeferencer (n
Plugins>Georeferencer>Georeferencer, fig. 2, sau direct din toolbar)

Fig. 2
Se ncarc imaginea cu butonul din fereastra Georeferencer. Aceasta va aprea n
fereastra separat denumit Reference points, care iniial are o dimensiune prea mic
pentru a se putea lucra cu ea, dar care se poate redimensiona (fig. 3).

Fig. 3 Ferestrele de ncarcare a imaginii si de georefereniere.


n fereastra de georefereniere se pot observa urmtoarele (fig. 3):
n partea de sus:

butoanele de navigare (Zoom In, Zoom Out, Zoom to Layer i Pan) i butoanele
de Add Point i Delete Point, care se refer la punctele pe care le introduce
utilizatorul ca repere pentru georefereniere;

n partea de jos:

cmpul Transform Type, cu dou opiuni: Linear i Helmert. Acestea sunt dou
funcii ce pot fi aplicate pentru a face corespondena ntre cele dou sisteme de
coordonate: cel intern, al imaginii, i cel geografic. Mai multe detalii la
Wikipedia: Linear map i Wikipedia: Helmert transformation. Pentru acest tutorial
vom aplica o tranformare liniar.
cmpul World file, n care se va specifica numele i destinaia fiierului care va
conine datele de georefereniere. Acesta este un fiier text pe care aplicaia l
salveaz cu extensia .wld. Aceasta trebuie modificat ulterior n .tfw, dac
imaginea care s-a georefereniat este .tif sau .jgw, dac imaginea este .jpg. Acest
fiier trebuie salvat n folderul care conine imaginea, cu aceeai denumire a
imaginii i, n cazul n care imaginea se copiaz/mut ntr-un alt folder trebuie s
fie mutat i el (ca o regul general: cnd se copiaz fiiere georefereniate, fie

imagini, fie vectori, se copiaz toate fiierele cu aceeai denumire a celui mutat,
chiar dac au extensii diferite).
n continuare se introduc punctele ale cror coordonate sunt cunoscute. Aceasta se face
zoomnd pn n punctul respectiv, fcnd click cu Add point i introducnd
coordonatele de la tastatur n fereastra ce se deschide (fig. 4)

Fig. 4
Punctul va aprea apoi marcat pe hart, indiferent de nivelul de zoom, ca n fig. 5.

Fig. 5
Se continu n mod analog cu celelalte puncte (minim trei, dar cu ct sunt mai multe cu
att georeferenierea va fi mai precis, pn la maxim 8), care se vor distribui uniform pe
hart, n nici un caz pe o singur linie (fig. 6)

Fig. 6
n final, dup ce s-au marcat toate punctele de referin, se apas butonul Create, din
partea de jos a ferestrei de georefereniere. Astfel se va crea fiierul text cu datele de
georefereniere, care va trebui redenumit aa cum s-a artat mai sus (.tfw, sau .jgw),
pentru ca imaginea ce tocmai a fost georefereniat s poat fi folosit i n alte aplicaii
GIS. La ncrcarea n diferite programe de GIS se va avea grij s se specifice, acolo
unde este cazul, sistemul de coordonate n care este georefereniat imaginea, n cazul
nostru Stereo 70.

Definirea proieciei Stereo 70


pentru ILWIS
de Mihai Terente
Publicat la 18 Apr 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:

ILWIS este o soluie open-source, dezvoltat iniial de International Institute for GeoInformation Science and Earth Observation (ITC). O descriere introductiv concis a
aplicaiei ILWIS aflai aici.
Dincolo de funciile sale, ILWIS vine cu o documentaie generoas, (inclus att n helpuri, ct i ntr-un Ghid de utilizare i o colecie de 27 de studii de caz, tutoriale care
explic diferite funcii ale programului aplicate n rezolvarea unor probleme concrete de
geomorfologie, hazarde naturale, inginerie geologic, hidrologie, modelare de mediu,
planificare urban i pedologie). Fiind un program creat ntr-un mediu academic, este
foarte potrivit pentru studiu individual i ar putea fi folosit cu succes n cursurile
universitare de GIS de la noi.
ntruct programul nu ofer un fiier care s descrie proiecia Stereo 70, mi propun s
art cum se poate crea acest fiier care poate fi asociat cu fiierele .shp importate, sau cu
cele nou create.
Se observ c la importul unor fiiere oarecare .shp, lucrate n proiecie Stereo 70,
programul recunoate corect valorile coordonatelor entitilor (Boundaries of map n
fig. 1), ns nu le asociaz cu nici un sistem de coordonate.

Fig. 1 Detaliu cu proprietile unui fiier .shp proaspt importat n sistemul de fiiere
ILWIS. A se observa unknown n cmpul Coordinate System.
Este necesar crearea unui astfel de fiier i precizarea detaliilor proieciei Stereo 70. Din
meniul ILWIS se alege File>Create>Coordinate System.. (fig. 2)

Fig. 2.
n prima fereastr se alege numele sistemului de coordonate, se ofer o descriere a
fiierului (aceast posibilitate de a descrie obiectele apare peste tot n ILWIS, i se poate
dovedi foarte util cnd baza de date devine foarte mare) i se selectez tipul de sistem de
coordonate (fig. 3)

Fig. 3
Pasul urmtor: selecia tipului de proiecie: n cazul nostru Projection>StereoGraphic (fig.
4). Exist posibilitatea definirii limitelor sistemului de coordonate. Deocamdat nu am
gsit suficiente informaii ca s decid cum e mai bine. Am lsat nedefinit i am observat
c reprezentarea obiectelor nu este influenat. Oricum, aceste limite se pot defini i mai
trziu.

Fig. 4
Se selecteaz elipsoidul: Krassovsky 1940 (fig. 5). Din fericire este predefinit.

Fig. 5
Se alege datum-ul: S42 (Pulkovo 1942). Aici denumirea din parantez poate crea
confuzii, a se observa ns c datumul Pulkovo 1942 apare i el n lista ILWIS. S42 se
refer aadar la Dealul Piscului (fig. 6).

Fig. 6
Iar ultimii parametri ai sistemului de coordonate (Easting, Northing, Central Meridian,
Central Parallel i Scale Factor) se introduc manual de la tastatur, ca n fig. 7. Aceste
detalii sunt preluate de aici: baza de date a European Petroleum Survey Group (EPSG),
printr-o cutare dup Stereo 70 n cmpul Name

Fig. 7: Valoarea Scale Factor este 0.9997500000


O dat creat, acest fiier poate fi fi ataat oricrei entiti, fie raster, fie vector, prin
selecia lui n proprietile obiectului (fig. 8)

Fig. 8

Download
Un astfel de fiier de configurare, creat folosind metodologia descris anterior, poate fi
descrcat direct de aici.

Concluzii
n acest mod se poate defini orice sistem de coordonate pentru orice proiecie, dac se
cunosc urmtoarele:

tipul de proiecie
elipsoidul (iar dac nu este predefinit se poate defini de ctre utilizator)
datum-ul (idem n privina definirii de ctre utilizator)
parametrii specifici: E-ing, N-ing, Central Meridian/Parralel, Scale Factor

Toate aceste informaii se pot obine prin interogarea bazei de date EPSG.

Utilizare PostGIS. Partea I: Instalare


PostgreSQL + PostGIS.
de Ion Nedelcu
Publicat la 26 Mar 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:
Tutorialul are la baz materialul Introduction to PostGIS scris de Paul Ramsey. Varianta original
(englez) poate fi consultat la adresa http://www.foss4g2007.org/workshops/W-04/.
Adaptarea i traducerea n romn a fost gndit ca suport pentru workshop-ul Solutii
de stocare si servicii de date PostgreSQL-PostGIS, Geoserver. din cadrul conferinei
Tehnologii pentru consolidarea infrastructurii nationale de date spatiale.

Introducere
PostGIS este o extensie spatiala a PostgreSQL, serverul de baze de date relationale, care
asigura toata functionalitatea descrisa in specificatiile OpenGIS Simple feature for
SQL, functionalitate ce permite efectuarea unor interogari si analize spatiale complexe
folosind exclusiv comenzi SQL.
Ca si Oracle Spatial, DB2 Spatial si SQL Server Spatial, PostGIS poate fi numit
PostgreSQL Spatial, prin aceasta intelegandu-se ca adauga functii specifice manipularii
datelor spatiale serverului de baze de date relationale PostgreSQL, si anume:

adauga tipul de date geometry la cele existente (integer, date, varchar etc);
ofera functii care opereaza asupra datelor de tip geometry si pot furniza diverse
informatii spatiale: ST_Distance (geometry, geometry), ST_Area(geometry),
ST_Length(geometry), ST_intersects(geometry, geometry) etc;
pune la dispozitie un mecanism de indexare care permite interogari pe criterii
spatiale (de exemplu obiectele aflate intr-o zona de froma dreptunghiulara)
efectuate intr-un interval de timp foarte scurt.

In acest document se vor prezenta:

instalarea si configurarea PostgreSQL;


instalarea extensiei PostGIS;
incarcarea datelor;
indexarea spatiala si ne-spatiala;
imbunatatirea performantelor (tunning);
interogari spatiale de baza;
recomandari pentru efectuarea interogarilor spatiale.

Instalare
Kit-ul de instalare si sursele PostgreSQL pot fi descarcate de la adresa
http://www.postgresql.org
Kit-ul de instalare si sursele PostGIS pot fi descarcate de la adresa
http://postgis.refractions.net
Kit-ul de instalare si sursele GEOS pot fi decarcate de la adresa http://geos.refractions.net
Kit-ul de instalare si sursele Proj4 pot fi descarcate de la adresa http://proj.maptools.org
Instrumentul de administrare PgAdmin poate fi descarcat de la adresa
http://www.pgadmin.org.

Instalarea PostgreSQL
Pasi:
1. Dublu clic postgresqlxxx.msi;
p. 2. Selectarea limbii se selecteaza enlish;
p. 3. Acord licenta;
p. 4. Optiuni de instalare se deselecteaza PostGIS Spatial Extension;
p. 5. Instalarea PostgreSQL ca serviciu si selectarea contului sub care ruleaza servciul; se
introduc: numele serviciului / service name; numele contului / account name implicit
postgres nu trebuie sa fie un cont de administrator; domeniul contului / account domain
este suficient si numele masinii; parola contului / account password;
p. 6. Initializarea unui cluster de baze de date / databaze cluster (un grup de baze de date
controlate de un singur server PostgreSQL); se specifica numarul portului / port number
se introduce 5432; adresele masinilor care se vor putea conecta la bazele de date din acest
cluster / addresses se selecteaza accept connection on all addresses, not just localhost;
setari locale / locale se selcteaza C; codificarea caracterelor / encoding se selecteaza
SQL_ASCII; numele pentru superuser / superuser name utilizat pentru conectarea la
baza de date se va seta postgres desi nu e recomandat; parola pt superuser /
passoword se introduce postgres;

7. Selectarea limbajelor se se lecteaza cel putin PL/PgSQL este obligatoriu pentru


extensia PostGIS;

8. Selectarea modulelor suplimentare: obligatoriu se selecteaza cel putin Adminpack;


foarte utile se pot dovedi si Fuzzy String Match si TSearch2;

Instalarea PostGIS
1. Dubluc clic postgisxxxsetupxxx.exe;
p. 2. Optiuni de instalare se deselecteaza create spatial database modul in care se
creaza o baza de date cu componente spatiale se va exemplifica ulterior;

3. Selectarea locatiei de instalare se pastreaza locatia implicita;


p. 4. Introducerea datelor pentru conectare are sens numai daca la pasul anterior s-a
selectat si optiunea create spatial database; trebuie introduse date corecte, in caz contrar
programul de instalare va da un mesaj de eroare (in cazul de fata date corecte pot fi
postgres/postgres/5432).

Crearea unei baze de date spatiale


Indiferent daca la instalarea extensiei PostGIS ati optat sau nu pentru crearea unei baze de
date spatiale, pentru a crea o baza de date spatially enabled se parcurg pasii urmatori:
1. Navigati in Start/Programs/PostgreSQL/PgAdmin III
p. 2. In ierarhia de obiecte din stanga dublu clic pe PostgreSQL Database Server se
introduce parola stabilita pentru superuser

3. In ierarhia de obiecte din stanga navigati pana la selectarea sectiunii Databases;


creati o baza de date noua seletand Edit / New Object / New Database; introduceti postgis
pentru Name; postgres pentru Owner, template_postgis pentru Template; SQL_ASCII
pentru Encoding; pg_defaul pentru Tablespace;

4. Navigati in obiectele bazei de date nou create si opriti-va pe sectiunea Tables; observati
tabelele geometry_columns si spatial_ref_sys.

Decuparea unui set de date grid folosind o


masc vectorial
de Vasile Crciunescu
Publicat la 15 Mar 2008 | Seciunea: Tutoriale | Categoria: GIS/

Introducere
Urmare a unui mesaj sosit pe lista de discuii m-am hotrt s scriu un scurt tutorial
despre cum poate fi tiat un strat de tip grid folosind o masc vectorial. Voi ilustra acest
lucru folosind dou aplicaii proprietare (ArcGIS 9.x i Global Mapper 9.x) i una open
source (SAGA GIS). Pentru exemplificare am ales un set de date climatice, descrcat n
format ESRI GRID de la WorldClim.org i frontiera Romniei, descrcat de pe geospatial.org.

Global Mapper 9.x


Primul pas l reprezint ncrcarea datelor n spaiul de lucru, folosind butonul Open. n
caseta de dialog deschis, la File of type, seletai All Supported Elevation Types pentru a
ncrca datele n format GRID i Common Supported Vector Types pentru masca
vectorial. Rezultatul ar trebui s fie similar cu cel prezentat n Figura 1 (mai puin paleta
de culoare care probabil va fi diferit).

Figura 1. Datele n format GRID i vector ncrcate n Global Mapper.


n continuare, vom mri zona Romniei i vom selecta conturul vectorial folosind
instrumentul Digitizer Tool (Figura 2).

Figura 2. Selectarea conturului vectorial folosind instrumentul Digitizer Tool.


Obinerea sub-setului dorit se realizeaz cu ajutorul comenzii Export Raster and
Elevation Data din meniul File. Global Mapper poate salva datele ntr-o multitudine de
formate de fiier, mai puin ns n formatul iniial: ESRI GRID. Celor ce doresc s
analizeze rezultatul exportului n aplicaii ESRI le recomand s aleag unul din formatele
de interchange promovate de ESRI, (Figura 3):

ASCII GRID (opiunea Export Arc ASCII Grid)


FLOAT GRID (opiunea Export Float/Grid File)

Figura 3. Salvarea sub-setului grid.


Foarte important, n caseta cu opiunile de export, n tab-ul Export Bounds, va trebui s
bifai opiunea Crop to Selected Area Feature(s) (Figura 4).

Figura 4. Opiunile de export ale gridului.


Rezultatul final ar trebui s fie similar cu cel prezentat n Figura 5.

Figura 5. Rezultatul tierii stratului tip grid cu grania Romniei.

ArcGIS 9.x
ncrcarea datelor se face folosind butonul Add Data. Rezultatul ar trebui s fie similar cu
cel prezentat n Figura 6.

Figura 6. Datele n format GRID i vector ncrcate n ArcGIS.


Dac ai reuit s ncrcai gridul n ArcGIS nseamn c avei funcional extensia
Spatial Analyst. Pentru a decupa datele globale folosind conturul Romniei vom recurge

la un mic truc, ajutai de opiunile Spatial Analyst. Mai nti va trebui s facem dou setri
n caseta Spatial Analyst/Options:

n tab-ul General, la Analysis Mask selectai stratul frontier (Figura 7);


n tab-ul Extent, la Analysis Extent selectai tot stratul frontier (Figura 8).

Figura 7. Setare Analysis Mask.

Figura 8. Setare Analysis Extent.


n continuare vom folosi funcionalitate Raster Calculator pentru a obine subsetul.
Acesta poate fi accesat din Spatial Analyst/Raster Calculator. n fereastra nou deschis
vei gsi stratul grid listat n caseta Layers (Figura 9).

Figura 9. Caseta Raster Calculator.


Dai dublu click pe numele stratului. Acesta va fi afiat i n caseta inferioar. Finalizai
operaiunea apsnd butonul Evaluate. Setul de date rezultat ar trebui s fi similar cu cel
prezentat n Figura 10.

Figura 9. Rezultatul tierii stratului tip grid cu grania Romniei.


Pentru a salva rezultatul n format ESRI GRID dai click dreapta pe numele stratului grid
rezultat i selectai Data/Make Permanent (Figura 10).

Figura 10. Salvarea rezultatului sub form de fiier ESRI GRID.

SAGA GIS 2.x


Datele de tip ESRI GRID pot fi ncrcate n SAGA prin intermediul modulului GDAL:
Modules/File/Grid/GDAL/Import Raster via GDAL (Figura 11).

Figura 11. Caseta de import a datelor ESRI GRID prin intermediul modulului GDAL.
Masca vectorial se ncarc ceva mai simplu, folosind comanda File/Shapes/Load
Shapes. O dat ncrcate, datele pot fi reprezentate ca n Figura 12.

Figura 12. Datele n format GRID i vector ncrcate n SAGA GIS.

Din experin am observat c funcia de decupare a gridului, folosind o masc vectorial,


determin instabilizarea aplicaiei atunci cnd avem de a face cu un grid de dimensiuni
mari, aa cum este cazul gridului descrcat de la worldclim.org. Pentru a contracara acest
comportament vom extrage un subset dreptunghiular din gridului de intrare, lucru posibil
cu ajutorul funciei Modules/Grid/Tools/Constructions/Cutting [interactive]. Aadar
activai aceast funcie (Figura 13) indicnd n caseta de dialog gridul baz (Figura 14),
mrii zona din jurul Romniei folosind instrumentul Zoom, selectai instrumentul Action
(situat n stnga instrumentului Zoom i simbolizat printr-o sgeat) i desenai cu acesta
un dreptunghi care s ncadreze frontiera rii (sau a zonei de interes), confirmai zona
selectat n caseta de dialog proaspt deschis (Figura 15).

Figura 13. Apelarea funciei Cutting.

Figura 14. Selectarea gridului pentru care se aplic funcia Cutting.

Figura 15. Confirmarea zonei de aplicare a funciei Cutting.


Rezultatul va fi un nou grid, cu aceeai rezoluie spaial dar cu extinderea limitat la
dreptunghiul desenat pe ecran. n continuare vom folosi acest grid pentru a-l decupa cu
ajutorul frontierei. De aceast dat vom folosi funcia Modules/Shapes/Grid/Clip Grid
with Polygon (Figura 16). n caseta de dialog deschis se vor indica, ca date de intrare,
gridul proaspt obinut i masca vectorial (Figura 17).

Figura 16. Apelarea funciei Clip Grid with Polygon.

Figura 17. Selectarea datelor de intrare pentru funcia Clip Grid with Polygon.
Rezultatul ar trebui s fie similar cu cel prezentat n Figura 18. Mai departe, acesta poate
fi convertit n alte formate de fiier folosind modulul de export.

Figura 18. Rezultatul tierii stratului tip grid cu grania Romniei.

Manipularea datelor spaiale folosind


GDAL. I Date raster
de Cristian Balint
Publicat la 14 Feb 2008 | Seciunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:

Introducere
GDAL (GDAL Geospatial Data Abstraction Library) este o librarie opensource pentru
manipularea datelor geospatiale, atat in format raster cat si vector. Aceasta este compusa
dintr-o suita de tooluri command line, pe care le vom prezenta in acest articol, si din
cateva API-uri conexe ce permit dezvoltarea unor scripturi/tooluri in orice limbaj de
comoditate Perl, Python, Java, sau limbaje precum C / C++ / C#.
Libraria suporta orice platforma Uni(x), precum si platforme Win32 sau Mac OS. GDAL
este publicat sub licenta Public Domain, codul sursa sau distributiile binare pentru Linux
si Win32 putand fi descarcat de pe site-ul http://www.gdal.org.
Suita GDAL este considerata la ora actuala cea mai puternica si vasta suita de manipulare
raster/vector, stand la baza multor softuri proprietare, fiind adoptat si integrat in solutiile
GIS ale unor companii foarte cunoscute precum: ESRI, Leica, GlobalMapper, sau in
celebrul Google Earth.
GDAL se detaseaza net de orice adversar prin numarul mare de formate raster si vector
suportate. Cele mai importante formate de date spatiale, precum GeoTiff, ERDAS Img,
ESRI Shapefile, sunt foarte bine implementate si optimizate la manipulare. GDAL
implementeaza suport solid si extensiv pentru formate non-spatiale, cum sunt formatele si
derivatele posibile de rasteri gen BMP, PNG, JPEG, TIFF. Totodata, GDAL
implementeaza sintagma SQL atat pentru metadatele (ex: .dbf, .tab) ce vin atasate unor
formate vectoriale cat si suport pentru conexiuni directe la servere SQL, atat opensource
cat si proprietare. GDAL mai suporta manipularea directa a materialelor disponibile
online via map servere ce implementeaza protocolul WMS.
Modulului de transformare a coordonatelor utilizeaza baza de date EPSG
(http://www.espg.org), disponibila si aceasta sub o licenta gratuia, cu anumite restrictii,
perfect de inteles, la capitolul re-distribuire/alterare. Baza EPSG cuprinde un numar
impresionant de sisteme de coordonate, inclusiv cele romanesti, orice profesionist putand
regasi aici toate transformarile si datum-urile necesare.

O lista detailata a formatelor spatiale raster suportate de GDAL se gaseste la


http://www.gdal.org/formats_list.html. Lista similara pentru cele vectoriale poate fi
accesata la http://www.gdal.org/ogr/ogr_formats.html. Site-ul contine si documentatia
integrala GDAL (mai putin exemplele de utilizare).
Suita GDAL este inclusa in distributii linux precum Fedora, Debian sau Gentoo,
impreuna cu librariile EPSG. Mai mult, suita este introdusa in path-urile de executie
pentru a usura munca celuia care il folseste si a-l scuti de instalari anevoioase si
extensive. Manualele aferente sunt disponibile prin celebra comanda man, nefiind
necesara accesarea on-line site-urilor GDAL sau EPSG.
Pentru platforme Win32 exista un re-pack, intitulat FWTools si intocmit de insusi autorul
GDAL: Frank Warmerdam, disponibil gratuit pentru download pe site-ul
http://fwtools.maptools.com. FWTools functioneaza impecabil in conjunctie cu mediul
Cygwin (http://cygwin.com), o consola foarte utila pentru cei care nu vor sa renunte la
platforma Windows si doresc in acelasi timp si un mediu de scripting pentru interpretorul
de comenzi bash, intr-o fereastra scalabila la orice dimensiuni, net superior consolei
DOS disponibila nativ in Win32.
In acest prim articol o sa incercam sa introducem doar partea de raster, urmand ca in
articolele viitoare sa prezentam extensiv si partea vectoriala, respectiv partea de integrare
in scripturi de uz general.

GDAL in actiune
Vom incepe prin a descrie exact ce contine suita GDAL. Din punct de vedere raster avem:

gdalinfo afiseaza informatii despre un obiect/fisier raster;


gdal_translate converteste obiecte raster dintr-un format de fisier in altul;
gdaladdo adauga preview/piramida de previzualizare la un raster;
gdalwarp converteste un obiect raster dintr-o proiectie in alta;
gdaltindex genereaza un index al subseturilor pentru utilizarea in Mapserver;
gdal_contour extrage curbe nivel din obiecte raster de elevatie;
rgb2pct.py converteste un obiect raster din 24 biti RGB in 8 biti indexat;
pct2rgb.py converteste un obiect raster din 8 biti indexat in 24 biti RGB;
gdal_merge.py combina mai multe obiecte raster intr-un singur obiect raster;
gdal2tiles.py creeaza o structura TMS pentru vizualizare web KML (tip google);
gdal_rasterize rasterizeaza vectori intr-un singur obiect/fisier raster;
gdaltransform transforma coordonate dintr-un sistem in altul;
nearblack converteste pixelii frontiera cu nuante apropiate de alb sau negru in
valori exacte alb/negru;
gdal_retile.py reconstruieste piramidele pentru un set de subseturi (tile-uri);
gdal_grid interpoleaza seturi de date dispersate pentru a obtine un grid;
gdal-config obtine diverse informatii referitoare la libraria GDAL instalata
(disponibila doar pe platforme Unix);

Din punct de vedere vectorial avem:

ogrinfo afiseaza detalii despre obiectele vectoriale;


ogr2ogr converteste/transforma/reproiecteaza obiecte vectoriale;
ogrtindex creeaza poligoane vectoriale dupa extendul spatial al obiectelor raster.

In continuare vom folosi notiunea de obiect pentru a face referire catre un set de date
raster sau vector. Consideram ca termenul obiect este mai corect decat cel de fisier,
deoarece, de multe ori, un strat este format dintr-un set de fisiere (ex: tif+tfw sau
shp+shx+dbf). Mai mult, termenul fisier nu acopera satisfacator cazul staturile publicate
via WMS (un strat al unui mapserver de examplu). In concluzie, notiunea de obiect se
refera la un fisier sau grup de fisiere ce compun rasterul/vectorii, totoadata se refera la
posibilitatea de fi local pe hardisk sau remote via http:// sau chiar WMS.

gdalinfo
Este un utilitar foarte prietenos ce ne permite sa aflam toate informatiile despre un
fisier/obiect raster, idiferent daca acesta este fisier local sau este remote via http sau
WMS. gdalinfo, ca si celelalte utilitare GDAL, face intodeauna abstractie de locatie si
executa in mod similar input-ul.
In continuare va prezentam un exemplu de utilizare gdalinfo pe un obiect aflat remote:
$ gdalinfo.exe http://earth.unibuc.ro/images/austrians/p_39_47_100.jpg
Driver: JPEG/JPEG JFIF
Files: none associated
Size is 3729, 5139
Coordinate System is `'
Image Structure Metadata:
INTERLEAVE=PIXEL
COMPRESSION=JPEG
Corner Coordinates:
Upper Left (
0.0,
0.0)
Lower Left (
0.0, 5139.0)
Upper Right ( 3729.0,
0.0)
Lower Right ( 3729.0, 5139.0)
Center
( 1864.5, 2569.5)
Band 1 Block=37291 Type=Byte, ColorInterp=Red
Image Structure Metadata:
COMPRESSION=JPEG
Band 2 Block=37291 Type=Byte, ColorInterp=Green
Image Structure Metadata:
COMPRESSION=JPEG
Band 3 Block=37291 Type=Byte, ColorInterp=Blue
Image Structure Metadata:
COMPRESSION=JPEG

Din rezultat aflam ca e vorba de un obiect raster, fara proiectie specificata, in trei benzi
RGB, cu compresia de tip JPG si dimensiune de 37295139 pixeli. Pentru interpretare

GDAL a folosit driverul generic raster JPEG (jfif). Practic acest obiect este o poza negeoreferentiata.
Sa vedem un exemplu de obiect spatial adevarat, copiat local pe HDD de pe site-ul
earth.unibuc.ro (mai exact linkul http://earth.unibuc.ro/download/datele-landsat-etm-instereo701):
$ gdalinfo.exe RGB321-L-34-020.tif
Driver: GTiff/GeoTIFF
Files: RGB321-L-34-020.tif
Size is 2699, 2659
Coordinate System is:
LOCAL_CS[ Geocoding information not available Projection Name = Unknown
Units = other GeoTIFF Units = other,
UNIT[unknown,1]]
Origin = (235438.213641703130000,691205.184220034980000)
Pixel Size = (14.590382532428649,-14.590382532428643)
Metadata:
AREA_OR_POINT=Area
TIFFTAG_SOFTWARE=IMAGINE TIFF Support
Copyright 1991 1999 by ERDAS, Inc. All Rights Reserved
@(#)$RCSfile: etif.c $ $Revision: 1.10.1.9.1.9.2.11 $ $Date: 2004/09/15
18:42:01EDT $
TIFFTAG_XRESOLUTION=1
TIFFTAG_YRESOLUTION=1
TIFFTAG_RESOLUTIONUNIT=1 (unitless)
Image Structure Metadata:
INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left ( 235438.214, 691205.184)
Lower Left ( 235438.214, 652409.357)
Upper Right ( 274817.656, 691205.184)
Lower Right ( 274817.656, 652409.357)
Center
( 255127.935, 671807.271)
Band 1 Block=6464 Type=Byte, ColorInterp=Red
Band 2 Block=6464 Type=Byte, ColorInterp=Green
Band 3 Block=6464 Type=Byte, ColorInterp=Blue

Din rezultat reise ca avem un obiect GeoTiff, proiectia nu este cunoscutata, dar din
coordonatele extend-ului banuim ca este vorba de Stereo70. Acest obiect a fost produs si
exportat in suita de softuri ERDAS. Obiectul este un raster color, cu trei benzi RGB,
necomprimat, iar sisteml de coordonate din header nu este declarat sau este neinterpretabil conform topologiei EPSG.
Ultimul exemplu realizat pe un raster de elevatie de la NASA:
$ wget ftp://e0srp01u.ecs.nasa.gov/srtm/version2/SRTM3/Eurasia/N46E038.h
gt.zip
$ unzip -e N46E038.hgt.zip
$ gdalinfo.exe N46E038.hgt
Driver: SRTMHGT/SRTMHGT File Format

Files: N46E038.hgt
Size is 1201, 1201
Coordinate System is:
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563,
AUTHORITY["EPSG","7030"]],
TOWGS84[0,0,0,0,0,0,0],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,
AUTHORITY["EPSG","9108"]],
AXIS["Lat",NORTH],
AXIS["Long",EAST],
AUTHORITY["EPSG","4326"]]
Origin = (71.999583333333334,1.000416666666667)
Pixel Size = (0.000833333333333,-0.000833333333333)
Corner Coordinates:
Upper Left ( 37.9995833, 47.0004167) ( 37d59'58.50"E, 47d 0'1.50"N)
Lower Left ( 37.9995833, 45.9995833) ( 37d59'58.50"E, 45d59'58.50"N)
Upper Right ( 39.0004167, 47.0004167) ( 39d 0'1.50"E, 47d 0'1.50"N)
Lower Right ( 39.0004167, 45.9995833) ( 39d 0'1.50"E, 45d59'58.50"N)
Center
( 38.5000000, 46.5000000) ( 38d30'0.00"E, 46d30'0.00"N)
Band 1 Block=12011 Type=Int16, ColorInterp=Undefined
NoData Value=-32768
Unit Type: m

Avem un set de date SRTM, format HGT, sistem WGS84, unitate de masura grade, o
singura banda pe 16 biti, rezolutia spatiala de 0.00083 grade per pixel.

gdal_translate
Tool pentru conversie inter-formate raster, cu capabilitati de decupaj dupa extend-ul
specificat de utilizator, fie in pixeli, fie in unitatile proiectiei obiectului raster dat. Un
dezavantaj la acest tool este ca opereaza pe un singur obiect/fisier inputat, lucru logic
daca avem in vedere menirea in sine a utilitarului. Sa-l analizam mai de aproape:
$ gdal_translate
Usage: gdal_translate [help-general]
[-ot {Byte/Int16/UInt16/UInt32/Int32/Float32/Float64 CInt16/CInt32/CFloa
t32/CFloat64}] [-strict]
[-of format] [-b band] [-outsize xsize] ysize[]
[-scale [src_min src_max [dst_min dst_max]]]
[-srcwin xoff yoff xsize ysize] [-projwin ulx uly lrx lry]
[-a_srs srs_def] [-a_ullr ulx uly lrx lry] [-a_nodata value]
[-gcp pixel line easting northing [elevation]]*
[-mo "META-TAG=VALUE"]* [-quiet] [-sds]
[-co "NAME=VALUE"]*
src_dataset dst_dataset

In linii mari, utiliarul face urmatoarele actiuni:

converteste dintr-un format in altul, acceptand parametri specifici formatului de


iesire;
decupeaza dupa un extend/fereastra specificat de utilizator;
adauga puncte de control (georeferentiere) pe raster;
re-asigneaza adancime de biti, chiar prin interpolare daca este necesar;
asigneaza valori de transparenta;
manipuleaza benzile ce compun rasterul (le scoate doar daca e necesar);
manipuleaza interpretarea benzilor tematica/atematica/elevatie/infrarosu ce
compun rasterul.

Vom merge mai departe cu exemple concrete. In exemplul al doilea de la gdalinfo am


remarcat ca obiectul GeoTiff studiat nu avea informatie spatiala si nu era comprimat. Cu
ajutorul unor comenzi simple putem corecta aceste aspecte:
$ gdal_translate -a_srs EPSG:31700 RGB321-L-34-020.tif -co compress=lzw
-of GTiff L-34-020.TIF
Input file size is 2699, 2659
0102030405060708090100 %u2013 done.

Prima constatare este legata de viteza si performanta de executie. Din experienta


personala am constatat cu stupoare ca obiecte multi Giga-byte pot fi manipulate cu o
usurinta si o viteza fantastica, incomparabila cu al unui vendor comercial, ce ofera o
interfata mult prea lenesa pentru asa ceva.
Ce s-a obtinut? Sa vedem cu gdalinfo:
$ gdalinfo L-34-020.TIF
Driver: GTiff/GeoTIFF
Files: L-34-020.TIF
Size is 2699, 2659
Coordinate System is:
PROJCS["unnamed",
GEOGCS["Dealul Piscului 1970",
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433]],
UNIT["metre",1,
AUTHORITY["EPSG","9001"]],
AUTHORITY["EPSG","31700"]]
Origin = (235438.213641703130000,691205.184220034980000)
Pixel Size = (14.590382532428649,-14.590382532428643)
Metadata:
AREA_OR_POINT=Area
TIFFTAG_SOFTWARE=IMAGINE TIFF Support
Copyright 1991 1999 by ERDAS, Inc. All Rights Reserved
@(#)$RCSfile: etif.c $ $Revision: 1.10.1.9.1.9.2.11 $ $Date: 2004/09/15
18:42:01EDT $
TIFFTAG_XRESOLUTION=1
TIFFTAG_YRESOLUTION=1
TIFFTAG_RESOLUTIONUNIT=1 (unitless)
Image Structure Metadata:

COMPRESSION=LZW
INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left ( 235438.214, 691205.184)
Lower Left ( 235438.214, 652409.357)
Upper Right ( 274817.656, 691205.184)
Lower Right ( 274817.656, 652409.357)
Center
( 255127.935, 671807.271)
Band 1 Block=26991 Type=Byte, ColorInterp=Red
Band 2 Block=26991 Type=Byte, ColorInterp=Green
Band 3 Block=26991 Type=Byte, ColorInterp=Blue

Primul avantaj este declararea clara in obiect a proiectiei: EPSG:31700 (Dealul Piscului
1970). Orice copie a fisierului, data oricui, va fi cu siguranta interpretata corect de catre
orice aplicatie GIS compatibila EPSG. Pentru mai multe detalii referitoare la proiectiile
incluse in baza de date EPSG va invitam sa sa consultati http://www.spatialreference.org,
un motor web ce permite cautare prin baza de date, fiind extrem de util pentru clarificarea
codului si denumirii unui anumit sistem de coordonate.
Sa vedem putin mai departe diferenta de marime in obiectul rezultat:
$ ls -lh RGB321-L-34-020.tif L-34-020.TIF
+ 1 cbalint
None 17M Jan 30 16:21 L-34-020.TIF
rwx-+ 1 Administrators None 22M Aug 25 19:59 RGB321-L-34-020.tif

Am comprimat obiectul raster folosind algoritmul LZW (zip) si am castigat 5Mb spatiu
de stocare, fara sa alteram vreun pixel, LZW fiind o compresie fara pierdere de calitate
(lossless).
Alternativ, am fi putut folosi compresia DEFLATE sau chiar JPEG. Sa vedem ce obtinem
cu DEFLATE (o varianta zip mai agresiva):
$ gdal_translate-a_srs EPSG:31700 RGB321-L-34-020.tif -co compres
s=deflate -co zlevel=9 -of GTiff L-34-020.TIF
$ ls -lh RGB321-L-34-020.tif L-34-020.TIF
+ 1 cbalint
None 15M Jan 30 16:25 L-34-020.TIF
rwx-+ 1 Administrators None 22M Aug 25 19:59 RGB321-L-34-020.tif

De data aceasta castigul este de 7Mb, ceea ce este semnificativ, avand in vedere ca am
putea avea sute de rasteri de acest gen, sau poate cateva mii. Problema este ca DEFLATE,
in comparatie cu LZW, nu este interpretat si acceptat de toate aplicatiile GIS existente.
Atentie deci la conversii, GDAL poate face multe minuni dar nu este garantata
interoperabilitatea cu alte aplicatii, in speta cu cele proprietare. De aceea este bine de
realizat un test prealabil, care sa asigure utilizatorul ca formatul produs este in regula si
satisfacator pentru stocare si manipulare. Pentru a vedea mai multi parametri acceptati de
driverul GeoTiff, sau alte posibile drivere de iesire, puteti apela manualul inclus sau cel
online (ex.: pt geotiff, http://www.gdal.org/frmt_gtiff.html), unde se mentioneza pentru
fiecare format compresile acceptate. Pentru GeoTiff mai remarcam CCIT, o compresie

folosita in facsimil, potrivita pentru benzile alb/negru, cu adancime 1bit, putandu-se


obtine compresii lossless la rate extrem de mari.
Un alt exemplu ar fi sa georeferentiem plansa raster din primul exemplu de la sectiunea
gdalinfo. Pentru acest lucru vom avea nevoie de o aplicatie de editare a imaginilor, cu
ajutorul careia vom afla coordonatele in pixeli ale punctelor de control folosite la
georeferentierea hartii. Personal am folosit GIMP, dar orice alt soft de manipulare a
imaginilor raster este bun. Probabil, in mod ironic, in Paintbrush sau Irfanview se puteau
depista mai rapid coordonatele in pixeli ale rasterului. Pentru acest pas se poate dezvolta
o tehnica foarte rapida, care sa ne permita automatizarea proceseului. De exemplu GIMP
ar putea fi folosit pentru a deschide un calup de imagini ne-referentiate si adaugarea a
cate unui pixel singular, de o anumita culoare, sa zicem in chiar in layerul de
transparenta, pixel care cu un tool din command line poate fi reperat si i se poate asocia o
coordonata calculata dupa logica de numerotare a planselor. Aici incap multe discutii dar
nu vom intram in detalii ci doar vom concluziona ca procesul se poate automatiza.
Revenind la exemplul nostru, am constatat in GIMP ca plansa
http://earth.unibuc.ro/images/austrians/p_39_47_100.jpg are urmatoarele puncte de
control pixel>coordonate:

338, 85 > 38.5, 47.5


3620, 220 > 39.5, 47.5
3442, 5061 > ,39.5, 46.5
98, 4912 > 38.5, 46.5

Astfel ca putem trece la georeferentierea pozei:


$ gdal_translate p_39_47_100.jpg -gcp 338 85 38.5 47.5 -gcp 3620 220 39.
5 47.5 -gcp 3442 5061 39.5 46.5 -gcp 98 4912 38.5 46.5 -of GTiff -co com
press=lzw p_39_47_100.TIF
Input file size is 3729, 5139
0102030405060708090100 done.

In felul acesta am obtinut un obiect raster in format GeoTiff cu puncte de control:


$ gdalinfo p_39_47_100.TIF
Driver: GTiff/GeoTIFF
Files: p_39_47_100.TIF
Size is 3729, 5139
Coordinate System is `
GCP Projection =
GCP[ 0]: Id=1, Info=(338,85) -> (38.5,47.5,0)
GCP[ 1]: Id=2, Info=(3620,220) -> (39.5,47.5,0)
GCP[ 2]: Id=3, Info=(3442,5061) -> (39.5,46.5,0)
GCP[ 3]: Id=4, Info=(98,4912) -> (38.5,46.5,0)
Image Structure Metadata:
COMPRESSION=LZW
INTERLEAVE=PIXEL

Corner Coordinates:
Upper Left (
0.0,
0.0)
Lower Left (
0.0, 5139.0)
Upper Right ( 3729.0,
0.0)
Lower Right ( 3729.0, 5139.0)
Center
( 1864.5, 2569.5)
Band 1 Block=37291 Type=Byte, ColorInterp=Red
Band 2 Block=37291 Type=Byte, ColorInterp=Green
Band 3 Block=37291 Type=Byte, ColorInterp=Blue

Remarcam ca acest obiect nu contine un sistem de coordonate sau unitate de masura dar
contine punctele de control inserate pentru fiecare punct arondat unei valoari in
coordonate geografice. GeoTiff-ul a fost comprimat LZW pentru economie de spatiu.
Vom incerca sa asignam si un sistem de coordonate. Pentru aceasta ne vom uitam la
motorul EPSG online. Aici am gasit un echivalent pentru sistemul austro-ungar, denumit
Ferro si avand codul EPSG:4805: http://www.spatialreference.org/ref/epsg/4805/. Data
fiind lipsa detaliilor asupra plansei este destul de greu sa apreciem daca sistemul
identificat este cel mai bun posibil, dar cu siguranta pentru exemplul nostru este suficient.
$ gdal_translate p_39_47_100.jpg -gcp 338 85 38.5 47.5 -gcp 3620 220 39.
5 47.5 -gcp 3442 5061 39.5 46.5 -gcp 98 4912 38.5 46.5 -of GTiff -co com
press=lzw -a_srs EPSG:4805 p_39_47_100.TIF
Input file size is 3729, 5139
0102030405060708090100 done.

$ gdalinfo p_39_47_100.TIF
Driver: GTiff/GeoTIFF
Files: p_39_47_100.TIF
Size is 3729, 5139
Coordinate System is `
GCP Projection = GEOGCS[MGI (Ferro),DATUM[unknown,SPHEROID[unretrie
vable using WGS84,6378137,298.257223563]],PRIMEM[Greenwich,0],UNIT[
degree,0.0174532925199433],AUTHORITY[EPSG,4805]]
GCP[ 0]: Id=1, Info=(338,85) -> (38.5,47.5,0)
GCP[ 1]: Id=2, Info=(3620,220) -> (39.5,47.5,0)
GCP[ 2]: Id=3, Info=(3442,5061) -> (39.5,46.5,0)
GCP[ 3]: Id=4, Info=(98,4912) -> (38.5,46.5,0)
Metadata:
AREA_OR_POINT=Area
Image Structure Metadata:
COMPRESSION=LZW
INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left (
0.0,
0.0)
Lower Left (
0.0, 5139.0)
Upper Right ( 3729.0,
0.0)
Lower Right ( 3729.0, 5139.0)
Center
( 1864.5, 2569.5)
Band 1 Block=37291 Type=Byte, ColorInterp=Red
Band 2 Block=37291 Type=Byte, ColorInterp=Green
Band 3 Block=37291 Type=Byte, ColorInterp=Blue

De aceasta data remarcam ca avem inclusa atat proiectia cat si punctele de control, in
concluzie avem un obiect raster integru si transferabil oricui fara prea multe note de
explicatii asupra fisierului. Cine este curios poate citi inapoi, utilizand gdalinfo,
modalitatea in care el a fost georeferentiat si punctele de control utilizate.
Observatie
Nu toate aplicatiile GIS accepta puncte de control, atentie deci la aceasta modalitate de a
stoca obiecte spatiale raster. Partea buna la aceasta metoda de inserare a punctelor de
control este ca se obtine un singur fisier, in starea nativa si nealterata a imaginii, fara se
deformeaze pixelii, la care se adauga in header informatiile spatiale sub forma unor
puncte, lasand mai departe la latitudinea utilizatorilor de a-si alege algoritmul preferat si
suita GIS preferata de a aduce/exporta rasterul la forma geo-referentiata finala.

gdalwarp
Utilitar pentru reproiectia datelor spatiale. Sa facem cunostinta mai indeaproape cu
capabilitatile acestui utilitar:
$ gdalwarp
Usage: gdalwarp [help-general] [formats]
[-s_srs srs_def] [-t_srs srs_def] [-order n] ] [-tps] [-et err_threshold
]
[-te xmin ymin xmax ymax] [-tr xres yres] [-ts width height]
[-wo NAME=VALUE] [-ot Byte/Int16/...] [-wt Byte/Int16]
[-srcnodata value [value]] [-dstnodata value [value]] -dstalpha
[-r resampling_method] [-wm memory_in_mb] [-multi] [-q]
[-of format] [-co NAME=VALUE]* srcfile* dstfile
Available resampling methods: near (default), bilinear, cubic, cubicspli
ne, lanczos.

Practic gdalwarp permite:

reproiectarea dintr-un sistem de proiectie in altul, pentru orice format raster de


intrare/iesire;
decuparea dupa o fereastra predefinita;
re-esantionarea unui raster la o scara mai redusa;
manipularea transparentei;
posibilitatea de selectarea a algoritmului de interpolare si re-esantionare a
pixelilor in cadrul oricarui proces de manipulare;

Pentru exemplificare vom incerca sa reproiectam plansa SRTM, utilizata in exemplul


anterior, din WGS84 (cod EPSG:4326) in Stereo70 (cod EPSG:31700), iar rezultatul il
vom salva in format GeoTiff, comprimat LZW, folosind un algoritm de interpolare a
pixelilor cat mai fidel, sa zicem lanczos.
$ gdalwarp.exe -t_srs EPSG:31700 -r lanczos -of GTiff -co compress=LZW N
46E038.hgt N46E038-st70.TIF

Creating output file that is 1188P x 1541L.


Processing input file N46E038.hgt.
Using internal nodata values (eg. -32768) for image N46E038.hgt.
0102030405060708090100 done.

Mai departe vom reproiecta si plansa din sistemul Ferro, cu puncte de control GCP,
generata de noi la sectiunea gdal_translate, folosind algoritmul lanczos pentru
resampling si proiectia Stereo70. Deoarece avem de aface cu puncte de control in plansa
noastra vom lasa la latitudinea gdalwarp sa aleaga gradul trasformarii affine, de
asociere a pixelilor pe domeniu spatial. Cel mai probabil GDAL va alege gradul 1, pentru
transformarea affine cu 4 puncte de control, atatea cate am declarat anterior, pe care o va
reproduce impecabil, iar calitatea pixelilor adiacenti si propagarea culorilor spre
invecinatati (resampling-ul) va fi una net superioara datorita metodei lanczos alese la reesantionare pe matricea de pixeli. Din pacate, in acest exemplu, calitatea originala a
plansei este relativ slaba, ceea ce micsoreaza sansele de a observa efectelele exacte ale
sampler-ului lanczos.
$ gdalwarp -t_srs EPSG:31700 p_39_47_100.TIF -r lanczos -of GTiff -co co
mpress=LZW p_39_47_100-st70.TIF
Creating output file that is 4380P x 5596L.
Processing input file p_39_47_100.TIF.
0102030405060708090100 done.

Procesul dureaza ceva mai mult datorita sampler-ului lanczos, de inalta calitate,
recomandat in special pentru aerofotograme de mare rezolutie, format RGB pe 24 biti.
Plansa rezultata, in proiectie Stereo70, este prezentata in Figura 1.

Inca de la prima vedere se pot ramarca unele inconveniente. Este vorba de cele trei
chenare in surplus, unul negru, al doilea alb, plus chenarul inutil al plansei insasi, unde
apar gradatiile. Chenarul negru apare in urma trasformarii in Stereo70. Asta deoarece
rasterul are forma unei fereastre rectangulare, ne-existand fisiere raster cu forma
iregulata. Chenarul alb apare din urma scanarii plansei. Ambele pot constitui un obstacol
atunci se ridica problema alipirii cu o plansa adiacenta. Ultimul exemplu isi propune, in
patru pasi, sa combata elegant aceste neajunsuri cu ajutorul gdal_translate si
gdalwarp.

georeferentiere imagine

$ gdal_translate p_39_47_100.jpg -gcp 338 85 38.5 47.5 -gcp 3620 220 39.
5 47.5 -gcp 3442 5061 39.5 46.5 -gcp 98 4912 38.5 46.5 -of GTiff -co com
press=lzw -a_srs EPSG:4805 p_39_47_100.TIF
Input file size is 3729, 5139
0102030405060708090100 done.

eliminarea chenarului cu gradatii, folosind optiunea -te pentru a specifica fereastra


de decupaj in grade

$ gdalwarp. -te 38.5 46.5 39.5 47.5 p_39_47_100.TIF


noborder.TIF
Creating output file that is 4037P x 4037L.
Processing input file p_39_47_100.TIF.
0102030405060708090100 done.

p_39_47_100-

reproiectare in Stereo70

$ gdalwarp -t_srs EPSG:31700 p_39_47_100-noborder.TIF p_39_47_100st70.TIF


Creating output file that is 4006P x 5208L.
Processing input file p_39_47_100-noborder.TIF.
0102030405060708090100 done.

asociere culoare negru (cod culoare = #0) ca fiind transparenta

$ gdal_translate. -a_nodata 0 p_39_47_100-st70.TIF -co compress=lzw p_3


9_47_100-st70-noborder.TIF
Input file size is 4006, 5208
0102030405060708090100 done.

Verificam rezultatul:
$ gdalinfo.exe p_39_47_100-st70-noborder.TIF
Driver: GTiff/GeoTIFF
Files: p_39_47_100-st70-noborder.TIF
p_39_47_100-st70-noborder.aux
p_39_47_100-st70-noborder.rrd
Size is 4006, 5208
Coordinate System is:
PROJCS[unnamed,
GEOGCS[Dealul Piscului 1970,
DATUM[unknown,
SPHEROID[unretrievable using WGS84,6378137,298.257223563]],
PRIMEM[Greenwich,0],
UNIT[degree,0.0174532925199433]],
UNIT[metre,1,
AUTHORITY[EPSG,9001]],
AUTHORITY[EPSG,31700]]
Origin = (1514274.239675097900000,767631.323753058790000)
Pixel Size = (23.757760795673267,-23.757760795673267)
Metadata:
AREA_OR_POINT=Area
Image Structure Metadata:
COMPRESSION=LZW
INTERLEAVE=PIXEL
Corner Coordinates:

Upper Left ( 1514274.240, 767631.324)


Lower Left ( 1514274.240, 643900.906)
Upper Right ( 1609447.829, 767631.324)
Lower Right ( 1609447.829, 643900.906)
Center
( 1561861.035, 705766.115)
Band 1 Block=40061 Type=Byte, ColorInterp=Red
NoData Value=0
Overviews: 10021302, 501651, 251326, 126163, 6382
Metadata:
LAYER_TYPE=athematic
Band 2 Block=40061 Type=Byte, ColorInterp=Green
NoData Value=0
Overviews: 10021302, 501651, 251326, 126163, 6382
Metadata:
LAYER_TYPE=athematic
Band 3 Block=40061 Type=Byte, ColorInterp=Blue
NoData Value=0
Overviews: 10021302, 501651, 251326, 126163, 6382
Metadata:
LAYER_TYPE=athematic

Observam sintagma NoData Value=0 pe cele 3 benzi RGB, asta inseamna ca orice soft
GIS va interpreta valoarea 0 a culorii ca fiind transparenta, cel putin in aplicatiile ESRI si
ERDAS functioneaza, rasterul fiind corect afisat (Figura 2). Este mai comod sa atribuim
valoarea NoData in headerul rasterului, decat sa definim o a patra banda pe langa RGB si
s-o declaram transparenta, lucru ce se va simti in spatiul de stocare necesar, fisierul
crescand in marime datorita benzii alpha suplimentare.

Disclaimer
Acest articol este lipsit de orice drept de proprietate intelectuala restrictiva publicului,
este declarat cu drepturi depline de uz public, iar unele materiale prezentate se supun
drepturilor de autor specificate pe site-ul de provenienta http://earth.unibuc.ro. Suita
GDAL este sub licenta Public Domain compatibila cu acest articol, iar marcile
inregistrate Leica, ESRI, ERDAS, GlobbalMapper, Microsoft, Google se pot supune unor
legi prin simpla folosire a denumirii, in aceasta privinta autorul articolului declara ca nu
este afiliat sub nici un fel acestor marci, ele fiind amintite si utilizate ca denumire in scop
pur documentativ si exemplificatoriu.

S-ar putea să vă placă și