Signal Processing Toolbox    
udecode

2nレベルの量子化した整数入力を復号化して浮動小数点出力を行います。

表示

詳細

y = udecode(u,n) は、整数u個の符号化した多次元配列から量子化した浮動小数点値を復号化や再構成する演算の逆を行います。入力引数nは、2と32の間の整数です。整数nは、入力に対して、2n量子化レベルであることを設定し、uの中の要素は、つぎのいずれかになります。

入力は、実数または、ある整数データタイプ(uint8, uint16, uint32, int8, int16, int32)からなる複素数になります。オーバフロー(uの中の要素が、上で指定した範囲を超えている)は、範囲を設定している区間の端の点で飽和しています。出力yは、uと同じ次元です。そして、出力yの要素は、[-1,1]の範囲の値になります。

y = udecode(u,n,v) は、出力yが範囲[-v,v](vのデフォルト値は1です)の中に入るようにuを復号化します。

y = udecode(u,n,v,'SaturateMode') は、uを復号化し、文字列'SaturateMode'に従って、入力のオーバフロー([-v,v]の範囲外の要素)を取り扱います。文字列には、つぎのいずれかを使います。

例題

uの中の最後の要素は飽和して、デフォルトのピーク入力値1になっていることに注意してください。ピーク入力値を変更しましょう。

これでも、最後の要素はまだ飽和しています。もう一つの処理法を使ってみましょう。

より量子化レベルを上げてみましょう。

アルゴリズム

アルゴリズムは、ITU-T Recommendation G.701に設定されている一様復号化の定義を忠実に実現しています。整数入力値は、2n個の一様に分布している整数値の一つを範囲[-vv]の中の量子化された浮動小数点数に一様にマッピングします。許される最小の整数入力値が -v に、最大の整数入力値がvに、マッピングされます。オーバフローしている値は、設定に従って、処理されます。

複素数入力の実数成分と虚数成分は、別々に復号化されます。

参考
uencode     浮動小数点データの量子化や符号化

参考文献

General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms, International Telecommunication Union, ITU-T Recommendation G.701, March, 1993.


 tripuls uencode