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
400
ラズパイで写真を撮った話_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
250
俺のNETFLIX season2 AmazonPersonalize
fkn0839
0
470
俺のNETFLIX season1
fkn0839
0
240
ゆるふわマシーンラーニング#2_内容調整中()
fkn0839
0
300
ゆるふわマシーンラーニング「❝ Google AutoML Tablesでお手軽AI ❞と題して話すつもりだったけど、実際に使ったらお手軽()だった件について5分以内で話す」
fkn0839
1
4.1k
データ分析プロセス/AIアプリケーションの基本設計
fkn0839
0
180
DataScienceBOOTCAMP5th_part1
fkn0839
0
1.9k
G'SACADEMY LAB5th DataScience
fkn0839
0
200
AIアプリ開発に「目的設定」が大切な理由
fkn0839
0
130
Other Decks in Programming
See All in Programming
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
110
A2A プロトコルを試してみる
azukiazusa1
2
1.4k
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
270
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
270
生成AI時代のコンポーネントライブラリの作り方
touyou
1
180
CursorはMCPを使った方が良いぞ
taigakono
1
250
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
12
3.6k
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
670
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
120
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
460
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
910
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
184
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Gamification - CAS2011
davidbonilla
81
5.4k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Balancing Empowerment & Direction
lara
1
430
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
49
5.5k
Facilitating Awesome Meetings
lara
54
6.4k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
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. ↑触ってみてはじめて、 「…ということは、◦◦から✕✕するプロダクトをラズパイで作れるんじゃ ね?」って思えるようになった。 (これが一番の収穫かもしれない)