Contents
概要
本教材は、Raspberry Pi (ラズパイ) でとにかく何かを作ってみたいという方向けに、Raspberry PiとPiカメラを使ってAI見守りカメラを作ります。
具体的には、AIを使ってカメラに写った人を判別することによって自分がどのくらいの時間机に向かっているのかを知らせるモノを作ります。
学習プログラム
目次
【前編】
第1章:開発環境の構築
第2章:人の判別にチャレンジしよう
第3章:滞在時間を調べよう
【後編】
第4章:スマホへ通知しよう
第5章:プログラムを継続的に動かそう
第6章: 物体検出の工夫 あとがき
教材の目次を追いながら、どんなことを学ぶのか見ていきましょう。
本教材は大きく【前編】と【後編】に別れています。
【前編】では開発環境の構築〜実際の人物判別、滞在時間を調べるという基礎を学びます。
【後編】では前編で作ったプログラムを応用してLINE経由でスマホに通知したり、アプリの常駐化(ラズパイ上でプログラムを実行し続けること)、応用するための工夫の仕方を学びます。
第1章:開発環境の構築
ここでは主に「TensorFlow」「OpenCV」「imutils」といった画像認識に必要とされるパッケージをインストールします。
急に難しそうな単語が出てきて身が引けてしまうかもしれませんが、ツクレル教材にはラズパイを使うのが初めての方向けの無料教材「Raspberry Pi 入門」やプログラミングの基礎になる無料教材「Python 入門」をご用意しておりますので、こちらを学習済みであれば難なく第1章をこなすことができます。
第2章:人の判別にチャレンジしよう
Piカメラを使って人物検出を行っていきます。人物の検出に使うためのAIモデルはすでに学習済みのものを使うのでインストールするだけで動きます。
※AIのモデルから作りたい! というハイレベルな方は「作って学ぶ人工知能」をご検討ください。
Pythonのライブラリのインストールなども詳しく説明してあるので、この教材だけに留まらず他のプログラミングへの応用が効くようになります。
第3章:滞在時間を調べよう
2章では人物の検出まで行ったので、人数と時刻を紐付け、次に一定時間ごとにカメラを起動してその人物の滞在時間を検出します。
このプログラムはPythonで書きますが、サンプルコードをコピペするだけでも動くようになっているので初心者でも動かすことができます。
サンプルコードには細かいコメントが書いてあるので、逆にコードの読み書きができる方はそれを書き換えることで自分好みの挙動にすることができます。
第4章:スマホへ通知しよう
いよいよ【後編】です。【前編】で作れるのはあくまで人物の滞在時間を検出することができるプログラムでした。ここからはそれを応用して行きます。
まずは上記のイメージのようにLINEへ通知できるようにします。先程までは人物検出のAIを活用するためのプログラミングがメインでしたが、今度はLINEのAPI(詳しくは教材を御覧ください)を使います。
つまりHTTP通信や外部APIなどの考え方に触れられます。
第5章:プログラムを継続的に動かそう
地味なタイトルですが、決して飛ばせない工程です。なぜなら4章までの内容では、このプログラムを起動するためにいちいちコマンドを入力しなければなりませんし、再起動するたびに設定をし直さねければならないからです。
でも大丈夫。この章でばっちり解説してあります。ラズパイを使ったプロジェクトに留まらずあらゆるプログラムに応用できるのでぜひマスターしてください。
第6章:物体検出の工夫
まずは動くものを作るのが目的だったので、5章までで見守りカメラ自体は作れてしまいます。しかしそのロジックや細かな調整などには触れてきませんでした。この章ではより発展性のあるものや、精度の高いものを作るための基礎知識を学びます。
学習に必要なもの
- インターネット環境
- PC(microSDカードへの書き込みができるもの)
- ディスプレイ
- キーボード
- Raspberry Pi(3以降のもの)
- Pi カメラ(Raspberry Pi財団公式製以外は非推奨)
- Raspberry PiとディスプレイをつなぐためのHDMIケーブル
- Raspberry Pi用電源
- microSDカード
購入のご案内
学習に必要なものは上記のとおりですが、なにが必要かよく分からない! という方にはツクレルのキットをおすすめいたします。
全部入り! これさえあれば完璧《スーパーノヴァ》(8GB)
カメラだけあればいいかな? という方、ラズパイも古くなってきたな……という方、ツクレルにはPIYショップという公式店がございます。ぜひ御覧ください。
今後ともツクレルと一緒に学んで行きましょう!