#1 Tue 19 November 2024 18:24
- alix.s
- Juste Inscrit !
- Date d'inscription: 19 Nov 2024
- Messages: 3
QGIS/Raster: determiner l axe de symetrie d un raster
Bonjour,
J'ai un fichier raster qui représente un axe de campagne sonar (axe non linéaire, les pixels représente le Z bathymétrique). Le sonar trace toujours une bande d'acquisition d'emprise équivalente (ex: 40m à gauche et 40m à droite).
Je cherche la fonction ou le traitement qui me permettra de créer l'axe de symétrique sous forme d'une ligne vectorielle directement à partir du raster.
Un grand merci à vous par avance.
Bonne soirée!
Cordialement, AS
Hors ligne
#2 Wed 20 November 2024 10:01
- Gabi63
- Juste Inscrit !
- Date d'inscription: 3 Apr 2016
- Messages: 5
Re: QGIS/Raster: determiner l axe de symetrie d un raster
Bonjour,
Je vois deux solutions si j'ai bien compris votre problème
La première :
- Binariser votre raster à l'aide de la calculatrice GDAL
- Utiliser r.thin de GRASSGIS pour en extraire l'axe médian.
Je ne sais pas si les résultats seront bien une ligne droite mais en convertissant en vecteur puis en utilisant l'algorithme "orthogonaliser" vous pourrez p-ê redresser tout ça.
La seconde - via python :
- Accéder aux dimensions du raster pour extraire la dimension perpendiculaire à l'axe de symétrie souhaité (la plus petite ?) - exemple : la largeur
- En déterminer le centroîde inférieur et supérieur (moyenne des coordonnées ou par construction d'une ligne).
- Construire une ligne avec les centroïdes.
N'hésitez pas si besoin d'aide.
Edit : En relisant je ne suis pas sur d'avoir bien compris.
Vous souhaitez extraire l'axe médian de la traînée ? En ce cas r.thin donnera de bons résultats sur votre raster brut. Il est aussi possible de vectoriser votre traînée après binarisation et d'utiliser v.voronoi.skeleton de GRASSGIS (qui souffre malheureusement d'instabilité numérique). D'autres plugins QGIS offre des possibilités de squeletisation en mode vecteur (geo simplification, hedge tools).
Gabriel
Dernière modification par Gabi63 (Wed 20 November 2024 10:07)
Hors ligne