Scale a before and after signal

6 views (last 30 days)
Vinci
Vinci on 2 Aug 2018
Commented: Vinci on 2 Aug 2018
I've recorded some audio using audiorecorder and I want to measure the SNR of a signal I have performed some quantizing operations on. I have the the before and after signal, but how do I scale or normalise(?) the two signals so I am comparing apples with apples. MATLAB noob here btw.

Accepted Answer

Surbhi Pillai
Surbhi Pillai on 2 Aug 2018
Hello,
I understand you are trying to normalize the signals two signals to bring them to same scale for comparison. You can try 'min-max normalization' to normalize both the signals to the range [0,1].
Hereby is an example code in MATLAB R2018a for your reference:
t=linspace(0,2*pi,100);
y=5*sin(t);
step_size=10/20;
partition=-2*pi:step:2*pi;
y_Quant=quantiz(y,p);
norm_y=(y-min(y))/(max(y)-min(y)); %%min-max normalization
norm_yQuant=(yQuant-min(yQuant))/(max(yQuant)-min(yQuant));
figure;
subplot(211);
plot(norm_y);
subplot(212);
plot(norm_yQuant)
Both the signals before and after quantization are normalized to same scale for comparison.
Hope this helps...
  1 Comment
Vinci
Vinci on 2 Aug 2018
Thanks Surbhi, that's what I was looking for. I wasn't able to use the quantiz() function as I'm using R2016a, but the two min-max normalization lines below it was what I was after.

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with Signal Processing Toolbox 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!