0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MOG2を用いた異常画像検出と保存処理

Posted at

MOG2を用いた異常画像検出と保存処理
概要
本プロジェクトは、背景差分法 (MOG2) を利用してフォルダ内の全画像を1番目の基準画像と比較し、差分を検出するものです。 さらに、異常判定として白抜き領域が一定割合以上ある画像を抽出し、別フォルダに再書き出し する処理を含みます。

処理の流れ
対象フォルダの画像を取得

画像フォルダから .jpg ファイルを収集。

背景差分処理 (compareFirstTwoImages)

フォルダ内の最初の画像を基準に、MOG2 を使って他の画像との差分を計算。

差分画像を 異常画像フォルダ (abnormal_images) に保存。

異常判定 (testFGDetected)

差分画像内の白ピクセル割合を計算し、1.0%以上の場合は異常と判定。

異常画像の再保存

異常判定された画像を 結果フォルダ (result_images) に再保存。

異常画像の一括削除 (deleteAbnormalImages)

abnormal_images フォルダに残った不要な画像を削除。

主要関数と役割
compareFirstTwoImages(imagePath1, imagePath2)
画像を MOG2 で比較し、前景マスクを生成。異常画像フォルダに保存し、Base64 に変換して配列へ格納。

testFGDetected(fgMask, thresholdPercentage = 3.0)
画像データを解析し、白ピクセルの割合を計算して異常判定 する。

getMat(fgMask)
Base64 エンコードされた画像データを cv.Mat 型に復元。

deleteAbnormalImages()
異常画像フォルダ (abnormal_images) 内の全 .jpg ファイルを一括削除 する。

実行方法
sh
node image_processing.js

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?