アップグレード情報

WaveletExplorer

バージョン8で,Wavelet Explorerアドオンの機能はWolframシステムに統合された.

ウェーブレットフィルタ

次はWavelet Explorerで利用できるフィルタ,およびバージョン8における同等の形式のリストである.

HaarFilter[]WaveletFilterCoefficients[HaarWavelet[]]
DaubechiesFilter[n]WaveletFilterCoefficients[DaubechiesWavelet[n]]
LeastAsymmetricFilter[n]WaveletFilterCoefficients[SymletWavelet[n]]
CoifletFilter[n]WaveletFilterCoefficients[CoifletWavelet[n]]
ShannonFilter[lim]WaveletFilterCoefficients[ShannonWavelet[lim]]
MeyerFilter[n,lim]WaveletFilterCoefficients[MeyerWavelet[n,lim]]
SplineFilter[n,lim]WaveletFilterCoefficients[BattleLemarieWavelet[n,lim]]
BiorthogonalSplineFilter[n,m]WaveletFilterCoefficients[BiorthogonalSplineWavelet[n,m]]
HighpassFilter[h]WaveletFilterCoefficients[wave,"PrimalHighpass"]
同等の組込み関数

ウェーブレット係数を計算するためには,組込み関数WaveletFilterCoefficientsを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
DaubechiesFilter[2]

すべてのウェーブレット係数は,Wavelet Explorerからの結果と相対的にでスケールされる.したがって,同等の値を得るためには,結果を倍しなければならない.

ハイパスフィルタ係数を計算するためには,WaveletFilterCoefficientsに引数"PrimalHighpass"を使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
HighpassFilter[DaubechiesFilter[2]]

スケーリング関数とウェーブレット関数

次はWavelet Explorerで利用できる関数と,バージョン8における同等の形式のリストである.

ScalingFunction[filt,j]WaveletPhi[wave]
Wavelet[wave,j]WaveletPsi[wave]
ShannonPhi[t]WaveletPhi[ShannonWavelet[lim],t]
ShannonPsi[t]WaveletPsi[ShannonWavelet[lim],t]
MeyerPhi[n,t,lim]WaveletPhi[MeyerWavelet[n,lim],t]
MeyerPsi[n,t,lim]WaveletPsi[MeyerWavelet[n,lim],t]
SplinePhi[n,t,lim]WaveletPhi[BattleLemarieWavelet[n,lim],t]
SplinePsi[n,t,lim]WaveletPsi[BattleLemarieWavelet[n,lim],t]
BSpline[n,t]BSplineBasis[{n,{u1,u2,}},0,t]
DScalingFunction[filt,jmax,m]Dt[WaveletPhi[wave,t],{t,m}]
DWavelet[filt,jmax,m]Dt[WaveletPsi[wave,t],{t,m}]
同等の組込み関数

ScalingFunctionの機能は,WaveletPhiを使って利用することができる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
ListLinePlot[ScalingFunction[DaubechiesFilter[2], 8]]

スケール関数の導関数を見付けるためには,DtWaveletPhiを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
ListLinePlot[DScalingFunction[DaubechiesFilter[6], 8, 1]]

DWaveletの機能はDtWaveletPsiを使って利用できる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
ListLinePlot[DWavelet[LeastAsymmetricFilter[10], 8, 1]]

スケール関数とウェーブレット関数の高次の導関数を計算する.

WaveletPhiおよびWaveletPsiから出力されたInterpolatingFunctionでは,InterpolationOrder1に設定されている.したがって,第2導関数は0となる.

高次のInterpolationOrderで再サンプルし補間することで問題は解決する.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
ListLinePlot[DWavelet[LeastAsymmetricFilter[10], 7, 2]]

BSplineの機能は,組込み関数のBSplineBasisで利用できるようになった.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
Plot[Evaluate[BSpline[6, t]], {t, -3, 4}]

ウェーブレット変換

次はWavelet Explorerで利用できるウェーブレット変換と,バージョン8における同等の形式のリストである.

WaveletTransform[data,filt,j]DiscreteWaveletTransform[data,wave,j]
InverseWaveletTransform[wd,filt]InverseWaveletTransform[dwd]
WaveletPacketCoefficients[data,filt,j]DiscreteWaveletPacketTransform[data,filt,j]
WaveletPacketTransform[data,filt,l]WaveletBestBasis[DiscreteWaveletPacketTransform[]]
InverseWaveletPacketTransform[wpdata,filt]InverseWaveletTransform[dwd]
同等の組込み関数.関数MRDecompositionは組込みの機能で直接サポートされていない.

WaveletTransformの機能はDiscreteWaveletTransformで利用できるようになった.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
Simplify[WaveletTransform[Range[4], HaarFilter[]]]

パケット変換を計算するためにはDiscreteWaveletPacketTransformを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
wd = WaveletPacketTransform[Range[8], DaubechiesFilter[2], 2]

逆変換にはInverseWaveletTransformを使う.

Wavelet Explorer InverseWaveletPacketTransform[wd, DaubechiesFilter[2]]

MRDecompositionの機能は,次のようにして復元できる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
wd  = WaveletTransform[N@Range[8], HaarFilter[]];
MRDecomposition[wd, HaarFilter[]]

正弦変換と余弦変換

次はWavelet Explorerで利用できる関数と,バージョン8における同等の形式のリストである.

CosTransform[data,n, BasisType->m]FourierDCT[data,m]
SinTransform[data,n,BasisType->m]FourierDST[data,m]
InverseCosTransform[cdata]FourierDCT[cdata,m]
InverseSinTransform[sdata]FourierDST[sdata,m]
同等の組み込み関数.CosPacketCoefficientsSinPacketCoefficientsCosPacketTransformSinPacketTransformInverseCosPacketTransformInverseSinPacketTransformMalvarTransformInverseMalvarTransformは組込みの機能では直接サポートされていない.

SinTransformを計算するためには,組込み関数のFourierDSTを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
SinTransform[Range[8], Taper -> False]

指定された第2引数を持つSinTransform

Wavelet Explorer Needs["Wavelets`Wavelets`"]
SinTransform[Range[8], 2, Taper -> False]

一次元のSinPacketCoefficientsの機能は,次のようにして復元できる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
SinPacketCoefficients[Range[8], 8, 3, Taper -> False]

同様にFourierDCT使ってCosPacketCoefficientsを書くことができる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
CosPacketCoefficients[Range[8], 8, 3, Taper -> False]

その他のユーティリティ

次はWavelet Explorerで利用できる関数と,バージョン8における同等の形式のリストである.

PlotCoefficients[wd]WaveletListPlot[dwd]
PhaseSpacePlot[wd]WaveletScalogram[dwd]
ShowBasisPosition[wd]DiscreteWaveletData[]["BestBasisBlockView"]
PlotCoefficients2D[wd]WaveletMatrixPlot[dwd]
ShowBasisPosition2D[wd]DiscreteWaveletData[]["BestBasisBlockView"]
WaveletCompress[wd,]WaveletThreshold[dwd,tspec]
同等の組込み関数.関数GrayCodeOrderCumulativeEnergyは組込みの機能では直接サポートされていない.

ウェーブレット係数をプロットするためにはWaveletScalogramを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
data = Table[Sin[x^3], {x, -6, 6, 12/1023}];
wd = WaveletPacketTransform[data, N@HaarFilter[], 2]
PhaseSpacePlot[wd, Frame -> True, FrameTicks -> None, 
 AspectRatio -> 1/2]

データの圧縮にはWaveletThresholdを使う.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
wd = WaveletTransform[Range[8], N@HaarFilter[], 3]
Reverse@WaveletCompress[wd, 4]

関数CumulativeEnergyは次のように書くことができる.

Wavelet Explorer Needs["Wavelets`Wavelets`"]
wd = WaveletTransform[N@Range[8], HaarFilter[]];
CumulativeEnergy[wd]