2019年8月12日月曜日

火災検知

サーモグラフィーを使った火災検知。社長から以前聞いた事があるのですが、Maker Faire Tokyo2019で自宅で粒子加速器を自作する関係者の方にも同じ様な依頼があったので少し考えてみました。
LEPTONで検出する場合温度を測る点は160x120ポイント。
そのどこかが発火する温度で発報するのであれば意味がありません。
その予兆を検出しないとその時点で発報すると発火に間に合わないし機器や財産の損傷を防止する事は出来ません。

LEPTONの画角は標準レンズより少し広い位なので広い範囲を監視するにはカメラを動かす必要があります。
そうすると測定している範囲の絶対位置をどの様に捉えるかがポイントになります。
そこで使えそうな手法はOpenCV(opencv_stitchingライブラリ)が使えそう。
最近のデジカメでパノラマ撮影に使われている方法です。つなぎ合わせる画面のその特徴点をつなぎ合わせるので広い範囲をカバーする事が出来ます。

右側の画像
左側の画像
特徴点をライブラリーでつなぎ合わせると…

パノラマ写真の出来上がり。これで広い範囲をカバー出来ます。
サーモグラフィーでするとこんな感じになります。
ちなみにこれはカメラを2つ使って繋げています。

可視画像はこれです。

次から難易度が上がります。
前回測定してから今回の測定の差異の抽出です。
割と有名らしいOpenCVベースの背景差分(Background Subtraction)のライブラリ「BGSLibrary」。
頻繁に更新されており、現在は43の背景差分アルゴリズムが実装されいてるらしい。


これも左右の画像の差異をOpenCVのライブラリーを使って抽出。
でこんな感じ。
もしくは


サーモグラフィーのデータを可視化して画像として扱えばある程度は出来そうな感じなのですが、ここからがサーモグラフィーならではの問題。朝夕や季節によって温度は変化します。
そうです、毎回温度が変わるので例えば気温等の基準温度で全体を相殺して異常発熱を検出すれば良いのですが、これまでは画像変換したデータを解析していますが、温度の生データを解析する必要があります。理論はわかりますがどの様な手法が使えるかそう簡単にわかりません。データ解析を専門にしている会社や論文があれば良いのですが、ここからは長い道のりになりそうです。
これはオブジェクト認識ではありません。ただ特徴を抽出するだけなのでGPUは必要ないようなので機器はもっと簡単なものが使えるかもしれません。

0 件のコメント:

コメントを投稿