この記事は2024-11-26 14:31に更新されました。内容の一部は一刻を争うものですので、無効な場合はメッセージを残してください!
はじめに
Moondreamは、ディープラーニングとコンピュータビジョン技術による画像記述を可能にするために設計された、オープンソースの軽量視覚言語モデルです。このモデルは様々なプラットフォーム上で効率的に動作し、特にエッジデバイスに適しています。高度な技術とトレーニングデータセットを使用することで、Moondreamは画像内の主要な詳細とシーン情報を正確にキャプチャして解析し、これらの視覚要素を首尾一貫した言語記述に変換することができます。
機能一覧
- 画像の説明様々なアプリケーションシナリオに対応した画像のテキスト説明を自動生成します。
- エッジデバイスのサポートリソースが限られたエッジデバイスで効率的に動作するように設計されています。
- オープンソース開発者による二次開発やカスタマイズが容易な、完全なオープンソースコードベースを提供します。
- 多言語サポート複数の言語による画像説明文の生成をサポートします。
- オンライン推論Gradioインターフェースによるリアルタイム画像記述推論。
- バッチファイル画像記述の一括生成に対応し、処理効率を向上。
ヘルプの使用
設置プロセス
- コードベースのクローン::
git clone https://github.com/vikhyat/moondream.git
cd moondream
- 依存関係のインストール::
pip install -r requirements.txt
- サンプル・スクリプトの実行::
python sample.py --image --prompt
グラディオ・インターフェースの使用
- Gradioインターフェイスの起動::
python gradio_demo.py
- リアルタイム推論の使用::
python webcam_gradio_demo.py
主な機能
- 画像記述生成::
- 利用する
sample.py
画像の説明文を生成するために、画像のパスと説明文のヒントを提供するスクリプト。 - コマンドの例:
python sample.py --image example.jpg --prompt "この画像を説明してください。"
- 利用する
- バッチファイル::
- 利用する
batch_generate_example.py
複数の画像パスと説明プロンプトを提供し、画像の説明を一括生成するスクリプト。 - コマンドの例:
python batch_generate_example.py --images image1.jpg image2.jpg --prompts "画像1を記述する。" "画像2を記述する。"
- 利用する
- オンライン推論::
- アクティベート
webcam_gradio_demo.py
カメラを使ってリアルタイムで画像をキャプチャし、説明を生成するスクリプト。 - コマンドの例:
バッシュ
python webcam_gradio_demo.py
- アクティベート
詳細な手順
- 依存関係のインストール::
- Python 3.8以上がインストールされていることを確認してください。
- 利用する
ピップ
必要な依存関係をインストールします:
pip install transformers einops
- 積載モデル::
- 利用する
変圧器
ライブラリには、事前に訓練されたモデルとスプリッタがロードされている:
from transformers import AutoModelForCausalLM, AutoTokenizer from PIL import Image model_id = "vikhyatk/moondream2" model = AutoModelForCausalLM.from_pretrained(model_id, trust_remote_code=True) tokeniser = AutoTokenizer.from_pretrained(model_id) image = Image.open('') enc_image = model.encode_image(image) print(model.answer_question(enc_image, "この画像を説明してください。", tokenizer))
- 利用する
- リアルタイム推論のセットアップ::
- Gradioインターフェイスを起動し、カメラをライブ画像の説明に使用する:
バッシュ
python webcam_gradio_demo.py
- Gradioインターフェイスを起動し、カメラをライブ画像の説明に使用する: