Skip to content

Repository files navigation

CompareCapture

特定のアプリケーションウィンドウを定期的に監視し、画面の状態が指定した特徴(テンプレート画像)と一致した場合にアラームを鳴らすWindowsアプリケーションです。複数のテンプレート画像を登録でき、いずれかがマッチした場合にアラームが発動します。

主な機能

1. 監視・キャプチャ

  • ウィンドウ監視: 実行中のウィンドウ一覧から監視対象を選択してキャプチャします。バックグラウンド(非アクティブ)の状態でもウィンドウが最小化されていなければキャプチャ可能です。
  • 定期実行: 指定した間隔(秒)で定期的にチェックを行います。

2. 画像マッチング

  • 複数テンプレート対応: 複数のテンプレート画像を登録可能です。Add/Removeボタンで追加・削除できます。
  • テンプレートマッチング: 登録した各画像が監視対象ウィンドウ内に存在するかを判定します(OpenCV使用)。
  • スコア表示: テンプレートごとの一致率(スコア 0.0~1.0)をリアルタイムで表示し、しきい値(デフォルト0.8)を超えると赤字でお知らせします。
  • しきい値設定: マッチ判定のしきい値(Threshold)を 0.0~1.0 の範囲で自由に設定可能です。全テンプレート共通です。
  • アラーム条件: いずれか1つのテンプレートがしきい値を超えた時点でアラームが発動します。

3. アラーム通知

  • 通知音: マッチした場合に通知音を再生します。
  • カスタマイズ: wav フォルダに .wav ファイルを入れることで、好きな通知音を選択可能です。
  • プレビュー: 設定画面で通知音のテスト再生が可能です。

4. プレビュー機能 (UI)

  • アプリケーション右上の Preview >> ボタンでサイドバーを展開できます。
  • Latest Capture: 直近にキャプチャされたウィンドウ画像を表示。
  • Scores: テンプレートごとのマッチングスコアを一覧表示(しきい値超は赤字)。
  • プレビュー画面の開閉により、ウィンドウサイズが自動的に調整されます。

インストール・ビルド

必要環境

  • Windows 10/11
  • Python 3.12+

開発環境セットアップ

# 仮想環境の作成と有効化 (推奨)
python -m venv venv
venv\Scripts\activate

# 依存ライブラリのインストール
pip install -r requirements.txt

EXEのビルド

同梱のスクリプトを実行することで、配布用の実行ファイルを作成できます。

# Windows
build_exe.bat

# WSL
./build_exe.sh

生成物は dist/CompareCapture_Dist/ フォルダに出力されます。

使い方

  1. アプリケーションを起動します(CompareCapture.exe または Start_App.bat)。
  2. Monitoring Target:
    • Select Window: 監視したいウィンドウを選択します。リストにない場合は Refresh を押してください。
    • Templates: Add から、検知したい状態のスクリーンショット(一部切り抜き)を選択します。複数登録可能です。不要なテンプレートは選択して Remove で削除できます。
  3. Settings:
    • Check Interval: 監視間隔(秒)。
    • Max Saved Images: 一時保存する画像の最大保持数(tmp/ フォルダ)。
    • Threshold: 検知判定とするスコアのしきい値(0.0~1.0)。
    • Alarm Sound: 通知音を選択。 ボタンで試聴できます。
  4. コントロール:
    • Start Monitoring で監視を開始します。
    • マッチするとアラームが鳴り、ログに MATCH FOUND! と表示されます。

仕様詳細

  • マッチングロジック: cv2.matchTemplate (TM_CCOEFF_NORMED)
  • 設定保存: 終了時に config.json に設定内容が自動保存され、次回起動時に復元されます。
  • 一時ファイル: キャプチャ画像は tmp/ フォルダに保存され、設定した枚数を超えると古いものから自動削除されます。

素材提供

About

特定のアプリケーションウィンドウを定期的に監視し、画面の状態が指定した特徴(テンプレート画像)と一致した場合にアラームを鳴らすWindowsアプリケーションです。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages