Find a range in a matrix and rescale it

4 visualizzazioni (ultimi 30 giorni)
Ben Ma
Ben Ma il 8 Set 2021
Commentato: Ben Ma il 8 Set 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.

Risposta accettata

KSSV
KSSV il 8 Set 2021
Modificato: KSSV il 8 Set 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 Commenti
KSSV
KSSV il 8 Set 2021
Typo error...val should be used in the function rescale. Edited the answer.

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