はじめに
Video Analyzerは、コンピュータビジョン、音声転写、自然言語処理技術を組み合わせて、詳細なビデオコンテンツの説明を生成する包括的なビデオ分析ツールです。このツールは、動画から重要なフレームを抽出し、音声コンテンツを書き起こし、自然言語による説明を生成することで、ユーザーが動画コンテンツをよりよく理解し、分析するのに役立ちます。ビデオ分析ツールは、クラウドサービスやAPIキーを必要とせず、完全にローカルで実行することも、スピードとスケールのためにOpenAI API互換のサービスを活用することもできます。
機能一覧
- ビデオフレーム抽出動画からキーフレームを自動認識・抽出。
- 音声トランスクリプションウィスパーモデルを使った音声コンテンツの書き起こし。
- 自然言語記述抽出されたフレームと書き起こされた音声コンテンツを自然言語記述に変換します。
- マルチモデル対応さまざまな大規模言語モデル(Ollama Visionモデルなど)を使用した分析をサポート。
- 出力結果分析結果を含むJSONファイルを生成し、今後の使用やレビューに役立てる。
ヘルプの使用
設置プロセス
ビデオ解析ツールを使うには、まず必要なソフトウェアとライブラリをインストールする必要がある:
- クローン倉庫::
- Gitを使って、GitHub上のプロジェクト・リポジトリをクローンする:
git clone https://github.com/byjlw/video-analyzer.git cd video-analyzer
- Gitを使って、GitHub上のプロジェクト・リポジトリをクローンする:
- 仮想環境の構築::
- 環境の競合を避けるため、新しい仮想環境を作成することをお勧めします:
python3 -m venv .venv source .venv/bin/activate # Windowsで.venvcriptsachelactivateを使う
- 環境の競合を避けるため、新しい仮想環境を作成することをお勧めします:
- 依存関係のインストール::
- プロジェクトに必要なすべてのPythonパッケージをインストールする:
pip install .
- また、開発モードでインストールしたい場合は、次のようにすることもできる:
pip install -e .
- プロジェクトに必要なすべてのPythonパッケージをインストールする:
- FFmpegの設定::
- ビデオとオーディオ処理用にFFmpegがシステムにインストールされていることを確認してください。
ビデオ分析ツールの使用
- オペレーション分析::
- 最も基本的な使い方は、ビデオファイルを直接指定することだ:
ビデオアナライザー パス/to/video.mp4
- 分析プロセスをカスタマイズするために、さらにパラメーターを渡すことができる:
video-analyzer video.mp4 --config custom_config.json --output ./custom_output -フレーム/分 15 -継続時間 60
- パラメータの説明
--設定
設定ファイルのパスを指定します。--出力
出力パスを設定する。--フレーム/分
1分間に抽出するフレーム数を設定します。--期間
分析されたビデオの長さを秒単位で制限します。
- 最も基本的な使い方は、ビデオファイルを直接指定することだ:
- 結果::
- 分析が完了すると、ツールは以下のレポートを生成する。
分析.json
このファイルには、各キーフレームの分析結果と、音声トランスクリプションのテキスト説明が含まれています。
- 分析が完了すると、ツールは以下のレポートを生成する。
- 高度な設定::
- カスタムプロファイルを使用すると、特定のウィスパーモデルのサイズ(極小、基本、小、中、大)を選択したり、言語検出のしきい値を設定したり、抽出したフレーム画像を保持するかどうかを決定したりするなど、より詳細なパラメータを設定できます。
機能 操作の流れ
- フレーム分析::
- このツールは、設定されたレートでビデオからキーフレームを抽出し、各フレームのコンピュータビジョン解析を実行し、そのタイムスタンプと解析結果を記録する。
- 音響処理::
- 音声はビデオから分離され、Whisperモデルによって書き起こされる。書き起こしはビデオフレームからの情報と組み合わされ、ビデオのより完全な説明を生成する。
- 説明文の作成::
- このツールは、過去に抽出されたフレームと音声トランスクリプトを使用して、分析されたすべてのデータをビデオの首尾一貫した説明に結合します。この機能の一部は、自然言語処理技術を利用して、説明をより読みやすくします。
このツールを使用することで、特に大量の動画を処理する場合や、動画の要約を自動的に生成する必要がある場合に、ユーザーは動画の内容を素早く理解することができ、効率が大幅に向上します。