OCR JPMの全て

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

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

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

JPEG(Joint Photographic Experts Group)画像フォーマットは、一般的にJPGとして知られており、デジタル画像、特にデジタル写真で生成された画像のロス有圧縮法として広く使用されています。圧縮の程度は調整でき、ストレージサイズと画質の間で選択可能なトレードオフを可能にします。JPEGは通常、画質の低下がほとんどない10:1の圧縮を実現します。

JPEG圧縮は、多くの画像ファイルフォーマットで使用されています。JPEG/Exifは、デジタルカメラやその他の画像キャプチャデバイスで最も一般的に使用される画像フォーマットです。JPEG/JFIFとともに、ワールドワイドウェブ上で写真画像を保存および送信するための最も一般的なフォーマットです。これらのフォーマットのバリエーションは、多くの場合区別されず、単にJPEGと呼ばれます。

JPEGフォーマットには、JPEG/Exif、JPEG/JFIF、JPEG 2000など、さまざまな標準が含まれています。JPEG 2000は、より高い計算複雑性でより優れた圧縮効率を提供する新しい標準です。JPEG標準は複雑で、さまざまな部分とプロファイルがありますが、最も一般的に使用されるJPEG標準はベースラインJPEGです。これは、ほとんどの人が「JPEG」画像について言及するときに言及しているものです。

JPEG圧縮アルゴリズムは、そのコアでは離散コサイン変換(DCT)ベースの圧縮技術です。DCTは、離散フーリエ変換(DFT)と同様のフーリエ関連変換ですが、コサイン関数のみを使用します。DCTは、信号の大部分をスペクトルの低周波数領域に集中させるという特性があるため使用され、これは自然画像の特性とよく相関しています。

JPEG圧縮プロセスには、いくつかのステップが含まれます。最初に、画像は元のカラースペース(通常はRGB)からYCbCrと呼ばれる別のカラースペースに変換されます。YCbCrカラースペースは、画像を輝度成分(Y)(明るさのレベルを表す)と2つの色差成分(CbとCr)(色情報を表す)に分割します。この分離は、人間の目は色よりも明るさの変化に敏感であるため、色差成分を大幅に圧縮しても知覚される画質に大きな影響を与えないため、有益です。

カラースペース変換後、画像はブロックに分割され、通常は8x8ピクセルのサイズになります。その後、各ブロックは個別に処理されます。各ブロックに対してDCTが適用され、空間領域データを周波数領域データに変換します。このステップは、自然画像は高周波数成分よりも重要な低周波数成分を持つ傾向があるため、画像データを圧縮しやすくするため、非常に重要です。

DCTが適用されると、結果の係数は量子化されます。量子化は、大規模な入力値セットをより小さなセットにマッピングするプロセスであり、それらを格納するために必要なビット数を効果的に削減します。これは、JPEG圧縮における損失の主な原因です。量子化ステップは、各DCT係数に適用される圧縮量を決定する量子化テーブルによって制御されます。量子化テーブルを調整することで、ユーザーは画質とファイルサイズのトレードオフを行うことができます。

量子化後、係数はジグザグスキャンによって線形化され、周波数が増加する順に並べられます。このステップは、量子化後にゼロまたはゼロに近い可能性が高い低周波数係数と、ゼロまたはゼロに近い可能性が高い高周波数係数をグループ化するため、重要です。この順序付けは、次のステップであるエントロピー符号化を容易にします。

エントロピー符号化は、量子化されたDCT係数に適用される可逆圧縮法です。JPEGで使用されるエントロピー符号化の最も一般的な形式はハフマン符号化ですが、算術符号化も標準でサポートされています。ハフマン符号化は、より頻繁な要素に短いコードを、より頻繁でない要素に長いコードを割り当てることで機能します。自然画像は、特に高周波数領域で量子化後に多くのゼロまたはゼロに近い係数を持つ傾向があるため、ハフマン符号化は圧縮データのサイズを大幅に削減できます。

JPEG圧縮プロセスの最後のステップは、圧縮データをファイルフォーマットに格納することです。最も一般的なフォーマットはJPEGファイル交換フォーマット(JFIF)で、圧縮データと、量子化テーブルやハフマンコードテーブルなどの関連メタデータを、さまざまなソフトウェアでデコードできるファイルで表す方法を定義します。もう1つの一般的なフォーマットは、デジタルカメラで使用され、カメラの設定やシーン情報などのメタデータを含む交換可能な画像ファイルフォーマット(Exif)です。

JPEGファイルには、ファイル内の特定のパラメータまたはアクションを定義するコードシーケンスであるマーカーも含まれています。これらのマーカーは、画像の開始、画像の終了、量子化テーブルの定義、ハフマンコードテーブルの指定などを示すことができます。マーカーは、圧縮データから画像を再構築するために必要な情報を提供するため、JPEG画像の適切なデコードに不可欠です。

JPEGの重要な機能の1つは、プログレッシブエンコーディングのサポートです。プログレッシブJPEGでは、画像は複数のパスでエンコードされ、それぞれが画質を向上させます。これにより、ファイルがまだダウンロードされている間でも、画像の低品質バージョンを表示できます。これは、Web画像に特に役立ちます。プログレッシブJPEGファイルは一般的にベースラインJPEGファイルよりも大きいですが、読み込み中の画質の違いはユーザーエクスペリエンスを向上させることができます。

広く使用されているにもかかわらず、JPEGにはいくつかの制限があります。圧縮のロス有な性質により、画像に目に見える正方形が表示されるブロック化や、エッジに偽の振動が伴う「リンギング」などのアーティファクトが発生する可能性があります。これらのアーティファクトは、より高い圧縮レベルでより顕著になります。さらに、JPEGは、圧縮アルゴリズムがエッジをぼかして可読性を低下させる可能性があるため、シャープなエッジやコントラストの高いテキストを含む画像には適していません。

元のJPEG標準のいくつかの制限に対処するために、JPEG 2000が開発されました。JPEG 2000は、ベースラインJPEGに対して、より優れた圧縮効率、ロスレス圧縮のサポート、より広範な種類の画像タイプを効果的に処理する機能など、いくつかの改善を提供します。ただし、JPEG 2000は、計算複雑性の増加と一部のソフトウェアやWebブラウザでのサポートの欠如が主な理由で、元のJPEG標準と比較して広く採用されていません。

結論として、JPEG画像フォーマットは、写真画像を圧縮するための複雑ながらも効率的な方法です。広く採用されているのは、画質とファイルサイズのバランスを柔軟に調整できるため、Webグラフィックスからプロの写真まで、さまざまなアプリケーションに適しています。圧縮アーティファクトへの感受性などの欠点がありますが、使いやすさと幅広いデバイスやソフトウェアでのサポートにより、現在最も人気のある画像フォーマットの1つになっています。

対応フォーマット

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などです。

料金はかかりますか?

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

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

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