ContinuousWaveletData[{{oct1,voc1}->coef1,…},wave]
ウェーブレット係数 coefi がオクターブと音{octi,voci},ウェーブレット wave に対応する連続ウェーブレットデータオブジェクトを与える.
ContinuousWaveletData
ContinuousWaveletData[{{oct1,voc1}->coef1,…},wave]
ウェーブレット係数 coefi がオクターブと音{octi,voci},ウェーブレット wave に対応する連続ウェーブレットデータオブジェクトを与える.
詳細とオプション
- ContinuousWaveletData[{{oct1,voc1}->coef1,…},…]は常に構造がContinuousWaveletData[coefs,octvocs,…]の最適化された標準形式に変換される.
- 係数 coefiは,ベクトル, Sound[…],あるいはSampledSoundList[…]オブジェクトである.
- ContinuousWaveletTransformで使われるオプションはContinuousWaveletDataのオプションとしても使うことができる.
- 標準出力形式では,もとのデータのオクターブ,音,次元のみが出力される.
- Normal[ContinuousWaveletData[…]]は各オクターブおよび音{octi,voci}と対応する係数配列 coefiの対応に関する規則のリスト{{oct1,voc1}->coef1,{oct2,voc2}->coef2,…}を与える.
- ContinuousWaveletDataは複数のスケール
における連続ウェーブレット変換
を与える. - 各スケール
はオクターブの数
と音の数
で指定され,
で与えられる. - スケール{oct,voc}を使ってContinuousWaveletDataオブジェクト cwd からウェーブレット係数を抽出することができる.次は使用可能な指定値である.
-
cwd[{oct,voc}] {oct,voc}に対応する係数を抽出する cwd[{{oct1,voc1},{oct2,voc2},…}] いくつかのウェーブレット係数配列を抽出する cwd[ovpatt] スケールが ovpatt にマッチするすべての係数を抽出する cwd[All] すべての係数を抽出する - デフォルトで,係数は規則のリスト{{oct1,voc1}->coef1,{oct2,voc2}->coef2,…}として返される.
- cwd[…,{form1,form2,…}]を使って出力形が制御できる.使用可能なformiは以下の通りである.
-
"Rules" 規則{{oct1,voc1}->…} "Values" 係数のみ "Inverse" 個々の係数の逆変換 "ListPlot" 1D係数の単純なリストプロット "Sound" サウンド係数のためのサウンドオブジェクト "SampledSoundList" サウンド係数のためのサンプルサウンドオブジェクト - ウェーブレット表現の特性はContinuousWaveletData[…]["prop"]で得られる.
- ContinuousWaveletData[…]["Properties"]はContinuousWaveletDataオブジェクトで使用可能な特性リストを与える.
- 変換係数の関連特性
-
"Octaves" 使用するオクターブの数 "Voices" 使用する1オクターブあたりの音の数 "Scales" 使用されたウェーブレットスケール "Wavelet" 使用されたウェーブレット族 "WaveletScale" 分割可能な最小スケール "WaveletIndex" すべてのウェーブレット指標{octi,voci}のリスト "LogScalogramFunction" 関数
を与える"LinearScalogramFunction" 関数
を与える - 入力データ関連特性
-
"DataDimensions" もとのデータの次元 "DataChannels" データのチャンネル数 "DataMean" もとのデータの平均 "DataWrapper" 再構築の後でデータに適用されるラッパー関数 "SampleRate" 入力データに使用されるサンプルレート
例題
すべて開く すべて閉じる例 (2)
ContinuousWaveletDataオブジェクトを得る:
cwd = ContinuousWaveletTransform[Sin[Range[40] / 5]]ContinuousWaveletDataは異なるスケール{oct,voc}での係数配列の表す:
WaveletScalogram[cwd, Ticks -> Full]各{oct,voc}に対応する数値スケールを含む特性を抽出する:
cwd["Scales"]任意の連続ウェーブレット変換係数の逆ウェーブレット変換を計算する:
InverseContinuousWaveletTransform[ContinuousWaveletData[{{2, 1} -> {1, 0, 3, 3, 0, 2}, {3, 2} -> {-2, 2.5, 1, 1, 0, 0}}, PaulWavelet[]]]スコープ (12)
基本的な用法 (10)
ContinuousWaveletTransformからContinuousWaveletDataオブジェクトを得る:
cwd = ContinuousWaveletTransform[{1, 2, 3, 4}]cwd["WaveletIndex"]Normal[cwd]InverseContinuousWaveletTransformはContinuousWaveletDataに作用する:
data = AiryAi[-Range[100] / 10];cwd = ContinuousWaveletTransform[data, Automatic, {8, 8}]{ListLinePlot[data, PlotLabel -> "original"], ListLinePlot[InverseContinuousWaveletTransform[cwd], PlotLabel -> "reconstructed"]}cwd = ContinuousWaveletTransform[{1, 1, 3, 1}, Automatic, {3, 2}]cwd[{{1, 1}}]パターン{1,_}を使って最初のオクターブにあるすべての係数を抽出する:
cwd[{1, _}]特定の{oct,voc}とパターンの両方を含むリストを指定する:
cwd[{{1, 1}, {3, 2}, {2, _}}]cwd = ContinuousWaveletTransform[{1, 1, 3, 1}, Automatic, {3, 2}]cwd[{{1, 1}, {2, 2}}, "Rules"]cwd[{{1, 1}, {2, 2}}, "Values"]cwd[{{1, 1}, {2, 2}}, "ListPlot"]cwd[{{1, 1}, {2, 2}}, "Inverse"]cwd[{{1, 1}, {2, 2}}, {"Values", "ListPlot"}]サウンドウェーブレット係数をSoundオブジェクトとしてを得る:
cwd = ContinuousWaveletTransform[ExampleData[{"Sound", "Tuba"}]]cwd[{3, 2}, "Sound"]cwd = ContinuousWaveletTransform[RandomReal[1, 12], MorletWavelet[]]{cwd["Octaves"], cwd["Voices"], cwd["Wavelet"]}cwd["Properties"]ContinuousWaveletDataを他のウェーブレット関数で使用する:
data = Table[Sin[x + x^2], {x, 0, 10, 0.1}];cwd = ContinuousWaveletTransform[data]InverseContinuousWaveletTransform[cwd]//ListLinePlotWaveletScalogram[cwd]ContinuousWaveletDataを変換する:
data = Table[Sin[20Log[x]], {x, 1, 10, 0.1}];cwd1 = ContinuousWaveletTransform[data, Automatic, 3]cwd2 = WaveletMapIndexed[c Rescale[c, {0, 1 + I}], cwd1]指定された{oct,voc}にマッチするすべての係数を0にする:
cwd3 = WaveletMapIndexed[c 0c, cwd1, {2, _}]Table[WaveletScalogram[cwd], {cwd, {cwd1, cwd2, cwd3}}]係数配列を与える規則のリストからContinuousWaveletDataオブジェクトを構築する:
cwd = ContinuousWaveletData[{{1, 1} -> {-1, 1, 1, 1}, {2, 3} -> {2, 3, 3, 0}}]cwd["WaveletIndex"]Normal[cwd]指定されたウェーブレットを使ってContinuousWaveletDataオブジェクトを構築する:
cwd = ContinuousWaveletData[{{1, 1} -> {-1, 1, 1, 1}, {2, 3} -> {2, 3, 3, 0}}, PaulWavelet[]]InverseContinuousWaveletTransform[cwd]特性 (2)
cwd = ContinuousWaveletTransform[RandomReal[1, 8], MexicanHatWavelet[]]{cwd["Wavelet"], cwd["WaveletScale"]}{cwd["Octaves"], cwd["Voices"]}cwd["WaveletIndex"]cwd["Scales"]data = Sound[«1»];cwd = ContinuousWaveletTransform[data]データの次元,オーディオチャンネルの数,およびサンプルレート:
{cwd["DataDimensions"], cwd["DataChannels"], cwd["SampleRate"]}cwd["DataWrapper"]{Head[data], Head[InverseContinuousWaveletTransform[cwd]]}オプション (5)
SampleRate (1)
Sound入力の際は,SampleRateが自動的に計算される:
snd = Sound[SampledSoundList[Table[Cos[100 t^2], {t, 0, 1, 1. / 255}], 250]]cwd = ContinuousWaveletTransform[snd]デフォルトで,SampleRateは最初の係数規則から抽出される:
srules = cwd[All, "Sound"];First[srules]InverseContinuousWaveletTransform[ContinuousWaveletData[srules]]SampleRateを明示的に指定する:
InverseContinuousWaveletTransform[ContinuousWaveletData[srules, SampleRate -> 150]]WaveletScale (2)
デフォルトで,WaveletScaleが自動的に計算される:
data = Table[Sin[x^2], {x, 0, 3 π, (3 π/1023)}];ListLinePlot[data]cwt1 = ContinuousWaveletTransform[data, GaborWavelet[6]]ContinuousWaveletDataを設定する:
cwt2 = ContinuousWaveletData[Normal[cwt1], GaborWavelet[6]]cwt1["WaveletScale"] == cwt2["WaveletScale"]WaveletScaleを明示的に設定する:
cwd = ContinuousWaveletData[{{1, 1} -> {1, 2, 3, 4}, {2, 1} -> {1, 2, 3, 4}}, GaborWavelet[6], WaveletScale -> 1]cwd["WaveletScale"]WorkingPrecision (2)
デフォルトで,WorkingPrecision->MachinePrecisionが使われる:
cwd1 = ContinuousWaveletData[{{1, 1} -> {1, 2, 3, 4}, {2, 1} -> {1, 2, 3, 4}}]cwd2 = ContinuousWaveletData[{{1, 1} -> {1, 2, 3, 4}, {2, 1} -> {1, 2, 3, 4}}, WorkingPrecision -> MachinePrecision]cwd1 == cwd2cwd = Normal@ContinuousWaveletData[{{1, 1} -> {0, 1, Sqrt[2], Sqrt[3], 4}, {2, 1} -> {0, 1, Sqrt[2], Sqrt[3], 4}}, WorkingPrecision -> 25]0に近い数を使う場合は,確度の方が正しい桁数の指標として相応しくなる:
{Precision[cwd], Accuracy[cwd]}特性と関係 (5)
cwd = ContinuousWaveletTransform[Range[8]]Map[Length, cwd[All, "Values"]]ContinuousWaveletDataはスケール集合における連続変換係数を表す:
cwd = ContinuousWaveletTransform[{1, 1, 8, 1, 1, 2, 2, 1, 1}]{TableForm[cwd["Scales"]], WaveletScalogram[cwd, Ticks -> Full]}DiscreteWaveletDataは離散変換係数のツリーを表す:
dwd = DiscreteWaveletTransform[{1, 1, 8, 1, 1, 2, 2, 1, 1}]{dwd["TreeView"], WaveletListPlot[dwd, Ticks -> Full, PlotLayout -> "CommonYAxis"]}ContinuousWaveletDataをその係数と特性から再構築する:
cwd = ContinuousWaveletTransform[Range[-2, 2], MexicanHatWavelet[]]cwd2 = ContinuousWaveletData[Normal[cwd], cwd["Wavelet"], WaveletScale -> cwd["WaveletScale"]]{cwd["DataDimensions"], cwd2["DataDimensions"]}InverseContinuousWaveletTransform[cwd] == InverseContinuousWaveletTransform[cwd2]cwd = ContinuousWaveletTransform[{1, 2, 3, 4}]Normalを使う:
Normal[cwd]明示的にすべて(All)の係数を抽出する:
cwd[All]任意のオクターブと音にマッチするパターンBlank[] (_)を指定する:
cwd[_]cwd = ContinuousWaveletTransform[{1, 2, 3, 4}, Automatic, {3, 2}]cwd[{oct,voc}]で返された各規則にLastを適用する:
Last /@ cwd[{2, _}]Partを使う:
cwd[{2, _}][[All, 2]]cwd[{2, _}, "Values"]関連するガイド
-
▪
- ウェーブレット
テキスト
Wolfram Research (2010), ContinuousWaveletData, Wolfram言語関数, https://reference.wolfram.com/language/ref/ContinuousWaveletData.html.
CMS
Wolfram Language. 2010. "ContinuousWaveletData." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ContinuousWaveletData.html.
APA
Wolfram Language. (2010). ContinuousWaveletData. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ContinuousWaveletData.html
BibTeX
@misc{reference.wolfram_2026_continuouswaveletdata, author="Wolfram Research", title="{ContinuousWaveletData}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/ContinuousWaveletData.html}", note=[Accessed: 31-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_continuouswaveletdata, organization={Wolfram Research}, title={ContinuousWaveletData}, year={2010}, url={https://reference.wolfram.com/language/ref/ContinuousWaveletData.html}, note=[Accessed: 31-July-2026]}