Rの考え方

Rの個人研究・考察を行うブログ。最近は因果推論とアナリティクス(機械学習、統計はお休み中)、認知論にお熱。

CoVision

動物行動監視アプリ(CoVision) 要件整理

投稿日:2022年3月21日 更新日:

はじめに

そろそろ蔓延防止処置が解除されそうですね。花粉症が酷くなっているれいです。ツライorz

家にいることがほとんどなので、動物行動監視アプリ(CoVision)は今のところそこまで必要ないかなと思います。やはり、1日以上家を開けるような時(旅行に行く、単身赴任先から家に戻る等)に使いたいなと思います。彼らを電車で連れて帰るわけにもいかず・・・。

出かけている間、何かソワソワして心配なんですよね。

あとは、特に小動物は、体調がいつ急変するかわからない怖さがあります。本当にあっという間に亡くなりますし、確率論的に多くの飼い主が体験しているハズなんですよね・・・。辛い。

というわけで、動物監視アプリ作成を進めています。

要件としては、チームの能力的にかなり制限がある(ハードウェア無理、ソフトウェアは分析とWeb系のみ対応)のでなかなか難しいですね~。提供はSaaS(月1,000~2,000円(多頭認識可能):1回あたりの手術料から逆算)形式で行う予定です。

要件整理

1・機能開発の大別

このアプリは、カメラアプリと結果確認アプリを分けて開発します。

結果確認アプリはログ確認のみのため、考えることはほぼありません。カメラアプリの処理を考える必要があります。

2・ハードウェア開発はしない

ハードウェアはRaspberry Piならある程度制御できますが、製品を出せるほど品質が高いモノは作れないと判断しました。

ハードウェアを開発しないので、誰もが持っているモノ(選択し:カメラ、ガラケー、スマホ他)を使うとします。カメラや通信機能等が備わっており、かつ流通しているモノと言えばスマホしかないかなと。

3・画像認識をデバイス上で行えるようにする

カメラアプリの処理方針として大きくは、中央サーバー方式、分散処理方式の2つの方法があります。まず考えるべきは、実現可能性(処理速度、ログ送信のトラフィック量)でしょうか。

ただ、中央サーバー方式は無理があると思われます。例えば、もし中央サーバーに取得した画像を送るような処理フローにすると、単純な通信量が半端なくて詰む可能性大ですね。

分散処理方式であればトラフィック量は問題ありません。処理速度も、2017年発表のMask-RCNN(C++)だと、スマホ上でFPS(Frame per Second)1以上は達成しているそうなので問題ないと思われます。ある程度習熟しているPythonはデバイスの制限から使えそうにないですね。

というわけで、IoTライクにスマホ上で画像認識を動かしたいという要件になりました。

4・どこでも、だれでも、いつでも開発でき、使えるようにする

スマホはiOSとAndroidでネイティブの開発言語の書き方が大きく違うので、同じように開発できる言語がいい。表示はWeb、スマホ(iOS、Android)、タブレット関係なく使えるようにしたい。

整理結果

1・スマホでカメラアプリの開発を行う。
2・画像認識のためにC++を使用できる。
3・1コードでiOSとAndroid、どちらも対応できるようにする。

というわけで、Flutterにしました。ネイティブのJavaやSwift、React Nativeなどを検討したのですが要件に合わなさそうなのでやめときました。

今回利用するFlutterは、Dart言語を用いて1コードですべてのプラットフォームに対応できるように(Build apps for any screen)開発されています。英語の資料は豊富で、公式Flutter.devなどがあります。日本語解説はFlutter大学などを参考にコーディングしています。

今のところアプリの基礎(表示、ページ遷移、アラート等)や、データベースのCRUD(Create, Read, Update, Delete)の学習を完了しました。カメラ機能はなかなか骨が折れそうですね。

やっていきます( ^o^)/~
次:お試しカメラアプリできました

-CoVision

執筆者:


  1. […] なぜなら、この記事の著者はとあるきっかけからモバイル(iOS、Android)でカメラアプリを作りたいなと思って調べたところ・・・、他のサイトでは「コードは書いている。でも何で動い […]

  2. […] とあるきっかけから動画撮影・個別配信アプリを作りたいなということでいろいろなサイトで調べていました。 […]

  3. […] 動物行動監視アプリ(CoVision) 要件整理(3/21)から約3週間。 […]

【Flutter】(初心者向け)カメラ・動画アプリを理解しながら作る – RのWeb制作 へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

関連記事

今後の開発方針について

CoVision:動物見守りアプリをアップデートしました。 個体認識機能がついて、行動ログを確認できるようになりました。 ここから、広告を出しつつ、ユーザーテストを繰り返していく予定です。 やりたいこ …

【CoVision】チュートリアル 1・カメラ撮影する

CoVision:ペット見守りAIカメラアプリのチュートリアルです。 CoVisionには、お家に設置するカメラ用スマートフォンと、持ち歩く見守り用スマートフォンの2台が必要です。 まずは、カメラ用ス …

動物見守りアプリ(CoVision)簡易版リリース

動物行動監視アプリ(CoVision) 要件整理(3/21)から約4週間。 4/15に2つのアプリの簡易リリース版が完成し、Google Playに承認されました。 目標 このアプリは小さな一歩です。 …

【CoVision】動物見守りアプリ進捗

3行で説明する全体的な進捗 物体検出モデルの導入が完了動物たちの行動を常時観測するための技術的なハードルの1つをクリアした。 アプリを1つにまとめたカメラアプリと見守りアプリ、別々にインストールする必 …

烏骨鶏のためのココちゃんハウス(仮)に引っ越し

今後は千葉と東京のに拠点で生活します。 なぜ引っ越ししたか 仕事のために引っ越しました。 会社まで電車で10分の好立地、かつ飼い始めたココちゃん(と動物行動ロギングのCoVisionの開発)のために利 …