Main Content

quantize

quantizer 객체를 사용한 숫자형 데이터 양자화

설명

예제

y = quantize(q,x)quantizer 객체 q를 사용하여 x를 양자화합니다.

  • x가 숫자형 배열이면 x의 각 요소가 양자화됩니다. 출력 y는 내장 double형으로 반환됩니다.

  • x가 셀형 배열이면 셀형 배열의 각 숫자형 요소가 양자화됩니다. 출력 y의 필드는 내장 double형으로 반환됩니다.

  • x가 구조체이면 x의 각 숫자형 필드가 양자화됩니다. 출력 y의 필드는 내장 double형으로 반환됩니다.

quantizex의 비숫자형 요소나 필드를 변경하지 않으며, 비숫자형 값에 대해 경고를 생성하지도 않습니다.

quantizer 객체 상태 max, min, noverflows, nunderflows, noperationsquantize에 대한 호출 중에 업데이트되고, reset에 대한 호출이 이루어질 때까지 누계가 유지됩니다.

예제

[y1,y2,…] = quantize(q,x1,x2,…)y1 = quantize(q,x1), y2 = quantize(q,x2), … 등과 같습니다.

예제

모두 축소

quantize를 사용하여, 데이터를 사용자 지정 정밀도 부동소수점 데이터형으로 양자화합니다.

x = linspace(-15,15,1000);
q = quantizer('float','floor',[6 3]);
range(q)
ans = 1×2

   -14    14

y = quantize(q,x);
Warning: 68 overflow(s) occurred in the fi quantize operation.
plot(x,y); title(tostring(q))

quantize를 사용하여, 데이터를 워드 길이가 6비트이고 소수부 길이가 2비트인 고정소수점 데이터형으로 양자화하고 내림하고 오버플로 시 래핑합니다.

x = linspace(-15,15,1000);
q = quantizer('fixed','floor','wrap',[6 2])
q =


        DataMode = fixed
       RoundMode = floor
    OverflowMode = wrap
          Format = [6  2]
range(q)
ans = 1×2

   -8.0000    7.7500

y = quantize(q,x);
Warning: 468 overflow(s) occurred in the fi quantize operation.
plot(x,y); title(tostring(q))

quantize를 사용하여, 데이터를 워드 길이가 3비트이고 소수부 길이가 2비트인 고정소수점 데이터형으로 양자화하고 수렴(Convergent) 반올림을 수행하고 오버플로 시 래핑합니다.

q = quantizer('fixed','convergent','wrap',[3 2]);
x = (-2:eps(q)/4:2)';
y = quantize(q,x);
Warning: 33 overflow(s) occurred in the fi quantize operation.
plot(x,[x,y],'.-'); title(tostring(q)); axis square 

입력 인수

모두 축소

양자화에 사용할 데이터형 속성으로, quantizer 객체로 지정됩니다.

예: q = quantizer('fixed','ceil','saturate',[5 4]);

양자화할 데이터로, 스칼라, 벡터, 행렬, 다차원 배열, 셀형 배열 또는 구조체로 지정됩니다.

  • x가 숫자형 배열이면 x의 각 요소가 양자화됩니다.

  • x가 셀형 배열이면 셀형 배열의 각 숫자형 요소가 양자화됩니다.

  • x가 구조체이면 x의 각 숫자형 필드가 양자화됩니다.

quantizex의 비숫자형 요소나 필드를 변경하지 않으며, 비숫자형 값에 대해 경고를 생성하지도 않습니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
복소수 지원 여부:

(개별 요소로) 양자화할 데이터로, 스칼라, 벡터, 행렬, 다차원 배열, 셀형 배열 또는 구조체로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
복소수 지원 여부:

출력 인수

모두 축소

양자화된 데이터로, 스칼라, 벡터, 행렬, 다차원 배열, 셀형 배열 또는 구조체로 반환됩니다.

  • x가 숫자형 배열이면 출력 y는 내장 double형으로 반환됩니다.

  • x가 셀형 배열이면 출력 y의 필드는 내장 double형으로 반환됩니다.

  • x가 구조체이면 출력 y의 필드는 내장 double형으로 반환됩니다.

(개별 요소로) 양자화된 데이터로, 스칼라, 벡터, 행렬, 다차원 배열, 셀형 배열 또는 구조체로 반환됩니다.

버전 내역

R2012b에 개발됨

모두 확장

참고 항목

| |