2019年10月27日日曜日

動態検知

千葉県での水害・災害が今秋3回目。

千葉に限りませんが、人命を失う惨事を繰り返さないように、早期に逃げてもらうきっかけを作れないか?と思案中。その過程で、ここ数日は動画の中から「異常」をピックアップ・周知する手法を模索中でした。

まず思いつくのは異常検知。
時間軸で主成分ベクトルを求める場合のように、全期間通して学習させる必要はありません。計算コストが小さくて済みます。でも、オンタイムでできるか不安。

どうしましょう?などと考えながら風呂に入っていると、簡単な方法を思いつきました。動態検知です。いえ、手法は前から知っていましたが、適用性をまったく考えていませんでした。人や車など、自動運転への適用に頭が向かっていましたので。

これ、OpenCV だと簡単。example に少し手を加えると完成するレベルです。しかも公開されているライブカメラでもラップトップで処理が追いつく程高速。休みの間、データを取り続けましたが難なく動きました。使えます。
動態検知した面積を積分し時系列に直して移動平均をとると、トリガーを設定できそうでした。こうなると異常検知メールも出せるようにしよう、などと手を出しかけましたが、解除設定等が面倒になったため、テスト送信のみで終了。今回はココまでとしました。

この手法、課題も多くあります。単純な前データとの差分ではダメで、加重平均をとって係数(半減期のようなもの)を調整したり、動きとみなす閾値を決めたりする必要があります。しかも、カメラ設置場所毎に調整が必要です。まだ実用段階には程遠い(広域でなければ簡単かも)。

この動態検知、OpenCV が動けばよいので、ラズパイでもできてしまいます。というか、ドライブレコーダーの駐車監視がこの系統なのでしょう。いくつかの機種には動態検知入っていますので(OpenCVとは限りませんが)。
そう考えると、すでに社会に広く普及している技術であり、土木分野が遅れているだけ、気づかなかっただけ、ということになります(もっと柔らかい頭が欲しいですね)。

他分野のプロが介入すれば、土木分野の多くの課題がすぐに解決されるような気がします。自動運転のように市場は大きくないので、なかなか踏み込んではいただけないでしょう。が、人命がかかっています。CSR がてら興味を持たれる方はいませんかね。


0 件のコメント:

コメントを投稿