Azzera filtri
Azzera filtri

How to pick random values in a vector

1 visualizzazione (ultimi 30 giorni)
How to pick randomly intensities with non zero values in an image. I want to pick only two intensities. My answer should be (x1,y1) and (x2,y2) which are row and column values of particular image. Please help. Thanks.

Risposta accettata

Walter Roberson
Walter Roberson il 3 Ott 2015
idx = find(YourImage ~= 0);
randidx = idx(randperm(length(idx),2));
[x, y] = ind2sub(size(YourImage), randidx);
x1 = x(1); x2 = x(2); y1 = y(1); y2 = y(2);
Caution: when you are talking about images, x is the column number, not the row number. I left it in the order you specified, but if you try to use it to plot with you will see that what you asked for is not the way it works.
  1 Commento
Navya Snigdha Thumma
Navya Snigdha Thumma il 3 Ott 2015
It worked. Thank you very much. And thanks for the caution. I will check the order while plotting.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by