2011-01-31 5 views
3

J'ai un projet final dans MATLAB et j'ai besoin d'aide.Utilisation de ROI dans MATLAB

Je crée une interface graphique et affiche une image en utilisant la fonction imshow, maintenant je veux pour sélectionner la zone de l'image et obtenir les pixls de la zone sélectionnée.

Je connais la méthode ROI mais je ne sais pas comment l'utiliser, donc je serais très heureux si quelqu'un pouvait m'expliquer. merci.

+0

Je suis un peu sûr de ce que vous voulez. Voulez-vous savoir comment spécifier une région d'intérêt dans une image? Ou voulez-vous savoir comment utiliser le roi une fois que vous l'avez créé? – Ghaul

+0

Je n'ai toujours pas créé la région d'intérêt, donc pour votre question, j'ai besoin de savoir comment le faire. Merci. –

Répondre

5

La sélection d'une ROI est assez facile si vous avez la boîte à outils de traitement d'image. Il y a plusieurs façons de le faire, mais je recommande d'utiliser la fonction roipoly. Il suffit d'écrire:

BW = roipoly(I); 

où I est votre image. Vous serez ensuite promu pour sélectionner des points pour votre retour sur investissement. La sortie BW sera une image binaire avec la valeur 1 à l'intérieur du ROI et 0 à l'extérieur.

Pour plus d'information à regarder:

http://www.mathworks.com/help/toolbox/images/ref/roipoly.html

EDIT:

Vous pouvez utiliser la fonction imrect pour créer ROIs rectangulaire. Notez que cette fonction fonctionne sur les axes actuels, vous devez donc utiliser imshow avant imrect. La sortie de la fonction est un handle de roi, vous devez donc utiliser la fonction createMask pour extraire une image binaire.

imshow(I); 
h = imrect; 
BW = createMask(h); 

http://www.mathworks.com/help/toolbox/images/ref/imrect.html