Binary matrix to array of poitns

Hi, I have a binary image (only 0 and 1) and I want to convert it to x-y arrays.
For example:
Matrix
0 1 0 1
0 0 0 1
1 0 0 0
0 0 0 0
Obtain:
x = [1 1 2 3];
y = [2 4 4 1];
I can do it with two loops, but I'm finding something more fast. Thanks

 Accepted Answer

Stephen23
Stephen23 on 4 May 2016
Edited: Stephen23 on 4 May 2016
>> [y,x] = find(M.')
y =
2
4
4
1
x =
1
1
2
3

More Answers (1)

Do the x and y arrays have to be in that order? If not, you can do this:
[x,y] = find(A>0);

Categories

Asked:

on 4 May 2016

Edited:

on 4 May 2016

Community Treasure Hunt

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

Start Hunting!