banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oubliĂ© ?

#1 Mon 30 June 2008 10:50

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Connaitre l'orientation Vertical Mapper

Bonjour,

Je viens de realiser des cartes d'orientation avec Vertical Mapper. Pour chacune de ces cartes, des parcelles de 4 ha ont ete selectionnees. J'aimerais savoir s il est possible de connaitre l'orientation principale, secondaire ... de chaque parcelle en fonction de la couleur des pixels qui la composent (une methode plus sure que de visu).
Par exemple j'aimerai savoir si je peux connaitre le % de chaque couleur dans chacune des parcelles.

Merci beaucoup.

Hors ligne

 

#2 Mon 30 June 2008 11:52

cec_92
Participant assidu
Date d'inscription: 28 Feb 2008
Messages: 193

Re: Connaitre l'orientation Vertical Mapper

Bonjour,

Regardez l'outil "Region info" du menu de Vertical Mapper, qui permet d'avoir un certain nombre de statistiques sur des polygones.

Hors ligne

 

#3 Mon 30 June 2008 12:19

Miss T.
Participant assidu
Lieu: En pleine amazonie...
Date d'inscription: 17 Oct 2005
Messages: 294

Re: Connaitre l'orientation Vertical Mapper

Tu as deux possibilités:
- exporter des points avec la valeur des orientations (Tools > Export > points) pour chaque pixel de ta grille, puis de faire des croisements géographiques entre tes polygones et tes points.
- exporter des contours (mode polygones, tous les 5 ou 10°, selon la prĂ©cision requise) puis de faire des requĂȘtes ProportionOverlap avec les parcelles que tu as sĂ©lectionnĂ©
Tout dĂ©pend si tu veux une orientation prĂ©cise ou un ordre de grandeur (les contours + requĂȘte te donneront des classes d'orientation)

Hors ligne

 

#4 Mon 30 June 2008 15:49

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Re: Connaitre l'orientation Vertical Mapper

Merci,

La 1ere solution ne me convient pas vraiment puisqu elle ne me donne qu une orientation globale de la parcelle. Or une parcelle peut aussi bien avoir 2 ou 3 orientations différentes (je travaille sur des versants de montagnes). En fait j aimerai savoir pour une parcelle donnée, le « degré » de Sud de Nord, d Est et d Ouest. Je m étais donc tourné sur le nombre de pixels de chaque couleurs mais si il existe une autre méthode, je suis preneur.


C pourquoi la 2eme solution me parait la meilleure mais qu entends tu par classes d orientation ? Le problÚme, parce qu il y a un problÚme, c que je n arrive pas à l exécuter. Pourrais tu me détailler la méthode.

Cela vient sûrement de 2 problÚmes que je rencontre :

    - je travaille d un grid (l orientation) avec une couche vecteur (les parcelles)
                - je suis niveau dĂ©butant Ă  MapBasic. Pour info, mes commandes :

Select parcel.id, orient.id,
Proportionoverlap(parcel.obj, orient.obj)
From parcel, orient where parcel.obj intersects orient.obj
Into selection
Browse*from selection

Et enfin j aimerais (pendant que j y suis, je mets tout d un coup) que la méthode soit reproductible rapidement puisque je dois la réaliser sur plusieurs centaines de parcelles.

Merci par avance.

Hors ligne

 

#5 Mon 30 June 2008 18:30

Miss T.
Participant assidu
Lieu: En pleine amazonie...
Date d'inscription: 17 Oct 2005
Messages: 294

Re: Connaitre l'orientation Vertical Mapper

je travaille d un grid (l orientation) avec une couche vecteur (les parcelles)


CE n'est pas un problĂšme. Le mieux dans ton cas est de tout mettre en polygones ==> le croisement sera beaucoup plus facile.

Le procédé: ta grille d'orientation (si tu l'a faite par rapport au nord) et donne des directions de 0 à 360°.
Tu peux extraire des polygones avec l'outil "contour": pour cela, tu choisis le mode "Regions" et tu lui dis d'extraire des directions de 0 à 360° tous les 10° (ou tous les 90° si seules les directions globales N à E, E à S S à W et W à N t'intéressent. Tu vois ce que je veux dire?).
Cela va te donner des polygones qui couvrent ces intervalles d'orientations.

AprĂšs cela, tu fais une requĂȘte pour croiser les donnĂ©es: (proportionoverlap  *100 ==> donne des %)
Select Parcel.ID, Orient.Lower, Orient.Upper, proportionOverlap(Parcel.obj, Orient.obj) *100
from Parcel, Orient
where Parcel.Obj intersects Orient.Obj
group by Parcel.ID, Orient.Lower
into Selection

NB: pas besoin de lui dire de trier aussi par Orient.Upper: il n'y a pas deux Upper semblables (logique, non?)

Le résultat est une ligne par parcelle et par classe d'orientation:
parcelle 1 ==> entre 0 et 90° ==> 60%
parcelle 1 ==> entre 90 et 180° ==> 25%
parcelle 1 ==> entre 180 et 270° ==> 15%
parcelle 1 ==> entre 270 et 360° ==> 10%
parcelle 2 ==> entre 0 et 90° ==> 45%
parcelle 2 ==> ...

You see what I mean?

Et enfin j aimerais (pendant que j y suis, je mets tout d un coup) que la méthode soit reproductible rapidement puisque je dois la réaliser sur plusieurs centaines de parcelles.


C'est super difficile d'automatiser du Vertical Mapper avec MapBasic (personnellement, j'ai pas rĂ©ussi. J'ai utilisĂ© des subterfuges assez tordus...). Tu vas te prendre la tĂȘte, et ĂȘtre expert en MapBasic n'y aurait rien changĂ©.
Je te conseille donc de mettre toutes tes parcelles dans la mĂȘme table PUIS de faire la requĂȘte: tu auras ainsi la proportion de directions par parcelle.
Si tu veux séparer les résultats selon les parcelles, là, oui, tu pourras faire du MapBasic...

J'espĂšre t'en avoir dit assez...

Hors ligne

 

#6 Tue 01 July 2008 12:08

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Re: Connaitre l'orientation Vertical Mapper

Merci beaucoup,

J ai avancĂ© d un coup, c super. Mais il reste encore un petit problĂšme. J ai rĂ©alisĂ©, en suivant tes conseils, des classes d orientation en %. Normalement, la somme de ces % devraient atteindre 100%. Or ils se trouvent que dans aucune de mes parcelles j ai 100 %. Pire desfois la somme n atteint mĂȘme pas les 50 %.

Je me suis dis que cela pouvait venir de plusieurs inconnus :

    - toutes les valeurs n Ă©taient pas prises en compte lors de l extraction des valeurs.
    - il existe un nombre de « plats » importants (qui n auraient donc aucune orientation), or pour avoir vĂ©rifiĂ© sur les ortho et pour connaĂźtre pratiquement toutes les parcelles puisque j y ait fait mon terrain, les plateaux sont trĂšs rares voir inexistants.
    - peut ĂȘtre que ça vient des approximations lors de la crĂ©ation de la carte d orientation en fonction de l altimĂ©trie.
    - la formule utilisĂ©e (proportionoverlap) exclue d elle-mĂȘme des valeurs.

Or je ne vois pas du tout comment rectifier le tire.

Merci encore une fois !!!!!

Hors ligne

 

#7 Tue 01 July 2008 12:29

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Connaitre l'orientation Vertical Mapper

Mon opinion: le total doit ĂȘtre 100% (mĂȘme avec les plats = 0%) et s'il ne les fait pas...c'est que tu as mal Ă©crit les bornes tongue

Hors ligne

 

#8 Tue 01 July 2008 13:13

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Re: Connaitre l'orientation Vertical Mapper

Je ne pense pas que ca soit ca puisque lorsque j utilise l outil contour, mode region, le choix des bornes se fait automatiquement dans l option intervals.

En cherchant un peu plus, j ai dans ma table de %, une borne [-0,0036 ; 45[ alors que j ai bein defini la borne [0 ; 45[

Les 2 valeurs majeurs d orientation m ont l air juste. Ms pour la 3eme, elle ne depasse rarement le 1 voir 2% alors que de visu, sur la carte des contours, le % d orientation m a l air plus grand.

Hors ligne

 

#9 Tue 01 July 2008 14:43

Miss T.
Participant assidu
Lieu: En pleine amazonie...
Date d'inscription: 17 Oct 2005
Messages: 294

Re: Connaitre l'orientation Vertical Mapper

Mon opinion: le total doit ĂȘtre 100% (mĂȘme avec les plats = 0%) et s'il ne les fait pas...c'est que tu as mal Ă©crit les bornes


Hep Hep, les gars! Dans notre cas, "0" d'orientation veut dire "plein Nord" et non pas "Ă  plat"!! Dans la grille de donnĂ©es d'orientation des pentes, vĂ©rifiez bien: les surfaces Ă  plat sont des valeurs nulles et je suis prĂȘte Ă  parier que les trous dans les polygones de contours sont exactement Ă  ces endroits lĂ ....

toutes les valeurs n étaient pas prises en compte lors de l extraction des valeurs.


Si mais peut-ĂȘtre pas toute la surface. On parle ici d'orientation, de direction de pente. En effet, si le terrain est plat, c'est sĂ»r qu'il n'y aura pas de direction d'orientation (valeur nulle) et donc l'extraction de polygones fera des trous... VĂ©rifie sur une parcelle oĂč le rĂ©sultat n'est pas de 100% qu'il n'y ait pas surfaces sans polygones.

il existe un nombre de « plats » importants (qui n auraient donc aucune orientation), or pour avoir vérifié sur les ortho et pour connaßtre pratiquement toutes les parcelles puisque j y ait fait mon terrain, les plateaux sont trÚs rares voir inexistants.


C'est quoi ton MNT? IGN? SRTM? Vu la taille des pixels comparée à la taille des parcelles, le MNT n'est qu'une approximation de la réalité. Est-ce que ce ne serait pas dû à ce fait?

la formule utilisĂ©e (proportionoverlap) exclue d elle-mĂȘme des valeurs.


Tu crois vraiment qu'une fonction peut s'amuser à choisir toute seule des classes à ignorer?? La fonction ProportionOverlap calcule ses stats pour TOUTES les classes de valeurs. Mais si la classe "sans pente" ne donne pas de polygones, c'est sûr qu'il n'y aurai pas de stats pour cette classe là....

Pour parer Ă  ce problĂšme de terrain sans pente:
extrait tes contours
rend la couche modifiable
Ajoute un polygone qui couvre toute la surface du MNT, fais-en une cible, sélectionne tous les autres polygones et Modifier objet > Supprimer intérieur.
==> Ce qui reste est les surfaces Ă  pente nulle.
Là, tu peux refaire ton croisement géo: je suis sûre qu'alors la somme de tes proportions fera 100%...

Dernière modification par Miss T. (Tue 01 July 2008 14:44)

Hors ligne

 

#10 Tue 01 July 2008 15:26

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13619
Site web

Re: Connaitre l'orientation Vertical Mapper

Bien vu Miss T wink

En effet, si le terrain est plat, c'est sûr qu'il n'y aura pas de direction d'orientation (valeur nulle)


c'est toute la différence entre "Pas de données" et "0", un grand classique quand on traite des grilles raster smile

Robin.

Hors ligne

 

#11 Tue 01 July 2008 16:15

Miss T.
Participant assidu
Lieu: En pleine amazonie...
Date d'inscription: 17 Oct 2005
Messages: 294

Re: Connaitre l'orientation Vertical Mapper

Exactement.
(Maurice, un point pour moi!  tongue)

Hors ligne

 

#12 Wed 02 July 2008 10:01

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Re: Connaitre l'orientation Vertical Mapper

J utilise les donnees de l ICC (Institut Cartographique de Catalogne), beaucoup de donnees sont telechargeables sur leur site (http://www.icc.es/web/content/ca/index.html) mais bien sur, que des donnes pour la catalogne

J ai bien regardé, il n y a pas de surface sans polygone et ta methode de fin ne donne aucun "reste".

Pour la fonction, je pensais en effet qu elle ne prenait pas les valeurs nulles. Je ne pense pas que le fait que le MNT soit une approximation joue un role dans le traitement carto. En effet l approximation se fait, dans mon cas, lors de la creation des pentes. Je ne pense pas que cette approximation joue un role dans les analyses et le proportionoverlap (ms je peux totalement me planter) puisque dans chacune de mes parcelles, il y a bien une couverture de 100% de polygones donc je devrais normalement avoir un total de "100% d orientation".

Je seche completement. Meme plus une idee pour savoir ce qui ne fonctionne pas.

Hors ligne

 

#13 Wed 02 July 2008 12:52

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Connaitre l'orientation Vertical Mapper

A part le -0,0036 qui est un petit bug de VM (et qu'on peut remplacer par 0 si on y tiens mais c'est ici sans importance) , il y a un gros bug dans la requĂȘte qui pour fournir ce que l'on attend doit comporter une somme !!
Select Parcel.ID, Orient.Lower, Orient.Upper, Sum(proportionOverlap(Parcel.obj, Orient.obj) *100)
from Parcel, Orient
where Parcel.Obj intersects Orient.Obj
group by Parcel.ID, Orient.Lower
into Sel1

...avantage Maurice tongue

Hors ligne

 

#14 Wed 02 July 2008 15:09

pMat
Juste Inscrit !
Date d'inscription: 30 Jun 2008
Messages: 6

Re: Connaitre l'orientation Vertical Mapper

Yeahhhhhhhh, ca marche !!!!!!!

Merci beaucoup Miss T et Maurice, votre duel à distance m a bien aidé. Fini de se prendre la tete dessus, je vais pouvoir passer à autre chose.

Encore merci.

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo