検索
ホームページテクノロジー周辺機器AIPaligemma 2ミックス:デモOCRプロジェクトを備えたガイド

Paligemma 2 Mixは、Googleが開発したマルチモーダルAIモデルです。これは、PALIGEMMA Vision Language Model(VLM)の改善されたバージョンであり、Siglip VisionモデルとGemma 2言語モデルの高度な機能を統合しています。 このチュートリアルでは、Paligemma 2ミックスを使用してAI搭載の請求書スキャナーと支出アナライザーを構築する方法を説明します。

請求書の領収書から費用の抽出と分類

キー情報を取得するために光学文字認識(OCR)を実行します。
    提供された画像に基づいて支出を要約します。
  • 財務洞察ツールの構築に焦点を当てていますが、このブログで学んだことを使用して、画像セグメンテーション、オブジェクト検出、質問への回答など、パリゲンマ2ミックスの他のユースケースを探索できます。
  • Paligemma 2 Mixとは何ですか?
  • Paligemma 2 Mixは、画像とテキストの両方を入力として処理し、テキストベースの出力を生成する高度なビジョン言語モデル(VLM)です。複数の言語をサポートしながら、多様なマルチモーダルAIタスクを処理するように設計されています。
  • Paligemma 2は、画像と短いビデオキャプション、視覚的な質問への回答、光学文字認識(OCR)、オブジェクト検出、セグメンテーションなど、幅広いビジョン言語タスク用に設計されています。

図で使用されている画像のソース:Google

paligemma 2ミックスモデルは、

用に設計されています

画像と短いビデオキャプション:静的画像と短いビデオの正確でコンテキスト対応のキャプションを生成します。

視覚的な質問応答(VQA):視覚コンテンツに基づいて画像の分析とテキストベースの質問に答える。

光学文字認識(OCR):画像からテキストを抽出して解釈し、ドキュメント、領収書、スキャンされた資料に役立ちます。 Paligemma 2ミックス:デモOCRプロジェクトを備えたガイドオブジェクトの検出とセグメンテーション:構造化された分析のために画像内のオブジェクトを識別、ラベル、およびセグメント。

多言語サポート:モデルは、グローバルアプリケーションの複数の言語でのテキスト生成と理解を可能にします。

公式リリース記事で、Paligemma 2 Mixモデルに関する詳細情報を見つけることができます。 

プロジェクトの概要:Bill ScannerとPaligemma 2 Mixを使用した支出アナライザー
    私たちがとる主な手順の概要を説明しましょう:
    1. データセットのロードと準備:プロセスは、領収書画像を入力としてロードおよび準備することから始まります。
    2. Paligemma 2ミックスモデルの初期化:ビジョン言語タスクを処理するためにモデルを構成してロードします。
    3. プロセス入力画像:次に、画像を適切な形式(RGB)に変換し、分析の準備をします。
    4. 抽出キー情報:光学文字認識(OCR)を実行して合計量を取得します。
    5. 費用の分類:食料品、衣類、電子機器などのカテゴリに購入を分類します。
    6. 支出の洞察を生成する:分類された費用を要約し、支出配布チャートを生成します。
    7. インタラクティブなグラデーションインターフェイスの作成:最後に、ユーザーが複数の請求書をアップロードし、データを抽出し、視覚的に支出を分析できるUIを作成します。
    8. ステップ1:前提条件
    9. 開始する前に、次のツールとライブラリがインストールされていることを確認しましょう。
    10. python 3.8
    トーチ

    変圧器

    pil
    • matplotlib
    • Gradio
    • 次のコマンドを実行して、必要な依存関係をインストールします
    • 上記の依存関係がインストールされたら、次のインポートコマンドを実行します。
    • ステップ2:モデルの初期化
    • パフォーマンスを最適化するために、Paligemma 2 Mix ModelとQuantizationを構成およびロードします。このデモでは、448 x 448入力画像解像度で10Bパラメーターモデルを使用します。このモデルを実行するには、40GBメモリ(Colab構成)を備えた最小のT4 GPUが必要です。 

    bitsandbytesの量子化は、パフォーマンスを維持しながらメモリの使用量を削減し、限られたGPUリソ​​ースで大規模なモデルを実行することを可能にします。この実装では、4ビットの量子化を使用して、メモリ効率をさらに最適化します。
    pip install gradio -U bitsandbytes -U transformers -q
    モデルIDと量子化構成を渡すことにより、変圧器ライブラリからPaligemmamaforConditionalGenerationクラスを使用してモデルをロードします。同様に、プロセッサをロードします。プロセッサは、テンソルをモデルに渡す前にテンソルに入力を前処理します。

    ステップ3:画像処理

    import gradio as gr
    import torch
    import pandas as pd
    import matplotlib.pyplot as plt
    from transformers import PaliGemmaForConditionalGeneration, PaliGemmaProcessor, BitsAndBytesConfig
    from transformers import BitsAndBytesConfig
    from PIL import Image
    import re
    モデルシャードがロードされたら、画像形式の互換性を維持するためにモデルに渡す前に画像を処理し、均一性を獲得します。画像をRGB形式に変換します:

    さて、私たちの画像は推論の準備ができています。

    device = "cuda" if torch.cuda.is_available() else "cpu"
    # Model setup
    model_id = "google/paligemma2-10b-mix-448" 
    bnb_config = BitsAndBytesConfig(
        load_in_8bit=True,  # Change to load_in_4bit=True for even lower memory usage
        llm_int8_threshold=6.0,
    )
    
    # Load model with quantization
    model = PaliGemmaForConditionalGeneration.from_pretrained(
        model_id, quantization_config=bnb_config
    ).eval()
    
    # Load processor
    processor = PaliGemmaProcessor.from_pretrained(model_id)
    # Print success message
    print("Model and processor loaded successfully!")
    ステップ4:パリゲンマとの推論

    次に、モデルとの推論を実行するための主な関数を設定します。この関数は、入力画像と質問を取り入れ、それらをプロンプトに組み込み、推論のためにプロセッサを介してモデルに渡します。

    ステップ5:キー情報の抽出

    メイン関数が準備が整ったので、次に画像から重要なパラメーターを抽出することに取り組みます。私たちの場合、これらは合計金額と商品のカテゴリです。
    pip install gradio -U bitsandbytes -U transformers -q

    extract_total_amount()関数は画像を処理して、OCRを使用して領収書から合計金額を抽出します。数値のみを抽出するようにモデルに指示するクエリ(質問)を構築し、Ask_model()関数を呼び出してモデルから応答を生成します。 

    import gradio as gr
    import torch
    import pandas as pd
    import matplotlib.pyplot as plt
    from transformers import PaliGemmaForConditionalGeneration, PaliGemmaProcessor, BitsAndBytesConfig
    from transformers import BitsAndBytesConfig
    from PIL import Image
    import re

    caltearize_goods()関数は、食料品、衣類、エレクトロニクス、またはその他の事前定義された質問をリストする事前定義された質問でモデルに促すことにより、画像の商品の種類を分類します。 Ask_model()関数は、画像を処理し、テキスト応答を返します。処理された応答が事前に定義された有効なカテゴリのいずれかと一致する場合、そのカテゴリを返します。他に、デフォルトは「その他」カテゴリになります。

    ステップ6:情報の分析

    すべてのキー関数の準備ができているため、出力を分析しましょう。

    上記の関数は、異なるカテゴリにわたって支出分布を視覚化するためのパイチャートを作成します。有効な支出データが存在しない場合、「支出データがない」を示すメッセージを含む空白のフィギュアが生成されます。それ以外の場合は、カテゴリのラベルとパーセンテージ値を備えたパイチャートを作成し、比例した整合した視覚化を確保します。
    device = "cuda" if torch.cuda.is_available() else "cpu"
    # Model setup
    model_id = "google/paligemma2-10b-mix-448" 
    bnb_config = BitsAndBytesConfig(
        load_in_8bit=True,  # Change to load_in_4bit=True for even lower memory usage
        llm_int8_threshold=6.0,
    )
    
    # Load model with quantization
    model = PaliGemmaForConditionalGeneration.from_pretrained(
        model_id, quantization_config=bnb_config
    ).eval()
    
    # Load processor
    processor = PaliGemmaProcessor.from_pretrained(model_id)
    # Print success message
    print("Model and processor loaded successfully!")
    ステップ6:複数の請求書を同時に分析します

    通常、分析する複数の請求書があるので、すべての請求書を同時に処理する関数を作成しましょう。

    複数の請求書を一度に分析するために、次の手順を実行します。

    ストレージの初期化:結果と画像を保存するためのリストを作成し、合計を0に設定し、カテゴリごとの合計の辞書を定義します。
    def ensure_rgb(image: Image.Image) -> Image.Image:
        if image.mode != "RGB":
            image = image.convert("RGB")
        return image
    各請求書を処理します:

    1. 画像をRGBに開いて変換します
    2. 画像をリストに追加します。
    3. 領収書から合計金額を抽出します
    領収書の商品を分類します
      総支出とカテゴリごとの合計を更新します
    • 抽出されたデータを結果リストに保存します
    • 洞察を生成:支出の総支出の概要とともに、支出配布パイチャートを作成します。
    • 結果の結果:最後に、画像のリスト、請求書の要約のデータフレーム、総支出概要、および支出チャートを返します。
    • ステップ7:グレードインターフェイスを構築します
    • 今、すべての重要なロジック関数が整っています。次に、Gradioを使用してインタラクティブUIの構築に取り組みます
    • 上記のコードでは、複数の画像用のファイルアップローダーを備えた構造化されたグラデーションUIと、トリガー処理の送信ボタンを作成します。提出されると、アップロードされた請求書画像がギャラリーに表示され、抽出されたデータがテーブルに表示され、総支出がテキストに要約され、支出分布パイチャートが生成されます。 
    • 関数は、ユーザー入力をProcess_multiple_bills()関数に接続し、シームレスなデータ抽出と視覚化を確保します。最後に、demo.launch()関数は、リアルタイムインタラクションのためにグレードアプリを開始します。

      Paligemma 2ミックス:デモOCRプロジェクトを備えたガイド

      2つの画像ベースの請求書(Amazon Shopping Invoice)でこのデモを試して、次の結果を得ました。

      注:VLMは、数値を抽出するのが難しいと感じているため、結果が誤っている場合があります。たとえば、以下の2番目の請求書の間違った合計額を抽出しました。これは、より大きなモデルを使用するか、単に既存のモデルを微調整することで修正できます。

      Paligemma 2ミックス:デモOCRプロジェクトを備えたガイド

      結論Paligemma 2ミックス:デモOCRプロジェクトを備えたガイド このチュートリアルでは、Paligemma 2ミックスを使用してAIを搭載した複数のビルスキャナーを構築しました。これは、領収書から費用を抽出して分類するのに役立ちます。 OCRと分類のためにPaligemma 2 Mixのビジョン言語機能を使用して、支出の洞察を簡単に分析しました。このチュートリアルを自分のユースケースに適合させることをお勧めします。 

以上がPaligemma 2ミックス:デモOCRプロジェクトを備えたガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
メタの新しいAIアシスタント:生産性ブースターまたはタイムシンク?メタの新しいAIアシスタント:生産性ブースターまたはタイムシンク?May 01, 2025 am 11:18 AM

Metaは、NVIDIA、IBM、Dellなどのパートナーと協力して、Llama Stackのエンタープライズレベルの展開統合を拡大しました。セキュリティの観点から、MetaはLlama Guard 4、Llamafirewall、Cyber​​seceval 4などの新しいツールを立ち上げ、AIセキュリティを強化するためにLlama Defendersプログラムを開始しました。さらに、METAは、公共サービス、ヘルスケア、教育の改善に取り組んでいる新興企業を含む、Llama Impact Grantsの150万ドルを10のグローバル機関に分配しています。 Llama 4を搭載した新しいメタAIアプリケーションは、メタAIとして考案されました

Gen Zersの80%はAI:研究と結婚しますGen Zersの80%はAI:研究と結婚しますMay 01, 2025 am 11:17 AM

人間との相互作用の先駆者であるJoi Aiは、これらの進化する関係を説明するために「AI-lationships」という用語を導入しました。 Joi Aiの関係療法士であるJaime Bronsteinは、これらが人間cを置き換えることを意図していないことを明確にしています

AIはインターネットのボット問題を悪化させています。この20億ドルのスタートアップは最前線にありますAIはインターネットのボット問題を悪化させています。この20億ドルのスタートアップは最前線にありますMay 01, 2025 am 11:16 AM

オンライン詐欺とボット攻撃は、企業にとって大きな課題をもたらします。 小売業者は、ボットの買いだめ製品、銀行の戦闘口座の買収、ソーシャルメディアプラットフォームと戦い、なりすまし者と闘っています。 AIの台頭は、この問題を悪化させます

ロボットへの販売:あなたのビジネスを作ったり壊したりするマーケティング革命ロボットへの販売:あなたのビジネスを作ったり壊したりするマーケティング革命May 01, 2025 am 11:15 AM

AIエージェントは、マーケティングに革命をもたらす態勢が整っており、以前の技術的変化の影響を上回る可能性があります。 これらのエージェントは、生成AIの大幅な進歩を表し、ChatGPTのような情報を処理するだけでなく、Actioも取る

コンピュータービジョンテクノロジーがどのようにNBAプレーオフを司会しているかコンピュータービジョンテクノロジーがどのようにNBAプレーオフを司会しているかMay 01, 2025 am 11:14 AM

重要なNBAゲーム4の決定に対するAIの影響 2つの重要なゲーム4 NBAマッチアップは、司会におけるAIのゲームを変える役割を紹介しました。 最初に、デンバーのニコラ・ジョキッチの逃した3ポインターは、アーロン・ゴードンの最後の2秒の路地につながりました。 ソニーのホー

AIがどのように再生医療の未来を加速しているかAIがどのように再生医療の未来を加速しているかMay 01, 2025 am 11:13 AM

伝統的に、再生医療の専門知識を拡大すると、世界的に大規模な旅行、実践的なトレーニング、長年のメンターシップが必要でした。 現在、AIはこの風景を変えており、地理的な制限を克服し、ENを通じて進歩を加速しています

Intel Foundry Direct Connect 2025からのキーテイクアウトIntel Foundry Direct Connect 2025からのキーテイクアウトMay 01, 2025 am 11:12 AM

Intelは、製造プロセスを主要な位置に戻すように取り組んでいますが、Fab Semiconductorの顧客を引き付けてFabでチップを作成しようとしています。この目的のために、Intelは、そのプロセスの競争力を証明するだけでなく、パートナーが馴染みのある成熟したワークフローでチップを製造できることを実証するために、業界へのより多くの信頼を築かなければなりません。今日私が聞いたことはすべて、インテルがこの目標に向かっていると信じています。 新しいCEOのタンリバイの基調講演がその日をキックオフしました。タンリバイは簡単で簡潔です。彼は、IntelのFoundry Servicesにおけるいくつかの課題と、これらの課題に対処し、将来のIntelのFoundry Servicesの成功したルートを計画するために企業が行った対策を概説しています。 Tan Libaiは、IntelのOEMサービスが顧客をより多くするために実装されているプロセスについて話しました

AIが間違っていましたか?今、そのための保険がありますAIが間違っていましたか?今、そのための保険がありますMay 01, 2025 am 11:11 AM

AIのリスクを取り巻く増大する懸念に対処するために、グローバルな専門家保険会社であるChaucer GroupとArmilla AIは、新しいサードパーティの責任(TPL)保険商品を導入するために力を合わせました。 このポリシーは、企業を守ります

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)