Scaling the values to specific range
7 views (last 30 days)
Show older comments
Q=[ 0.0669
0.0383
0.0029
-0.0344
-0.0554
-0.0459
-0.0316
0.0086
0.0392
0.0650
0.0698
0.0478
0.0201
-0.0134
-0.0468
-0.0583
-0.0468
-0.0229
0.0115]
I want to scale the value of Q in range [-(2^13-1),(2^13-1)]
please help
6 Comments
Walter Roberson
on 21 Nov 2012
I can't be bothered to research dwt2() to find out what the possible theoretical output ranges are for each possible class of input data. How about if you just state the value ranges and any specific encoding instructions ?
Accepted Answer
Harshit
on 21 Nov 2012
D1=int16(S*32768) maps your any integer S*32768 outside the range to 32768 or for S>1 the output will be 32768(2^15) otherwise it will be round off to the nearest integer(You are assuming maximum non saturating input is 1 beyond this there will be saturation). You can see simply use max(round(2^13*S),2^13). Hope it will be fine.
13 Comments
More Answers (1)
Walter Roberson
on 21 Nov 2012
Qscaled = 2^13-1;
(Your permitted range consists of exactly one value, so all numbers must scale to that one value.)
2 Comments
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!