MATLAB Comment convertir axe des coordonnées du pixel de coordonnées?
Quel est le meilleur moyen de la conversion de l'axe des coordonnées (par exemple celles prises par plot
ou ceux de sortie dans point1
et point2
de houghlines
) pour les coordonnées des pixels dans une image?
Je vois la fonction axes2pix dans le Mathworks de la documentation, mais il est difficile de savoir comment il fonctionne. Plus précisément, quel est le troisième argument? Les exemples qui vient de passer dans 30
, mais il est difficile de savoir où cette valeur provient de. Les explications dépend de la connaissance de plusieurs autres fonctions qui je ne sais pas.
La question connexe: L'axe des coordonnées du pixel de coordonnées? suggère d'utiliser poly2mask
, qui travaillerait pour un polygone, mais comment dois-je faire la même chose pour un seul point, ou une liste de points?
Cette question est également liée à Scripts pour Convertir des Images vers et à partir de Graphique Coordonnées, mais que le code généré une exception:
Error using /
Matrix dimensions must agree.
OriginalL'auteur dsg | 2012-06-28
Vous devez vous connecter pour publier un commentaire.
Considérons le code suivant. Il montre comment convertir des axes de coordonnées du pixel de coordonnées.
Ceci est particulièrement utile si vous tracez l'image à l'aide personnalisée XData/YData emplacement autre que celui par défaut
1:width
et1:height
. Je suis en décalage par 100 et 200 pixels en x/y les directions dans l'exemple ci-dessous.(notez comment les limites de l'axe ne commencez pas à
(1,1)
, d'où la nécessité pouraxes2pix
)OriginalL'auteur Amro
Il y a peut être un moyen intégré que je n'ai pas entendu parler, mais cela ne devrait pas être difficile de le faire à partir de zéro...
L'aide de ces valeurs, vous pouvez convertir les axes de coordonnées en pixels facilement.
Les utilisations ci-dessus
pos(1)
que le x-décalage des axes à l'intérieur de la figure. Si vous ne vous inquiétez pas à ce sujet, ne l'utilisez pas. De même, si vous le voulez en coordonnées d'écran, ajouter le x-décalage de la position obtenue parget(figure_handle,'position')
houghlines
mathworks.com/help/toolbox/images/ref/houghlines.html prend en une image binaire et les retours des structures contenant des lignes avec (x, y). C'est le cas je suis en train de gérer. Comment font-ils?Depuis
houghlines
natif opère sur une image (matrice 2D) j'imagine que leX,Y
paire est probablement déjà dans l'espace de pixel, car il n'y a pas de figure/axes de l'objet (et donc pas de transformation de l'espace de l'écran) à prendre en compte.OriginalL'auteur tmpearce