C++とOpenCVでLOF(Local Outlier Factor)による異常検知プログラムを実装。何故か毎フレーム描画しているが、とりあえずあげておく。 LOF(Local Outlier Factor)とは データマイニング分野で利用される異常検知手法。あるデータの密度がその他のデータの密度と比べて小さいかどうかを評価することで、異常なデータを見つける。 Wikipedia 元論文 実験結果 入力データは(x, y)の2次元データ30個 異常と判定されたデータは赤い点で描画。 使用方法 Window上で左クリックして、データ点を作成。30個程度あれば、十分のはず。 ”l”を押すと、異常検知を行う。異常(外れている)点は赤色で表示。 適当なキーを押すと、異常データの表示を終了。 ”q”を押すと、終了。 ソースコード Github 動作環境: Mac(OS X Yosemite), C