次数3のMeyerウェーブレットを表す.
MeyerWavelet[n]
等間隔の区間{-10,10}で評価された次数 n のMeyerウェーブレットを表す.
MeyerWavelet[n,lim]
等間隔の区間{-lim,lim}で評価された次数 n のウェーブレットを表す.
MeyerWavelet
次数3のMeyerウェーブレットを表す.
MeyerWavelet[n]
等間隔の区間{-10,10}で評価された次数 n のMeyerウェーブレットを表す.
MeyerWavelet[n,lim]
等間隔の区間{-lim,lim}で評価された次数 n のウェーブレットを表す.
詳細
- MeyerWaveletは正規直交ウェーブレット族を定義する.
- MeyerWavelet[n]はMeyerWavelet[n,8]に等しい.
- MeyerWavelet[n,lim]は任意の正の整数 n と実数の極限 lim について定義される.
- スケーリング関数(
)とウェーブレット関数(
)には無限サポートがある.これらの関数は対称である. - スケーリング関数(
)はそのフーリエ(Fourier)変換によって
として与えられる. » - ウェーブレット関数(
)はそのフーリエ変換によって
として与えられる. - 多項式
は
の形式の多項式である.ただし,
はMeyerウェーブレットの次数である. - MeyerWaveletはDiscreteWaveletTransformやWaveletPhi等の関数に使うことができる.
例題
すべて開く すべて閉じる例 (3)
Plot[Evaluate[WaveletPhi[MeyerWavelet[3], x]], {x, -8, 8}, PlotRange -> All]WaveletPhi[MeyerWavelet[3], x]Plot[Evaluate[WaveletPsi[MeyerWavelet[3], x]], {x, -8, 8}, PlotRange -> All]WaveletPsi[MeyerWavelet[3], x]WaveletFilterCoefficients[MeyerWavelet[3, 5], {"PrimalLowpass", "PrimalHighpass"}]スコープ (9)
基本的な用法 (4)
WaveletFilterCoefficients[MeyerWavelet[3], "PrimalLowpass"]WaveletFilterCoefficients[MeyerWavelet[3], "PrimalHighpass"]Plot[Evaluate[WaveletPhi[MeyerWavelet[3], x]], {x, -10, 10}, PlotRange -> All]Plot[Evaluate[WaveletPhi[MeyerWavelet[10], x]], {x, -10, 10}, PlotRange -> All]Plot[Evaluate[WaveletPsi[MeyerWavelet[3], x]], {x, -10, 10}, PlotRange -> All]Plot[Evaluate[WaveletPsi[MeyerWavelet[10], x]], {x, -10, 10}, PlotRange -> All]ウェーブレット変換 (4)
DiscreteWaveletTransformを計算する:
data = Table[Sinc[x^2], {x, -3 π, 3 π, (6 π/1023)}];ListLinePlot[data, PlotRange -> All]dwt = DiscreteWaveletTransform[data, MeyerWavelet[3, 12], 2]dwt["TreeView"]dwt["Dimensions"]WaveletListPlot[dwt, PlotLayout -> "CommonXAxis"]MeyerWaveletを使ってDiscreteWaveletPacketTransformを行うことができる:
data = Table[Sinc[t^2], {t, -3 π, 3 π, (6 π/1023)}];dwpt = DiscreteWaveletPacketTransform[data, MeyerWavelet[3, 12], 2]dwpt["TreeView"]dwpt["Dimensions"]WaveletListPlot[dwpt, PlotLayout -> "CommonXAxis"]MeyerWaveletを使ってStationaryWaveletTransformを行うことができる:
data = Table[Sinc[t^2], {t, -3 π, 3 π, (6 π/1023)}];swt = StationaryWaveletTransform[data, MeyerWavelet[3, 12], 2];swt["TreeView"]swt["Dimensions"]WaveletListPlot[swt, PlotLayout -> "CommonXAxis"]MeyerWaveletを使ってStationaryWaveletPacketTransformを行うことができる:
data = Table[Sinc[t^2], {t, -3 π, 3 π, (6 π/1023)}];swpt = StationaryWaveletPacketTransform[data, MeyerWavelet[3, 12], 2];swpt["TreeView"]swpt["Dimensions"]WaveletListPlot[swpt, PlotLayout -> "CommonXAxis"]高次元 (1)
多変量スケーリング関数と多変量ウェーブレット関数はそれぞれその一変量関数の積である:
ϕ = WaveletPhi[MeyerWavelet[3, 8]];
ψ = WaveletPsi[MeyerWavelet[3, 8]];Plot3D[Evaluate[ϕ[x] ψ[y]], {x, -8, 8}, {y, -8, 8}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ϕ[x] ψ[y]], {x, -8, 8}, {y, -8, 8}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ψ[x] ϕ[y]], {x, -8, 8}, {y, -8, 8}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ψ[x] ψ[y]], {x, -8, 8}, {y, -8, 8}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]特性と関係 (10)
Chop[Total[WaveletFilterCoefficients[MeyerWavelet[3, 20], "PrimalLowpass"][[All, 2]]]]Chop[Total[WaveletFilterCoefficients[MeyerWavelet[3, 20], "PrimalHighpass"][[All, 2]]]]ϕ = WaveletPhi[MeyerWavelet[3]];Subsuperscript[∫, -∞, ∞]ϕ[x]ⅆxψ = WaveletPsi[MeyerWavelet[3, 20]];NIntegrate[ψ[x], {x, -∞, ∞}]ϕ = WaveletPhi[MeyerWavelet[3]];a = WaveletFilterCoefficients[MeyerWavelet[3], "PrimalLowpass"];scalet[x_, ϕ_, a_] := 2 Table[a[[i, 2]] ϕ[2 x - a[[i, 1]]], {i, Length[a]}]{Plot[Evaluate[scalet[x, ϕ, a]], {x, -8, 8}, PlotRange -> All], Plot[Total[scalet[x, ϕ, a]], {x, -8, 8}, PlotRange -> All]}ϕ = WaveletPhi[MeyerWavelet[3]];b = WaveletFilterCoefficients[MeyerWavelet[3], "PrimalHighpass"];wavelet[x_, ϕ_, b_] := 2 Table[b[[i, 2]] ϕ[2 x - b[[i, 1]]], {i, Length[b]}]{Plot[Evaluate[wavelet[x, ϕ, b]], {x, -8, 8}, PlotRange -> All], Plot[Total[wavelet[x, ϕ, b]], {x, -8, 8}, PlotRange -> All]}h[wav_, ω_] := With[{a = WaveletFilterCoefficients[wav]}, Underoverscript[∑, i, Length[a]]a[[i, 2]] Exp[-I a[[i, 1]] ω]]Plot[Evaluate[Abs[h[MeyerWavelet[3, 20], ω]]], {ω, -π, π}, Ticks -> {{-π, -(π/2), 0, (π/2), π}, Automatic}, AxesLabel -> {ω, Abs[H[ω]]}]g[wav_, ω_] := With[{b = WaveletFilterCoefficients[wav, "PrimalHighpass"]}, Underoverscript[∑, i, Length[b]]b[[i, 2]] Exp[-I b[[i, 1]] ω]]Plot[Evaluate[Abs[g[MeyerWavelet[3, 20], ω]]], {ω, -π, π}, Ticks -> {{-π, -(π/2), 0, (π/2), π}, Automatic}, AxesLabel -> {ω, Abs[G[ω]]}]h[wav_, ω_] := With[{a = WaveletFilterCoefficients[wav]}, Underoverscript[∑, i, Length[a]]a[[i, 2]] Exp[-I a[[i, 1]] ω]]fh[wav_, ω_, j_] := Abs[Underoverscript[∏, i, j]h[wav, (ω/2^i)]]Plot[Evaluate[fh[MeyerWavelet[3, 20], ω, 10]], {ω, -2 π, 2 π}, PlotRange -> All, Ticks -> {Range[-2 π, 2 π, (2 π/3)], {1}}, AxesLabel -> {ω, Overscript[ϕ, ^ ][ω]}]phihat[n_, ω_] := Piecewise[{{1, Abs[ω] ≤ (2 π/3)}, {Cos[(1/2) π ν[n, (3 Abs[ω]/2 π) - 1]], (2 π/3) ≤ Abs[ω] ≤ (4 π/3)}}]νcoeff[n_, l_] := (Underoverscript[∑, k = Ceiling[(l - 1/2)], n]((Binomial[n, k] Binomial[2 k + 1, l] 2^l (-1)^k + l - 1) (2 n + 1)!!/2 k + 1)/2 (2 n)!!)ν[n_, x_] := Piecewise[{{0, x ≤ 0}, {Underoverscript[∑, l = n + 1, 2 n + 1]νcoeff[n, l] x^l, 0 ≤ x ≤ 1}, {1, x ≥ 1}}]Plot[Abs[phihat[3, ω]], {ω, -2 π, 2 π}, PlotRange -> All, AxesLabel -> {ω, Overscript[ϕ, ^ ][ω]}, Ticks -> {Range[-2 π, 2 π, (2 π/3)], {1}}]h[wav_, ω_] := With[{a = WaveletFilterCoefficients[wav]}, Underoverscript[∑, i, Length[a]]a[[i, 2]] Exp[-I a[[i, 1]] ω]]g[wav_, ω_] := With[{b = WaveletFilterCoefficients[wav, "PrimalHighpass"]}, Underoverscript[∑, i, Length[b]]b[[i, 2]] Exp[-I b[[i, 1]] ω]]fg[wav_, ω_, j_] := Abs[g[wav, (ω/2)] Underoverscript[∏, i = 2, j]h[wav, (ω/2^i)]]Plot[Evaluate[fg[MeyerWavelet[3, 20], ω, 10]], {ω, -10, 10}, PlotRange -> All, AxesLabel -> {ω, Abs[Overscript[ψ, ^ ][ω]]}]phihat[n_, ω_] := Piecewise[{{1, Abs[ω] ≤ (2 π/3)}, {Cos[(1/2) π ν[n, (3 Abs[ω]/2 π) - 1]], (2 π/3) ≤ Abs[ω] ≤ (4 π/3)}}]νcoeff[n_, l_] := (Underoverscript[∑, k = Ceiling[(l - 1/2)], n]((Binomial[n, k] Binomial[2 k + 1, l] 2^l (-1)^k + l - 1) (2 n + 1)!!/2 k + 1)/2 (2 n)!!)ν[n_, x_] := Piecewise[{{0, x ≤ 0}, {Underoverscript[∑, l = n + 1, 2 n + 1]νcoeff[n, l] x^l, 0 ≤ x ≤ 1}, {1, x ≥ 1}}]psihat[n_Integer, w_] := Exp[(I w/2)] (phihat[n, w + 2 π] + phihat[n, w - 2 π]) phihat[n, (w/2)]Plot[Abs[psihat[3, ω]], {ω, -10, 10}, PlotRange -> All, AxesLabel -> {ω, Abs[Overscript[ψ, ^ ][ω]]}]おもしろい例題 (2)
ϕ[x_, j_, k_] := 2^j / 2 WaveletPhi[MeyerWavelet[3], 2^j x - k]Plot[Evaluate[Table[ϕ[x, j, 0], {j, 0, 2}]], {x, -1, 1}, Filling -> Axis, PlotRange -> All]Plot[Evaluate[Table[ϕ[x, 2, k], {k, 0, 2^2 - 1}]], {x, -1, 2}, Filling -> Axis, PlotRange -> All]ψ[x_, j_, k_] := 2^j / 2 WaveletPsi[MeyerWavelet[3], 2^j x - k]Plot[Evaluate[Table[ψ[x, j, 0], {j, 0, 2}]], {x, -0.5, 1}, Filling -> Axis, PlotRange -> All]Plot[Evaluate[Table[ψ[x, 2, k], {k, 0, 2^2 - 1}]], {x, -0.5, 1.5}, Filling -> Axis, PlotRange -> All]テクニカルノート
関連するガイド
-
▪
- ウェーブレット
テキスト
Wolfram Research (2010), MeyerWavelet, Wolfram言語関数, https://reference.wolfram.com/language/ref/MeyerWavelet.html.
CMS
Wolfram Language. 2010. "MeyerWavelet." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MeyerWavelet.html.
APA
Wolfram Language. (2010). MeyerWavelet. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MeyerWavelet.html
BibTeX
@misc{reference.wolfram_2026_meyerwavelet, author="Wolfram Research", title="{MeyerWavelet}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/MeyerWavelet.html}", note=[Accessed: 03-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_meyerwavelet, organization={Wolfram Research}, title={MeyerWavelet}, year={2010}, url={https://reference.wolfram.com/language/ref/MeyerWavelet.html}, note=[Accessed: 03-November-2026]}