検索
ホームページテクノロジー周辺機器AIPythonを使用して画像からテーブルを抽出する

約 1 年前、私はファイルからデータ (主にテーブルに含まれるデータ) を抽出して構造化するタスクを割り当てられました。私にはコンピューター ビジョンに関する予備知識がなかったので、適切な「プラグ アンド プレイ」ソリューションを見つけるのに苦労しました。当時利用可能なオプションは、大規模で扱いにくい最新のニューラル ネットワーク (NN) に基づくソリューションか、一貫性が十分ではない OpenCV に基づくシンプルなソリューションのいずれかでした。

既存の OpenCV スクリプトからインスピレーションを得て、テーブルを抽出するシンプルで一貫した方法を開発し、それをオープンソースの Python ライブラリにしました: img2table

必要なコンテンツ書き換えられる内容は次のとおりです: リンク: https://github.com/xavctn/img2table

Pythonを使用して画像からテーブルを抽出する

私のライブラリは何をするのですか? ?

深層学習ソリューションと比較して、この軽量パッケージはトレーニングを必要とせず、最小限のパラメーター化を必要とします。次の機能を提供します。

  • #画像および PDF ファイル内のテーブルを、テーブルのセル レベルでの境界ボックスを含めて識別します。
  • OCR サービス/ツールをサポートしてテーブル コンテンツを抽出します (Tesseract、PaddleOCR、AWS Textract、Google Vision、Azure OCR が現在サポートされています)。
  • 結合されたセルなどの複雑なテーブル構造を処理します。
  • 画像の傾きや回転を補正する方法。
  • 抽出されたテーブルは、Pandas DataFrame 表現を含む単純なオブジェクトとして返されます。
  • 抽出されたテーブルを元の構造を維持したまま Excel ファイルにエクスポートするオプション。 #########それの使い方?

pip を使用してこのライブラリをインストールでき、インストール完了後にも使用できます。

pip install img2table
ドキュメント内のテーブルを識別するには、次の呼び出しを行うだけです。関数:

从img2table.document导入Image类# 图像实例化
img = Image(src="myimage.jpg")# 表格识别
img_tables = img.extract_tables()# 表格识别结果
img_tables[ExtractedTable(title=None, bbox=(10, 8, 745, 314),shape=(6, 3)), ExtractedTable(title=None, bbox=(936, 9, 1129, 111),shape=(2, 2))]

書き換える必要がある内容は次のとおりです: 上記の例で使用されている画像Pythonを使用して画像からテーブルを抽出する

テーブルの内容を抽出したい場合は、OCR ツールを使用する必要があります。以下の手順に従ってください:

from img2table.document import PDFfrom img2table.ocr import TesseractOCR# Instantiation of the pdfpdf = PDF(src="mypdf.pdf")# Instantiation of the OCR, Tesseract, which requires prior installationocr = TesseractOCR(lang="eng")# Table identification and extractionpdf_tables = pdf.extract_tables(ocr=ocr)# We can also create an excel file with the tablespdf.to_xlsx('tables.xlsx',ocr=ocr)

サンプル表は、PDF ファイルから抽出されたサンプルですPythonを使用して画像からテーブルを抽出する

最後に、簡単な場合は、「borderless_tables」パラメータを設定することで「ボーダレス」テーブルの抽出を実行できます。これにより、セルを境界線で完全に囲む必要がないテーブルを検出できます。

元の意味を変更する必要はありません。書き直す必要があるのは、「ボーダレス」テーブルの抽出例です。Pythonを使用して画像からテーブルを抽出する

これは、完全な内容!実際、リポジトリは複雑ではありません。私たちの目標はリポジトリをできる限り単純化し、複雑さをもたらす可能性のある他のソリューションの導入を避けることです。

詳細については、プロジェクトの GitHub ページをご覧ください。ドキュメントと例: https://github.com/xavctn/img2table

基礎的な実装

すべての画像処理では OpenCV と opencv -python を使用しますライブラリが完成しました。ただし、これはまだかなり基本的なものです。

アルゴリズムの中心となるのは、画像内の直線を識別できるハフ変換です。これにより、画像内の水平線と垂直線を検出できるようになります

需要重写的内容是:cv2.HoughLinesP(img, rho, theta, threshold, None, minLinLength, maxLineGap)

この後、行からセルを識別し、さらにセルからテーブルを識別するために、行に対して何らかの処理を行う必要があります。

簡素化されたアルゴリズム表現の実装 Pythonを使用して画像からテーブルを抽出する

ほとんどの計算は、優れたパフォーマンスと速度を実現するために、Polars を使用して実行されます。

以上がPythonを使用して画像からテーブルを抽出するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は51CTO.COMで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Huggingface smollmであなたの個人的なAIアシスタントを構築する方法Huggingface smollmであなたの個人的なAIアシスタントを構築する方法Apr 18, 2025 am 11:52 AM

オンデバイスAIの力を活用:個人的なチャットボットCLIの構築 最近では、個人的なAIアシスタントの概念はサイエンスフィクションのように見えました。 ハイテク愛好家のアレックスを想像して、賢くて地元のAI仲間を夢見ています。

メンタルヘルスのためのAIは、スタンフォード大学でのエキサイティングな新しいイニシアチブによって注意深く分析されますメンタルヘルスのためのAIは、スタンフォード大学でのエキサイティングな新しいイニシアチブによって注意深く分析されますApr 18, 2025 am 11:49 AM

AI4MHの最初の発売は2025年4月15日に開催され、有名な精神科医および神経科学者であるLuminary Dr. Tom Insel博士がキックオフスピーカーを務めました。 Insel博士は、メンタルヘルス研究とテクノでの彼の傑出した仕事で有名です

2025年のWNBAドラフトクラスは、成長し、オンラインハラスメントの成長と戦いに参加します2025年のWNBAドラフトクラスは、成長し、オンラインハラスメントの成長と戦いに参加しますApr 18, 2025 am 11:44 AM

「私たちは、WNBAが、すべての人、プレイヤー、ファン、企業パートナーが安全であり、大切になり、力を与えられたスペースであることを保証したいと考えています」とエンゲルバートは述べ、女性のスポーツの最も有害な課題の1つになったものに取り組んでいます。 アノ

Pythonビルトインデータ構造の包括的なガイド-AnalyticsVidhyaPythonビルトインデータ構造の包括的なガイド-AnalyticsVidhyaApr 18, 2025 am 11:43 AM

導入 Pythonは、特にデータサイエンスと生成AIにおいて、プログラミング言語として優れています。 大規模なデータセットを処理する場合、効率的なデータ操作(ストレージ、管理、アクセス)が重要です。 以前に数字とstをカバーしてきました

Openaiの新しいモデルからの代替案からの第一印象Openaiの新しいモデルからの代替案からの第一印象Apr 18, 2025 am 11:41 AM

潜る前に、重要な注意事項:AIパフォーマンスは非決定論的であり、非常にユースケース固有です。簡単に言えば、走行距離は異なる場合があります。この(または他の)記事を最終的な単語として撮影しないでください。これらのモデルを独自のシナリオでテストしないでください

AIポートフォリオ| AIキャリアのためにポートフォリオを構築する方法は?AIポートフォリオ| AIキャリアのためにポートフォリオを構築する方法は?Apr 18, 2025 am 11:40 AM

傑出したAI/MLポートフォリオの構築:初心者と専門家向けガイド 説得力のあるポートフォリオを作成することは、人工知能(AI)と機械学習(ML)で役割を確保するために重要です。 このガイドは、ポートフォリオを構築するためのアドバイスを提供します

エージェントAIがセキュリティ運用にとって何を意味するのかエージェントAIがセキュリティ運用にとって何を意味するのかApr 18, 2025 am 11:36 AM

結果?燃え尽き症候群、非効率性、および検出とアクションの間の隙間が拡大します。これは、サイバーセキュリティで働く人にとってはショックとしてはありません。 しかし、エージェントAIの約束は潜在的なターニングポイントとして浮上しています。この新しいクラス

Google対Openai:学生のためのAIの戦いGoogle対Openai:学生のためのAIの戦いApr 18, 2025 am 11:31 AM

即時の影響と長期パートナーシップ? 2週間前、Openaiは強力な短期オファーで前進し、2025年5月末までに米国およびカナダの大学生にChatGpt Plusに無料でアクセスできます。このツールにはGPT ‑ 4o、Aが含まれます。

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

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

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい