ヘルプ センターヘルプ センター
quantizenumeric
数値データの量子化
y = quantizenumeric(x,s,w,f)
y = quantizenumeric(x,s,w,f,r)
y = quantizenumeric(x,s,w,f,r,o)
例
y = quantizenumeric(x,s,w,f) は、符号属性 s、語長 w、小数部の長さ f を使用して、x で指定された値を量子化します。
y
x
s
w
f
quantizenumeric は、double を使用して完全精度の算術をシミュレートしてから、固定小数点型にキャストせずにアルゴリズムの特定のステップに量子化を追加する場合に使用します。
y = quantizenumeric(x,s,w,f,r) は、丸めモード r も指定します。
r
y = quantizenumeric(x,s,w,f,r,o) は、オーバーフロー モード o も指定します。
o
すべて折りたたむ
語長が 16 ビットで小数部の長さが 13 ビットの符号付き数値型と正の無限大方向への丸めを使用して、pi の値を量子化します。
x = pi; y = quantizenumeric(x,1,16,13,'ceil')
y = 3.1416
別の丸め手法を指定します。ゼロ方向への丸めによる量子化値への影響を確認します。
x = pi; y = quantizenumeric(x,1,16,13,'fix')
y = 3.1415
この例では、数値データの量子化に対するオーバーフロー アクションの効果を示します。
いくつかのデータを作成し、オーバーフローで飽和するように指定して量子化します。
x = linspace(-5,5,100); y = quantizenumeric(x,1,6,4,'floor','saturate'); plot(x,x,x,y)
オーバーフロー時にラップするようにオーバーフロー アクションを変更し、量子化データがどのように変わるかを確認します。
z = quantizenumeric(x,1,6,4,'floor','wrap'); plot(x,x,x,z);
量子化する値。スカラー、ベクトル、行列、または多次元配列として指定します。
データ型: double 複素数のサポート: あり
double
0
'false'
1
'true'
量子化値の符号属性。0 または 'false' (符号なし) あるいは 1 または 'true' (符号付き) として指定します。
データ型: double
量子化値の語長。正のスカラー整数として指定します。
量子化値の小数部の長さ。スカラー整数として指定します。
'nearest'
'ceil'
'ceiling'
'convergent'
'fix'
'floor'
'round'
'zero'
量子化に使用する丸め手法。文字ベクトルとして指定します。
'ceil' — 正の無限大方向に丸める ('ceiling' と同じ)
'ceiling' — 正の無限大方向に丸める ('ceil' と同じ)
'convergent' — 最も近い偶数方向に丸める
'fix' — ゼロ方向に丸める ('zero' と同じ)
'floor' — 負の無限大方向に丸める
'nearest' — 最も近い方向に丸める (等距離の場合は正の無限大方向に丸める)
'round' — 最も近い方向に丸める (等距離の場合は絶対値が大きい方に丸める)
'zero' — ゼロ方向に丸める ('fix' と同じ)
データ型: char
char
'saturate'
'wrap'
量子化に使用するオーバーフロー アクション。'saturate' または 'wrap' として指定します。
量子化された出力値。スカラー、ベクトル、行列、または多次元配列として返されます。y は常に x と同じ次元で、常に double です。
固定小数点アルゴリズムを設計する際は、cast、zeros、ones、eye、および subsasgn を使用して、コア アルゴリズムをデータ型の定義から分離します。
cast
zeros
ones
eye
subsasgn
すべて展開する
以前のリリースでは、複素数入力 x の虚数部は quantizenumeric で削除されていました。次に例を示します。
x = complex(pi, exp(1)) y = quantizenumeric(x,1,16,12,'floor')
x = 3.1416 + 2.7183i y = 3.1414
複素数入力に対する他の量子化関数の動作と同じように、quantizenumeric で虚数部が維持されるようになりました。次に例を示します。
x = 3.1416 + 2.7183i y = 3.1414 + 2.7183i
quantize | quantizer | cast
quantize
quantizer
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office