past/CIE

책에 있는 Sampling Period(Ts)는 너무 작게 설정 되어있어서 x(t)를 표현할 수 없다.


따라서..Ts=0.01로 두고 그래프를 다시 그려보면...

위와 같은 그래프를 그려낼 수 있다.
아직도 Period가 큰지 아름다운 Continuous Cosine의 그래프를 보이고 있지는 않지만..
이 상태로 양자화 신호와 비교해보도록 한다.



< 2bit Quantization >



< 4bit Quantization >



< 8bit Quantization >


맞는 과정을 통한 결과인지는 확실히 모르겠지만, 신호의 그림을 보아서는 맞게 수행한 것같다.

양자화 비트수커질수록 원래 신호와 유사한 모습의 결과를 확인할 수 있다.
각 양자화 비트에서의 분해능을 계산해 보아도 8비트에서의 분해능(Resolution)이 크다는 것을 확인 할 수 있다.
분해능의 계산은 아래의 식을 통해 할 수 있다. ( a:신호의 최대값, b:신호의 최소값 )

분해능(Resolution) = (b-a)/2^n



Matlab에서 양자화를 계산해본 적이 없어서 구현되어있는 함수가 있는지 찾아야했다.
'lookfor'함수를 이용하여 양자화(quantization)이라는 키워드검색을 해보니..
( 사용의 예: command 창에서.. lookfor quantization )

lloyds 함수와 quantiz 함수를 이용하면 figure를 그려낼 수 있을듯 했다.

quantiz 함수는 signal, partition, codebook 3개의 파라미터가 필요하다.
signal에는 x(t)를 넣어주면 되고,
partition과 codebook은 lloyds 함수를 통해 얻을 수 있는데..
얻어진 codebook의 값은 원하는 값으로 조정을 해주어야 내가 그리고 픈 결과를 그려 낼 수 있었다.(이부분이 조금 이상하다.)
(레포트를 마치고 시험삼아 다시 연산해본 결과....비트수가 올라갈 수록 lloyds 함수가 리턴하는 codebook의 범위가
원래 신호인 cos함수의 peak치에 가까워짐을 확인했다.
고로..억지로 codebook의 값을 바꿔줄 필요가 없다는 것이다.)

결과적으로 lloyds, quants 함수의 사용으로 양자화를 수행할 수 있었고,
partition, codebook의 정확한 의미에 대한 공부가 더 필요하다고 생각된다.

0 1