はじめに
Find My KidsはGitHubでホストされているオープンソースプロジェクトで、開発者のTomer Kleinによって作成された。DeepFaceの顔認識技術とWhatsApp Green APIを組み合わせたもので、親がWhatsAppグループを通じて子供の安全を監視できるように設計されている。ユーザーはグループ内で画像を共有することができ、システムは自動的に画像内の顔を分析し、あらかじめ設定された子供の顔の特徴を識別し、指定した連絡先にリアルタイムで通知を送信する。遠隔で子供の安全を見守る必要がある家族に適したこのツールは、使いやすく強力だ。プロジェクトはPythonで開発され、Dockerデプロイメントをサポートし、コードはオープンで、ユーザーが自由に修正・最適化できる。
機能一覧
- 顔認識:DeepFace技術を使い、WhatsAppグループの画像を分析し、あらかじめ設定された子供の顔の特徴を識別する。
- リアルタイム通知:WhatsApp Green APIを通じて、子供が認識されたことをインスタントメッセージで保護者に通知。
- 画像トレーニング:顔認識モデルをトレーニングするために、ユーザーが子供の写真をアップロードすることをサポートする。
- ウェブインターフェース:直感的なウェブUIを提供し、ユーザーは画像の管理やモデルの再トレーニングを行うことができます。
- Dockerサポート: Dockerコンテナのデプロイでインストールと運用を簡素化。
- カスタムコンフィギュレーション: API認証情報やストレージパスを設定することができます。
ヘルプの使用
設置プロセス
Find My KidsはPythonベースのプロジェクトであり、デプロイにはDockerを使用することを推奨します:
- 環境を整える
- DockerとDocker Composeがシステムにインストールされていることを確認する。
- WhatsApp Green API 公式ウェブサイトにアクセスし、アカウントをご登録ください。
- 登録後、開発者インスタンス (無料ティア) を作成します。
InstanceId
歌で応えるToken
.
- クローンプロジェクト
ターミナルで以下のコマンドを実行し、プロジェクト・コードをローカルにダウンロードする:git clone https://github.com/t0mer/Find-my-kids.git cd Find-my-kids
- WhatsApp API の設定
- を作成する。
.env
ファイルを直接修正するかdocker-compose.yml
ファイル内の環境変数。 - 以下を追加する:
GREEN_API_INSTANCE=your_whatsapp_instance_id GREEN_API_TOKEN=your_whatsapp_api_token
- WebhookのURLは、アプリケーションの正常な動作を妨げる可能性があるため、設定しないようにしてください。
- を作成する。
- トレーニング写真の準備
- プロジェクト・ディレクトリに
find-my-kids/images/trainer
フォルダー - 子ごとにサブフォルダを作成する。
Kid1
そしてKid2
その他 - お子様の鮮明な写真(jpg形式)を、対応するフォルダ(構成例)に入れます:
images/ └── trainer/ ├── Kid1/ │ ├── image1.jpg │ ├── image2.jpg ├── Kid2/ │ ├── image1.jpg └── ...
- プロジェクト・ディレクトリに
- ランニング・プロジェクト
- プロジェクトのルート・ディレクトリで実行する:
docker-compose up -d
- Dockerは自動的に
techblog/find-my-kids:latest
イメージしてコンテナを起動する。 - プロジェクトのデフォルトリスナー
7020
ポートからアクセスできる。http://localhost:7020
ウェブインターフェイスにアクセスする。
- プロジェクトのルート・ディレクトリで実行する:
- インストールの確認
- ブラウザを開き、次のサイトにアクセスする。
http://localhost:7020
ウェブ・インターフェイスが正しくロードされているか確認してください。 - WhatsApp グループにログインし、ご自身のアカウントが対象グループに追加され、通知を受信できる状態になっていることをご確認ください。
- ブラウザを開き、次のサイトにアクセスする。
使用方法
Find My Kidsの主な機能は、顔認識を通じてお子様の安全を監視することです:
顔認識モデルの設定
- トレーニング写真のアップロードウェブインターフェイスの "Gallery "タブでアップロードされたトレーニング画像を見ることができます。
- モデルの再トレーニング"再トレーニング "ボタンをクリックします。
trainer
フォルダ内の画像は、顔認識モデルを生成するために再生成される。 - ほら写真が鮮明で、子どもの正面が写っていることを確認する。
WhatsAppグループの監視
- グループに参加するWhatsAppアカウントがターゲットグループに追加されていることを確認してください。
- 写真分析グループ内の誰かが画像を共有すると、Find My KidsはDeepFaceを呼び出して画像を分析し、プリセットされた子供の顔と照合する。
- 通知を受け取る子供が認識されると、システムはWhatsApp Green APIを通じて指定した連絡先に認識結果とタイムスタンプを含むメッセージを送信します。
経営通知
- カスタマイズされた通知: 設定ファイルでは通知先(WhatsApp番号)とメッセージフォーマットを設定できます。
- 履歴を見るウェブインターフェースは、ユーザーがマッチング結果の履歴を見るための認識ログを提供します。
ウェブインターフェースの操作
- ナビゲーター: Web UIは、"ギャラリー"、"設定"、"ログ "の3つのメインタブで構成されています。
- ギャラリートレーニング画像の管理とモデルのトレーニング
- 設定API認証情報、ストレージパスなどの設定を調整する。
- 過去ログシステム操作ログを表示し、トラブルシューティングを容易にします。
ほら
- プライバシートレーニングの画像には、必ず子どもの写真のみを使用し、無関係の人物の画像のアップロードは避けてください。
- ネットワーク要件DockerコンテナはWhatsApp APIにアクセスするために安定したネットワーク接続を必要とします。
- モデルの精度トレーニング画像の質と量に左右されますので、お子様1人につき最低5枚の写真を異なる角度からアップロードすることをお勧めします。
- 法令遵守顔認識機能を使用する場合は、現地のプライバシーおよびデータ保護規制を遵守してください。
トラブルシューティング
- WhatsApp API に接続できない検査
GREEN_API_INSTANCE
歌で応えるGREEN_API_TOKEN
WhatsAppアカウントがQRコードで認証されていることをご確認ください。 - 顔認識の失敗トレーニング画像がクリアであることを確認し、モデルを再トレーニングして再試行する。
- コンテナ起動の失敗走る
docker logs find-my-kids
Dockerの設定やネットワークに問題がないか、エラーログを確認してください。
これらのステップに従うことで、ユーザーはFind My Kidsを素早く導入し、使用することができ、子供たちを安全に監視することができる。また、このプロジェクトはオープンソースであるため、開発者はより多くの通知チャンネルをサポートしたり、認識アルゴリズムを最適化するなど、必要に応じて新しい機能を追加することができる。
アプリケーションシナリオ
- ホームセキュリティ監視
保護者は自宅のサーバーにFind My Kidsを導入し、学校や地域のイベントでの子供の写真を監視することができる。例えば、学校の活動グループによって共有された画像は、システムによって自動的に分析されるため、保護者は自分の子供が特定の行事に出席しているかどうかを知ることができる。 - 地域の児童保護
コミュニティは、Find My Kidsを利用して共有監視ネットワークを構築することができる。近隣住民はWhatsAppグループで近隣の監視写真を共有し、システムはそれを識別して保護者に通知する。 - イベント主催者が使用
サマーキャンプや課外活動の主催者は、Find My Kidsを使って参加者の安全を監視することができます。写真がグループにアップロードされると、システムが自動的に子供を特定し、保護者に通知します。
品質保証
- Find My Kidsの利用料金は必要ですか?
プロジェクトは完全にオープンソースであり、コードは無料で使用できる。ただし、WhatsApp Green APIの無料開発者インスタンスに登録する必要があります。 - 顔認識の精度は?
精度はトレーニング写真の質と量に依存します。90%以上の認識率を達成するためには、各子供に5~10枚の鮮明な正面写真をアップロードすることをお勧めします。 - 他の通知方法はサポートされていますか?
現在のところWhatsApp通知のみに対応しています。開発者はコードを修正することでSMSやEメール通知を追加することができる。 - データのプライバシーはどのように保護されているのか?
すべての画像とデータはローカルサーバーに保存され、サーバーの安全確保はユーザー次第です。機密データを公開グループにアップロードしないでください。