Effacer les filtres
Effacer les filtres

how can i extract data between 4 points in a matrix?

2 vues (au cours des 30 derniers jours)
Maayan
Maayan le 1 Oct 2013
Commenté : Maayan le 1 Oct 2013
I have a matrix and 4 vertices of a rectangle. The rectangle is not aligned with the axes,i.e the rectangle is slanted. I want to extract the data between the 4 vertices into a new matrix. How can i do it? I've been trying to do it for weeks. Thanks

Réponses (1)

Image Analyst
Image Analyst le 1 Oct 2013
Weeks? Wow. Do yo have the Image Processing Toolbox? If so, you can simply use poly2mask():
[rows, columns] = size(your2Darray);
logicalMap = poly2mask(x, y, rows, columns); % put in coords of the rectangle corners.
extractedValues = your2Darray(logicalMap);
  1 commentaire
Maayan
Maayan le 1 Oct 2013
Yes weeks,I know it's a long time- I'm new with programming codes and i'm new with matlab. In your second line you wrote columns and rows- do you mean the number of columns and rows in my rectangle? All i have is the 4 vertices of the slanted rectangle so i don't know how to calculate the number of columns and rows in it.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by