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

車載GoogleHomeで写真撮影

 車載GoogleHomeで写真撮影

スマートスピーカーを遊びたおす会 vol.3 - connpass
https://kotodama.connpass.com/event/97273/

Kiyotaka Doumae

September 07, 2018
Tweet

More Decks by Kiyotaka Doumae

Other Decks in Technology

Transcript

  1. 車載Google Homeで
    写真撮影
    堂前清隆
    [email protected]
    https://twitter.com/IIJ_doumae
    https://www.facebook.com/kdoumae
    1

    View Slide

  2. Idea
    • 運転中に「写真に撮っておきたい(あとでtweet
    したい)」という場面にしばしば遭遇する
    • 運転中なのでカメラやスマホが操作できない
    • ドライブレコーダーも搭載しているが、面倒
    • いちいちファイルを回収するのが面倒
    • 長い動画から必要な場所を切り出すのが面倒
    • 音声操作で写真が撮れればいいじゃん!
    2

    View Slide

  3. Concept
    Google Assistant
    Mobile
    Wi-Fi
    (1)
    (2)
    (3)
    (4) Webhook (HTTPS)
    (5) MQTT
    (6) shoot
    (7) HTTPS
    (8)
    OK, Google.
    Take a Picture.
    Mobile Service
    3

    View Slide

  4. [PR] IIJmio IoT Service
    • IIJmio IoTサービス (MVNO SIMカード)
    • IoT利用を想定・個人向け (クレカ支払い)
    https://www.iijmio.jp/mit/ 4

    View Slide

  5. Experiment
    5

    View Slide

  6. Movie
    6

    View Slide

  7. Results
    • ひとまず動いた
    • スマホに写真が送り込まれるのは便利
    • 動作が遅い (タイムラグがある)
    • 指示→撮影 (5sec)
    • Google AssistantとIFTTTの反応が遅い
    • 音声の応答があってからWebhookが飛ぶ
    • 撮影→slack (15sec)
    • 解像度を高くしたことと、カメラの都合 (後述)
    7

    View Slide

  8. Camera
    • カメラの特性
    • 今回使用したカメラはLogicool HD Webcam C615
    • FullHD・オートフォーカスなど、比較的高級
    • 起動直後にゲイン調整が行われる。調整前のタイミング
    で撮影すると、露出があっておらず真っ白/真っ黒になる。
    • fswebcamだとこの現象が発生する (コマンド実行してから
    カメラが起動される?)
    • 数フレームディレイさせると回避。ディレイを増やせば
    より画質が良くなるようだが、撮影に時間がかかるよう
    になる。
    • 安物のカメラだとこういう調整が行われないので、
    影響が出にくい (そもそも画質が悪いが)
    8

    View Slide

  9. Device
    • Google Homeじゃなくてもいい?
    • Google Home Mini
    • 電源・モバイルWi-Fiルータが必要
    • 音声認識は比較的良好 (それでも取りこぼしはある)
    • HUAWEI P10 lite (Google Assistant)
    • 単体で通信可能・電源不要
    • ラジオがかかっていると音声認識の失敗が多い
    • 他のデバイス
    • LINE Clova Friends
    • ペットボトルサイズでドリンクホルダーに収まる
    • バッテリー搭載なので電源配線なくてもOK
    • かわいい 9

    View Slide

  10. Traffic
    • Google Homeの通信量
    • 今回の実験での通信量 20MByte程度
    • 音声コマンド20回、画像15枚程度
    • 画像が大きい(1MB強/枚)
    • モバイル(SIM)で利用することを考慮すると、
    どの程度通信が発生しているか気になる
    →そこで…
    • 自宅のGoogle Home miniで通信量を測定してみた
    • 車の中とは雑音の状況が異なるので、あくまで参考値
    10

    View Slide

  11. Environment
    • 自宅・リビングに設置
    • Wi-Fi AP・ルータ・Flets回線でインターネット
    に接続
    • 用途は家電(TV・エアコン)のコントロール程度
    Wi-Fi AP Internet
    SEIL/X1
    tcpdump
    IIJmio
    with
    Flets
    11

    View Slide

  12. Overview
    Day1 Day2 Day3 Day4 Day5 Day6 Day7
    5.26MB 6.04MB 6.95MB 4.64MB 4.69MB 9.09MB 9.20MB
    Day8 Day9 Day10 Day11 Day12 Day13 Day14
    11.01MB 8.89MB 7.30MB 7.68MB 9.92MB 12.87MB 10.34MB
    • 5分間ごとに通信量を集計
    ∵1回のアクションが5分を超えることはない
    • 14日分のデータを重ね合わせ
    • 200KB, 400KB, 600KB…と、ピークに特徴がある
    (ような気がする。あくまで大雑把な感触)
    →1回のアクションで200KB程度通信してる?
    12

    View Slide

  13. Detail
    • アクションがあった時間帯からサンプリング
    • 5分間に発生した通信 (約200KB)
    • 別の時間帯で8.8.8.8にDNS queryを投げている
    のも観測 (DHCPで通知されたDNSは無視する?)
    プロトコル 通信量 (Bytes) 通信相手
    ICMP 1232
    FCM (5228/tcp) 562 2404:6800:4008:c00::bc (tm-in-xbc.1e100.net.)
    FCM (5228/tcp) 2106 2404:6800:4008:c02::bc (tg-in-xbc.1e100.net.)
    HTTPS (443/tcp) 6458 2404:6800:4004:80a::200e (nrt12s23-in-x0e.1e100.net.)
    HTTPS (443/tcp) 178905 2404:6800:4004:80b::2004 (nrt20s09-in-x04.1e100.net.)
    HTTPS (443/tcp) 9280 2404:6800:4004:80d::200a (nrt12s17-in-x0a.1e100.net.)
    HTTPS (443/tcp) 2895 2404:6800:4004:80f::2003 (nrt13s49-in-x03.1e100.net.)
    HTTPS (443/tcp) 18577 2404:6800:4004:818::200e (nrt13s50-in-x0e.1e100.net.)
    FCM: Firebase Cloud Messaging
    13

    View Slide

  14. Attention • < 50KB/5minのグラフを拡大
    • アクションを起こしていないときにも通信が
    発生していることがわかる
    • 5KB/5minと20KB/5minにラインが見える
    14

    View Slide

  15. Transition
    • ヒートマップ風に表示してみた
    • 青: 15KB/5min 以下
    • 橙: 15KB/5min 以上 (40KB/5min以下)
    • Day6の2:30頃を境にアクションが
    ない時の通信の傾向が変わっていた!
    • 何か挙動の変化があったと思われる
    15
    Date→
    Time→

    View Slide

  16. Before
    • ~Day6 2:30(変化前)の中からサンプリング
    • 無アクションの時間帯、5分間に発生した通信
    プロトコル 通信量 (Bytes) 通信相手
    ICMP 1288
    NTP (123/UDP) 112 2001:4860:4806:c:: (time4.google.com.)
    FCM (5228/tcp) 594 2404:6800:4008:c00::bc (tm-in-xbc.1e100.net.)
    FCM (5228/tcp) 676 2404:6800:4008:c02::bc (tg-in-xbc.1e100.net.)
    HTTPS (443/tcp) 2863 2404:6800:4004:818::2003 (nrt13s50-in-x03.1e100.net.)
    16

    View Slide

  17. After
    • Day6 2:30~(変化後)の中からサンプリング
    • 無アクションの時間帯、5分間に発生した通信
    プロトコル 通信量 (Bytes) 通信相手
    ICMP 1400
    NTP (123/UDP) 112 2001:4860:4806:c:: (time4.google.com.)
    FCM (5228/tcp) 384 2404:6800:4008:c00::bc (tm-in-xbc.1e100.net.)
    FCM (5228/tcp) 700 2404:6800:4008:c06::bc (tk-in-xbc.1e100.net.)
    HTTPS (443/tcp) 3407 2404:6800:4004:809::2003 (nrt20s02-in-x03.1e100.net.)
    HTTPS (443/tcp) 3407 2404:6800:4004:80c::2003 (nrt12s22-in-x03.1e100.net.)
    HTTPS (443/tcp) 3407 2404:6800:4004:80d::2003 (nrt12s17-in-x03.1e100.net.)
    HTTPS (443/tcp) 3407 2404:6800:4004:819::2003 (nrt13s51-in-x03.1e100.net.)
    HTTPS (443/tcp) 3407 2404:6800:4004:81a::2003 (nrt12s13-in-x03.1e100.net.)
    17

    View Slide

  18. Conclusion
    • 車にGoogle Homeを積んでみた
    • 音声操作での写真撮影を試した
    • タイムラグは少々悩ましい
    • Google Homeの通信量を確認した
    • 1回のアクションで200KB程度通信しているのでは
    • アクション無しでも20KB/5min程度通信が発生する
    • 突然挙動が変化することもあるようだ
    • ストリーミング(ラジオなど)を利用する場合は当然
    その分の通信が発生する
    18

    View Slide