約 1 年前、私はファイルからデータ、主にテーブルに含まれるデータを抽出して構造化するタスクを割り当てられました。私はコンピューター ビジョンに関する事前の知識がなかったため、適切な「プラグ アンド プレイ」ソリューションを見つけるのに苦労していました。当時利用できるオプションは、大規模で扱いにくい最先端のニューラル ネットワーク (NN) ベースのソリューションか、一貫性が十分でない OpenCV ベースのよりシンプルなソリューションのいずれかでした。 既存の OpenCV スクリプトに触発されて、テーブルを抽出するためのシンプルで一貫性のある方法を開発し、それをオープンソースの Python ライブラリ img2table にしました。 リンク: https://github.com/xavctn/img2table 私のライブラリは何をしますか?ディープラーニング ソリューションと比較すると、この軽量パッケージではトレーニングは不要で、パラメータ化も最小限で済みます。以下の機能を提供します:
どうやって使うの?pip 経由でライブラリをインストールして使用することができます。 ドキュメント内のテーブルを識別するのは、1 つの関数を呼び出すだけです。 上記の例で使用されている画像 テーブルの内容を抽出するには、OCR ツールを使用する必要があります。これは次のように実行できます。 PDFから抽出した表の例 最後に、単純なケースでは、borderless_tables パラメータを設定することで、「境界のない」テーブル抽出を実行できます。これにより、セルを境界線で完全に囲まれる必要のないテーブルを検出できます。 「ボーダーレス」テーブル抽出例 それだけです!実際のところ、ライブラリには複雑なものはあまりありません。他の利用可能なソリューションによってもたらされる複雑さを回避するために、ライブラリをできるだけシンプルに保つことが目標だからです。 より詳細なドキュメントと例については、プロジェクトの GitHub ページをご覧ください: https://github.com/xavctn/img2table 低レベルの実装すべての画像処理は OpenCV および opencv-python ライブラリを使用して行われます。しかし、これはまだかなり基本的なものです。 アルゴリズムのバックボーンとなるのはハフ変換で、画像内の線を識別し、画像内の水平線と垂直線を検出できます。 その後、行に対していくつかの処理を実行して行からセルを識別し、次にセルからテーブルを識別します。 アルゴリズムの簡略化された表現を実装する ほとんどの計算は、優れたパフォーマンスと速度を実現するために Polars を使用して実行されます。 |
[[339371]] AIが人間の学習方法を模倣したら何が起こるでしょうか? 8月26日、アリババD...
[[201919]] 「なぜ論文が出版されないのでしょうか?私は研究に向いていないのでしょうか?」...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
[[441601]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...
Ant Groupが開発した中国初の金融グレードの信頼できるTEEシステムであるHyperEncla...
品質保証(QA)は多くの企業にとって重要な関心分野です。企業やサービスプロバイダーが高い品質を維持す...
テクノロジーリーダーにとって、今は刺激的でもあり、不安でもある時代です。急速に進化するデジタルテクノ...
「2進数では、1+1=?」答えが2の場合、残念ながら150万を逃してしまいます。これは頭の体操...
2019年10月26日、Testinが主催する第2回NCTS中国クラウドテスト業界サミットが北京で開...
[[234940]]過去2年間、世界のIT大手は人工知能の分野で展開してきました。GoogleはD...
[[321190]]販売員からトラック運転手、医師に至るまで、経済全体の多くの仕事や役割が人工知能...
創造性は、芸術、文学、科学、技術など、斬新で価値があり、意義のある作品を生み出すことを可能にする人間...
[[405206]]時が経つにつれて、技術は変化してきました。自動化に関しては、今年は徐々に成果が...