> Divers > Analyse des images : biOps > Modifications de la géométrie des images
Modifications de la géométrie des images
Manipulation de la taille de l'image :
- imgCrop(im, 1, 10, 200, 150) : renvoie une image découpée à partir de x = 1, y = 10 et sur une largeur de 200 et une hauteur de 150.
- imgPadding(im, 250, 200) : renvoie une image plus grande que l'image initiale de largeur 250 et hauteur 200, avec l'image originale centrée et une bordure noire
- imgScale(im, 1.5, 2) : agrandit la taille de l'image d'un facteur 1.5 horizontalement et 2 verticalement :
- uniquement avec des facteurs d'échelle > 1
- par défaut, l'interpolation est cubique.
- on peut préciser une autre interpolation : imgScale(im, 1.5, 2, interpolation = "bilinear"). Valeurs possibles : cubic, bilinear, spline, nearestneighbor. On peut aussi utiliser imgCubicScale, imgSplineScale, imgBilinearScale ou imgNearestNeighborScale qui ne font qu'appeler imgScale avec le bon paramètre.
- si on veut réduire la taille de l'image, utiliser imgAverageShrink ou imgMedianShrink.
- imgAverageShrink(im, 0.5, 0.7) : réduit la taille de l'image d'un facteur 0.5 horizontalement et 0.7 verticalement en utilisant une moyenne. Les facteurs doivent être < 1 (sinon, utiliser imgScale).
- imgMedianShrink(im, 0.5, 0.7) : réduit la taille de l'image d'un facteur 0.5 horizontalement et 0.7 verticalement en utilisant une médiane. Les facteurs doivent être < 1 (sinon, utiliser imgScale).
Rotation de l'image :
- imgRotate(im, 45) : renvoie une image avec une rotation de 45 degrés dans le sens des aiguilles d'une montre.
- imgRotate(im, 45, "bilinear") : précise la méthode d'interpolation qui peut être cubic, bilinear, spline, nearestneighbor (cubic par défaut).
- On peut aussi utiliser les fonctions imgCubicRotate, imgBilinearRotate, imgSplineRotate, imgNearestNeighborRotate qui ne font qu'appeler imgRotate avec le bon paramètre.
- imgRotate90Clockwise(im) : renvoie une image avec une rotation de 90 degrés dans le sens des aiguilles d'une montre.
- imgRotate90CounterClockwise(im) : renvoie une image avec une rotation de 90 degrés dans le sens inverse des aiguilles d'une montre.
Symétrie d'une image :
- imgHorizontalMirroring(im) : renvoie l'image symétrique par une symétrie horizontale.
- imgVerticalMirroring(im) : renvoie l'image symétrique par une symétrie verticale.
Translation d'une partie d'une image :
imgTranslate(im, 1, 10, 70, 50, 20, 25) : translate une image de 20 de large sur 25 de haut à partir du point de coordonnées (1, 10) vers le point de coordonnées (70, 50).
Copyright Aymeric Duclert
programmer en R, tutoriel R, graphes en R