多重解像度解析
φ j , k 2 ( y ) {\displaystyle \phi _{j,k_{2}}(y)} は φ j − 1 , k 2 ( y ) {\displaystyle \phi _{j-1,k_{2}}(y)} と ψ j − 1 , k 2 ( y ) {\displaystyle \psi _{j-1,k_{2}}(y)} に分解し、
合わせて、
{ φ j − 1 , k 1 ( x ) φ j − 1 , k 2 ( y ) , φ j − 1 , k 1 ( x ) ψ j − 1 , k 2 ( y ) , ψ j − 1 , k 1 ( x ) φ j − 1 , k 2 ( y ) , ψ j − 1 , k 1 ( x ) ψ j − 1 , k 2 ( y ) } {\displaystyle \{\phi _{j-1,k_{1}}(x)\phi _{j-1,k_{2}}(y),\ \phi _{j-1,k_{1}}(x)\psi _{j-1,k_{2}}(y),\ \psi _{j-1,k_{1}}(x)\phi _{j-1,k_{2}}(y),\ \psi _{j-1,k_{1}}(x)\psi _{j-1,k_{2}}(y)\}}
の4つに分解する。
ハールウェーブレットの離散ウェーブレット変換のソースコードは下記のようになる。入力は x で NumPy の配列で与える。多重解像度解析をしたい場合は、x = c して長さが1になるまで繰り返す。 φ n , k ( t ) = 2 n φ ( 2 n t − k ) {\displaystyle \phi _{n,k}(t)={\sqrt {2^{n}}}\phi (2^{n}t-k)} の形の基底関数の係数にしたい場合は、c *= sqrt(2) と d /= sqrt(2) をする。
ハールウェーブレットの逆離散ウェーブレット変換のソースコード。