ブログ | 無線測距 | ディー・クル―・テクノロジーズ

bookmark_borderAIモデルを開発する(AI×IoTトイレ見守り⑥)

AIと低コストのTOFセンサーの組み合わせが、人の検出や転倒検知などに利用できる可能性をPoC(Proof of Concept)の結果が証明しました。さて、次のステップは何でしょうか?それは、システムをPoCから実用製品へと発展させることです。

前回の記事はこちらです。

POC から製品化へ

このフェーズでは、主に「簡略化によるシステムコスト削減」と「インフラ」の2つの領域に焦点を当てていきます。

簡略化によるシステムコスト削減

①デバイス上での処理

注目したいのは、デバイス上での処理です。実は、AIモデルは32ビットのM4 Cortex MCU上で直接処理することが可能。これにより、コストを抑えつつも性能を高めることができます。 具体的には、STM32ビットM4 Cortex上のAIモデルは約41KBのFlashと約12KBのRAMを使用しています。AIモデルは量子化されており、float32モデルからint8ベースに変換されています。このおかげでAIモデルのサイズが削減されるため、32ビットMCU上での高速処理が実現できるのです。 またAIモデルの推論時間は約4msですが、センサーデータの読み取り、前処理、後処理をすべて含めると、1フレームのToFデータ処理にかかる時間は10~15ms。ToFセンサーのフレームレートが8Hzであることから、最も長くて1秒あたり120msの処理時間になります。処理時間の約88%の時間をMCUはアイドル状態になるため、その間、理論上は低消費電力モードやスリープモードに移行可能です。

②インフラ

一方で、システムの中でもっとも課題となるのが「インフラ」です。これには次のような要素が含まれます:

  1. 接続性(Connectivity)
    • システム統合に不可欠なBluetooth、UART、WiFiなど。
  2. 筐体
    • センサー保護(防水、防塵 など)
  3. 電源(Power)
    • バッテリー駆動または有線電源の選択肢。

システムの改善に向けて

現状のシステムは低コストのTOFセンサーを使用していますが、コストを最小限に抑えながら性能の向上や機能の拡張を目指す必要があります。特に、家具や設備が固定されている環境では、無人時に取得したキャリブレーションデータをAIモデルが活用できます。しかし、患者の移動式ベッドが動いた場合や、大型の物体がセンサー範囲に入って来る場合など、シナリオによっては想定外の事態が生じることがあります。

このような状況への対策として、以下のような解決策が考えられます。

  1. 低コストの高解像度ToFセンサーを使用する
  2. 複数のセンサーを使用し、データ融合を行う

低コストの高解像度ToFセンサーを使用する

2025年末には、解像度52×42の新しいセンサーが登場予定。このセンサーはスマートフォン向けに開発されるため、低価格での提供が期待できます。これにより、キャリブレーションデータなしでも体の部位を検出できる可能性が広がります。

上の画像は、60×45の高解像度ToFセンサーからダウンサンプリングした画像の一部を示しています。人物は 立位、膝立ち、座位、または倒れた状態 になっています。プライバシーの観点から見ると、顔は判別できず、また体の画像も十分な詳細がないため、プライバシー上の問題は生じにくいと考えられます。

複数のセンサーを用いたデータ融合を行う

サーマルセンサーには検出範囲の制限があり、またToFセンサーよりもコストが高く(3~5倍)別の課題があります。しかし、低解像度のサーマルイメージセンサーと低解像度のTOFセンサーを組み合わせることで、物体の温度情報を活用し、人間と非人間の物体を区別できるようになるかもしれません。これにより、システム全体の精度の向上が期待されます。

さらなるユースケースの探求

顧客が関心を持つユースケースはさまざまです。例えば、

  1. 患者ベッドモニタリング
  2. 温泉
患者ベッドモニタリング
温泉

これらのユースケースは、転倒検知や危険な姿勢の早期発見に焦点を当てています。たとえば、ベッドからの転落や温泉での居眠りなど、安全面を考慮したシステムが求められています。 高解像度センサーやハイブリッドソリューションを活用することで、プライバシーを保護しつつ、より高度な検出システムを構築できる可能性があります。これにより、AIとIoT技術が目指す未来の実現に近づくことができるのです。

bookmark_borderAIモデルを開発する(AI×IoT トイレ見守り⑤)

こんにちは!今日はAIモデル開発のデータ収集についてお話しします。

前回の記事はこちら

AIモデルの学習と評価には、どれだけのデータが集まるかが非常に重要です。成功するプロジェクトには、質の高い、大量かつ多様なデータが必要不可欠です。実際データはAIモデルそのものよりも重要だと言えます。

データ収集とアノテーションの重要性

データ収集やアノテーション(データラベリング)は、多くのリソースを必要とする手間のかかる作業です。そのため、効率的にデータ収集やアノテーションを行うために、使いやすいアプリケーションを活用したり、自動化、半自動化のプロセスを取り入れることが重要です。

データ収集とは?

2024年のTOFセンサー PoCでは、2つのTOFセンサーを使ってデータを収集しました。6週間のプロジェクト期間中に、実質的には2週間分の測距データが収集されたのです。実際のトイレを長期間利用するのは難しかったため、工場内の一室を借りて、実際のトイレのレイアウトに合わせた測距データ収集用のトイレを設置しました。

データ収集においては、多様性が鍵となる要素です。具体的には以下のような点に配慮しました:

部屋のレイアウトやTOFセンサーの設置位置のバリエーション

数種類の台を使ってTOFセンサーの距離を変えたり、トイレの設備のバリエーション(便座の位置、タンクの有無など)を変えたりしてバリエーションを収集しました。

トイレのバリエーション

便座閉じる、便座上げ、タンクありなど

さらに、様々な人の姿勢や位置を含む測距データの多様性(体格や身長の違い、立っている・歩いている状態、異なる服装による影響など)を担保すべく、人との姿勢や人数のバリエーションを収集しました。

人間の測距データバリエーション

  • 異なる体格や身長の人
  • 154cm->181cm
  • さまざまな姿勢や位置で立つ/歩く人
  • 異なる形や位置での転倒
  • 複数人の存在(2人いる時)
  • 異なる服装の人(赤外線反射と吸収)

人間以外の測距データバリエーション

  • 靴、ブロック、バッグ等が床に置かれた状態

アノテーションについて

データ収集とアノテーションは時間と人手を要する作業です。そこで、時間短縮を目指し、データ収集プロセスを設計しました。データの収集と解析を同時に実施できるように工夫しています。

アノテーションの入力方法

Bluetooth キーバッド

Bluetoothキーパッドを利用して、データ収集アプリケーションをリアルタイムで制御しました。これにより、ほとんどのデータ収集作業を一人で行うことが可能になり、2人分のデータ収集でも2人だけで対応できるようになりました。

データラベル設定

データラベルには以下の情報が含まれます。 

  1. 人数 
  2. 人の状態(転倒または正常) 
  3. 人が存在するエリア(ゾーン)
人数と人の状態
  上から見てA~Fの6つのエリア(ゾーン)が設定されています。

AIモデル評価とは?

学習用データと評価用データを分ける

データは2つの部分に分けられます。1つは学習用、もう1つは評価用です。

データは学習用と評価用に分けられます。学習用データセットは評価データとは独立させる必要があります。この独立性により、さまざまな環境でもAIが正確に状態を認識できるかをテストできます。

AIモデル評価

今回作成したAIモデルは、評価データに対して良好な性能を示しましたが、100%の精度には達していません。

これは、転倒と立っている状態の間に明確な境界がない場合があるためです。また、このセンサーの課題として、人と大きな物体を区別できない点もあります。

PoC評価の実施

AIモデルも完成したので、実際の現場での対応能力をテストしました。実験の様子を撮影した動画もあるので、ぜひご覧ください。

実験のため、動画で私がいろいろな動きを試しています。また2人でトイレに入った想定で、AIモデル評価の実験した時の様子がわかる動画もアップしています。

1人で計測した時の動画
2人で計測した時の動画

アプリでは、無人の場合は青、正常な状態は緑、異常な状態は赤で表示しました。

トイレでの人の動きに連動してアプリ画面の色が変わります。無人、1人立っている、2人立っている、などの状態をAIがそれぞれしっかりと検出しました。

さらに、2人で居るときには、うち1人が立っていて1人が転倒している場合は黄色(注意)で示しました。これは、もし看護師と患者が2人同時に居る場合、看護師がサポートできるので即レッド(危険)ではない状態もあると考えたためです。実際のケースではAIだけの判断ではなく、看護師の携帯電話に電話するなど別のサポート手段を取る方法も考えられます。

AIモデル評価では2つの問題を指摘しましたが、実際のPoCにおけるAIの判定結果は有望でした。私の作ったAIモデルはトイレ部屋のレイアウト(建具の配置など)の違いにも対応できていました。
つまり、PoCは成功です!

いかがでしたか? さあ、次回のブログでは以下の内容について議論します。

  1. システムの改善点
  2. システムのIoT MCUへの移植
  3. その他…

このPoCを実用的な商用製品へと発展させることを目指します。お楽しみに。

bookmark_borderAIモデルを開発する(AI×IoT トイレ見守り④)

無人のTOFセンサー画像とリアルタイムのTOFセンサー画像を比較することで、人の位置や状態を判断できるのであれば、AIも同様にそれを判断できるはずです。この考えを基に、シンプルなAIモデルを開発しました。

前回の記事はこちら

AIモデルの仕組み

このAIモデルは、以下の3つの状態を検出できるように設計されています。

  • 空の個室 – TOFセンサーの測距値から人が存在しないことを検出し、トイレが使用されていないことを示します。
  • 使用中の個室 – TOFセンサーの測距値から立っているまたは座っている人を検出し、トイレが使用中であることを把握します。
  • 転倒した人 – TOFセンサーの測距値から床に倒れている状態を検出し、緊急事態であることを示します。これは迅速な対応を必要とします。

さらに、より高度なケースとして、トイレに座ったまま体調不良になった場合などには、タイムアウト検出機能を設けました。具体的には、「トイレに座ったまま15分以上動きがない」といった条件でこの異常を検知し、見守りアラートを発することが可能です。

PoCにおけるAIモデルの構成図

今回のAIモデル開発は非常にシンプルなものに徹しました。以下にPoCにおけるAIモデルの構成図を示します。

AIモデルの入力(左端)

このモデルには、以下の2つの入力があります。

  1. リアルタイムのTOF画像 ‐ 状態(立っている、座っている)を示す画像。
  2. 無人のTOF画像 – トイレが空いている状態を示す画像。

AIモデルの構成(中央)

このAIモデルは、次の2つのパートから成っています。

  1. 特徴 抽出パート – 画像から特徴情報を抽出します。
  2. 判断 パート – 抽出された特徴情報をもとに状態を判断します。

AIモデルの出力(右端)

また、出力は下記の3つです。

  1. 転倒状態の合計人数 – 床に倒れている人の数。
  2. 正常な状態の合計人数 – 立っているまたは座っている人の数。
  3. 検出された合計人数 – 検出された全ての人の数。

AI モデル学習を実行する

AIモデルは教師あり学習を用いて学習されます。モデルを学習させるためには、入力データと出力データの2種類のデータが必要です。教師あり学習とは、正解を逐次教えることで学習を行う方法です。

  1. 入力TOFデータ – TOFセンサーの測距画像データ。
  2. ラベル(出力)– 出力データとして、検出された合計人数、正常な状態の合計人数、転倒状態の合計人数を使用します。

AIモデルが学習するステップは?

 AIモデルの学習ステップは以下の通りです。

  1. TOFセンサーの測距画像をAIモデルに入力し、AIモデルの判断結果を正解データと比較します。
  2. AIモデルを更新し、正解に近い判断ができるように調整します。。

このように、プロセスはシンプルなのですが、賢いAIモデルを生み出すためにはこのプロセスになんと、数万枚の画像「データ」とそれ以上の反復学習が必要になる場合があります!

実用的なAIソリューションを作ることは挑戦ですが、最大の課題はAIモデルそのものではなく、「データ」です。

次回は、私がどのようにしてトイレのためのAI学習用「データ」を収集したのか、その方法についてお聞かせいたします。