Slide 1

Slide 1 text

Depth画像で物体検知やってみたー。 2020/2/8 CODE for YAMATOKORIYAMA Moonlight 明日香 GCPUG in Nara #5 LT

Slide 2

Slide 2 text

自己紹介 Facebook moonlight.aska Twitter @moonlight_aska Blog みらいテックラボ http://mirai-tec.hatenablog.com ➢ 鶴田 彰 ➢ (昔の)得意分野 : パターン認識(音声, 画像, etc) ユーザ適応(レコメンド, etc) ➢ コミュニティ活動 : CODE for YAMATOKORIYAMA GCPUG NARA Organizer

Slide 3

Slide 3 text

おことわり GCPまったくでてきません!!

Slide 4

Slide 4 text

そもそもの始まり ◼ 2017年12月 ある大きな施設で来場者をカウントしたーい!!

Slide 5

Slide 5 text

そもそもの始まり アイデア出し(2018.1.14) 1. カメラ RGBカメラだと個人特定できるのでカメラ設置を嫌がれるかも. 2. 感圧マット 3. 赤外線センサ : 提案: 3Dセンサ(Depthカメラ)による人の出入りカウント 理由: ✓ 3Dセンサならプライバシーの問題を回避可能. ✓ 施設内での動線(人の流れ)解析へ拡張しやすそう.

Slide 6

Slide 6 text

これまでの取組み ◼2018年1月アイデア出し ◼2018年2-4月プロトタイプ開発 ◼2018年12月実証実験@Hug2祭り 課題①:複数人の同時通行 課題②:自動ドアの影響 ◼2019年8月-11月YOLOv3版開発 ◼2019年12月実証実験@Hug2祭り 課題①の例 課題②の例

Slide 7

Slide 7 text

実証実験の様子(2回目) 2019/12/1 Hug2祭り@奈良市ボランティアインフォメーションセンター 3Dカメラによる人数カウント

Slide 8

Slide 8 text

計測状況

Slide 9

Slide 9 text

来場者測定結果

Slide 10

Slide 10 text

Depthカメラとは? X Y ー 物体の色 + 物体までの距離(Z方向) 実空間上(XYZ)の位置/動きを感知すること!! 写真撮影 RGB画像 https://www.tdk.co.jp/techmag/knowledge/201102u/

Slide 11

Slide 11 text

システム構成 Intel RealSense D415/D435 Jetson Nano USB3.0 2019年版 2018年版 Intel RealSense D415/D435 ASUS VivoMini UN62 USB3.0

Slide 12

Slide 12 text

処理の流れ 距 離 画 像 取 り 込 み グ レ ー ス ケ ー ル 変 換 人 物 検 出 人 物 領 域 重 心 計 算 追 跡 中 人 物 と 照 合 人 物 情 報 更 新 人 数 カ ウ ン ト YOLOv3 2019年版 2018年版 画 像 取 り 込 み 背 景 差 分 二 値 化 ノ イ ズ 除 去 輪 郭 抽 出 人 物 領 域 重 心 計 算 追 跡 中 人 物 と 照 合 人 物 情 報 更 新 人 数 カ ウ ン ト

Slide 13

Slide 13 text

YOLOv3とは https://pjreddie.com/darknet/ YOLO Darknet Open Source Neural Networks in C Real Time Object Detection

Slide 14

Slide 14 text

Pythonで動かすには YOLOv3はCによるライブラリ PythonでYOLOv3を動かす方法: 1. ctypes(*1)を使う ⇒ darknet/python/darknet.py 2. YOLOv3の学習済モデルを使う ⇒ keras-yolo3 *1:このライブラリはCと互換性のあるデータ型を提供し, 動的リンク/共有 ライブラリ内の関数呼び出しを可能にする.

Slide 15

Slide 15 text

JetsonNanoで動かすには 課題はすぐにやってきたー. ★3-4 FPSとフレーム毎の処理がまったく間に合わない!! 15FPS程度まで改善 対策①:画像を640x480→320x240にリサイズして渡す 対策②:YOLOv3のモデルの入力サイズを 416x416→224x224に 原因:OpenCVの画像データからYOLOv3に渡す画像デー タに変換する処理.

Slide 16

Slide 16 text

検出精度をあげるには [当初] [改良後] 手や荷物で変形パターンが多い

Slide 17

Slide 17 text

トラッキングとカウント 追跡中 人物 ID=10 ID=12 ID=13 処理中 フレーム LEFT・RIGHTエリア × × 〇 〇 判定エリア

Slide 18

Slide 18 text

新たな課題も ◼ 単独通過だが人物検出に失敗 ◼ 子供の検出に失敗 ◼ 通過判定線付近に人物が停滞すると連続カウントup 全国金魚すくい選手権で 来場者のカウントをやってみるか!?

Slide 19

Slide 19 text

Thank You!