OCR PALの全て

写真、スキャン、またはPDF(最大2.5GB)をドロップしてください。ブラウザで直接テキストを抽出します — 無料、無制限で、ファイルがデバイスから離れることはありません。

プライベートで安全

すべてがブラウザで行われます。あなたのファイルが私たちのサーバーに触れることはありません。

超高速

アップロードも待つ必要もありません。ファイルをドロップした瞬間に変換します。

本当に無料

アカウントは必要ありません。隠れたコストもありません。ファイルサイズのトリックもありません。

光学文字認識(OCR)は、テキストの画像(スキャン、スマートフォンの写真、PDF)を機械が読み取れる文字列に、そしてますます 構造化データに変換します。現代のOCRは、画像をクリーンアップし、テキストを見つけ、それを読み取り、豊富なメタデータをエクスポートするパイプラインであり、 下流のシステムがフィールドを検索、索引付け、または抽出できるようにします。広く使用されている2つの出力標準は、 hOCR、テキストとレイアウトのためのHTMLマイクロフォーマット、および ALTO XML、図書館/アーカイブ指向のスキーマです。どちらも位置、読み取り順序、その他のレイアウトの合図を保持し、Tesseractのような人気のあるエンジンでサポートされています。

パイプラインの簡単なツアー

前処理。 OCRの品質は、画像のクリーンアップから始まります:グレースケール変換、ノイズ除去、 しきい値処理(二値化)、および傾き補正。標準的なOpenCVのチュートリアルでは、グローバル、 適応型 および Otsu のしきい値処理が扱われています。これらは、不均一な照明やバイモーダルなヒストグラムを持つドキュメントの定番です。ページ内で照明が変化する場合 (電話のスナップショットを考えてみてください)、適応型メソッドは単一のグローバルしきい値よりも優れていることがよくあります。Otsu はヒストグラムを分析して自動的にしきい値を選択します。傾き補正も同様に重要です:Houghベースの 傾き補正(ハフライン変換)とOtsuの二値化を組み合わせることは、生産前処理パイプラインで一般的で効果的なレシピです。

検出と認識。 OCRは通常、テキスト検出(テキストはどこにあるか ?)とテキスト認識(何が書かれているか?)に分けられます。自然なシーンや多くのスキャンでは、 EAST のような完全畳み込み検出器は、重い提案段階なしで単語または行レベルの四辺形を効率的に予測し、 一般的なツールキット(例: OpenCVのテキスト検出チュートリアル)に実装されています。複雑なページ(新聞、フォーム、書籍)では、行/領域のセグメンテーションと読み取り順序の推論が重要です:Kraken は、従来のゾーン/ラインセグメンテーションとニューラルベースラインセグメンテーションを実装しており、さまざまなスクリプトと方向(LTR / RTL /垂直)を明示的にサポートしています。

認識モデル。 古典的なオープンソースの主力製品である Tesseract (Googleによってオープンソース化され、HPにルーツを持つ)は、文字分類器からLSTMベースのシーケンス 認識器に進化し、検索可能なPDF、 hOCR / ALTOフレンドリーな出力などをCLIから出力できます。現代の認識器は、事前にセグメント化された文字なしでシーケンスモデリングに依存しています。 コネクショニスト時間分類(CTC) は、入力特徴シーケンスと出力ラベル文字列間のアライメントを学習する基礎であり続け、手書きおよびシーンテキストパイプラインで広く 使用されています。

過去数年間で、TransformerはOCRを再構築しました。 TrOCR は、ビジョントランスフォーマーエンコーダーとテキストトランスフォーマーデコーダーを使用し、大規模な合成コーパスでトレーニングされた後、 実際のデータで微調整され、印刷、手書き、シーンテキストのベンチマークで強力なパフォーマンスを発揮します( Hugging Faceのドキュメントも参照)。並行して、一部のシステムは下流の理解のためにOCRを回避します: Donut(Document Understanding Transformer) は、ドキュメント 画像から直接構造化された回答(キーと値のJSONなど)を出力するOCRフリーのエンコーダーデコーダーです(リポジトリ モデルカード)、別のOCRステップがIEシステムにフィードされるときのエラー蓄積を回避します。

エンジンとライブラリ

多くのスクリプトでバッテリー付属のテキスト読み取りが必要な場合は、 EasyOCR が80以上の言語モデルを備えたシンプルなAPIを提供し、ボックス、テキスト、信頼度を返します。これはプロトタイプや 非ラテン文字のスクリプトに便利です。歴史的な文書の場合、 Kraken はベースラインセグメンテーションとスクリプト対応の読み取り順序で優れています。柔軟な行レベルのトレーニングには、 Calamari がOcropyの系統に基づいて構築されています(Ocropy)(マルチ)LSTM + CTC認識器とカスタムモデルを微調整するためのCLIを備えています。

データセットとベンチマーク

一般化はデータにかかっています。手書きの場合、 IAM手書きデータベース は、トレーニングと評価のために作家の多様な英語の文章を提供します。これは、 行と単語の認識のための長年の参照セットです。シーンテキストの場合、 COCO-Text は、MS-COCOに広範な注釈を重ね、印刷/手書き、判読可能/判読不能、スクリプト、および 完全な転写のラベルを付けました(元の プロジェクトページも参照)。この分野はまた、合成事前トレーニングに大きく依存しています: SynthText in the Wild は、リアルなジオメトリと照明でテキストを写真にレンダリングし、事前トレーニング 検出器と認識器に大量のデータを提供します(参照 コードとデータ)。

ICDARのRobust Reading の傘下での競争は、評価を現実的なものに保ちます。最近のタスクは、エンドツーエンドの検出/読み取りを強調し、単語を フレーズにリンクすることを含み、公式コードは 精度/再現率/ Fスコア、和集合上の積集合 (IoU)、および文字レベルの編集距離メトリックを報告します。これは、実践者が追跡すべきことを反映しています。

出力形式と下流での使用

OCRはめったにプレーンテキストで終わりません。アーカイブやデジタルライブラリは ALTO XML を好みます。なぜなら、コンテンツとともに物理的なレイアウト(座標を持つブロック/行/単語)をエンコードし、 METSパッケージングとうまく連携するからです。 hOCR マイクロフォーマットは、対照的に、ocr_line ocrx_wordなどのクラスを使用して同じアイデアをHTML / CSSに埋め込み、Webツールで簡単に表示、編集、変換できるようにします。Tesseractは両方を公開しています。たとえば、 CLIから直接hOCRまたは検索可能なPDFを生成します(PDF出力ガイド)。 pytesseract のようなPythonラッパーは利便性を高めます。リポジトリに固定の取り込み 標準がある場合、hOCRとALTOの間で変換するためのコンバーターが存在します。この厳選されたリストを参照してください OCRファイル形式ツール

実践的なガイダンス

  • データと清潔さから始めましょう。 画像が電話の写真や品質の低いスキャンである場合は、 モデルの調整を行う前に、しきい値処理(適応型とOtsu)と傾き補正(Hough)に投資してください。認識器を交換するよりも、堅牢な前処理レシピから得られるものの方が大きいことがよくあります。
  • 適切な検出器を選択してください。 通常の列を持つスキャンされたページの場合、ページセグメンター(ゾーン→ 行)で十分な場合があります。自然な画像の場合、 EAST のようなシングルショット検出器は強力なベースラインであり、多くのツールキットにプラグインします(OpenCVの例)。
  • テキストに一致する認識器を選択してください。 印刷されたラテン語の場合、 Tesseract(LSTM / OEM) は頑丈で高速です。マルチスクリプトまたは迅速なプロトタイプの場合、 EasyOCR は生産的です。手書きまたは歴史的な書体の場合、 Kraken または Calamari を検討し、微調整を計画してください。ドキュメントの理解(キーと値の抽出、VQA)との緊密な結合が必要な場合は、 スキーマで TrOCR (OCR)と Donut (OCRフリー)を比較評価します。Donutは統合ステップ全体を削除する可能性があります。
  • 重要なことを測定します。 エンドツーエンドシステムの場合、検出 Fスコアと認識CER / WER(どちらもレーベンシュタイン 編集距離に基づく。 CTCを参照)を報告します。レイアウトの多いタスクの場合、 ICDAR RRC 評価キットのように、IoU /タイトネスと文字レベルの正規化された編集距離を追跡します。
  • 豊富な出力をエクスポートします。 hOCR /ALTO (または両方)を優先して、座標と読み取り順序を保持します。これは、検索ヒットの強調表示、テーブル/フィールド の抽出、および来歴に不可欠です。TesseractのCLIと pytesseract は、これをワンライナーにします。

今後の展望

最も強力なトレンドは収束です:検出、認識、言語モデリング、さらにはタスク固有のデコードまで が統一されたTransformerスタックに統合されています。 大規模な合成コーパス での事前トレーニングは、依然として力の乗数です。OCRフリーモデルは、ターゲットが逐語的な転写ではなく構造化された出力である場所ならどこでも積極的に競争します。 ハイブリッド展開も期待してください:長文テキスト用の軽量検出器とTrOCRスタイルの 認識器、およびフォームとレシート用のDonutスタイルのモデル。

参考文献とツール

Tesseract (GitHub) · Tesseractドキュメント · hOCR仕様 · ALTOの背景 · EAST検出器 · OpenCVテキスト検出 · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · IAM手書き · OCRファイル形式ツール · EasyOCR

よくある質問

OCRとは何ですか?

光学的文字認識(OCR)は、さまざまな形式のドキュメント(スキャンされた紙のドキュメント、PDFファイル、デジタルカメラで撮影された画像など)を編集可能で検索可能なデータに変換するために使用される技術です。

OCRはどのように機能しますか?

OCRは入力画像またはドキュメントをスキャンし、画像を個々の文字に分割し、各文字を形状認識または特徴認識を使用して文字形状のデータベースと比較します。

OCRの実用的な用途は何ですか?

OCRは印刷文書のデジタル化、テキストから音声へのサービスの活用、データ入力プロセスの自動化、視覚障害のあるユーザーがテキストとより良く対話できるようにするなど、さまざまな業界とアプリケーションで使用されています。

OCRは常に100%正確ですか?

OCR技術は大幅に進歩していますが、それが無敵ではありません。精度は、元のドキュメントの品質と使用されているOCRソフトウェアの特性によって異なることがあります。

OCRは手書き文字を認識できますか?

OCRは主に印刷されたテキストを認識するように設計されていますが、一部の高度なOCRシステムは明瞭で一貫性のある手書き文字も認識することができます。ただし、個々の文字スタイルの変動幅が広いため、手書き文字の認識は通常、印刷されたテキストの認識よりも精度が低いです。

OCRは複数の言語を処理できますか?

はい、 多くのOCRソフトウェアは複数の言語を認識できます。ただし、特定の言語がサポートされていることを確認する必要があります。

OCRとICRとの違いは何ですか?

OCRはOptical Character Recognition(光学的文字認識)の略で、印刷されたテキストを認識します。一方、ICRはIntelligent Character Recognition(知能的文字認識)の略で、より進んだ技術を使用して手書きのテキストを認識します。

OCRはすべてのフォントと文字サイズを処理できますか?

OCRはクリアで読みやすいフォントと標準的な文字サイズを処理するのに最も適しています。それはさまざまなフォントとサイズを処理する能力を持っていますが、非常に小さい文字サイズや一般的でないフォントを処理するときには、その精度が下がる可能性があります。

OCR技術の制限は何ですか?

OCRは低解像度のドキュメント、複雑なフォント、印刷品質が悪いテキスト、手書きのテキスト、またはテキストが含まれている背景からの混乱を処理するのに問題を抱えている可能性があります。さらに、それは多言語を处理する能力を持っていますが、すべての言語を完全にカバーすることはできない可能性があります。

OCRはカラーテキストまたはカラーバックグラウンドをスキャンできますか?

はい、OCRはカラーテキストとカラーバックグラウンドをスキャンすることができますが、通常は黒いテキストと白いバックグラウンドといった高いコントラストの色の組み合わせに対して最も効果的です。テキストとバックグラウンドの色のコントラストが不十分な場合、その精度が下がる可能性があります。

PAL フォーマットとは何ですか?

Palm ピクスマップ

PAL画像フォーマットは、テレビ放送規格(Phase Alternating Line)と混同しないように、さまざまなアプリケーション、特にコンピュータグラフィックスやデジタルアートの分野で使用されるカラーパレットファイルフォーマットです。PALファイルは通常、インデックス画像に適用したり、さまざまなデジタルアセット間の一貫性を維持するために使用できる色のコレクションを格納します。このフォーマットは、色の数が256に制限され、目的の視覚的な結果を得るためにカラーパレットを正確に制御する必要がある8ビットグラフィックスを扱う場合に特に役立ちます。

PALファイルの構造は比較的単純で、フォーマットとバージョンを指定するヘッダーと、パレットデータ自体で構成されています。パレットデータはカラーエントリの配列であり、各エントリは単一の色を定義します。ほとんどの場合、各色は3バイトで表され、色の赤、緑、青(RGB)成分に対応します。PALフォーマットのバリエーションの中には、色の透明度レベルを表すアルファチャンネル用の追加バイトが含まれるものもありますが、これはあまり一般的ではありません。

PALファイルのヘッダーは、ソフトウェアがファイルの残りの部分を正しく解釈するのに役立つ情報が含まれているため、非常に重要です。通常、ファイルがPALフォーマットであることを識別するシグネチャまたはマジックナンバー、フォーマットのバージョン、場合によってはパレットに含まれる色の数が含まれます。バージョン情報は、PALフォーマットの異なる反復をサポートする可能性のあるさまざまなソフトウェアとの互換性を確保するために重要です。

ヘッダーの後、パレットデータは順番に整理されます。各カラーエントリは通常3バイトの長さで、各プライマリカラーコンポーネント(赤、緑、青)に1バイトずつ使用されます。各コンポーネントの値は0から255の範囲で、合計16,777,216色を使用できます。ただし、PALファイルはインデックス画像でよく使用されるため、これらの色のサブセットのみがパレットに含まれ、通常は最大256色です。

インデックス画像フォーマットは、ピクセルデータを直接格納するのではなく、画像内の各ピクセルをパレット内の色にマッピングすることで機能します。これは、パレット内の色の位置に対応する番号であるインデックスを使用して行われます。たとえば、インデックス0はパレット内の最初の色を参照し、インデックス1は2番目の色を参照します。この色の参照方法は、ファイルサイズを大幅に削減できます。これは、ストレージスペースとメモリが限られていたコンピューティングの初期段階では特に重要でした。

PALファイルを使用する主な利点の1つは、画像データ自体を変更する必要なく、パレットを変更するだけでインデックス画像の外観を変更できることです。これを使用して、さまざまなビジュアルテーマを作成したり、さまざまな照明条件をシミュレートしたり、色補正を実行したりできます。たとえば、ビデオゲームでは、同じスプライトグラフィックスを異なるパレットで再利用してさまざまな環境を表したり、ダメージやパワーアップなどのゲームの状態の変化を示したりできます。

PALフォーマットは、複数の画像やアセット間の一貫性を確保するのにも役立ちます。共通のパレットを共有することで、一連の画像が同じ色のセットを使用することが保証され、まとまりのある外観と感触を維持するために重要です。これは、複数のフレームが順番に再生されたときに一貫して見える必要があるアニメーションや、さまざまな要素がアプリケーションの全体的な配色と一致する必要があるユーザーインターフェイスデザインなどのアプリケーションで特に役立ちます。

その利点にもかかわらず、PALフォーマットにはインデックスカラー画像との関連性のために制限があります。ディスプレイ技術とグラフィックスハードウェアが進化するにつれて、インデックスカラーと限定的なパレットの必要性は低下しました。最新のグラフィックスシステムは数百万色を同時に表示できるため、フルカラー画像の使用がより実用的で望ましいものになっています。その結果、PALファイルの使用は、PNGやJPEGなどの真の色をサポートするより汎用性の高い画像フォーマットに取って代わられています。

ただし、PALフォーマットは特定のニッチアプリケーションでも使用されています。たとえば、レトロゲーム開発、ピクセルアート、スタイル上の理由で意図的にカラーパレットを制限するその他の芸術的取り組みでは、PALファイルが使用される場合があります。さらに、PALフォーマットを念頭に置いて設計された一部のレガシーシステムやソフトウェアでは、互換性の目的でPALファイルの使用が必要になる場合があります。

PALファイルの作成と編集は、パレットとインデックス画像の処理用に設計された特殊なソフトウェアツールを使用して行うことができます。これらのツールを使用すると、アーティストや開発者は、色を手動で選択するか、既存の画像から選択して、カスタムパレットを作成できます。また、色の並べ替え、色の値の調整、PALを含むさまざまなフォーマットでのパレットのインポートまたはエクスポートによって、パレットを操作することもできます。

PALファイルを使用する場合は、ターゲットプラットフォームまたはソフトウェアの特定の要件を認識することが重要です。一部のシステムでは、使用できる色の数に制限がある場合や、パレットを特定の方法で整理する必要がある場合があります。さらに、色の解釈方法は、カラースペースやガンマ設定の違いによりシステム間で異なる場合があり、表示されたときの色の最終的な外観に影響を与える可能性があります。

ファイルフォーマットの仕様に関して、PALフォーマットはPNGやJPEGなどのフォーマットと同じ方法で標準化されていません。これは、PALファイルの構造と解釈方法が異なるソフトウェアによって異なる場合があることを意味します。一部のアプリケーションでは、PALフォーマットの独自拡張機能またはバリエーションを使用する場合があり、異なるプログラム間でファイルを交換するときに互換性の問題が発生する可能性があります。PALファイルの作成または編集に使用されるソフトウェアが、意図したユースケースと互換性があることを確認することが重要です。

PALフォーマットの制限に対処するために、拡張機能と代替手段が開発されています。たとえば、Adobe Color Table(.ACT)フォーマットはPALに似ていますが、Adobeソフトウェアでの使用のために特別に設計されています。Windowsで使用されるMicrosoft Palette(PAL)ファイルフォーマットは、Windowsアプリケーションとの互換性を向上させるための追加メタデータを含む別のバリエーションです。これらの代替フォーマットは、PALフォーマットと同様の機能を提供しますが、特定のソフトウェアエコシステムとの統合が向上しています。

結論として、PAL画像フォーマットは、インデックス画像内のカラーパレットを管理するためのシンプルでありながら強力なツールです。その使用は最新のグラフィックス技術の出現によって減少しましたが、カラーパレットの管理が重要な特定のコンテキストでは依然として関連性があります。レガシーシステム、レトロスタイルのグラフィックス、または限定的なカラーパレットを正確に制御する必要があるプロジェクトに取り組む人は誰でも、PALファイルの構造とアプリケーションを理解することが重要です。他のファイルフォーマットと同様に、互換性と標準化の問題を考慮して、さまざまなソフトウェアツールとプラットフォーム間のスムーズなワークフローと相互運用性を確保する必要があります。

対応フォーマット

AAI.aai

AAI Dune 画像

AI.ai

Adobe Illustrator CS2

AVIF.avif

AV1 画像ファイルフォーマット

BAYER.bayer

Raw ベイヤー画像

BMP.bmp

Microsoft Windows ビットマップ画像

CIN.cin

Cineon 画像ファイル

CLIP.clip

画像クリップマスク

CMYK.cmyk

Raw シアン、マジェンタ、イエロー、黒サンプル

CUR.cur

Microsoft アイコン

DCX.dcx

ZSoft IBM PC マルチページ Paintbrush

DDS.dds

Microsoft DirectDraw Surface

DPX.dpx

SMTPE 268M-2003 (DPX 2.0) 画像

DXT1.dxt1

Microsoft DirectDraw Surface

EPDF.epdf

カプセル化されたポータブルドキュメントフォーマット

EPI.epi

Adobe カプセル化PostScriptインターチェンジフォーマット

EPS.eps

Adobe カプセル化PostScript

EPSF.epsf

Adobe カプセル化PostScript

EPSI.epsi

Adobe カプセル化PostScriptインターチェンジフォーマット

EPT.ept

TIFFプレビュー付きカプセル化PostScript

EPT2.ept2

TIFFプレビュー付きカプセル化PostScript Level II

EXR.exr

高ダイナミックレンジ(HDR)画像

FF.ff

Farbfeld

FITS.fits

フレキシブル画像転送システム

GIF.gif

CompuServe グラフィックス交換フォーマット

HDR.hdr

高ダイナミックレンジ画像

HEIC.heic

高効率画像コンテナ

HRZ.hrz

スロースキャンテレビジョン

ICO.ico

Microsoft アイコン

ICON.icon

Microsoft アイコン

J2C.j2c

JPEG-2000 コードストリーム

J2K.j2k

JPEG-2000 コードストリーム

JNG.jng

JPEG ネットワークグラフィックス

JP2.jp2

JPEG-2000 ファイルフォーマット構文

JPE.jpe

JPEG JFIFフォーマット

JPEG.jpeg

JPEG JFIFフォーマット

JPG.jpg

JPEG JFIFフォーマット

JPM.jpm

JPEG-2000 ファイルフォーマット構文

JPS.jps

JPEG JPSフォーマット

JPT.jpt

JPEG-2000 ファイルフォーマット構文

JXL.jxl

JPEG XL画像

MAP.map

マルチレゾリューションシームレス画像データベース(MrSID)

MAT.mat

MATLAB レベル5画像フォーマット

PAL.pal

Palm ピクスマップ

PALM.palm

Palm ピクスマップ

PAM.pam

一般的な2次元ビットマップフォーマット

PBM.pbm

ポータブルビットマップフォーマット(白黒)

PCD.pcd

フォトCD

PCT.pct

Apple Macintosh QuickDraw/PICT

PCX.pcx

ZSoft IBM PC ペイントブラシ

PDB.pdb

Palm 画像ビューアフォーマット

PDF.pdf

ポータブルドキュメントフォーマット

PDFA.pdfa

ポータブルドキュメントアーカイブフォーマット

PFM.pfm

ポータブルフロートフォーマット

PGM.pgm

ポータブルグレイマップフォーマット(グレースケール)

PGX.pgx

JPEG 2000 非圧縮フォーマット

PICT.pict

Apple Macintosh QuickDraw/PICT

PJPEG.pjpeg

JPEG JFIFフォーマット

PNG.png

ポータブルネットワークグラフィックス

PNG00.png00

オリジナル画像からビット深度、カラータイプを継承したPNG

PNG24.png24

不透明またはバイナリ透過24ビットRGB(zlib 1.2.11)

PNG32.png32

不透明またはバイナリ透過32ビットRGBA

PNG48.png48

不透明またはバイナリ透過48ビットRGB

PNG64.png64

不透明またはバイナリ透過64ビットRGBA

PNG8.png8

不透明またはバイナリ透過8ビットインデックスカラー

PNM.pnm

ポータブルエニーマップ

PPM.ppm

ポータブルピクスマップフォーマット(カラー)

PS.ps

Adobe PostScriptファイル

PSB.psb

Adobe 大容量ドキュメントフォーマット

PSD.psd

Adobe Photoshop ビットマップ

RGB.rgb

Raw 赤、緑、青サンプル

RGBA.rgba

Raw 赤、緑、青、アルファサンプル

RGBO.rgbo

Raw 赤、緑、青、不透明度サンプル

SIX.six

DEC SIXELグラフィックスフォーマット

SUN.sun

Sunラスタファイル

SVG.svg

スケーラブルベクターグラフィックス

TIFF.tiff

TIFF(タグ付き画像ファイルフォーマット)

VDA.vda

Truevision Targa画像

VIPS.vips

VIPS画像

WBMP.wbmp

ワイヤレスビットマップ(レベル0)画像

WEBP.webp

WebP画像フォーマット

YUV.yuv

CCIR 601 4:1:1 または 4:2:2

よくある質問

これはどのように機能しますか?

このコンバーターはブラウザ内で完全に動作します。ファイルを選択すると、メモリに読み込まれ、選択したフォーマットに変換されます。その後、変換されたファイルをダウンロードできます。

ファイルの変換にかかる時間は?

変換は瞬時に開始され、ほとんどのファイルは1秒以内に変換されます。大きなファイルの場合、時間がかかる場合があります。

ファイルの扱いは?

ファイルは決してサーバにアップロードされません。ブラウザ内で変換され、変換されたファイルがダウンロードされます。ファイルは見られません。

変換できるファイルタイプは?

画像フォーマット間の変換すべてに対応しています。JPEG、PNG、GIF、WebP、SVG、BMP、TIFFなどです。

料金はかかりますか?

このコンバーターは完全に無料で、永久に無料のままです。ブラウザ内で動作するため、サーバを用意する必要がないので、料金を請求する必要がありません。

一度に複数のファイルを変換できますか?

はい、一度に複数のファイルを変換できます。追加時に複数のファイルを選択してください。