Find a range in a matrix and rescale it

3 vues (au cours des 30 derniers jours)
Ben Ma
Ben Ma le 8 Sep 2021
Commenté : Ben Ma le 8 Sep 2021
In a image, those in the range [120 230] are scaled into range [0 120].
How to do it? Thanks.
if (a>120/255) & (a<230/255)
a==0;
end
I tried something like this but it doesnt work. Thanks.

Réponse acceptée

KSSV
KSSV le 8 Sep 2021
Modifié(e) : KSSV le 8 Sep 2021
Let A be your image:
A0 = A ; % save for test
idx = A >= 120 & A<= 230 ; % get indices of required values
val = A(idx) ; % values
val_rescale = rescale(val,0,120) ; % scale the values
A(idx) = val_rescale ; % replace
  3 commentaires
KSSV
KSSV le 8 Sep 2021
Typo error...val should be used in the function rescale. Edited the answer.
Ben Ma
Ben Ma le 8 Sep 2021
Thanks a lot.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by