Skip to content

Latest commit

 

History

History
81 lines (59 loc) · 5.04 KB

File metadata and controls

81 lines (59 loc) · 5.04 KB

English | 日本語

心拍数 BPM アナライザー

このツールは、心音図(PCG)解析のためのヒューリスティックベースのアルゴリズムです。 心音のオーディオ録音を解析して心拍を検出し、時間経過に伴う心拍数(BPM)をグラフ化します。

GUIインターフェース:

心拍数グラフを生成するだけで十分ですが、詳細な情報が必要な場合のために他のオプションも用意されています

image

動画を見る|857x482

スペクトログラムビュー:

このスクリプトにはデバッグ用のスペクトログラムビューが含まれていますが、生成に非常に時間がかかります brave_ykQQ36DQv

設定

bpm_analysis.py エンジンのすべての調整可能パラメータは config.py に配置されています。 パラメータは論理的なカテゴリに整理され、ナビゲーションと調整が容易になります。

  • 複数フォーマットオーディオサポート: WAV、MP3、M4A、MOVなどの一般的なメディアファイルを受け付け、解析用に.wav形式に変換します。

bpm_analysis.py エンジンのすべての調整可能パラメータは config.py に配置されています。 パラメータは論理的なカテゴリに整理され、ナビゲーションと調整が容易になります。

  • 複数フォーマットオーディオサポート: WAV、MP3、M4A、MOVなどの一般的なメディアファイルを受け付け、解析用に.wav形式に変換します。

動作環境

このスクリプトを実行するには、Pythonと以下のライブラリが必要です:

  • numpy
  • pandas
  • scipy
  • plotly
  • ttkbootstrap
  • pydub
  • soxr
  • librosa(オーディオの読み込みとリサンプリングを担当)
  • PyWavelets(ウェーブレットデノイジングに使用される pywt モジュールを提供)
  • pyPCG-toolbox(オプションの調整可能なpyPCGデノイジングを有効にします。この機能は config.pydenoising_method を設定した場合のみ有効になります)

FFmpegをインストール: 公式 FFmpegウェブサイト からお使いのオペレーティングシステム向けのインストール手順に従ってください。

FFmpegをインストール: 公式 FFmpegウェブサイト からお使いのオペレーティングシステム向けのインストール手順に従ってください。 pydub が正しく機能するためには、 FFmpeg がシステムのPATHにインストールされてアクセス可能である必要があります。

実行方法

依存関係のインストール:

pip install numpy pandas scipy plotly ttkbootstrap pydub librosa PyWavelets pyPCG-toolbox

コマンドプロンプトから同じディレクトリでスクリプトを実行:

python main.py

ヒント: ファイルを main.pyw にリネームすると、コマンドプロンプトを使用せずに実行できます。ダブルクリックして .exe ファイルのように起動できます。

追加機能:

生成された心拍数グラフをBlenderにインポートして、時間経過に伴うBPMの変化を簡単に計算できます。 Blenderファイルとスクリプトは Blender BPM tool フォルダに配置されています。

BlenderへのインポートAsj3vbrst4v

ジオメトリノードオブジェクトを選択し、編集モードに入ります。これにより以下を計算できます:

  • 心拍数回復(HRR)
  • 心拍数増加の最大レート
Place BlenderAsj3zdst4v Adjust BlenderAsj3zny4v

また、任意の BPM/時間 グラフを作成し、Export graph data.py スクリプトを使用してBlenderからエクスポートすることもできます。

フォーマット「Time(Seconds), Beats Per Minute」のCSVファイルをインポートできます