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
110
IoT×人工知能による画像認識技術勉強会
追加資料
https://github.com/Yusk1450/WatsonStudyGroup
ISHIGO Yusuke
PRO
August 27, 2018
Tweet
Share
More Decks by ISHIGO Yusuke
See All by ISHIGO Yusuke
ハッカソンを活用したモノづくり教育について
yusk1450
PRO
2
110
コロナ対応 混雑状況マップ搭載 「岐阜県観光AIサイネージ」(2021年)
yusk1450
PRO
0
41
ゲーム技術基礎#1
yusk1450
PRO
0
63
ゲーム技術基礎#2
yusk1450
PRO
0
31
ゲーム技術基礎#3
yusk1450
PRO
0
27
2025年度アプリ開発プロジェクト紹介(名古屋文理大学)
yusk1450
PRO
1
140
自己紹介(研究活動)
yusk1450
PRO
0
74
2024年度参加希望者向けアプリ開発プロジェクト説明(名古屋文理大学)
yusk1450
PRO
0
63
こどもICT学級 人工知能(AI)ってなに?(2020/11/21)
yusk1450
PRO
0
48
Other Decks in Programming
See All in Programming
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.7k
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.4k
Advance Your Career with Open Source
ivargrimstad
0
540
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
110
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
330
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
390
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
580
CSC509 Lecture 03
javiergs
PRO
0
340
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.6k
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
1.3k
Software Architecture
hschwentner
6
2.3k
CSC509 Lecture 05
javiergs
PRO
0
300
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
353
21k
Code Reviewing Like a Champion
maltzj
526
40k
The Invisible Side of Design
smashingmag
302
51k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
How GitHub (no longer) Works
holman
315
140k
Why Our Code Smells
bkeepers
PRO
340
57k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Mobile First: as difficult as doing things right
swwweet
224
10k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
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