Find a range in a matrix and rescale it

2 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)

Community Treasure Hunt

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

Start Hunting!

Translated by