Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IoT×人工知能による画像認識技術勉強会
Search
ISHIGO Yusuke
PRO
August 27, 2018
Programming
0
91
IoT×人工知能による画像認識技術勉強会
追加資料
https://github.com/Yusk1450/WatsonStudyGroup
ISHIGO Yusuke
PRO
August 27, 2018
Tweet
Share
More Decks by ISHIGO Yusuke
See All by ISHIGO Yusuke
2024年度参加希望者向けアプリ開発プロジェクト説明(名古屋文理大学)
yusk1450
PRO
0
7
プログラミング基礎#1(名古屋造形大学)
yusk1450
PRO
0
21
プログラミング基礎#2(名古屋造形大学)
yusk1450
PRO
0
26
プログラミング基礎#3(名古屋造形大学)
yusk1450
PRO
0
29
プログラミング基礎#4(名古屋造形大学)
yusk1450
PRO
0
76
こどもICT学級 人工知能(AI)ってなに?(2020/11/21)
yusk1450
PRO
0
4
こどもICT学級 人工知能(AI)ってなに?(2020/11/7)
yusk1450
PRO
0
4
2025年度 基礎演習(石郷ゼミ)紹介(名古屋文理大学)
yusk1450
PRO
0
23
2024年度アプリ開発プロジェクト紹介(名古屋文理大学)
yusk1450
PRO
0
49
Other Decks in Programming
See All in Programming
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
190
선언형 UI에서의 상태관리
l2hyunwoo
0
180
Scalaから始めるOpenFeature入門 / Scalaわいわい勉強会 #4
arthur1
1
340
良いユニットテストを書こう
mototakatsu
8
2.8k
Spatial Rendering for Apple Vision Pro
warrenm
0
110
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
280
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
840
Recoilを剥がしている話
kirik
5
6.8k
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
190
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
400
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Raft: Consensus for Rubyists
vanstee
137
6.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
The Pragmatic Product Professional
lauravandoore
32
6.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Designing for humans not robots
tammielis
250
25k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Transcript
None
https://bit.ly/2NjVgTi 本日の資料
自己紹介 日本総合ビジネス専門学校 NIHON-CHUO Institution 2017.4- 合同会社4D Pocket 4D Pocket LLC.
2017.4- 石郷 祐介 ISHIGO Yusuke Programmer
周辺の障害物を計測する装置 靴についたセンサで周辺障害物を認識する装置(株式会社アップアローズ)
周辺の障害物を計測する装置 靴についたセンサで周辺障害物を認識する装置(株式会社アップアローズ)
周辺の障害物を計測する装置 靴についたセンサで周辺障害物を認識する装置(株式会社アップアローズ)
GPSで現在位置を取得し、指定した位置まで自動的に戻ってくる浮き輪 MADE IN FICTION
自己紹介 ロボットアームのケーブル状態を監視するシステム(岐阜車体工業株式会社) 温湿度センサ サーモカメラ マイコン 確認用ディスプレイ カラーカメラ
本日の流れ 1. 画像認識について 2. 人工知能API「IBM Watson」で画像認識する ・写真に写っている物体を認識する ・独自画像を学習させて、写真に写っている物体を判別する 3.ワンボードマイコン(ESP32)のカメラを使って画像認識する ・ESP32について
・ESP32の環境構築 ・ESP32をネットワークに接続する ・「IBM Watson」に接続する
画像認識について 画像データ(ピクセルの並び)の特徴点と、事前に用意したサンプル画像 データの特徴点とを比較する技術(「意味」を読み取っているわけではない) 元画像 特徴点 画像に写っている物体が何であるかを判別する技術 =
応用例①(自動判別装置) きゅうりの等級を自動判別する装置 https://geek-out.jp/column/entry/2017/11/23/110000
応用例②(ARアプリ) 特定の画像を起点にして、任意の画像やアニメーションを再生する
画像認識を実現するための手段 1.「OpenCV」等の画像処理ライブラリを使用する 2.「TensorFlow」「scikit-learn」等の機械学習系ライブラリを使用する 3.「IBM Watson」等の人工知能プラットフォームを使う
1.画像処理ライブラリを使用する ・2値化、反転等の画像処理 ・文字認識(OCR)や物体検出 (独自画像を読み込ませることで、顔以外の検出も可能) OpenCV
2.機械学習ライブラリを使用する scikit-learn Pythonの機械学習のアルゴリズムをまとめたパッケージ (SVM、ランダムフォレスト、k近傍法、ロジスティクス回帰等) TensorFlow Googleが開発しているオープンソースの機械学習ライブラリ ディープラーニングに対応している Keras Pythonのニューラルネットワークライブラリ TensorFlowをバックエンドとして、同様の機能を完結な書き方で実現できる
2.機械学習ライブラリを使用する Movidius Neural Compute Stick ディープラーニングに特化した外部演算装置。クラウドに頼らず、ローカル 環境で高度な画像認識等が可能。 https://www.switch-science.com/catalog/3501/
3.人工知能プラットフォームを活用する IBM Cloud Watson
写真に写っている物体を認識する ① https://myibm.ibm.com/dashboard/ IBMダッシュボード
写真に写っている物体を認識する ②
写真に写っている物体を認識する ③
写真に写っている物体を認識する ④
写真に写っている物体を認識する ⑤
写真に写っている物体を認識する ⑥
あい旅っと 写真の風景に近い国内の風景を探し出し、マップを表示するアプリ
独自画像から画像判別する ①
独自画像から画像判別する ②
独自画像から画像判別する ③
独自画像から画像判別する ④
独自画像から画像判別する ⑤
独自画像から画像判別する ⑥
独自画像から画像判別する ⑦
独自画像から画像判別する ⑧
独自画像から画像判別する ⑨
独自画像から画像判別する ⑩ https://bit.ly/2wzeRYL 教師データ(犬の画像) ハスキー https://bit.ly/2PatMQB ゴールデンレトリバー
独自画像から画像判別する ⑪
独自画像から画像判別する ⑫
独自画像から画像判別する ⑬
Watsonに渡す教師データの注意点 ・ひとつの.zipファイルは、最大10,000個のイメージまたは100MB以内とする ・ひとつの.zipファイルにつき、最小10個のイメージが必要 ・処理時間と正確度のバランスとしては、150〜200個のイメージが最良 ・イメージを増やすメリットは、5,000個前後で頭打ちとなる ・撮影に使用しているカメラ等は、なるべく合わせたほうがいい (スマホと一眼レフの写真を混ぜると、うまく学習できない) ・対象物は、イメージの1/3以上写っているようにする ・否定的、肯定的なイメージは、同じ分量用意したほうがいい
よくない学習の例 Watsonが同一のモノと認識できない ・りんごが単体ではない ・りんご全体が写ってない
IoT×画像認識デバイス ボタンを押すとカメラ撮影して、Watsonに画像をアップロードして、 写っているものをディスプレイに表示する
ESP32 独自プログラムをインストールできる汎用マイコン(コンピュータ) Arduino互換 プロトタイピングによく使用される Arduino(オープンソースの汎用マイコン)と 同じ環境で開発できる。 ネット上の資料が流用可能。 高スペック CPUがデュアルコア、メモリが520KB (Arduino
UNOは2KB)。 BluetoothとWifiが標準で搭載されている。 低価格 1,500円程度で購入できる。 http://akizukidenshi.com/catalog/g/gM-11819/
Raspberry Piとの比較 リアルタイム画像認識の場合は、Raspberry Piを使う 動画の容量だとESP32のメモリ上に展開できない ESP32は、Raspberry Piの約1/4の価格 ESP32は、ブレッドボード等を含めると2,500円程度。 Raspberry Pi3は、ケース、アダプタ等を含めると10,000円程度。
ESP32の環境構築(Mac) 1.ターミナルを起動する 2.下記のリンク先にあるコマンドを実行する https://goo.gl/S7qRhD 3.ドライバをインストールする https://goo.gl/jiEM3q
Arduino IDE(開発環境)の使い方 ① ① 「ESP32 Dev Module」に設定する ② 適切なものに設定する ①
②
Arduino IDE(開発環境)の使い方 ② ③ マイコンにプログラムを書き込む
パーツリスト ESP32 http://akizukidenshi.com/catalog/g/gM-11819/ Grove - シリアルカメラキット http://akizukidenshi.com/catalog/g/gM-09161/ シリアルOLED液晶ディスプレイモジュール 128×32 https://www.amazon.co.jp/dp/B01M8JV310
USBケーブル Aオス - マイクロBオス http://akizukidenshi.com/catalog/g/gC-07607/ タクトスイッチ 12mm http://akizukidenshi.com/catalog/g/gP-09827/ ブレッドボード https://www.switch-science.com/catalog/313/ ジャンパワイヤ(オス〜オス) https://www.switch-science.com/catalog/57/
Microsoft Azure Computer Vision その他の人工知能プラットフォーム ① https://azure.microsoft.com/ja-jp/services/cognitive-services/computer-vision/
その他の人工知能プラットフォーム ② Amazon Rekognition https://aws.amazon.com/jp/rekognition/
その他の人工知能プラットフォーム ③ Google Cloud Vision https://cloud.google.com/vision/?hl=ja
None