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
ラズパイで写真を撮った話_IoTLT_vol.66_2200812.pdf
Search
h-fkn
August 12, 2020
Programming
0
300
ラズパイで写真を撮った話_IoTLT_vol.66_2200812.pdf
https://iotlt.connpass.com/event/183024/
h-fkn
August 12, 2020
Tweet
Share
More Decks by h-fkn
See All by h-fkn
The advantages and disadvantages of using machine learning with enebular
fkn0839
0
210
俺のNETFLIX season2 AmazonPersonalize
fkn0839
0
300
俺のNETFLIX season1
fkn0839
0
190
ゆるふわマシーンラーニング#2_内容調整中()
fkn0839
0
210
ゆるふわマシーンラーニング「❝ Google AutoML Tablesでお手軽AI ❞と題して話すつもりだったけど、実際に使ったらお手軽()だった件について5分以内で話す」
fkn0839
1
3.9k
データ分析プロセス/AIアプリケーションの基本設計
fkn0839
0
160
DataScienceBOOTCAMP5th_part1
fkn0839
0
1.8k
G'SACADEMY LAB5th DataScience
fkn0839
0
150
AIアプリ開発に「目的設定」が大切な理由
fkn0839
0
81
Other Decks in Programming
See All in Programming
Site Reliability Engineering for GMO
pyama86
8
1k
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
680
CA.swift19 恋するAIアプリ開発の裏側
oskmr
0
360
Code Reviews
bkuhlmann
4
890
Elm Form Validation
bkuhlmann
0
510
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.1k
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
220
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
0
220
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
370
Fragment Composition of GraphQL
quramy
4
770
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
530
Featured
See All Featured
Building an army of robots
kneath
300
41k
Scaling GitHub
holman
457
140k
Fireside Chat
paigeccino
21
2.6k
Navigating Team Friction
lara
178
13k
Facilitating Awesome Meetings
lara
42
5.6k
Building Applications with DynamoDB
mza
88
5.6k
Atom: Resistance is Futile
akmur
259
25k
How GitHub (no longer) Works
holman
304
140k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Transcript
enebular を使ってIoTデビューする話 初学者がラズパイで写真撮った話をします。お盆ですし、ベテラン 勢ははじめてラズパイに触れたときの懐かしい気持ちを思い出し ていただければ本望です。初学者は「これでもLTする人いるんだ… という勇気」を受け取ってくださいm(_ _)m p.s. enebularも触って感動したけどIoT織り交ぜられなかったから、また今度にします IoT縛りの勉強会!
IoTLT vol.66 @Youtube @hidefkn
自己紹介 ふかの Twitter @hidefkn Facebook hidefkn ・データ分析 ・AIアプリ開発 ・PM, PdM
IoTは初心者です。
5分くらいで話すこと 1. わたしがIoTデビューしたかった理由 a. Internet of Things の Things がないじゃん
2. things(ラズパイ(Raspberry Pi))に触ってみた a. OSのインストール b. SSH接続(IoTのInternetの部分) c. カメラ接続 d. 写真撮影・保存 e. (本当はやりたかったけど)できなかったこと 3. まとめ
わたしがIoTデビューしたかった理由 データ周りの仕事してて思ってたこと • データサイエンスの実務を通じて、 データを使うサービスづくりはオモシ ロイと思った • でも、データがないと分析もできない し、AIも作れないっていう話が少なく なかった
• EdgeAIとか話題になってたけど、実 際に取り組んだことはなかった • 8月中旬から社会人の夏休みタイムをとる ことにした • このタイミングでデータを集める仕組みを アプリ以外でも作れるようになったらかっ こいいかもしれない → IoT界隈をのぞき込むことにした
Internet of Things の Things がない • 考えてみれば当たり前ですが、IoT は モノ(Things)がなければ始まらない
ことに気づきました • ラズパイの名前は知っているけど、何 を買えばいいかわかりまでんした • 結論: 友人に借りました
Raspberry Pi に触ってみた • Raspberry Pi 3 MODEL B とやらをお
借りました。 • 少し触ったら何か大事な部品をぶっ 壊しそうな気がして不安になりまし た。 • これを5,000〜7,000円で買えること は安いのか高いのか?まだ自分には よくわかりませんでした。
IoT × AI(というかML)でやりたかったやつ(よくある定番のやつ OpenCVのやつ) beer 0.91 red-wine 0.82 ラズパイに接続したカメラで データを取得する(撮影する)
PCからラズパイを操作する? 物体認識の モデルを組み 込んで、その 結果を表示さ せる
STEP1 ラズパイはパソコンだからOSをインストールしないといけない ラズパイ財団のサイト( https://www.raspberrypi.org/downloads/ )でRapberry Pi imager macOS(私は MBP13 macOS
Catalina v10.15.6 を使ったから)をダウンロードしました
STEP1 ラズパイはパソコンだからOSをインストールしないといけない Raspberry Pi Imager があれば、初心者でも簡単に OSをインストールできると思います。 初学者にはマジでおすすめ(これが昔から当たり前のインストール方法だったらゴメンナサイ)
STEP1 ラズパイはパソコンだからOSをインストールしないといけない • PCにラズパイに差し込む microSDを事前に差し込ん でおく • インストールしたいOSを選 択する •
インストール先のSDカードを 選択する • 「WRITE」押下でインストー ルを開始する
STEP1 ラズパイはパソコンだからOSをインストールしないといけない • 「Write Successful」って 出てきたら成功している • microSDはきちんとマウン トを解除する •
そのあとに、PCからSD カードを丁寧に取り出す
STEP1 ラズパイはパソコンだからOSをインストールしないといけない ラズパイはパソコンって言うから、すぐ使えるものだとなめてました 公式サイトから任意の OSをmicroSDに入れて、OSが入ったmicroSDをラズパイに差し込みました • OSのインストールが想像以上に長 かった • 放置してPCがスリープするとやり
直す羽目になる(なった)
STEP3 ラズパイをパソコンから操作するためにSSH接続できるようにする ラズパイには画面がないから、どうすればいいかわからなかった。 SSH接続が必要らしかった SSH接続ってことは、安全にラズパイにリモート接続するってことだと理解した(多分) PCからラズパイを操作する? ここの話 1. microSD(/Volumes/boot)にsshの 空ファイルを作った
2. wpa_supplicant.confに接続先の SSIDとPWを書いた(自宅のWifi)
STEP2 ラズパイをパソコンから操作するためにSSH接続できるようにする microSD(/Volumes/boot)にsshの空ファイルを作った
STEP2 ラズパイをパソコンから操作するためにSSH接続できるようにする ラズパイとPCをどのネットワークで繋げるか?ってのを考えるときに、ネットワークがわからなかった。 「LanScan」というアプリで事なきを得る
STEP2 ラズパイをパソコンから操作するためにSSH接続できるようにする アプリを起動して、「▶」押下すると、ラズパイの IPアドレスが出てくる ※もちろん、ラズパイの電源が入っていないと、出てこないので注意
STEP2 ラズパイをパソコンから操作するためにSSH接続できるようにする SSHサーバを有効化してから、 WiFi接続も有効化する ここまでの設定をしてから、 microSDをPCから取り出して、ラズパイ本体に挿す country=JP ctrl_interface=DIR=/var/run/wpa_su pplicant GROUP=netdev
update_config=1 network={ ssid="<接続先のSSID>" psk="<平文のパスワード>" } ▼WiFi接を有効化する /Volumes/boot/wpa_supplicant.conf内に書くコード ※ wpa_supplicant.conf は自分で新規作成する $ touch /Volumes/boot/ssh ▼SSHサーバを有効化する /Volumes/boot/配下に、空のsshファイルを作 る
STEP2 ラズパイをパソコンから操作するためにSSH接続できるようにする 参考にさせていただいた記事「 Raspberry Pi 初期設定 - Qiita」 https://qiita.com/HeRo/items/c1c30d7267faeb304538
STEP3 ラズパイの電源の入れ方がわからない ラズパイにスイッチてきな部品をくっつけたら、スイッチで電源をオンにできるのかもしれない とりあえずAndroidと同じ接続端子(micro USB Type-B)で充電する(iPhoneしかない人はケーブル用意しな いとあれだなーっておもった)
STEP4 ラズパイにカメラをつける(すっごくうすくて、すっごい) 上に引っ張ると、カメラについてるテープみたいなものを差し込みやすい 金属部分を合わせる感じ。そりゃ電気を通して使うからそうだよね。ちょっと緊張しました。
STEP5 ターミナルからssh接続してみるー(「ssh pi@任意のIPアドレス」を打つ)
STEP5 ターミナルからssh接続してみるー(「ssh pi@任意のIPアドレス」を打つ) パスワードはラズパイの初期設定のやつ
STEP6 VNCサーバとやらインストールして、使ってみる(立てる?) 1. sudo apt install tightvncserver a. tightじゃないvncserverもあったけど 今回は気にせずやってみた
2. Desktop上で「command + k」を打つと…つい に…
STEP6 VNCサーバとやらインストールして、使ってみる(立てる?) サーバに接続する画面が出てくるので、「 vnc://任意のラズパイのIPアドレス:5901」で接続 ※このあと最初はPWが求められる 任意のIPアドレス
STEP6 VNCサーバとやらインストールして、使ってみる(立てる?) PCからラズパイを操作する? ここの話がで きた!
ところどころ、いろいろ、ある。 ① 最初は自分が設定したパスワードを入力する必要がある( LT ではスライド端折ってしまったかも) ¥ ② ラズパイに接続できないときは「共 有」関連の問題であるかも ※権限設定的なやつ
STEP7 カメラだけはやりたかった ラズパイに接続したカメラで データを取得する(撮影する) PCからラズパイを操作する?
STEP7 カメラだけはやりたかった $ sudo raspi-config • 下記のコマンドを打つと、左図の 画面が出てくるので、「 5 Interfacing
Options」を選択
STEP7 カメラだけはやりたかった • 次に「P1 Camera ~」を選択する
STEP7 カメラだけはやりたかった • 使えるようにしちゃうよ?って聞いてくるので いいよ(YES)って答える
STEP7 カメラだけはやりたかった 「$ vcgencmd get_camera」で設定状況を確認する supported=1 detected=1であればおk
STEP7 カメラだけはやりたかった ラズパイに接続したカメラで データを取得する(撮影する) PCからラズパイを操作する? 「$ raspistill -o 任意の文字列.jpg」で撮影(1秒ちょっと)
STEP7 カメラだけはやりたかった PCからラズパイを操作する? • 撮影してラズパイに保存でき た!!!!!それだけだけ ど意外と嬉しかったぁあああ あああああああ
できなかったこと・ハマったところ • メインディッシュの推論モデルの組み込みができな かった… • 具体的には、TensorFlowLite のインポート周りでハ マってしまった ◦ TensorFlow
Liteを公式ドキュメントと同 人誌読みつつやってみた • でも、なんか実行できなくて詰んだ ◦ 正直ちょっと悔しいー これをラズパ イに組み込む こと
まとめ・IoTデビューの感想 結論 IoT×AIをやれたか? → ✕, IoTデビューできたと言えるか?→ △ 1. ラズパイPCがどんな部品が集まって動くのか?といった仕組みがわかるよなーって感じた。 a. 教育に良いんじゃね?って思ったら、そうだった。 (下記、wiki) 2.
正直、難しそうでハードウェアに抵抗があったけど、意外と自分でもポチポチってやれたことだけでも嬉し かった a. ラズパイに、センサーを取得できるパーツとか、カメラ以外のパーツをくっつけると色々できるってこ とは体感できた b. ↑触ってみてはじめて、 「…ということは、◦◦から✕✕するプロダクトをラズパイで作れるんじゃ ね?」って思えるようになった。 (これが一番の収穫かもしれない)