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
290
俺のNETFLIX season1
fkn0839
0
180
ゆるふわマシーンラーニング#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
77
Other Decks in Programming
See All in Programming
PHPカンファレンス関西2024でLTとスタッフした
ohmori_yusuke
2
120
生成 AI の中身を覗いてみよう〜基礎から医療現場での応用まで〜
soh9834
2
700
メール認証とRuby
uvb_76
0
110
php-src debug マニュアル
onopon
1
660
C#でのPlaywrightを使ったE2Eテストの実際
tomokusaba
0
210
導入から5年が経って見えた Datadog APM 運用の課題
bgpat
1
480
Deep Dive into the Symfony Security Component
hhamon
1
180
上手な探索的テストとその上達方法について
matsu802
1
430
Go1.22からの疑似乱数生成器について/go-122-pseudo-random-generator
convto
1
110
オープンなデータ・ソフトウェアを活用した開発
404background
0
160
DDD, necessary but insufficient: physical design principles for microservices
cer
PRO
0
160
Material 3で Material 2ぽい見た目にする
numeroanddev
2
220
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
60
6.6k
Why Our Code Smells
bkeepers
PRO
330
56k
We Have a Design System, Now What?
morganepeng
42
6.7k
Testing 201, or: Great Expectations
jmmastey
27
6.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
11
1.4k
Docker and Python
trallard
33
2.6k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.6k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
10
4.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
19
1.6k
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. ↑触ってみてはじめて、 「…ということは、◦◦から✕✕するプロダクトをラズパイで作れるんじゃ ね?」って思えるようになった。 (これが一番の収穫かもしれない)