Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ウェーブレットおきもち講座

aikiriao
May 10, 2024

 ウェーブレットおきもち講座

ウェーブレットと高速ウェーブレット変換の実装までの概要

aikiriao

May 10, 2024
Tweet

Other Decks in Science

Transcript

  1. ΢ΣʔϒϨοτ͓͖΋ͪ – ಋೖͱ࣮૷ – aikiriao May 10, 2024 Available at:

    Source: https://github.com/aikiriao/introduction_to_wavelet 1 / 61
  2. ΋͘͡ 1. ४උ ؔ਺͸ϕΫτϧ ؔ਺ۭؒͷྫɿϑʔϦΤڃ਺ ࿈ଓ΢ΣʔϒϨοτม׵ ௚ަ΢ΣʔϒϨοτม׵ 2. ଟॏղ૾౓ղੳ (MRA)

    ଟॏղ૾౓ղੳͷ֓ཁ ଟॏղ૾౓ղੳͷ৚݅ͱੑ࣭ ߴ଎΢ΣʔϒϨοτม׵ (FWT) 3. ࣮૷ Python ʹΑΔ࣮૷ Ԡ༻ྫ 2 / 61
  3. ؔ਺ͷ಺ੵ 2 ؔ਺ f, g ͷ಺ੵΛ࣍ͰఆΊΔɿ ⟨f(·), g(·)⟩ := b

    a f(x)g(x)dx (1) g(x) : g(x) ͷෳૉڞ໾ ੵ෼ൣғ [a, b] ͸ର৅ʹΑΓมΘΔɽলུͯ͠ ⟨f, g⟩ ͱ΋ॻ͘ɽߟ͑ํ͸ɼ༗ݶ࣍ݩϕΫτϧͱ ಉ͡ɿ ⟨v, w⟩ := n (v)n (w)n 5 / 61
  4. ؔ਺ͷ಺ੵ ಺ੵʹؔ͢Δੑ࣭΋༗ݶ࣍ݩϕΫτϧͱಉ༷ ▶ ؔ਺ͷ௚ަੑɿ ؔ਺ f ͱ g ͕௚ަ ⇐⇒

    ⟨f, g⟩ = 0 (2) ▶ ؔ਺ͷϊϧϜɿ ||f||2 2 := ⟨f, f⟩ (3) 6 / 61
  5. ؔ਺ۭؒ ؔ਺ͷுΔϕΫτϧۭؒΛؔ਺ۭؒͱ͍͏ɽͨͱ ͑͹ɼϊϧϜ͕༗ݶ ||f||2 2 = ∞ −∞ |f(x)|2dx <

    ∞ ͳؔ਺ f : R → C ͷू߹͸ؔ਺ۭؒΛͳ͢ɽ͜Ε Λ L2 (R) ͱॻ͘ɽ 7 / 61
  6. ؔ਺ۭؒͷྫɿϑʔϦΤڃ਺ पظ T = 2π/ω ͷؔ਺ f ͷϑʔϦΤڃ਺ɿ  

           f(t) = ∞ n=−∞ cn exp(jnωt) cn = 1 T T/2 −T/2 f(t) exp(−jnωt)dt (4) f(t) ͷ exp(jnωt) ʹΑΔ௚ަల։ ▶ 1 √ T exp(jnωt) ͸पظ T ͷؔ਺ͷਖ਼ن௚ަج ఈ 1 ͳͷͰՄೳ 1ิ଍ͷิ୊ 5 Λࢀর 8 / 61
  7. ؔ਺ۭؒͷྫɿϑʔϦΤڃ਺ ϑʔϦΤ܎਺ cn ͸ exp ͱͷ಺ੵͷఆ਺ഒ cn = 1 √

    T ⟨f(·), 1 √ T exp(jnω·)⟩ (5) ͔ͩΒɼnω ͷप೾਺੒෼ͱͷྨࣅ౓ʹ૬౰ 9 / 61
  8. ࿈ଓ΢ΣʔϒϨοτม׵ ۭؒʹہࡏ͢Δ 2”͟͟೾”ψ Λ࢖ͬͨ৴߸෼ੳ ख๏ɽ ▶ ψ ͷ͜ͱΛ΢ΣʔϒϨοτ (Wavelet) ؔ਺ͱ

    ͍͏ ▶ ψ Λ࣌ؒ࣠ํ޲ʹεέʔϧʢ৳ͼॖΈʣ/γϑ τͨؔ͠਺Λجఈͱ͢Δ 2஫ҙɿແݶൣғͰ஋Λ࣋ͭ΋ͷ΋͋Δ 10 / 61
  9. ྫɿϋʔϧ΢ΣʔϒϨοτψH -1 0 1 -5 -4 -3 -2 -1 0

    1 2 3 4 5 psi(t) t Haar wavelet ψH (t) :=    1 (0 ≤ t < 1 2 ) −1 (1 2 ≤ t < 1) 0 otherwise 11 / 61
  10. ྫɿϝΩγΧϯϋοτ΢ΣʔϒϨοτ -1 0 1 -5 -4 -3 -2 -1 0

    1 2 3 4 5 psi(t) t Mexican hat wavelet ψ(t) := (1 − t2) exp(−t2) 12 / 61
  11. ྫɿγϟϊϯ΢ΣʔϒϨοτ -1 0 1 -5 -4 -3 -2 -1 0

    1 2 3 4 5 psi(t) t Shanon wavelet ψ(t) := 2sinc(2t) − sinc(t) sinc(t) := sin(πt) πt 13 / 61
  12. Կނ΢ΣʔϒϨοτΛ࢖͏ͷ͔ʁ ▶ ϑʔϦΤڃ਺͸࣌ؒతʹہࡏ͢Δ৴߸ͷղੳ ͸ۤख ▶ ϑʔϦΤڃ਺͸ఆৗͳ৴߸ʢࡾ֯ؔ਺ʣʹΑΔج ఈ෼ղख๏ ▶ ࣌ؒͷζϨ͸Ґ૬ΛͣΒ͢͜ͱʹΑΓදݱ ▶

    ϑʔϦΤղੳͩͱݫ͍͠έʔεͷྫ 1. ୯ҰΠϯύϧε͸શप೾਺Ͱ܎਺͕౳͘͠ͳΓɼ Ͳ͜ʹΠϯύϧε͕͋Δ͔ෆ໌ 2. प೾਺͕࣌ؒʹԠͯ͡มԽ͢Δ৔߹ʢྫɿεΠʔ ϓ৴߸ʣ΋ɼप೾਺͸ղੳ۠ؒͰҰఆͱͯ͠ղੳ ΢ΣʔϒϨοτ͸ɼجఈͷதʹ࣌ؒతͳہࡏੑΛ ೖΕͯ໰୊ղܾΛਤΔ 14 / 61
  13. ࿈ଓ΢ΣʔϒϨοτม׵ ψ ʹ࣌ؒεέʔϧͱγϑτม׵Λࢪͨؔ͠਺Λ ψa,b (t) := 1 √ a ψ

    t − b a (6) ͱॻ͘ɽa ͸εέʔϧɼb ͸γϑτҐஔΛઃఆɽ 1/ √ a ͸ϊϧϜΛอͭͨΊͷఆ਺ 3 3ʢݕࢉʣs = (t − b)/a ͱஔ׵ੵ෼͢Ε͹ɼ ||ψa,b||2 2 = ∞ −∞ 1 a ψ t − b a ψ t − b a dt = 1 a ∞ −∞ ψ(s)ψ(s)ads = ||ψ||2 2 15 / 61
  14. ྫɿϋʔϧ΢ΣʔϒϨοτ -2 -1 0 1 2 -1 0 1 2

    3 4 5 6 7 8 9 10 psi(t) t a=1, b=0 a=0.25, b=3 a=4, b=5 16 / 61
  15. ࿈ଓ΢ΣʔϒϨοτม׵ ؔ਺ f ͷ࿈ଓ΢ΣʔϒϨοτม׵ F(a, b) ͸ɼf ͱ ψa,b ͷ಺ੵʹΑͬͯಘΒΕΔɿ

    F(a, b) := ∞ −∞ f(t)ψa,b (t)dt (7) = ⟨f(·), ψa,b (·)⟩ ม׵ઌ͸εέʔϧ a ͱγϑτ b ͷ 2 ࣠ʢεέϩά ϥϜͱ͍͏ʣ ▶ ϑʔϦΤม׵ͷҰൠԽʢψa,b (t) = exp(jat)ʣ ʹ૬౰ 17 / 61
  16. ΢ΣʔϒϨοτͷ཭ࢄԽ ψa,b ʢࣜ (6)ʣͷεέʔϧ a ͱγϑτ b Λ a =

    2−m, b = n2−m ͱ੔਺ m, n ∈ Z Ͱ཭ࢄԽͯ͠ 4ɼ ψm,n (t) := 1 √ 2−m ψ t − n2−m 2−m = 2m 2 ψ(2mt − n) (8) ͱॻ͘ɽ 4จݙʹΑͬͯ͸ m ͷූ߸͕ٯస͍ͯ͠ΔͷͰ஫ҙʂ 18 / 61
  17. ௚ަ΢ΣʔϒϨοτม׵ ΋͠ɼψm,n (t) ͕ਖ਼ن௚ަجఈΛͳ͢ ∀i, j, k, l ∈ Z.

    ⟨ψi,j , ψk,l ⟩ = δik δjl ͳΒ͹ 5ɼ೚ҙͷ৴߸ x ∈ L2 (R) Λ΢ΣʔϒϨο τల։܎਺ Xm,n = ⟨x, ψm,n ⟩ Λ༻͍ͯ x(t) = m,n Xm,n ψm,n (t) (9) ͱల։Ͱ͖Δɽ͜ΕΛ௚ަ΢ΣʔϒϨοτม׵ͱ ͍͏ɽ 5εέʔϧ/γϑτͷ྆ํͰਖ਼ن௚ަ 19 / 61
  18. ଟॏղ૾౓ղੳ(MRA)ͷ֓ཁ ଟॏղ૾౓ղੳ (MRA6) ͸௚ަ΢ΣʔϒϨοτม ׵ͷख๏ͷͻͱͭɽ εέʔϧ M ͷ৴߸ f(M)(t) Λ

    1 ͭεέʔϧͷམͱ ͨ͠৴߸ f(M−1)(t) ͱޡࠩ৴߸ g(M−1)(t) ͷ࿨Ͱද ͢͜ͱΛߟ͑Δɿ f(M)(t) = f(M−1)(t) + g(M−1)(t) (10) M ͸εέʔϧͷࡉ͔͞ɽେ͖͘ͱΕ͹ͲΜͳ৴߸ Ͱ΋ۙࣅͰ͖Δɽ 6MultiResolution Analysis 21 / 61
  19. ଟॏղ૾౓ղੳ(MRA)ͷ֓ཁ ࣜ (10) Λ܁Γฦ͠ద༻͍ͯ͘͠ͱɼ f(M)(t) = f(M−1)(t) + g(M−1)(t) =

    f(M−2)(t) + g(M−1)(t) + g(M−2)(t) = ... = f(J)(t) + M−1 m=J g(m)(t) (11) ೚ҙͷεέʔϧ J < M ·Ͱ৴߸Λ෼ղͰ͖Δʂ 22 / 61
  20. ଟॏղ૾౓ղੳ(MRA) MRA ͸࣍ͷ෦෼ۭؒ Vm ͱؔ਺ ϕ Vm := n cn

    ϕm,n (t) cn ∈ l2 (Z) (12) ϕm,n (t) := 2m 2 ϕ(2mt − n) (13) Λجʹߏ੒͞ΕΔ 78ɽϕ ΛεέʔϦϯάؔ਺ (scaling function) ͱ͍͏ɽ 7l2 (Z) ͸ೋ৐૯࿨Մೳͳ਺ྻ ( n |cn |2 < ∞) ͷू߹ 8จݙʹΑͬͯ͸ m ͷූ߸͕ٯస͍ͯ͠ΔͷͰ஫ҙʂ 24 / 61
  21. MRAͷຬͨ͢΂͖৚݅ I MRA ͸ɼू߹ Vm ʹରͯ͠ҎԼͷ৚݅ (M1)-(M4) Λཁٻ͢Δ 9ɿ (M1)

    V0 ͸ਖ਼ن௚ަجఈ {ϕ(t − n)|n ∈ Z}, ϕ ∈ L2 (R) ʹΑͬͯுΒΕΔ 25 / 61
  22. MRAͷຬͨ͢΂͖৚݅ II M1 ͓ؾ࣋ͪ εέʔϦϯάؔ਺ ϕ ͸੔਺γϑτʹؔͯ͠ਖ਼ن ௚ަجఈͱͳΔ͜ͱΛཁٻɿ ⟨ϕ(· −

    n), ϕ(· − m)⟩ = δnm (M1) ͕੒ཱ͢Ε͹ɼ೚ҙͷ m, p, q ∈ Z ʹର͠ɼ ⟨ϕm,p , ϕm,q ⟩ = ∞ −∞ 2m 2 ϕ(2mt − p)2m 2 ϕ(2mt − q)dt = 2m ∞ −∞ ϕ(2mt − p)ϕ(2mt − q)dt = ∞ −∞ ϕ(s − p)ϕ(s − q)ds (s = 2mt) = δpq ʢ∵ ϕ ͸γϑτʹؔͯ͠ਖ਼ن௚ަʣ ͔ͩΒɼV0 ͑͞ఆ·Ε͹શͯͷ Vm ͕ுΒΕΔɽ 26 / 61
  23. MRAͷຬͨ͢΂͖৚݅ III (M2) Vm ⊂ Vm+1 M2 ͓ؾ࣋ͪ Vm ͸ೖΕࢠߏ଄Λͳ͢ɽ

    εέʔϧ m Λ্͛ΔͱදݱՄೳͳ৴߸͕૿͑Δ 27 / 61
  24. MRAͷຬͨ͢΂͖৚݅ IV (M3) m Vm = L2 (R)ʢAɿू߹ A ͷดแʣ

    M3 ͓ؾ࣋ͪ lim m→∞ Vm = L2 (R) Ͱ͋Δ͜ͱɼͭ·ΓɼL2 (R) ͷ ͲΜͳ৴߸Ͱ͋ͬͯ΋೚ҙͷਫ਼౓ͰۙࣅͰ͖Δ (M4) m Vm = {0} M4 ͓ؾ࣋ͪ lim m→−∞ Vm = {0} Ͱ͋Δ͜ͱɼͭ·Γɼεέʔϧ Λۃݶ·Ͱམͱ͢ͱ Vm ʹؚ·ΕΔ৴߸͸ఆ஋ؔ ਺ 0 ͷΈʹͳΔ 9ͳͥ͜ͷཁٻ (M1)-(M4) Ͱྑ͍͔͸ׂѪɽ[1, 2] Λࢀরͷ͜ͱ 28 / 61
  25. ྫɿϋʔϧ΢ΣʔϒϨοτψH ψH ʹରԠ͢ΔεέʔϦϯάؔ਺ ϕH ϕH (t) := 1 (0 ≤

    t < 1) 0 otherwise ϕHm,n (t) := 2m 2 ϕH (2mt − n) ͱ͔͘ɽ 0 1 2 -1 0 1 2 3 4 5 6 7 8 9 10 phi(t) t m=0, n=0 m=2, n=8 m=-2, n=1 29 / 61
  26. ྫɿϋʔϧ΢ΣʔϒϨοτψH ϕH ͕৚݅ (M1)-(M4) Λຬ͔ͨ͢νΣοΫ (M1) a, b ∈ Z

    ʹରͯ͠ɼ ⟨ϕH (· − a), ϕH (· − b)⟩ = ∞ −∞ ϕH (t − a)ϕH (t − b)dt = ∞ −∞ ϕH (s)ϕH (s + a − b)ds (s = t − a) = δab ͳͷͰ {ϕH (t − n)|n ∈ Z} ͸ਖ਼ن௚ަجఈɽ 30 / 61
  27. ྫɿϋʔϧ΢ΣʔϒϨοτψH (M2) ೚ҙͷ m, n ∈ Z ʹରͯ͠ɼ ϕHm,n (t)

    = 2m 2 2−mn ≤ t < 2−m(n + 1) 0 otherwise ϕHm+1,2n (t) = 2m+1 2 2−(m+1)2n ≤ t < 2−(m+1)(2n + 1) 0 otherwise = 2m+1 2 2−mn ≤ t < 2−m(n + 1 2 ) 0 otherwise ͔ͩΒɼ೚ҙͷ ϕHm,n ∈ Vm ͸ ϕHm+1,2n , ϕHm+1,2n+1 ∈ Vm+1 Λ༻͍ͯ ϕHm,n (t) = 2−1 2 ϕHm+1,2n (t) + 2−1 2 ϕHm+1,2n+1 (t) (14) ͱදͤΔɽΑͬͯ Vm ⊂ Vm+1 ɽ 31 / 61
  28. ྫɿϋʔϧ΢ΣʔϒϨοτψHʢઆ໌͸লུʣ (M3) lim m→∞ ϕHm,0 (t) = δ(t)ʢδ(t)ɿΠϯύϧεؔ਺ʣͷ؍࡯ ͔Βɼ lim

    m→∞ Vm ͸Πϯύϧεؔ਺Λ࣌ؒγϑτͨ͠ू ߹ͱͳΔɽ೚ҙͷ f ∈ L2 (R)ɼs ∈ R ʹରͯ͠ δ(t − s) ∈ lim m→∞ Vm ͕ଘࡏͯ͠ɼ ⟨f(·), δ(· − s)⟩ = ∞ −∞ f(t)δ(t − s)dt = f(s) ͔ͩΒɼf ∈ lim m→∞ Vm Ͱ L2 (R) ⊂ lim m→∞ Vm ɽҰํɼ ϕHm,n ∈ L2 (R) ͔ͩΒ L2 (R) ⊃ lim m→∞ Vm ɽैͬͯɼ lim m→∞ Vm = L2 (R)ɽ (M4) lim m→−∞ ϕHm,n (t) = 0 ΑΓ͔֬ʹ lim m→−∞ Vm ͸ 0 ؚ͔͠·ͳ͍ɽ 32 / 61
  29. Dilationํఔࣜʢπʔεέʔϧؔ܎ʣ (M2) ͕੒ཱ͢Ε͹ V−1 ⊂ V0 ɽΑͬͯ ϕ(t/2) ∈ V−1

    ͸ V0 ͷجఈ {ϕ(t − n)|n ∈ Z} ͷઢܗ݁߹Ͱදݱ Ͱ͖ɼ ϕ(t/2) = √ 2 n h[n]ϕ(t − n) (15) Λຬͨ͢܎਺ {h[n]} ͕ଘࡏ͢Δ 10ɽ͜ΕΛ Dilation ํఔࣜͱ͔πʔεέʔϧؔ܎ͱݺͿɽ 10 √ 2 ͸ن֨Խఆ਺ 33 / 61
  30. MRAͷ΢ΣʔϒϨοτؔ਺ (M2) ΑΓ Vm ⊂ Vm+1 ͔ͩΒɼVm ⊕ Wm =

    Vm+1 ʢ⊕ɿ௚࿨ʣͱͳΔ Wm ͕ଘࡏ͢Δɿ 34 / 61
  31. MRAͷ΢ΣʔϒϨοτؔ਺ Wm = Vm+1 ⊖ Vm ΑΓɼWm ͸εέʔϧ m ͷ

    ΢ΣʔϒϨοτ͔ΒுΒΕΔΑ͏ʹఆΊΔɿ Wm := n cn ψm,n (t) cn ∈ l2 (Z) (16) ͜ͷͱ͖ɼWm ͸ Vm ⊥ Wm 11 Λຬ͞ͳ͚Ε͹ͳΒ ͳ͍ɽͦͷ੒ཱ৚݅Λݟ͍ͯ͘ɽ 11Vm , Wm ͦΕͧΕ͔ΒબΜͩ೚ҙͷݩʢؔ਺ʣ͕௚ަ͍ͯ͠Δ 35 / 61
  32. MRAͷ΢ΣʔϒϨοτؔ਺ W−1 ⊂ V0 ͔ͩΒɼψ(t/2) ∈ W−1 ΋ V0 ͷجఈ

    {ϕ(t − n)|n ∈ Z} ͷઢܗ݁߹Ͱදͤͯɼ ψ(t/2) = √ 2 n g[n]ϕ(t − n) (17) Λຬͨ͢܎਺ {g[n]} ͕ଘࡏ͢Δɽ 36 / 61
  33. MRAͷ΢ΣʔϒϨοτؔ਺ ͜ͷͱ͖ɼ g[n] = (−1)nh[1 − n] (18) ͱ͢Ε͹ Vm

    ⊥ Wm ͕ຬͨ͞ΕΔ 12ɽ ⇒ ඞཁͳͷ͸ {h[n]} ͚ͩʂ༗໊ͳ΢ΣʔϒϨο τ͸ {h[n]} ͷ਺ද͕༩͑ΒΕ͍ͯΔʂ 12ূ໌͸௕͘ͳΔɽิ଍ʹͯड़΂Δʢܥ 1ʣ 37 / 61
  34. ྫɿϋʔϧ΢ΣʔϒϨοτ ࣜ (14) ʹ͓͍ͯ m = −1, n = 0

    ͱ͓͘ͱɼ ϕH−1,0 (t) = 2−1 2 ϕH0,0 (t) + 2−1 2 ϕH0,1 (t) ⇐⇒ 2−1 2 ϕH (t/2) = 2−1 2 ϕH (t) + 2−1 2 ϕH (t − 1) ⇐⇒ ϕH (t/2) = ϕH (t) + ϕH (t − 1) Dilation ํఔࣜʢࣜ (15)ʣͱݟൺ΂Δͱ h[0] = h[1] = 2−1 2 ࣜ (18) ʹΑΓ g[0] = 2−1 2 , g[1] = −2−1 2 ͕ಘΒΕɼ ψH (t/2) = ϕH (t) − ϕH (t − 1) ϕH ͔Β ψH ͕ಘΒΕͨɽ 38 / 61
  35. MRAͷ௚ަ΢ΣʔϒϨοτม׵ Vm ⊕ Wm = Vm+1 Λ܁Γฦ͠ద༻͢Δͱɼ Vm = Vm−1

    ⊕ Wm−1 = Vm−2 ⊕ Wm−2 ⊕ Wm−1 = ... = VJ ⊕ WJ ⊕ WJ−1 ⊕ · · · ⊕ Wm−1 (J < m) = VJ ⊕ m−1 k=J Wk ͱॻ͚Δɽm → ∞ ͱ͢Δͱɼ lim m→∞ Vm = VJ ⊕ ∞ k=J Wk (19) 39 / 61
  36. MRAͷ௚ަ΢ΣʔϒϨοτม׵ ೚ҙͷ x(t) ∈ L2 (R) ͸ҎԼͷΑ͏ʹ௚ަల։Ͱ͖ Δ 13ɿ x(t)

    = n pJ [n]ϕJ,n (t) ∈VJ + ∞ m=J n qm [n]ψm,n (t) ∈Wm (20) ͜͜Ͱɼpm [n] = ⟨x, ϕm,n ⟩, qm [n] = ⟨x, ψm,n ⟩ɽ 13∵ ࣜ (19)ɼ(M3)ʢlimm→∞ Vm = L2 (R)ʣ ɼVm ⊥ Wm (m ∈ Z) ΑΓ 40 / 61
  37. MRAͷ௚ަ΢ΣʔϒϨοτม׵ εέʔϧ M > J Ҏ্ͷ੒෼Λແࢹ͢ΔͱҎԼͷ ۙࣅ͕੒Γཱͭɿ x(t) ≈ n

    pJ [n]ϕJ,n (t) + M−1 m=J n qm [n]ψm,n (t) (21) ͜͜Ͱɼf(m)(t) := n pm [n]ϕm,n (t)ɼ g(m)(t) := n qm [n]ψm,n (t) ͱ͢Δͱ x(t) ≈ f(J)(t) + M−1 m=J g(m)(t) ࣜ (11) ͦͷ΋ͷɿଟॏղ૾౓ղੳΛߏ੒ͯ͠ ͍Δɽ 41 / 61
  38. FWTͷಋग़ʢల։ʣ ࣜ (20) ͷల։܎਺ pm [n], qm [n] ͸ h[n],

    g[n] Λ༻͍ ͯܭࢉͰ͖Δɽ ิ୊ 1 (ల։ܭࢉ) pm [n] = k h[k − 2n]pm+1 [k] (22) qm [n] = k g[k − 2n]pm+1 [k] (23) ৞ΈࠐΈԋࢉͱؒҾ͖ʹͳ͍ͬͯΔ͜ͱʹ஫໨ʂ 42 / 61
  39. FWTͷಋग़ʢల։ʣ ʢূ໌ʣ४උͱͯ͠ɼDilation ํఔࣜʢࣜ (15)ʣ͔Βಋ͔ΕΔؔ܎ࣜʹண໨͢Δɽ ϕm,n(t) = 2 m 2 ϕ(2mt

    − n) = 2 m 2 ϕ 2m+1t − 2n 2 = 2 m 2 √ 2 k h[k]ϕ(2m+1t − 2n − k) ʢ∵ Dilation ํఔࣜʣ = k h[k]2 m+1 2 ϕ(2m+1 − 2n − k) = k h[k]ϕm+1,2n+k(t) (24) ψm,n ʹؔͯ͠΋ಉ༷ʹͯ͠ɼࣜ (17) ͔Βɼ ψm,n(t) = k g[k]ϕm+1,2n+k(t) (25) ೚ҙͷ x(t) ∈ L2(R) ΛͱΔɽࣜ (24)ɼࣜ (25) Λ༻͍Δͱɼ pm[n] = ⟨x, ϕm,n⟩ = ⟨x, k h[k]ϕm+1,2n+k⟩ = k h[k]⟨x, ϕm+1,2n+k⟩ = k h[k]pm+1[2n + k] = k h[k − 2n]pm+1[k] (k ← 2n + k) qm[n] = ⟨x, ψm,n⟩ = ⟨x, k g[k]ϕm+1,2n+k⟩ = k g[k − 2n]pm+1[k] 43 / 61
  40. FWTͷಋग़ʢ࠶ߏ੒ʣ ٯʹɼpm [n], qm [n] ͔Β pm+1 [n] Λ࠶ߏ੒Ͱ͖Δɽ ิ୊

    2 (࠶ߏ੒ܭࢉ) pm+1 [n] = k h[n − 2k]pm [k] + k g[n − 2k]qm [k] (26) ࣜ (22)ɼࣜ (23)ɼࣜ (26) ʹΑΔஞ࣍తͳల։ɾ࠶ ߏ੒ΞϧΰϦζϜΛߴ଎΢ΣʔϒϨοτม׵ (FWT, Fast Wavelet Transform) ͱ͍͏ɽ 44 / 61
  41. FWTͷಋग़ʢ࠶ߏ੒ʣ ʢূ໌ʣpm+1[n] ͷఆٛͱ x ͷ௚ަల։ࣜʢࣜ (20)ʣΑΓɼ pm+1[n] = ⟨x, ϕm+1[n]⟩

    = ⟨ k pm[k]ϕm,k + ∞ t=m k qt[k]ψt,k, ϕm+1,n⟩ = k pm[k]⟨ϕm,k, ϕm+1,n⟩ + ∞ t=m k qt[k]⟨ψt,k, ϕm+1,n⟩ ͜͜Ͱɼࣜ (24) ΑΓɼ ⟨ϕm,k, ϕm+1,n⟩ = ⟨ l h[l]ϕm+1,2k+l, ϕm+1,n⟩ = ⟨ s h[s − 2k]ϕm+1,s, ϕm+1,n⟩ (s = 2k + l) = s h[s − 2k]⟨ϕm+1,s, ϕm+1,n⟩ = s h[s − 2k]δsn ʢ∵ ϕ ͷγϑτʹؔ͢Δ௚ަੑʣ = h[n − 2k] 45 / 61
  42. FWTͷಋग़ʢ࠶ߏ੒ʣ ೚ҙͷ t ≥ m + 1 ʹରͯ͠ (M2) ΑΓ

    Vm+1 ⊂ Vt ͔ͩΒɼ Wt ⊥ Vt =⇒ Wt ⊥ Vm+1 Αͬͯ ⟨ψt,k, ϕm+1,n⟩ = 0 (t ≥ m + 1)ɽ͜ΕΑΓɼ ∞ t=m ⟨ψt,k, ϕm+1,n⟩ = ⟨ψm,k, ϕm+1,n⟩ = ⟨ l g[l]ϕm+1,2k+l, ϕm+1,n⟩ ʢ∵ ࣜ (25)ʣ = ⟨ s g[s − 2k]ϕm+1,s, ϕm+1,n⟩ (s = 2k + l) = s g[s − 2k]⟨ϕm+1,s, ϕm+1,n⟩ = s g[s − 2k]δsn ʢ∵ ϕ ͷγϑτʹؔ͢Δ௚ަੑʣ = g[n − 2k] Ҏ্ͷ݁Ռ͔Βɼ pm+1[n] = k pm[k]⟨ϕm,k, ϕm+1,n⟩ + ∞ t=m k qt[k]⟨ψt,k, ϕm+1,n⟩ = k h[n − 2k]pm[k] + k g[n − 2k]qm[k] 46 / 61
  43. FWTͷϑΟϧλදݱ ల։ॲཧʢࣜ (22)ɼ(23)ʣΛϑΟϧλදݱ͢Δͱ H G ↓ 2 qm ↓ 2

    H G ↓ 2 qm−1 ↓ 2 G ↓ 2 qm−2 pm+1 pm pm−1 Figure 1: ల։ॲཧɽ↓ 2 ͸ 2 ഒͷؒҾ͖ʢ1 ݸඈ͹͠ʣ H ͸ϩʔύεϑΟϧλɼG ͸ϋΠύεϑΟϧλ ▶ pm ͸εέʔϧΛམͱͨ͠৴߸੒෼ɼqm ͸ࠩ ෼੒෼͔ͩΒ 47 / 61
  44. FWTͷϑΟϧλදݱ ࠶ߏ੒ॲཧʢࣜ (26)ʣΛϑΟϧλදݱ͢Δͱ ↑ 2 H G ↑ 2 qm−1

    ↑ 2 H G ↑ 2 qm pm−1 pm pm+1 Figure 2: ࠶ߏ੒ॲཧɽ↑ 2 ͸ 2 ഒͷิؒʢ0 ஋ૠೖʣ 48 / 61
  45. FWTͷܭࢉྔ FWT ͷ࣌ؒతܭࢉྔ͸ɼೖྗσʔλݸ਺ N ʹର ͯ͠ O(N)ɽ ʢূ໌ʣpM [n] ͕

    N ݸͷσʔλ͔ΒͳΓɼH, G Λ௕͞ L ͷ FIR ϑΟϧλͱ͢Δͱɼ֤ εέʔϧʹ͓͚Δੵ࿨ԋࢉճ਺͸࣍ͷΑ͏ʹͳΔɿ 1 ஈ໨ pM [n] ͸ N ݸͷσʔλ͔ΒͳΔͨΊɼpM−1[n] ͷܭࢉͰ NL ճͷੵ࿨ԋࢉɼ qM−1[n] ͷܭࢉͰ NL ճͷੵ࿨ԋࢉ ⇒ ܭ 2NL ճ 2 ஈ໨ pM−1[n] ͸ N/2 ݸͷσʔλ͔ΒͳΔͨΊɼpM−2[n] ͷܭࢉͰ NL/2 ճͷੵ࿨ ԋࢉɼqM−2[n] ͷܭࢉͰ NL/2 ճͷੵ࿨ԋࢉ ⇒ ܭ NL ճ 3 ஈ໨ pM−2[n] ͸ N/4 ݸͷσʔλ͔ΒͳΔͨΊɼpM−3[n] ͷܭࢉͰ NL/4 ճͷੵ࿨ ԋࢉɼqM−3[n] ͷܭࢉͰ NL/4 ճͷੵ࿨ԋࢉ ⇒ ܭ NL/2 ճ ... Αͬͯ͢΂ͯͷஈͷੵ࿨ԋࢉճ਺ͷ࿨͸ɼ 2NL + NL + NL 2 + ... ≤ 4NL ࠶ߏ੒ॲཧʹ͓͍ͯ΋ٯ޲͖ͷखॱͷܭࢉΛߦ͏͚ͩͳͷͰܭࢉྔ͸มΘΒͳ͍ɽैͬ ͯɼܭࢉྔ͸ O(N)ɽ 49 / 61
  46. ల։܎਺ͷೖྗʹΑΔۙࣅ ิ୊ 3 (܎਺ͷۙࣅ [3]) M ͸े෼ʹେ͖͍ͱ͢Δɽx ͕࿈ଓ͔ͭ ϕ ͕ίϯ

    ύΫταϙʔτ a ͳΒ͹ɼ pM [n] ≈ Ax(2−M n) A = ∞ −∞ ϕ(t)dt (27) a༗քͳൣғ֎Ͱ͸ৗʹ 0 ͱͳ͍ͬͯΔ͜ͱ ⇒ ೖྗ৴߸ܥྻΛͦͷ··෼ղɾ࠶ߏ੒ʹಥͬࠐ ΜͰʢ΄΅ʣOKʂ 14 14ϋʔϧ΢ΣʔϒϨοτͳΒ A = 1 50 / 61
  47. ల։܎਺ͷೖྗʹΑΔۙࣅ ʢূ໌ʣϕ ͸ԾఆΑΓɼ͋Δൣғ [−L, L] ͷ֎Ͱ͸ৗʹ 0 ͱ͢Δɽ͜ͷͱ͖ pM [n]

    ͸ɼ pM [n] = ⟨x, ϕM,n⟩ = ∞ −∞ x(s)ϕM,n(s)ds = ∞ −∞ x(s)2M ϕ(2M s − n)ds = ∞ −∞ x(2−M t + 2−M n)2M ϕ(t)2−M dt (t = 2M s − n) = ∞ −∞ x(2−M t + 2−M n)ϕ(t)dt = L −L x(2−M t + 2−M n)ϕ(t)dt ʢ∵ ϕ ͸ίϯύΫταϙʔτʣ M ͕े෼େ͖͍ͱ͖ɼx ͷ࿈ଓੑʹΑΓ۠ؒ [−2−M L + 2−M n, 2−M L + 2−M n] Ͱ x ͸΄΅ҰఆͱΈͳͤΔ͔Βɼ x(2−M t + 2−M n) ≈ x(2−M n) ͜ͷۙࣅʹΑΓɼ pM [n] ≈ L −L x(2−M n)ϕ(t)dt = x(2−M n) L −L ϕ(t)dt = x(2−M n) ∞ −∞ ϕ(t)dt ʢ∵ ϕ ͸ίϯύΫταϙʔτʣ = Ax(2−M n) 51 / 61
  48. FWTͷಛ௃ ಛ௃ ▶ ࣜ (18)ʢg[n] := (−1)nh[1 − n]ʣΑΓ࣮ߦʹ ඞཁͳͷ͸

    h[n] ͷΈʂʂ ▶ ༗໊ͳ΢ΣʔϒϨοτ͸ h[n] ͕ެ։͞Ε͍ͯΔ ▶ ܭࢉྔ͸ O(N)ʂʂ ▶ ࣮༻্͸ೖྗ৴߸Λͦͷ··࢖༻Ͱ͖Δʂʂ ஫ҙ఺ ▶ εέʔϧ͸ 2 ͷࢦ਺ʹݶΔʢFFT ͸౳ִؒε έʔϧʣ ▶ ෆ֬ఆੑݪཧʢิ଍ࢀরʣʹ͸റΒΕΔ 52 / 61
  49. ΢ΣʔϒϨοτ܎਺ͷܭࢉ(fwt.py) 28 def calculate_wavelet_coef(scaling_coefficients): 29 """ εέʔϦϯά܎਺͔Β΢ΣʔϒϨοτ܎਺Λੜ੒ """ 30 wavelet_coefficients

    = scaling_coefficients [::-1].copy() # ॱংٯͷ഑ྻ 31 for i in range(len(scaling_coefficients)): 32 wavelet_coefficients[i] *= ((-1) ** i) 33 return wavelet_coefficients ϑΟϧλ܎਺৚݅ʢࣜ (18)ʣʹ͓͍ͯɼ g[n] = (−1)nh[1 − n] = (−1)nh[L + 1 − n] ͔ͩΒʢLɿϑΟϧλ܎਺௕ɽ཭ࢄϑʔϦΤม׵ͷੑ࣭ΑΓ पظੑΛ࣋ͭʣ ɼn ͷൣғΛ 0, ..., L − 1 ʹ௚͢ͱɼ g[n] = (−1)nh[L − 1 − n] (n = 0, ..., L − 1) 54 / 61
  50. FWTͷ࣮૷ྫ(fwt.py) 36 def fwt1d(src, scaling_coef): 37 """ 1࣍ݩߴ଎΢ΣʔϒϨοτม׵ """ 38

    # ΢ΣʔϒϨοτ܎਺ܭࢉ 39 wavelet_coef = calculate_wavelet_coef( scaling_coef) 40 # ೖྗ͕੔਺ͩͱؙΊࠐ·ΕΔͨΊfloatʹม׵ 41 src = src.astype(float) 42 # correlate1d͸ϑΟϧλΧʔωϧͷ൒෼ʢத৺ʣ͚ͩग़ ྗ͕ޙΖʹͣΕΔͷͰ 43 # ઌʹೖྗΛલʹͣΒ͓ͯ͘͠ 44 src = np.roll(src, -len(scaling_coef) // 2) 45 # ৞ΈࠐΈ ೖྗͷ୺఺͸८ճ 46 # ϑΟϧλͷΠϯσοΫε͕ਖ਼ํ޲ʹ૿Ճ͢ΔͨΊ correlate1dΛ࢖༻ 47 decomp_src = correlate1d(src, scaling_coef, mode= ’wrap’)[::2] 48 decomp_wav = correlate1d(src, wavelet_coef, mode= ’wrap’)[::2] 49 return [decomp_src, decomp_wav] 55 / 61
  51. IFWTͷ࣮૷ྫ(fwt.py) 52 def ifwt1d(decomp_src, decomp_wav, scaling_coef): 53 """ 1࣍ݩߴ଎΢ΣʔϒϨοτٯม׵ """

    54 # ΢ΣʔϒϨοτ܎਺ܭࢉ 55 wavelet_coef = calculate_wavelet_coef( scaling_coef) 56 src_len = 2 * len(decomp_src) 57 # 0஋ૠೖ 58 scaling_interp = np.zeros(src_len) 59 scaling_interp[::2] = decomp_src 60 wavelet_interp = np.zeros(src_len) 61 wavelet_interp[::2] = decomp_wav 62 # ৞ΈࠐΈ ೖྗͷ୺఺͸८ճ 63 src = convolve1d(scaling_interp, scaling_coef, mode=’wrap’) 64 src += convolve1d(wavelet_interp, wavelet_coef, mode=’wrap’) 65 # convolve1d͸ϑΟϧλΧʔωϧͷ൒෼ʢத৺ʣ͚ͩग़ྗ ͕લʹͣΕΔͷͰ 66 # ೖྗΛޙΖʹͣΒ͢ 67 src = np.roll(src, len(scaling_coef) // 2) 68 return src 56 / 61
  52. 2࣍ݩFWTͷ࣮૷ྫ(fwt.py) 71 def fwt2d(src2d, scaling_coef): 72 """ 2࣍ݩߴ଎΢ΣʔϒϨοτม׵ """ 81

    # src2dΛ௿ҬʢࠨʣͱߴҬʢӈʣʹ෼ղ 82 for j in range(src_len): 83 src_l, src_h = fwt1d(src2d[j, :], scaling_coef) 84 src2d_l[j, :] = src_l 85 src2d_h[j, :] = src_h 86 # src2d_l, src2d_hΛߋʹࠨ্(ll)ɺࠨԼ(hl)ɺӈ্(lh )ɺӈԼ(hh)ʹ෼ղ 87 for j in range(half_src_len): 88 src_l, src_h = fwt1d(src2d_l[:, j], scaling_coef) 89 src2d_ll[:, j] = src_l 90 src2d_hl[:, j] = src_h 91 src_l, src_h = fwt1d(src2d_h[:, j], scaling_coef) 92 src2d_lh[:, j] = src_l 93 src2d_hh[:, j] = src_h 94 return [src2d_ll, src2d_hl, src2d_lh, src2d_hh] 58 / 61
  53. 2࣍ݩIFWTͷ࣮૷ྫ(fwt.py) 97 def ifwt2d(src2d_ll, src2d_hl, src2d_lh, src2d_hh, scaling_coef): 98 """

    2࣍ݩߴ଎΢ΣʔϒϨοτٯม׵ """ 99 src_len = src2d_ll.shape[0] 100 twice_src_len = 2 * src_len 101 src2d = np.zeros((twice_src_len, twice_src_len)) 102 src2d_l = np.zeros((twice_src_len, src_len)) 103 src2d_h = np.zeros((twice_src_len, src_len)) 104 # ࠨ্(ll)ɺࠨԼ(hl)ɺӈ্(lh)ɺӈԼ(hh)͔Βࠨ(l)ɺ ӈ(h)ʹ߹੒ 105 for j in range(src_len): 106 src2d_l[:, j] = ifwt1d(src2d_ll[:, j], src2d_hl[:, j], scaling_coef) 107 src2d_h[:, j] = ifwt1d(src2d_lh[:, j], src2d_hh[:, j], scaling_coef) 108 # ࠨ(l)ɺӈ(h)͔ΒݩΛ߹੒ 109 for j in range(twice_src_len): 110 src2d[j, :] = ifwt1d(src2d_l[j, :], src2d_h[j , :], scaling_coef) 111 return src2d 59 / 61
  54. ૉ๿ͳٙ໰ पظ T ͷؔ਺ f(x) ͕ҎԼͷΑ͏ʹϑʔϦΤڃ਺ ల։Ͱ͖Δͱ͠Α͏ɽ f(x) = n

    cn exp(jnωx) cn = 1 T T 2 −T 2 f(x) exp(−jnωx)dx ͍΍଴ͯΑɿ ▶ ࡾ֯ؔ਺ͷ࿨Ͱ f ͬͯදݱͰ͖Δͷʁ ▶ Ͱ͖ͨͱͯ͠ɼf ʹ͸ͲΜͳ৚͕݅ඞཁʁ 2 / 59
  55. σΟϦΫϨ֩ Ұ୴ϑʔϦΤڃ਺ల։͕Ͱ͖Δͱड͚ೖΕͯɼ ϑʔϦΤڃ਺ͷ͔ࣜΒ cn Λফͯ͠੔ཧͯ͠ΈΔɿ f(x) = n cn exp(jnωx)

    = n 1 T T 2 − T 2 f(s) exp(−jnωs)ds exp(jnωx) = 1 T T 2 − T 2 f(s) n exp[−jnω(x − s)]ds = 1 T x+ T 2 x− T 2 f(x − u) n exp(jnωu)du (u = x − s) = 1 T T 2 − T 2 f(x − u) n exp(jnωu)du ʢ∵ f ͸पظ Tʣ 3 / 59
  56. σΟϦΫϨ֩ ͜͜ͰɼҎԼͷσΟϦΫϨ֩ (Dirichlet Kernel)DN Λఆٛ͢Δɿ DN (x) = N n=−N

    exp(jnx) (28) f ͸ DN ͱͷ৞ࠐΈͰ෮ݩͰ͖Δɿ f(x) = 1 T T 2 −T 2 f(x − u)D∞ (ωu)du DN ͷੑ࣭Λ؍࡯ͯ͠ΈΑ͏ 4 / 59
  57. σΟϦΫϨ֩ DN ͸࿨Λ࢖Θͳ͍ࣜͰ΋දݱͰ͖Δɿ DN (x) = sin 1 2 +

    N x sin 1 2 x (29) ʢূ໌ʣ·ͣɼ DN (x) = N n=−N exp(jnx) = exp(0) + N n=1 {exp(jnx) + exp(−jnx)} = 1 + N n=1 {cos(nx) + j sin(nx) + cos(nx) − j sin(nx)} = 1 + 2 N n=1 cos(nx) (30) ΑΓɼDN ͸ cos ͷ࿨ͰදݱͰ͖Δɽ 5 / 59
  58. σΟϦΫϨ֩ ྆ล sin 1 2 x Λ৐͡Δͱɼ sin 1 2

    x DN (x) = 2 sin 1 2 x 1 + 2 N n=1 cos(nx) = sin 1 2 x + 2 sin 1 2 x {cos(x) + cos(2x) + cos(3x) + ... + cos(Nx)} = sin 1 2 x + sin 1 2 − 1 x + sin 1 2 + 1 x + sin 1 2 − 2 x + sin 1 2 + 2 x + ... + sin 1 2 − N x + sin 1 2 + N x ʢ∵ Ճ๏ఆཧ sin(nx) cos(mx) = 1 2 {sin(n + m)x + sin(n − m)x}ʣ = sin 1 2 x + sin − 1 2 x + sin 3 2 x + sin − 3 2 x + ... + sin 1 2 + N x = sin 1 2 + N x Αͬͯɼ DN (x) = sin 1 2 + N x sin 1 2 x 6 / 59
  59. σΟϦΫϨ֩ DN (ωx) ͷ 1 पظ෼ʹ౉Δੵ෼͸ T ʹ౳͍͠ɿ T 2

    −T 2 DN (ωx)dx = T (31) ʢূ໌ʣࣜ (30) Λ࢖͏ͱɼ T 2 − T 2 DN (ωx) = T 2 − T 2 1 + 2 N n=1 cos(nωx) dx = T 2 − T 2 dx + 2 N n=1 T 2 − T 2 cos(nωx)dx = T + 2 N n=1 1 nω sin n 2π T x T 2 − T 2 ∵ ω = 2π T = T + 2 N n=1 1 nω {sin(nπ) − sin(−nπ)} = T 7 / 59
  60. ϑʔϦΤڃ਺ʹΑΔۙࣅ σΟϦΫϨ֩Λ࢖͏͜ͱͰɼf ͷ N ࣍·Ͱͷϑʔ ϦΤڃ਺ SN (x) Λ SN

    (x) = 1 T T 2 −T 2 f(x − u)DN (ωu)du (32) ͱදݱͰ͖ΔɽͰ͸ɼ lim N→∞ |SN (x) − f(x)| = 0 (33) ͱͳΔͷ͸ͲΜͳ͔࣌ʁ 8 / 59
  61. ϑʔϦΤڃ਺ʹΑΔۙࣅ SN (x) − f(x) Λมܗ͍ͯ͘͠ͱɼ SN (x) − f(x)

    = 1 T T 2 − T 2 f(x − u)DN (ωu)du − f(x) = 1 T T 2 − T 2 f(x − u)DN (ωu)du − 1 T T 2 − T 2 DN (ωu)f(x)du ʢ∵ ࣜ (31)ʣ = 1 T T 2 − T 2 {f(x − u) − f(x)} DN (ωu)du = 1 T T 2 − T 2 f(x − u) − f(x) sin 1 2 ωu sin 1 2 + N ωu du ʢ∵ ࣜ (29)ʣ(34) 9 / 59
  62. ϑʔϦΤڃ਺ʹΑΔۙࣅ ࣜ (34) ͕ 0 ʹऩଋ͢Δ͔൱͔͸ɼ࣍ͷิ୊ʹΑΓ ൑ఆͰ͖Δɿ ิ୊ 4 (ϦʔϚϯɾϧϕʔάͷิ୊)

    ൣғ [a, b] Ͱ۠෼తʹ࿈ଓͳؔ਺ f ʹରͯ͠ɼ lim N→∞ b a f(x) sin(Nx)dx = 0 (35) ิ୊ͷূ໌͸ޙΖͰߦ͏ɽ͜ΕΑΓɼf(x−u)−f(x) sin(1 2 ωu) ͕۠෼తʹ࿈ଓͰ͋Ε͹ྑ͍ɽ 10 / 59
  63. ϑʔϦΤڃ਺ʹΑΔۙࣅ ఆཧ 1 (ऩଋఆཧ) f ͕఺ x Ͱඍ෼ՄೳͳΒ͹ɼϑʔϦΤڃ਺ʹΑΔ ۙࣅʢࣜ (32)ʣ͸

    f(x) ʹ఺ऩଋ͢Δɽ ʢূ໌ʣ f(x−u)−f(x) sin( 1 2 ωu) ͷ෼฼͕ 0 ͱͳΔ࣌ʹऩଋ͢Ε͹ྑ͍ɽu → 0 ͷۃݶΛͱΔͱɼ lim u→0 f(x − u) − f(x) sin 1 2 ωu = lim u→0 f(x − u) − f(x) u u sin 1 2 ωu ͔ͩΒɼ͜ͷۃݶ͕ऩଋ͢ΔͨΊʹ͸ɼ lim u→0 f(x − u) − f(x) u , lim u→0 u sin 1 2 ωu ͕ڞʹऩଋ͢Δ͜ͱ͕ඞཁͰ͋Δɽୈೋ߲͸ϩϐλϧͷఆཧΑΓɼ lim u→0 u sin 1 2 ωu = lim u→0 1 1 2 ω cos 1 2 ωu = 2 ω ͔ͩΒऩଋ͢ΔɽΑͬͯɼୈҰ߲ͷ f ͷ఺ x ʹ͓͚Δඍ෼͕ऩଋ͢Ε͹ྑ͍͜ͱ͕෼͔ Δɽͦͯͦ͠ͷ࣌ɼϦʔϚϯɾϧϕʔάͷิ୊ͷԾఆ͕ຬͨ͞Εɼऩଋఆཧ͕੒ཱ͢Δɽ 11 / 59
  64. ࡾ֯ؔ਺ͷ׬શੑ ิ୊ 5 (ࡾ֯ؔ਺ͷ׬શੑ) 1 √ T exp(jnωt)|n ∈ Z

    ͸ϑʔϦΤڃ਺ల։Մೳ ͳؔ਺ͷਖ਼ن௚ަجఈܥ ʢূ໌ʣऩଋఆཧΑΓ೚ҙͷϑʔϦΤڃ਺ల։Մೳͳؔ਺ΛදݱՄೳ͔ͩΒɼجఈܥΛͳ ͢͜ͱ͸ࣔ͞Ε͍ͯΔɽ࣍ʹ௚ަੑΛࣔ͢ɽn, m ∈ Z ʹରͯ͠ 1 पظ෼ͷ಺ੵΛͱΔͱɼ ⟨ 1 √ T exp(jnω·), 1 √ T exp(jmω·)⟩ = 1 T T/2 −T/2 exp(jnωt) exp(−jmωt)dt = 1 T exp {j(n − m)2πt/T} j(n − m)2π/T T/2 −T/2 (∵ ω = 2π/T) = 1 π exp {j(n − m)π} − exp {−j(n − m)π} j2(n − m) = 1 π sin {(n − m)π} n − m ʢ∵ ΦΠϥʔͷެࣜʣ = δnm ʢδɿΫϩωοΧʔͷσϧλʣ ࠷ޙͷࣜมܗͰ n = m ͷͱ͖͸ x = n − m ͱ͓͍ͯ x → 0 ͱ͢Δɿ lim x→0 sin(πx) x = lim x→0 π cos(πx) 1 = π 12 / 59
  65. ࡾ֯ؔ਺ͷ׬શੑ ࠷ޙʹɼ͜ΕҎ֎ͷجఈ͸ͳ͍͜ͱΛഎཧ๏ʹΑΓࣔ͢ɽ ʮ{exp(jnωt)|n ∈ Z} ͷશͯʹ ௚ަ͢Δ࿈ଓؔ਺جఈ h(t) ͕ଘࡏ͢ΔʯͱԾఆ͢ΔɽԾఆʹΑΓ ⟨h(·),

    exp(jnω·)⟩ = 0 ͕੒ཱ͢Δ͕ɼh(t) = 0 ͸ۭؒΛੜ੒͠ͳ͍θϩϕΫτϧͷͨΊɼh(t) ̸= 0 Ͱߟ͑Δɽ h(t) ͷϑʔϦΤڃ਺ల։Λߟ͑Δɽn ࣍ͷϑʔϦΤ܎਺͸ɼ cn = 1 T T 2 − T 2 h(t) exp(−jnωt)dt = 1 T ⟨h(·), exp(jnω·)⟩ = 0 ʢ∵ h(t) ͷԾఆʣ ͔ͩΒɼh(t) ͷ N ࣍·ͰͷϑʔϦΤڃ਺ۙࣅ SN (t) ͸ɼ SN (t) = N n=−N cn exp(jnωt) = 0 ͱͳΔɽऩଋఆཧΛ༻͍Δͱɼ lim N→∞ SN (t) = h(t) = 0 ͜Ε͸ɼh(t) ̸= 0 Ͱߟ͍͑ͯΔ͜ͱʹໃ६͢Δɽैͬͯ {exp(jnωt)|n ∈ Z} Ҏ֎ʹجఈ ͸ଘࡏͤͣɼఆཧ͕੒ཱ͢Δɽ 13 / 59
  66. ϦʔϚϯɾϧϕʔάͷิ୊ͷূ໌ ۠ؒ [a, b] Λ M ෼ׂ͠ɼ۠ؒͷখ͍͞ํ͔Βॱʹ a = x1,

    x2, ..., xM−1, xM = b ͱͳΔ Α͏ʹͱΔɽ͜ͷͱ͖ɼ b a f(x) sin(Nx)dx = M−1 k=1 xk+1 xk f(x) sin(Nx)dx ≤ M−1 k=1 xk+1 xk f(x) sin(Nx)dx ۠ؒ [xk, xk+1] ͷੵ෼ʹ஫໨͢Δͱɼ xk+1 xk f(x) sin(Nx)dx = xk+1 xk {f(x) − f(xk) + f(xk)} sin(Nx)dx = xk+1 xk {f(x) − f(xk)} sin(Nx)dx + xk+1 xk f(xk) sin(Nx)dx ≤ xk+1 xk {f(x) − f(xk)} sin(Nx)dx + xk+1 xk f(xk) sin(Nx)dx 14 / 59
  67. ϦʔϚϯɾϧϕʔάͷิ୊ͷূ໌ લϖʔδ࠷ޙͷࣜͷ 1 ߲໨͸ɼ xk+1 xk {f(x) − f(xk)} sin(Nx)dx

    ≤ xk+1 xk | {f(x) − f(xk)} sin(Nx)|dx ≤ xk+1 xk |f(x) − f(xk)|| sin(Nx)|dx ≤ xk+1 xk |f(x) − f(xk)|dx (∵ | sin(x)| ≤ 1) 2 ߲໨ʹ͍ͭͯ͸ɼ࿈ଓͳؔ਺͸༗ք͔ͩΒ |f(x)| < L (a ≤ x ≤ b) Λຬͨ͢ఆ਺ L ͕ ଘࡏ͢ΔԾఆͷ΋ͱɼ xk+1 xk f(xk) sin(Nx)dx ≤ max x∈[xk,xk+1] |f(x)| xk+1 xk sin(Nx)dx ≤ max x∈[xk,xk+1] |f(x)| − 1 N cos(Nx) xk+1 xk < L − 1 N [cos(Nx)]xk+1 xk ≤ 2L N 15 / 59
  68. ϦʔϚϯɾϧϕʔάͷิ୊ͷূ໌ ݩʹ໭ͬͯ݁ՌΛ·ͱΊΔͱɼ b a f(x) sin(Nx)dx ≤ M−1 k=1 xk+1

    xk f(x) sin(Nx)dx < M−1 k=1 xk+1 xk |f(x) − f(xk)|dx + 2L N = b a |f(x) − f(xk)|dx + 2LM N ೚ҙͷਖ਼਺ ε > 0 ʹରͯ͠ɼे෼ʹେ͖ͳ M Λͱͬͯ෼ׂΛࡉ͔͘͢Ε͹ɼ |f(x) − f(xk)| < ε 2(b−a) ͱͰ͖Δɽ·ͨ͜ͷͱ͖ɼN ΋େ͖͘औͬͯ 2LM N < ε 2 ͱ͢ Δ͜ͱ͕Ͱ͖ΔɽΑͬͯɼ b a f(x) sin(Nx)dx < b a ε 2(b − a) dx + ε 2 = ε 2 + ε 2 = ε ε ͸೚ҙ͔ͩͬͨΒɼ lim N→∞ b a f(x) sin(Nx)dx = 0 16 / 59
  69. ·ͱΊ ࡾ֯ؔ਺ͷ࿨Ͱ f ͬͯදݱͰ͖Δͷʁ ▶ पظؔ਺Ͱ͋Ε͹දݱͰ͖Δɽ ▶ ࡾ֯ؔ਺͸पظؔ਺ͷ௚ަجఈɽ Ͱ͖ͨͱͯ͠ɼf ʹ͸ͲΜͳ৚͕݅ඞཁʁ

    ▶ ֤఺Ͱඍ෼ՄೳͰ͋Δ͜ͱ͕ඞཁɽ ▶ ෆ࿈ଓؔ਺Ͱ΋ڧҾʹ౰ͯ͸ΊΒΕΔ͚Ͳɼ ෆ࿈ଓ఺Ͱޡ͕ࠩ૿େ͢ΔʢΪϒεݱ৅ʣ 17 / 59
  70. ࣜ(18)ͷূ໌ ิ୊6 ิ୊ 6 (प೾਺ྖҬͰͷ௚ަ৚݅) f, g ∈ L2 (R)

    ͷϑʔϦΤม׵Λ F, G ͱ͢Δɽ 1. ू߹ {f(t − n)|n ∈ Z} ͱ {g(t − n)|n ∈ Z} ͕ ௚ަ͢Δඞཁे෼৚݅͸ k F(ω + 2πk)G(ω + 2πk) = 0 (36) 2. ू߹ {f(t − n)|n ∈ Z} ͕ਖ਼ن௚ަܥͱͳΔඞ ཁे෼৚݅͸ k |F(ω + 2πk)|2 = 1 (37) 19 / 59
  71. ࣜ(18)ͷূ໌ ิ୊6 ʢূ໌ʣ1. ͸ɼ೚ҙͷ n, m ∈ Z ʹରͯ͠ɼ ⟨f(·

    − n), g(· − m)⟩ = ∞ −∞ f(t − n)g(t − m)dt = 1 2π ∞ −∞ F [f(t − n)] F [g(t − m)]dω ʢ∵ ύʔηόϧͷ౳ࣜʣ = 1 2π ∞ −∞ F(ω) exp(−jnω)G(ω) exp(−jmω)dω ʢ∵ ࣌ؒγϑτͷϑʔϦΤม׵ʣ = 1 2π ∞ −∞ F(ω)G(ω) exp[−j(n − m)ω]dω = 1 2π k π −π F(ω + 2πk)G(ω + 2πk) exp[−j(n − m)ω]dω = 1 2π π −π k F(ω + 2πk)G(ω + 2πk) exp[−j(n − m)ω]dω = 0 ͕੒ཱ͍ͯ͠ΔͨΊɼ௚ަ͢Δͱ͖ͷඞཁे෼৚݅͸ {·} ͷத͕ 0 ʹͳΔ͜ͱͰ͋Δɽ Αͬͯɼ1. ͕ࣔ͞Εͨɽ 20 / 59
  72. ࣜ(18)ͷূ໌ ิ୊6 2. ͸ɼ1. ͷূ໌ʹ͓͍ͯ f = g ͱ͢Ε͹ɼ ⟨f(·

    − n), f(· − m)⟩ = ∞ −∞ f(t − n)f(t − m)dt = 1 2π ∞ −∞ F(ω)F(ω) exp[−j(n − m)ω]dω = 1 2π π −π k |F(ω + 2πk)|2 exp[−j(n − m)ω]dω = δnm ͱͳΓɼ͜ͷ౳ࣜ͸ k |F(ω + 2πk)|2 = 1 ͷͱ͖ɼ͔ͭͦͷͱ͖ʹݶΓ੒ཱ͢Δɽ࣮ࡍɼ ⟨f(· − n), f(· − m)⟩ = 1 2π π −π exp[−j(n − m)ω]dω = 1 2π − exp[−j(n − m)ω] j(n − m) π −π = 1 2π − exp[−j(n − m)ω] j(n − m) π −π = 1 π sin {(n − m)π} n − m ͔Βɼn = m ͷͱ͖ͱ n ̸= m ͷͱ͖Ͱ৔߹෼͚͢Ε͹֬ೝͰ͖Δʢn = m ͷͱ͖͸ x = n − m ͱͯ͠ x → 0 Λߟ͑Δʣ ɽΑͬͯɼ2. ͸ࣔ͞Εͨɽ 21 / 59
  73. ࣜ(18)ͷূ໌ ิ୊7 ิ୊ 7 (Dilation ํఔࣜΛຬͨ͢ H(ω) ͷੑ࣭) Dilation ํఔࣜʢࣜ

    (15)ʣΛຬͨ͢܎਺ h[n] ͷ཭ ࢄ࣌ؒϑʔϦΤม׵ H(ω)a ͸ɼ |H(ω)|2 + |H(ω + π)|2 = 2 (38) Λຬͨ͢ɽ aH(ω) := n h[n] exp(−jnω) 22 / 59
  74. ࣜ(18)ͷূ໌ ิ୊7 ʢূ໌ʣิ୊ 6 ΑΓɼϕ(t) ͷϑʔϦΤม׵Λ Φ(ω) ͱॻ͘ͱɼ{ϕ(t − n)|n

    ∈ Z} ͕ਖ਼ن ௚ަجఈΛͳͨ͢Ίͷඞཁे෼৚݅͸ɼ k |Φ(ω + 2πk)|2 = 1 (39) ͱॻ͚Δɽ͜ΕʹɼDilation ํఔࣜͷ྆ลΛϑʔϦΤม׵ͨ͠ F [ϕ(t/2)] = √ 2F n h[n]ϕ(t − n) ⇐⇒ 2Φ(2ω) = √ 2 ∞ −∞ n h[n]ϕ(t − n) exp(−jωt)dt = √ 2 n h[n] ∞ −∞ ϕ(t − n) exp(−jωt)dt = √ 2 n h[n]Φ(ω) exp(−jnω) = √ 2Φ(ω)H(ω) ⇐⇒ √ 2Φ(2ω) = Φ(ω)H(ω) (40) Λಋೖ͢Δ͜ͱΛߟ͑Δɽ 23 / 59
  75. ࣜ(18)ͷূ໌ ิ୊7 ࣜ (39)ɼࣜ (40) ΑΓɼ 2 = 2 k

    |Φ(2ω + 2πk)|2 ʢࣜ (39) Ͱ ω → 2ω ͱͨ͠ʣ = k |Φ(ω + πk)|2|H(ω + πk)|2 ʢ∵ ࣜ (40)ʣ = k |Φ(ω + 2πk)|2|H(ω + 2πk)|2 + k |Φ(ω + 2πk + π)|2|H(ω + 2πk + π)|2 = |H(ω)|2 k |Φ(ω + 2πk)|2 + |H(ω + π)|2 k |Φ(ω + 2πk + π)|2 ʢ∵ H(ω) ͸पظ 2π16ʣ = |H(ω)|2 + |H(ω + π)|2 ʢ∵ ୈ 2 ߲͸ࣜ (39) Ͱ ω → ω + π ͱ͢Δʣ Αͬͯิ୊ 7 ͷ੒ཱ͕͔֬ΊΒΕͨɽ 16∵ H(ω + 2π) = n h[n] exp[−jn(ω + 2π)] = n h[n] exp(−jnω) = H(ω) 24 / 59
  76. ࣜ(18)ͷূ໌ ิ୊8 ิ୊ 8 (H(ω), G(ω) ʹΑΔ௚ަ৚݅) {ϕ(t − n)|n

    ∈ Z} ͸ਖ਼ن௚ަܥͱ͢Δɽ 1. ࣜ (17) Λຬͨ͢ ψ Λ༻͍ͨ {ψ(t − n)|n ∈ Z} ͕ਖ਼ن௚ަܥͱͳΔඞཁे෼৚݅͸ɼ |G(ω)|2 + |G(ω + π)|2 = 2 (41) 2. {ϕ(t − n)|n ∈ Z} ͱ {ψ(t − n)|n ∈ Z} ͕௚ަ ͢Δඞཁे෼৚݅͸ɼ H(ω)G(ω) + H(ω + π)G(ω + π) = 2 (42) 25 / 59
  77. ࣜ(18)ͷূ໌ ิ୊8 ʢূ໌ʣ΢ΣʔϒϨοτؔ਺ ψ(t) ͷϑʔϦΤม׵Λ Ψ(ω) ͱॻ͘ɽ͜ͷͱ͖ɼࣜ (17) ͷ ྆ลΛϑʔϦΤม׵͢Δͱɼࣜ

    (40) ͱಉ༷ʹɼ √ 2Ψ(2ω) = G(ω)Φ(ω) (43) ͕੒Γཱͭɽࣜ (41) ͷূ໌͸ิ୊ 7 ͱશ͘ಉ༷Ͱ͋ΓɼDilation ํఔࣜͷ୅ΘΓʹࣜ (17) Λ༻͍Ε͹ྑ͍ɽࣜ (42) ͸ɼิ୊ 6 ͷ 1. Λ ϕ, ψ ʹద༻͢Δͱɼ 0 = k Φ(2ω + 2πk)Ψ(2ω + 2πk) = k 1 2 H(ω + πk)Φ(ω + πk)G(ω + πk)Φ(ω + πk) ʢ∵ ࣜ (40)ɼࣜ (43)ʣ = 1 2 k H(ω + πk)G(ω + πk)|Φ(ω + πk)|2 = 1 2 k H(ω + 2πk)G(ω + 2πk)|Φ(ω + 2πk)|2 + k H(ω + 2πk + π)G(ω + 2πk + π)|Φ(ω + 2πk + π)|2 26 / 59
  78. ࣜ(18)ͷূ໌ ิ୊8 ʢલϖʔδͷଓ͖ʣ 0 = 1 2 H(ω)G(ω) k |Φ(ω

    + 2πk)|2 + H(ω + π)G(ω + π) k |Φ(ω + 2πk + π)|2 ʢ∵ H(ω), G(ω) ͸पظ 2πʣ = 1 2 H(ω)G(ω) + H(ω + π)G(ω + π) ʢ∵ ࣜ (39)ʣ ʹΑΓࣔ͞ΕΔɽ 27 / 59
  79. ࣜ(18)ͷূ໌ ิ୊9 h, g ͷ཭ࢄ࣌ؒϑʔϦΤม׵Λ H, G ͱॻ͖ɼ H(ω) :=

    1 √ 2 H(ω) H(ω + π) G(ω) G(ω + π) (44) ͱ͓͘ɽิ୊ 7 ͱิ୊ 8 Λຬͨ͢ͳΒ͹ɼH(ω) ͸ϢχλϦߦྻʢH∗(ω) = H−1(ω)ʣͰ͋Δ 17ɽ 17ʢূ໌ʣH(ω) ͱ H∗(ω) ͷੵΛͱΕ͹ɼ H(ω)H∗(ω) = 1 2 H(ω) H(ω + π) G(ω) G(ω + π) H(ω) G(ω) H(ω + π) G(ω + π) = 1 2 H(ω)H(ω) + H(ω + π)H(ω + π) H(ω)G(ω) + H(ω + π)G(ω + π) G(ω)H(ω) + G(ω + π)H(ω + π) G(ω)G(ω) + G(ω + π)G(ω + π) = 1 2 2 0 0 2 ʢ∵ ิ୊ 7 ͱิ୊ 8ʣ = I 28 / 59
  80. ࣜ(18)ͷূ໌ ิ୊9 ิ୊ 9 (FWT ͷߦྻදݱ) H(ω) ͕ϢχλϦߦྻͰ͋Ε͹ɼ͕࣍੒Γཱͭɿ Pm (ω)

    Qm (ω) = 1 √ 2 H ω 2 Pm+1 ω 2 Pm+1 ω 2 + π (45) Pm+1 (ω) Pm+1 (ω + π) = √ 2H∗(ω) Pm (2ω) Qm (2ω) (46) ͜͜ͰɼPm , Qm ͸ pm , qm ͷ཭ࢄ࣌ؒϑʔϦΤม ׵Ͱ͋Δɽ 29 / 59
  81. ࣜ(18)ͷূ໌ ิ୊9 ʢূ໌ʣy[n] := k h[k − n]pm+1[k] ͷ཭ࢄ࣌ؒϑʔϦΤม׵ Y

    (ω) ͸ɼ Y (ω) = n k h[k − n]pm+1[k] exp(−jnω) = k pm+1[k] n h[k − n] exp(−jnω) = k pm+1[k] exp(−jkω) l h[l] exp(−jlω) (l = k − n) = Pm+1(ω)H(ω) pm[n] = y[2n] ͔ͩΒɼؒҾ͍ͨ਺ྻͷ཭ࢄ࣌ؒϑʔϦΤม׵ͷެࣜʢࣜ (56)ʣΛ࢖͏ͱɼ Pm(ω) = 1 2 Y ω 2 + Y ω 2 + π = 1 2 Pm+1 ω 2 H ω 2 + Pm+1 ω 2 + π H ω 2 + π (47) ಉ༷ʹͯ͠ɼ Qm(ω) = 1 2 Pm+1 ω 2 G ω 2 + Pm+1 ω 2 + π G ω 2 + π (48) 30 / 59
  82. ࣜ(18)ͷূ໌ ิ୊9 ࣜ (47)ɼࣜ (48) ͷ݁ՌΛߦྻԋࢉͰද͢ͱɼ Pm(ω) Qm(ω) = 1

    2 H ω 2 H ω 2 + π G ω 2 G ω 2 + π Pm+1 ω 2 Pm+1 ω 2 + π ⇐⇒ Pm(ω) Qm(ω) = 1 √ 2 H ω 2 Pm+1 ω 2 Pm+1 ω 2 + π ·ͨɼ྆ลࠨ͔Β √ 2H∗ ω 2 Λ৐͡Δͱɼ √ 2H∗ ω 2 Pm(ω) Qm(ω) = Pm+1 ω 2 Pm+1 ω 2 + π ͕ಘΒΕΔɽࣜ (46) ͸ ω Λ 2ω ʹஔ͖׵͑ͯಘΒΕΔɽ 31 / 59
  83. ࣜ(18)ͷূ໌ ࣍ͷ໨ඪ ิ୊ 8 Λຬͨ͢ͳΒ͹ɼ೚ҙͷ m, p, q ∈ Z

    ʹର͠ɼ ⟨ψm,p , ψm,q ⟩ = 2m ∞ −∞ ψ(2mt − p)ψ(2mt − q)dt = δpq ʢ∵ ψ ͸γϑτʹؔͯ͠ਖ਼ن௚ަʣ ͔ͩΒ ψm,n ͸ Wm ͷਖ਼ن௚ަܥͱͳΔɽ·ͨɼ ψm,n ͰுΒΕΔ Wm ͱ ϕm,n ͰுΒΕΔ Vm ͕௚ަ ͢ΔͷͰ Vm ⊥ Wm ɽ ⇒ ࣍ʹɼVm ⊕ Wm = Vm+1 Λࣔ͢ɽ 32 / 59
  84. ࣜ(18)ͷূ໌ ิ୊10 ิ୊ 10 (௚ަ௚࿨෼ղՄೳͳ৚݅) {ϕ(t − n)|n ∈ Z}

    ͸ਖ਼ن௚ަܥ͔ͭɼิ୊ 7 ͱิ ୊ 8 Λຬͨ͢ͳΒ͹ɼ Vm ⊕ Wm = Vm+1 , Vm ⊥ Wm (m ∈ Z) ʢূ໌ʣVm ⊕ Wm ⊂ Vm+1, Vm ⊥ Wm ͷલఏʹ͓͍ͯɼx(t) ∈ Vm+1 ⊖ (Vm ⊕ Wm) ͳΔཁૉʢؔ਺ʣΛ೚ҙʹͱΔɽ͜Ε͕ x(t) = 0 ͔͠ͳ͍͜ͱ͕ࣔͤΕ͹ɼ Vm ⊕ Wm ⊃ Vm+1 ɼैͬͯɼVm ⊕ Wm = Vm+1 ͕݁࿦Ͱ͖Δɽ ͍· Vm ⊥ Wm ͔ͭ x / ∈ Vm ⊕ Wm ͔ͩΒɼVm, Wm ΁ͷࣹӨ੒෼͸ͦΕͧΕ pm[n] = ⟨x, ϕm,n⟩ = 0, qm[n] = ⟨x, ψm,n⟩ = 0 ͱͳΔɽ͜ΕΒΛ྆ล཭ࢄ࣌ؒϑʔϦ Τม׵͢Δͱ Pm(ω) = Qm(ω) = 0 ΛಘΔɽ͜ΕΛࣜ (46) ʹ୅ೖ͢Δͱ Pm+1(ω) = 0 ͱͳΓɼ͜Ε͸࣌ؒྖҬͰ pm+1[n] = ⟨x, ϕm+1,n⟩ = 0 ͱͳΔ͜ͱΛ͍ࣔͯ͠Δɽ {ϕm+1,n(t)|n ∈ Z} ͕ Vm+1 ͷਖ਼ن௚ަجఈͰ͋Δ͜ͱΛ౿·͑Δͱɼx(t) = 0 Ͱ͋ Δ͜ͱ͕ಋ͔ΕΔɽΑͬͯɼVm ⊕ Wm = Vm+1 ͕ࣔ͞Εͨɽ 33 / 59
  85. ࣜ(18)ͷূ໌ ఆཧ2 ఆཧ 2 (MRA Λߏ੒͢Δ G(ω) ͷ৚݅) H(ω) ͸ิ୊

    7 Λຬͨ͢ͱ͢Δɽ͜ͷͱ͖ɼิ୊ 8 Λຬͨ͢ G(ω) ͸࣍ͷܗͷؔ਺Ͱ͋Γɼ͔ͭͦͷ ͱ͖ʹݶΒΕΔɿ G(ω) = γ(ω)H(ω + π) (49) γ(ω) ͸पظ 2π ͷपظؔ਺Ͱɼ࣍Λຬͨ͢ɿ γ(ω) + γ(ω + π) = 0, |γ(ω)|2 = 1 (50) 34 / 59
  86. ࣜ(18)ͷূ໌ ఆཧ2 ʢ⇒ ͷূ໌ʣิ୊ 8 ͷࣜ (41) ΑΓɼ H(ω)G(ω)+H(ω +

    π)G(ω + π) = 0 ⇐⇒ G(ω) = −H(ω + π)G(ω + π)/H(ω) ⇐⇒ G(ω) = −H(ω + π)G(ω + π)/H(ω) = −γ(ω)H(ω + π) (51) ͜͜Ͱ γ(ω) := −G(ω + π)/H(ω) ͱఆΊͨɽG, H ͸पظ 2π ͔ͩΒ γ(ω) ΋पظ 2π Ͱɼ γ(ω + π) = −G(ω + 2π)/H(ω + π) = −G(ω)/H(ω + π) = −γ(ω) ʢ∵ ࣜ (51)ʣ ·ͨɼࣜ (51) Λิ୊ 8 ͷࣜ (42) ʹ୅ೖ͢Δͱɼ |G(ω)|2 + |G(ω + π)|2 = 2 ⇐⇒ |γ(ω)|2|H(ω + π)|2 + |γ(ω + π)|2|H(ω + 2π)|2 = 2 ⇐⇒ |γ(ω)|2|H(ω + π)|2 + |γ(ω)|2|H(ω)|2 = 2 ⇐⇒ |γ(ω)|2(|H(ω + π)|2 + |H(ω)|2) = 2 ⇐⇒ |γ(ω)|2 = 1 ʢ∵ ิ୊ 7 ͷࣜ (38)ʣ 35 / 59
  87. ࣜ(18)ͷূ໌ ఆཧ2 ʢ⇐ ͷূ໌ʣγ(ω) + γ(ω + π) = 0,

    |γ(ω)|2 = 1 Λຬͨ͢पظ 2π ͷؔ਺ γ(ω) Λ͓͘ɽ ͍· G(ω) := γ(ω)H(ω + π) ʹΑΓ G(ω) ΛఆΊΔͱɼ |G(ω)|2 + |G(ω + π)|2 = |γ(ω)|2|H(ω + π)|2 + |γ(ω + π)|2|H(ω + 2π)|2 = |γ(ω)|2|H(ω + π)|2 + | − γ(ω)|2|H(ω)|2 = |H(ω + π)|2 + |H(ω)|2 = 2 Αͬͯࣜ (41) ͕੒ཱ͍ͯ͠Δɽ·ͨɼ H(ω)G(ω) + H(ω + π)G(ω + π) = H(ω)γ(ω)H(ω + π) + H(ω + π)γ(ω + π)H(ω + 2π) = H(ω)H(ω + π) γ(ω) + γ(ω + π) = H(ω)H(ω + π){γ(ω) + γ(ω + π)} = 0 Αͬͯࣜ (42) ͕੒ཱ͍ͯ͠ΔɽҎ্ʹΑΓɼิ୊ 8 ͕੒ཱ͍ͯ͠Δɽ 36 / 59
  88. ࣜ(18)ͷূ໌ ܥ 1 (ࣜ (18) ͷূ໌) ࣜ (18) ͸ఆཧ 2

    ʹ͓͍ͯ γ(ω) = − exp(−jω) ͱ͓ ͍ͨͱ͖ʹ૬౰͢Δɽ ʢূ໌ʣG(ω) = − exp(−jω)H(ω + π) ͷ྆ลΛٯ཭ࢄ࣌ؒϑʔϦΤม׵͢Δͱɼ g[n] = − 1 2π 2π 0 H(ω + π) exp(−jω) exp(jωn)dω = − 1 2π 2π 0 H(s) exp[jω(s − π)(n − 1)]ds (s = ω + π) = − 1 2π exp[−jπ(n − 1)] 2π 0 H(s) exp[jωs(n − 1)]ds = (−1)n 1 2π 2π 0 H(s) exp[jωs(1 − n)]ds = (−1)nh[1 − n] 37 / 59
  89. ෆ֬ఆੑݪཧ ৴߸ f ͸ lim t→±∞ |t|f(t) = 0 ͱ

    ∞ −∞ |f(t)|2dt = 1 Λຬͨ͢ͱ͢Δɽࠓɼ|f(t)|2 Λ֬཰ີ౓ͱݟΑ ͏ɽύʔηόϧͷ౳ࣜ 18 ΑΓɼ 1 2π ∞ −∞ |F(ω)|2dω = 1 ͔ͩΒɼ 1 2π |F(ω)|2 ΋֬཰ີ౓ͱݟΕΔɽ 18ϑʔϦΤม׵ʹΑͬͯύϫʔ͸มΘΒͳ͍ɽ৑௕ͳͷͰ຤ඌͰࣔ͢ɽ 39 / 59
  90. ෆ֬ఆੑݪཧ t, ω ΛͦΕͧΕ֬཰ม਺ͱͯ͠ɼਅ஋ tm , ωm ʹର ͢Δඪ४ภࠩ ∆t,

    ∆ω ΛҎԼͰఆٛ͢Δɿ (∆t)2 := ∞ −∞ (t − tm )2|f(t)|2dt (52) (∆ω)2 := 1 2π ∞ −∞ (ω − ωm )2|F(ω)|2dω (53) ∆t, ∆ω ͸؍ଌͷ༳Β͗෯ͱ΋ղऍͰ͖Δɽ 40 / 59
  91. ෆ֬ఆੑݪཧ ఆཧ 3 (ෆ֬ఆੑݪཧ) ∆t, ∆ω ʹରͯ͠ҎԼͷෆ౳͕ࣜ੒ཱ͢Δɿ ∆t∆ω ≥ 1

    2 (54) ؍࡯͢Δ࣌ؒͷ෯ ∆t ͱप೾਺ͷ෯ ∆ω Λಉ࣌ʹ খ͘͢͞Δ͜ͱ͸Ͱ͖ͳ͍ɽ 41 / 59
  92. ෆ֬ఆੑݪཧͷྫ ྫ 1 ୹࣌ؒϑʔϦΤม׵ͰΑΓ޿͍प೾਺৘ใΛ ಘΑ͏ͱͯ͠૭෯Λେ͖͘औΔͱ (∆tɿେ) प೾਺෼ղೳʢਫ਼౓ʣ͕޲্ (∆ωɿখ) ͢Δ ྫ

    2 ΢ΣʔϒϨοτม׵Ͱεέʔϧ a Λখ͘͞औ Δͱࡉ͔͍ৼಈΛଊ͑ΒΕΔ (∆tɿখ) ͕ɼ௕ पظ੒෼ͷ෼ੳ͸ߥ͘ (∆ωɿେ) ͳΔ ྫ 3 ϑʔϦΤม׵͸प೾਺෼ղೳ͕࠷େ (∆ω → 0)͕ͩɼ࣌ؒ෼ղೳ͸࠷ѱ (∆t → ∞) ྫ 4 σδλϧ৴߸Λ 1 ఺͚ͩ؍ଌͨ͠ (∆tɿখ) ͱ ͖ɼৼಈͷ৘ใ͸શ͘ಘΒΕͳ͍ (∆ωɿେ) 42 / 59
  93. ෆ֬ఆੑݪཧͷূ໌ g(t) = exp(−jωmt)f(t + tm) ͱ͓͘ɽg(t) ͷϑʔϦΤม׵ G(ω) ͸ɼ

    G(ω) = ∞ −∞ g(t) exp(−jωt)dt = ∞ −∞ f(t + tm) exp[−j(ω + ωm)t]dt = exp[−j(ω + ωm)tm] ∞ −∞ f(t + tm) exp[−j(ω + ωm)(t + tm)]dt = exp[−j(ω + ωm)tm]F(ω + ωm) ͜ͷͱ͖ɼ ∞ −∞ (t − tm)2|f(t)|2dt 1 2π ∞ −∞ (ω − ωm)2|F(ω)|2dω = ∞ −∞ s2|f(s + tm)|2ds 1 2π ∞ −∞ u2|F(u + ωm)|2du = ∞ −∞ s2| exp(jωms)g(s)|2ds 1 2π ∞ −∞ u2| exp[−j(u + ωm)tm]G(u)|2du = ∞ −∞ s2|g(s)|2ds 1 2π ∞ −∞ u2|G(u)|2du (∵ ∀x ∈ R. | exp(jx)| = 1) ͔ͩΒɼtm = ωm = 0 ͱͯ͠ߟ͑Δɽ 44 / 59
  94. ෆ֬ఆੑݪཧͷূ໌ ·ͨɼ f′(t) = d dt 1 2π ∞ −∞

    F(ω) exp(jωt)dt = 1 2π ∞ −∞ F(ω) d dt exp(jωt)dt ʢॱংަ׵Մೳͱ͢Δʣ = jω 2π ∞ −∞ F(ω) exp(jωt)dt = jωf(t) ΑΓɼҎԼͷؔ܎͕ࣜಘΒΕΔɽ F f′(t) = jωF [f(t)] = jωF(ω) =⇒ F f′(t) 2 = ω2|F(ω)|2 ͜ΕΑΓɼ 1 2π ∞ −∞ ω2|F(ω)|2dω = 1 2π ∞ −∞ F f′(t) 2 dω = ∞ −∞ |f′(t)|2dt ʢ∵ ύʔηόϧͷ౳ࣜʣ 45 / 59
  95. ෆ֬ఆੑݪཧͷূ໌ ෆ౳ࣜࠨลʢ= (∆t)2(∆ω)2ʣΛมܗ͍ͯ͘͠ͱɼ ∞ −∞ t2|f(t)|2dt 1 2π ∞ −∞

    ω2|F(ω)|2du = ∞ −∞ t2|f(t)|2dt ∞ −∞ |f′(t)|2du ≥ ∞ −∞ tf(t)f′(t) 2 dt ʢ∵ γϡϫϧπͷෆ౳ࣜ ||v||2||w||2 ≥ ||⟨v, w⟩||2 ʣ ≥ 1 4 ∞ −∞ tf(t)f′(t) + tf(t)f′(t) 2 dt (∵ |ab| ≥ 1 2 |ab + ab|) ≥ 1 4 ∞ −∞ tf(t)f′(t) + tf(t)f′(t) dt 2 = 1 4 ∞ −∞ t d dt f(t)f(t) dt 2 ʢ∵ ੵͷඍ෼ެࣜʣ = 1 4 t|f(t)|2 ∞ −∞ − ∞ −∞ |f(t)|2dt 2 ʢ∵ ෦෼ੵ෼ͱ f(t)f(t) = |f(t)|2ʣ = 1 4 {0 − 1}2 ʢ∵ f(t) ʹؔ͢ΔԾఆʣ = 1 4 Αͬͯෆ֬ఆੑݪཧ͸ࣔ͞Εͨɽ 46 / 59
  96. ύʔηόϧͷ౳ࣜʢϑʔϦΤڃ਺ʣ पظ 2π ͷؔ਺ f(x), g(x) ΛͦΕͧΕҎԼͷΑ͏ʹϑʔϦΤڃ਺ల։Ͱ͖Δͱ͢Δɿ f(x) = n

    cn exp(jωx), cn = 1 2π π −π f(x) exp(−jnω)dx g(x) = n dn exp(jωx), dn = 1 2π π −π g(x) exp(−jnω)dx ͜ͷͱ͖ɼ π −π f(x)g(x)dx = π −π n cn exp(jωx) g(x)dx = n cn π −π g(x) exp(jnx)dx = n cn π −π g(x) exp(−jnx)dx = 2π n cndn ͕੒ཱ͢Δɽͱ͘ʹ f = g ͱ͢Ε͹ɼ π −π |f(x)|2dx = 2π n |cn|2 48 / 59
  97. ύʔηόϧͷ౳ࣜʢϑʔϦΤม׵ʣ ؔ਺ f(x), g(x) ͷϑʔϦΤม׵ରΛҎԼͷΑ͏ʹॻ͘ɿ F(ω) = ∞ −∞ f(x)

    exp(−jωx)dx, f(x) = 1 2π ∞ −∞ F(ω) exp(jωx)dω G(ω) = ∞ −∞ g(x) exp(−jωx)dx, g(x) = 1 2π ∞ −∞ G(ω) exp(jωx)dω ͜ͷͱ͖ɼ ∞ −∞ f(x)g(x)dx = ∞ −∞ 1 2π ∞ −∞ F(ω) exp(jωx)dω g(x)dx = 1 2π ∞ −∞ F(ω) ∞ −∞ g(x) exp(jωx)dx dω = 1 2π ∞ −∞ F(ω) ∞ −∞ g(x) exp(−jωx)dx dω = 1 2π ∞ −∞ F(ω)G(ω)dω ͕੒ཱ͢Δɽͱ͘ʹ f = g ͱ͢Ε͹ɼ ∞ −∞ |f(x)|2dx = 1 2π ∞ −∞ |F(ω)|2dω 49 / 59
  98. ύʔηόϧͷ౳ࣜʢߴ଎΢ΣʔϒϨοτม׵ʣ ิ୊ 11 (ύʔηόϧͷ౳ࣜ) ߴ଎΢ΣʔϒϨοτม׵ͷྻ {pm+1 [n]}ɼ {pm [n]}ɼ{qm [n]}

    ʹ͕ؔͯ࣍͠੒ཱ͢Δɿ ||pm+1 ||2 2 = ||pm ||2 2 + ||qm ||2 2 (55) ೖྗ৴߸ͷΤωϧΪʔ ||pm+1 ||2 2 ͸ ||pm ||2 2 ͱ ||qm ||2 2 ʹ෼഑͞ΕΔɽ 50 / 59
  99. ύʔηόϧͷ౳ࣜʢߴ଎΢ΣʔϒϨοτม׵ʣ ʢূ໌ʣࣜ (45) ͷ྆ลͷϊϧϜΛͱΔͱɼ Pm(ω) Qm(ω) 2 2 = 1

    2 H ω 2 Pm+1 ω 2 Pm+1 ω 2 + π 2 2 = 1 2 Pm+1 ω 2 Pm+1 ω 2 + π 2 2 ʢ∵ H(ω) ͸ϢχλϦߦྻʣ ⇐⇒ |Pm(ω)|2 + |Qm(ω)|2 = 1 2 Pm+1 ω 2 2 + Pm+1 ω 2 + π 2 ཭ࢄ࣌ؒϑʔϦΤม׵ͷύʔηόϧͷ౳ࣜʹΑΓɼ ||pm||2 2 + ||qm||2 2 = 1 2π π −π |Pm(ω)|2 + |Qm(ω)|2 dω = 1 4π π −π Pm+1 ω 2 2 + Pm+1 ω 2 + π 2 dω = 1 2π π 2 − π 2 |Pm+1(s)|2 + |Pm+1(s + π)|2 ds (ω = 2s) = 1 2π 3 2 π − π 2 |Pm+1(s)|2ds = 1 2π π −π |Pm+1(s)|2ds = ||pm+1||2 2 51 / 59
  100. ؒҾ͍ͨ਺ྻͷ཭ࢄ࣌ؒϑʔϦΤม׵ ʢূ໌ʣؒҾ͖ૢ࡞͸ɼx[n] ʹपظ D ͷΠϯύϧεؔ਺ྻ δD[n] := 1 n ͕

    D ͷഒ਺ 0 otherwise = 1 D D−1 k=0 exp j 2πnk D ʢ∵ ূ໌͸࣍ͷϖʔδʣ Λ৐͔ͯ͡ΒɼD ݸ͓͖ͷग़ྗΛಘΔૢ࡞ (y[n] := x[n]δD[n] ͱͯ͠ y[Dn] ͕݁Ռ) ͱ ղऍͰ͖Δɽy[Dn] Λ཭ࢄ࣌ؒϑʔϦΤม׵͢Δͱɼ F [y[Dn]] = n y[Dn] exp(−jnω) = n y[n] exp −j nω D = n x[n]δD[n] exp −j nω D = 1 D D−1 k=0 n x[n] exp j 2πnk D − j nω D ʢ∵ ࣜ (57)ʣ = 1 D D−1 k=0 n x[n] exp −jn ω − 2πk D = 1 D D−1 k=0 X ω − 2πk D 53 / 59
  101. ؒҾ͍ͨ਺ྻͷ཭ࢄ࣌ؒϑʔϦΤม׵ δD[n] = 1 D D−1 k=0 exp j 2πnk

    D (57) ʢূ໌ʣn ͕ D ͷഒ਺ͷͱ͖͸ n = mD (m ∈ Z) ͱॻ͚Δ͔Βɼ 1 D D−1 k=0 exp j 2πnk D = 1 D D−1 k=0 exp(j2πmk) = 1 D D−1 k=0 1 = 1 n ͕ D ͷഒ਺Ͱ͸ͳ͍ͱ͖͸ Wk := exp j 2πnk D ͱ͓͘ͱɼ (Wk)D = exp(j2πnk) = 1 ΑΓɼWk (k = 0, 1, ..., D − 1) ͸ 1 ͷ D ৐ࠜɼ͢ͳΘͪɼ ํఔࣜ xD − 1 = 0 ͷղͱͳ͍ͬͯΔɽํఔࣜࠨลΛҼ਺෼ղ͢Δͱɼ xD − 1 = (x − W0)(x − W1)...(x − WD−1) = xD − (W0 + W1 + ... + WD−1)xD−1 + ... + (−1)DW0W1...WD−1 ྆ลͷ܎਺Λൺֱ͢ΔɽxD−1 ͷ܎਺͸ 0 ͔ͩΒɼ W0 + W1 + ... + WD−1 = D−1 k=0 Wk = D−1 k=0 exp j 2πnk D = 0 54 / 59
  102. ࢀߟࢿྉͷ֓؍ web ͰೖखͰ͖Δࢿྉɿ ▶ [4, 5, 6] େֶߨٛࢿྉɽऔֻ͔ͬΓʹɽ ▶ [7,

    8] ෼͔Γ΍͍͢ɽC++ιʔεղઆ΋ॆ࣮ɽ ▶ [9] Lifting ͷ؆қͳઆ໌ɽιʔε΋͋Δɽ ▶ [10, 11, 12] Lifting ͷࢿྉɽͱ͘ʹ [11] ͸؆໌ɽ ॻ੶ɿ ▶ [13] ෼͔Γ΍͍͢ɽͨͩ͠ϋʔϧ΢ΣʔϒϨοτͷΈɽ ▶ [14] ෼͔Γ΍͍͢ɽC ݴޠιʔε͋Γɽ ▶ [15] ෼͔Γ΍͍͕͢ઈ൛...C++ιʔε͋Γɽ ▶ [16] ྺ࢙Λ֓؍͢Δͷʹద͢Δɽҙ֎ʹཧ࿦΋ਂ͍ɽ ▶ [2] Ұ൪ࢀߟʹͨ͠ɽ৴߸ॲཧ͔Βݟͨղઆ΋लҳɽ ▶ [1] υϕγΟ༷ࣥචɽجૅཧ࿦Λ໢ཏɽಡΈ͖Εͯͳ͍ɽ ▶ [17] ؔ਺ղੳඞਢɽ ʢ࠳ંʣ 56 / 59
  103. ࢀߟจݙ I [1] ࠤʑ໦ จ෉ Daubechies Ingrid ࢁా ಓ෉. ΢ΣʔϒϨοτ

    10 ߨ. ؙળग़൛, 2012. [2] લా ഹ et al. ΢ΣʔϒϨοτม׵ͱͦͷԠ༻. ே૔ॻళ, 2001. [3] Albert Boggess and Francis J Narcowich. A first course in wavelets with Fourier analysis. John Wiley & Sons, 2015. [4] ҏ౻ জଇ. Wavelet ม׵. url: http://www.spcom.ecei.tohoku.ac.jp/˜aito/wavelet/slide.pdf (visited on 10/08/2020). [5] Ӌੴ लত. Wavelet1. url: http://www.cfme.chiba- u.jp/˜haneishi/class/iyogazokougaku/Wavelet1.pdf (visited on 10/08/2020). [6] Ӌੴ लত. Wavelet2. url: http://www.cfme.chiba- u.jp/˜haneishi/class/iyogazokougaku/Wavelet2.pdf (visited on 10/08/2020). [7] Fussy. ѹॖΞϧΰϦζϜ (8) ΢ΣʔϒϨοτม׵ -1-. url: http://fussy.web.fc2.com/algo/compress8_wavelet.htm (visited on 10/09/2020). 57 / 59
  104. ࢀߟจݙ II [8] Fussy. ѹॖΞϧΰϦζϜ (9) ΢ΣʔϒϨοτม׵ -2-. url: http://fussy.web.fc2.com/algo/compress9_wavelet2.htm

    (visited on 10/09/2020). [9] Ian Kaplan. Basic Lifting Scheme Wavelets. url: http: //bearcave.com/misl/misl_tech/wavelets/lifting/basiclift.html (visited on 10/09/2020). [10] ౻ϊ໦ ݈հ. “ϦϑςΟϯά΢ΣʔϒϨοτͱ৴߸ղੳ”. In: 2014. [11] Geert Uytterhoeven, Dirk Roose, and Adhemar Bultheel. “Wavelet transforms using the lifting scheme”. In: (1997). [12] ౻ϊ໦ ݈հ. “ϦϑςΟϯάεΩʔϜʹΑΔ΢ΣʔϒϨοτͷߏ੒๏”. In: ೔ຊ Ԡ༻਺ཧֶձ࿦จࢽ 28.2 (2018), pp. 72–133. [13] ۚ୩ ݈Ұ. ͜ΕͳΒ෼͔ΔԠ༻਺ֶڭࣨ –࠷খೋ৐๏͔Β΢ΣʔϒϨοτ· Ͱ–. ڞཱग़൛. [14] ࢁຊ ௟உ த໺ ޺ؽ ٢ా ༃෉. ΢ΣʔϒϨοτʹΑΔ৴߸ ॲཧͱը૾ॲཧ. ڞ ཱग़൛. 58 / 59
  105. ࢀߟจݙ III [15] ઒ാ ༸ত ށా ߒ ষ ஧. ৽΢ΣʔϒϨοτ࣮ફߨ࠲

    : ೖ໳ͱԠ༻ : ৴߸ॲཧͷ جૅ͔Β࠷৽ཧ࿦·Ͱ. C magazine. ιϑτόϯΫΫϦΤΠςΟϒ, 2005. [16] ੢໺ ૢ B.B. ϋόʔυ ࢁా ಓ෉. ΢ΣʔϒϨοτೖ໳ʕ਺ֶతಓ۩ͷ෺ޠ. ே ૔ॻళ, 2003. [17] ৽Ҫ ษ C.K.Chui ࡩҪ ໌. ΢ΣʔϒϨοτೖ໳. ౦ژిػେֶग़൛ہ. 59 / 59