ユーザー事例

呼吸喘鳴検出および喘息管理のモバイル アプリとサーバー ソフトウェアを開発

課題

喘鳴検出および喘息管理の音響式呼吸監視システムを開発して実装する

ソリューション

MATLABで喘鳴と周囲雑音を検出するアルゴリズムを開発し、MATLAB编码器を使用してモバイル デバイスおよび 网状物サーバー向けのコードをアルゴリズムから生成する

結果

  • 手作業によるコーディングの労力軽減
  • アルゴリズム開発の繰り返しが高速化
  • コード保守のオーバーヘッドが低減

「MATLAB」によって、音響処理アルゴリズムを迅速に開発、デバッグ、テストでき、MATLAB编码器によって、それらのアルゴリズムを簡単に Cで実装できるようになります。同じ期間で同様の成果を生むことができる環境やプログラミング言語はほかにありません。」

尤利亚·戈里亚切夫,Respiri
喘鳴解析アルゴリズムを備えた 艾森娜デバイスとモバイル アプリ

喘息の管理は、医師にとっても患者にとっても困難となる場合があります。医師は、臨床環境で喘息患者を診断するとき、喘息の主な兆候であり、肺における閉塞性のあるエアフローを示す喘鳴を聞きます。しかし、医師は、患者を直接調べることができない場合には、患者や患者の親による喘鳴などの症状の説明に頼らなければなりません。喘息の症状と現在の状態に関するこのような自己報告は信頼性が低く、特に患者が子供である場合には頼ることができません。

呼吸のエンジニアは、喘息患者が自分の呼吸を記録して解析するためのテクノロジーを開発しました。艾森娜®テクノロジーでは、喘鳴音を聞くのではなく、記録された呼吸音から作成した画像で喘鳴のパターンを検出します。呼吸では、MATLAB®を使用して音響式呼吸監視アルゴリズムを開発し、MATLAB编码器™ を使用してこのアルゴリズムをモバイル アプリおよびクラウドベースのサーバー ソフトウェアとして実装しました。

課題

呼吸では、患者の気管の近くに接触させた特殊なセンサーによって生成された 30秒の録音からさまざまな周波数、振幅、および継続時間の喘鳴音を識別できるアルゴリズムを開発する必要がありました。周囲雑音の影響を最小限に抑えるために、チームは、ユーザーの環境からの音を測定して解析する必要がありました。

そこで、メルボルンにあるアプリ開発会社である 两头公牛と提携して、モバイル デバイスで録音を処理し、喘鳴解析アルゴリズムを呼び出して、結果を患者に返すアプリを作成することにしました。また、このアプリでは、モバイル デバイスに内蔵されたマイクを使用して周囲の音を記録することによって、外部の雑音を独立で評価できる必要もありました。

それまで、呼吸のエンジニアが手作業によってアルゴリズムを Cでコーディングするのに数か月を要していました。そのため、喘鳴検出と周囲雑音解析のアルゴリズムをモバイル デバイス上に展開できる Cコードに迅速に変換する方法が必要でした。

ソリューション

呼吸のエンジニアは、MATLABと 计算机视觉工具箱™ を使用して、喘鳴検出アルゴリズムを開発しました。このアルゴリズムでは、30秒の録音をスペクトログラムに変換し、そのスペクトログラムを解析して、エネルギー パターンおよび喘鳴のその他の一般的な特性に基づいて喘鳴の可能性がある候補を特定します。また、誤検知を排除するためにさらなる処理を実行します。

周囲雑音検出アルゴリズムを開発するために、エンジニアは、MATLABと 信号处理工具箱を使用して、ハミング ウィンドウを適用し、高速フーリエ変換を実行し、複数の周波数範囲でスペクトルが極大となる位置を特定しました。

MATLABで両方のアルゴリズムをデバッグおよびテストした後、チームは、MATLAB编码器を使用して、MATLABコードから実行可能な機能を生成しました。この手順により、コード生成に適したコードであることを確認し、実行時エラーをチェックできるようになりました。

次に、エンジニアは、MATLAB编码器を使用して、アルゴリズムから Cコードを生成しました。生成されたコードを確認するために、MATLAB内からコードを呼び出し、その結果と元の MATLABアルゴリズムによって生成された結果を比較しました。

次のテストでは、微软®Visual Studio®を使用して、生成された Cコードをコンパイルし、検証のために結果を再度比較しました。

また、雑音検出アルゴリズムと喘鳴検出の Cコードを 苹果iPhone向けのアプリに統合しました。谷歌®安卓™ デバイス向けのバージョンも計画されています。

最終的なシステムは、チームが MATLABと MATLAB编码器によって開発したテスト ソフトウェアを使用して無響室でテストされました。

艾森娜は、米国では 美国食品药物管理局の許可を申請中であり、欧州連合では 符合欧洲标准(CE)マーク) 認定を、オーストラリアでは 热重分析承認を受けています。

結果

  • 手作業によるコーディングの労力軽減. 「過去の同様のプロジェクトでは、Cでアルゴリズムを再コーディングしてから、Cの実装をデバッグしなければなりませんでした」と 呼吸のシニア アルゴリズム エンジニア 尤利亚·戈里亚切夫氏は述べています。「今では、MATLAB编码器によって Cコードが自動的に生成されるので、必要な時間と労力が大幅に減っています。」

  • アルゴリズム開発の繰り返しが高速化. 「アルゴリズムに変更を行った後、Cコードを再生成し、すぐにそれをテストするだけです」と 戈里亚切夫氏は述べています。「以前は、Cプログラマに頼らなければなりませんでした。Cプログラマが他のプロジェクトで忙しいときは、変更を実装できるまで数日かかることもよくありました。」

  • コード保守のオーバーヘッドが低減. 「アルゴリズムと Cソース コードを別々に維持するには、ソフトウェア エンジニアがフルタイムで対応する必要がありました」と 戈里亚切夫氏は述べています。「MATLAB编码器」を使用すると、MATLABで 1.つのアルゴリズムを維持し、リリース時に Cに変換できるので、そのエンジニアが他のプロジェクトで作業できるようになります。」

使用製品

お客様の成功事例をご紹介

カスタマー リファレンス プログラムに参加する