Amazon Echoのウェイクワードをカスタマイズする / Customize Amazon Echo Wake Word

F72a246c5aa9be108a86672d1eaa43aa?s=47 mat
January 15, 2019

Amazon Echoのウェイクワードをカスタマイズする / Customize Amazon Echo Wake Word

【とらのあな主催】オタクが最新技術を追うライトニングトークイベント2回目
https://yumenosora.connpass.com/event/115364/

F72a246c5aa9be108a86672d1eaa43aa?s=128

mat

January 15, 2019
Tweet

Transcript

  1. "NB[PO&DIPͷ ΢ΣΠΫϫʔυΛΧελϚΠζ͢Δ NBU !SPNJPHBLV

  2. λΠτϧ͸൒෼௼ΓͰ͢ ͝ΊΜͳ͍͞

  3. ͱ͜ΖͰօ͞Μ

  4. ޷͖Ͱ͔͢ʁ

  5. w ʮΞΠυϧ׆ಈʯΛςʔϚʹ ͨ͠ঁࣇ޲͚ίϯςϯπ w %$%ɺ57ΞχϝͰల։த w ݱࡏγϦʔζ࡞໨ʮΞΠΧπ ϑϨϯζʂʯ͕์өத

  6. None
  7. None
  8. w ܶதϞόΠϧΞϓϦʮΞΠΧ πφϏʯͷΩϟϥΫλʔ w "*Ͱ͋Δ w ʮϋϩʔɺίίͪΌΜʯͱݺ ͼ͔͚ΔͱʮίίͩΑʂʯͱ ىಈ͢Δʢ$7ॾ੕͢ΈΕʣ w

    ͔Θ͍͍ ίίͪΌΜ
  9. IUUQTCJUMZ'UK[ ʮίίͩΑʂʯ $7ॾ੕͢ΈΕ "MFYBɺΞΠΧπφϏ։͍ͯɺ ϋϩʔίίͪΌΜ ʮ͍ͬ͠ΐʹ"ŋ*ŋ,ŋ"ŋ5ŋ4ŋ6ʂʯNQ "MFYBɺΞΠΧπφϏ։͍ͯɺ Վͬͯ

  10. Կ͔͕଍Γͳ͍ɾɾɾ

  11. IUUQTCJUMZ'UK[ ʮίίͩΑʂʯ $7ॾ੕͢ΈΕ "MFYBɺΞΠΧπφϏ։͍ͯɺ ϋϩʔίίͪΌΜ ʮ͍ͬ͠ΐʹ"ŋ*ŋ,ŋ"ŋ5ŋ4ŋ6ʂʯNQ "MFYBɺΞΠΧπφϏ։͍ͯɺ Վͬͯ

  12. ʮϋϩʔίίͪΌΜʯ Λ΢ΣΠΫϫʔυʹ͍ͨ͠ʂ

  13. None
  14. None
  15. "DUJPO#VUUPO

  16. ͭ·Γ

  17. "NB[PO&DIPͷ ΢ΣΠΫϫʔυΛΧελϚΠζ͢Δ ʢ෺ཧʣ NBU !SPNJPHBLV

  18. Ͳ͏΍ͬͯԡ͢ʁ

  19. w 3BTQCFSSZ1J.PEFM#  w ϥζύΠ༻ిݯ w 4%Χʔυ w 64#ϚΠΫ w

    αʔϘϞʔλ
  20. None
  21. Ի੠ೝࣝͲ͏͢Δʁ

  22. ީิ  +VMJVTʢϑϦʔͷԻ੠ೝࣝιϑτ΢ΣΞʣ  Ի੠ೝࣝ"1*ʢ(PPHMFɺ.4౳͕ఏڙʣ  8FC4QFFDI"1*

  23. +VMJVT w ຊମͱ͸ผʹԻڹϞσϧɾݴޠϞσϧ͕ೖͬͨجຊతͳσΟ ΫςʔγϣϯΩοτ͕഑෍͞Ε͍ͯΔ w σϑΥϧτͩͱೝࣝ཰͸ѱ͔ͬͨ w ೝࣝ཰Λ্͛ΔͨΊʹಠࣗࣙॻ΋࡞ͬͯΈ͕ͨɺؔ܎ͳ ͍Ի΋ೝࣝ͞Εͯ͠·ͬͨ w

    ΋ͬͱྑ͍΍Γํ͕͋Δ͸͚ͣͩͲ࿬ಓʹҳΕͦ͏ͩͬ ͨͷͰஅ೦
  24. Ի੠ೝࣝ"1* w (PPHMFͷ$MPVE4QFFDIUP5FYU"1*Λࢼͨ͠ w ೝࣝਫ਼౓͸ߴ͍ w ࠷ॳ͸ແྉ͚ͩͲجຊతʹ͓͕͔͔ۚΔ w ৗ࣌ىಈͤ͞ΔͷͰ͙͢جຊ࿮௒͑ͦ͏ɻஅ೦

  25. 8FC4QFFDI"1* w ϒϥ΢βͰಈ࡞͢ΔʮԻ੠߹੒ʯͱʮԻ੠ೝࣝʯػೳ w ಺෦Ͱ͸(PPHMFͷԻ੠ೝ͕ࣝ࢖ΘΕ͍ͯΔΒ͍͠ w ݱࡏ$ISPNFͷΈରԠ w (PPHMFͷσϞϖʔδ w

    IUUQTXXXHPPHMFDPNDISPNFEFNPT TQFFDIIUNM
  26. const recognition = new webkitSpeechRecognition(); recognition.continuous = true; recognition.lang =

    "ja"; recognition.onresult = event => { for (let i = event.resultIndex; i < event.results.length; ++i) { if (event.results[i].isFinal) { const word = event.results[i][0].transcript; if (word === "ハローここちゃん") { // モーターを動かす為のなにかしらを行う } } } }; recognition.start();
  27. αʔϘϞʔλΛϓϩάϥϜ͔Βಈ͔͢

  28. w (PMBOHͰॻ͔ΕͨϩϘςΟΫεϑϨʔϜϫʔΫ w αʔόػೳ͕͋Γɺ"1*Խ͢Δ͜ͱ͕Ͱ͖Δ w ʮಛఆͷΤϯυϙΠϯτʹϦΫΤετ͕དྷͨΒαʔϘ ϞʔλΛಈ͔͢ʯͳΜͯ͜ͱ͕Ͱ͖Δ

  29. adaptor := raspi.NewAdaptor() servo := gpio.NewServoDriver(adaptor, "12") //PWM0(18) work :=

    func() { // 13 ~ 41 = 0度 ~ 180度 servo.Move(uint8(27)) //center gobot.After(1*time.Second, func() { servo.Move(uint8(35)) gobot.After(500*time.Millisecond, func() { servo.Move(uint8(27)) }) }) } robot := gobot.NewRobot("servoBot", []gobot.Connection{adaptor}, []gobot.Device{servo}, work, )
  30. master := gobot.NewMaster() // Starts the API server on default

    port 3000 server := api.NewAPI(master) server.Port = "3000" server.Start() servoEndpoint := master.AddRobot(robot) servoEndpoint.AddCommand("move", func(params map[string]interface{}) interface{} { reqParam := fmt.Sprintf("Params: %+v\n", params) robot.Start() return reqParam }) master.Start() http://localhost:3000/api/robots/servoBot/commands/move ͰϦΫΤετΛ଴ͪड͚Δ
  31. None
  32. αʔϘϞʔλΛ"MFYBʹݻఆ͢Δ

  33. None
  34. ׬੒ʂ

  35. IUUQTZPVUVCFIRS/@L;'6

  36. ײ૝ w *P5ॳΊ͚ͯͩͲҙ֎ͱ࡞ΕΔɺάάΕ͹৘ใ΋ͨ͘͞Μग़ͯ͘Δ w (PPHMFͷԻ੠ೝࣝͷޙʹ"NB[PO "MFYB ͷԻ੠ೝࣝ΋࢖ͬͯͯ ΧΦε w ୊ࡐΛίίͪΌΜʹ͓͔ͨ͛͠ͰϞνϕʔγϣϯ͕མͪͳ͔ͬͨ

    w ೥຤ʹࢥ͍͍ͭͯ೥࢝ʹϥζύΠങͬͯ࢓ࣄ࢝Ίલʹ׬੒ͨ͠ w ͏Μ͏Μɺ͜Ε΋·ͨΞΠΧπʂͩͶ
  37. IUUQTCJUMZ2.S"JX ৄ͘͠͸ϒϩάʹ