光学文字認識(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ファイル形式ツール。
最も強力なトレンドは収束です:検出、認識、言語モデリング、さらにはタスク固有のデコードまで が統一された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)は、さまざまな形式のドキュメント(スキャンされた紙のドキュメント、PDFファイル、デジタルカメラで撮影された画像など)を編集可能で検索可能なデータに変換するために使用される技術です。
OCRは入力画像またはドキュメントをスキャンし、画像を個々の文字に分割し、各文字を形状認識または特徴認識を使用して文字形状のデータベースと比較します。
OCRは印刷文書のデジタル化、テキストから音声へのサービスの活用、 データ入力プロセスの自動化、視覚障害のあるユーザーがテキストとより良く対話できるようにするなど、さまざまな業界とアプリケーションで使用されています。
OCR技術は大幅に進歩していますが、それが無敵ではありません。精度は、元のドキュメントの品質と使用されているOCRソフトウェアの特性によって異なることがあります。
OCRは主に印刷されたテキストを認識するように設計されていますが、一部の高度なOCRシステムは明瞭で一貫性のある手書き文字も認識することができます。ただし、個々の文字スタイルの変動幅が広いため、手書き文字の認識は通常、印刷されたテキストの認識よりも精度が低いです。
はい、 多くのOCRソフトウェアは複数の言語を認識できます。ただし、特定の言語がサポートされていることを確認する必要があります。
OCRはOptical Character Recognition(光学的文字認識)の略で、印刷されたテキストを認識します。一方、ICRはIntelligent Character Recognition(知能的文字認識)の略で、より進んだ技術を使用して手書きのテキストを認識します。
OCRはクリアで読みやすいフォントと標準的な文字サイズを処理するのに最も適しています。それはさまざまなフォントとサイズを処理する能力を持っていますが、非常に小さい文字サイズや一般的でないフォントを処理するときには、その精度が下がる可能性があります。
OCRは低解像度のドキュメント、複雑なフォント、印刷品質が悪いテキスト、手書きのテキスト、またはテキストが含まれている背景からの混乱を処理するのに問題を抱えている可能性があります。さらに、それは多言語を处理する能力を持っていますが、すべての言語を完全にカバーすることはできない可能性があります。
はい、OCRはカラーテキストとカラーバックグラウンドをスキャンすることができますが、通常は黒いテキストと白いバックグラウンドといった高いコントラストの色の組み合わせに対して最も効果的です。テキストとバックグラウンドの色のコントラストが不十分な場合、その精度が下がる可能性があります。
PNG24画像形式は、Truecolor PNGとも呼ばれ、画像を格納するための広く使用されているロスレス形式です。ポータブルネットワークグラフィックス(PNG)仕様の一部として定義されており、圧縮時に品質を犠牲にすることなく、深い色の画像を表示できるため、非常に人気があります。保存時に品質が低下するロスレス圧縮技術を使用するJPEGなどの他の形式とは異なり、PNG24はファイルを保存または圧縮する回数に関係なく、元の画像品質を維持します。
PNG24形式は、ピクセルあたり24ビットのカラー情報を格納できることからその名が付けられました。これは、3つのプライマリカラー(赤、緑、青(RGB))のそれぞれに8ビットまたは1バイトを割り当てることで可能になります。この構成により、最大1670万色を表示できるなど、幅広い色の表現が可能になります。このような広い色域により、PNG24は写真、デジタルアート、グラデーションのあるグラフィックスなど、高品質の画像に最適な選択肢となります。
PNG24の決定的な特徴の1つは、ロスレス圧縮アルゴリズムです。PNGは、LZ77アルゴリズムとハフマン符号化を組み合わせたDEFLATEと呼ばれる手法を使用します。この手法は、画像品質を損なうことなくファイルサイズを効率的に削減するため、オンラインでの画像共有や保存に非常に効果的です。圧縮ではデータは破棄されません。代わりに、画像データ内の繰り返しパターンと構造を特定し、この情報をよりコンパクトにエンコードします。
透過性は、PNG24形式のもう1つの重要な機能です。1つの透過レベル(オンまたはオフ)のみをサポートできるGIFとは異なり、PNG24はアルファチャンネルを介して256レベルの透過性をサポートします。PNG24画像の各ピクセルは、完全に不透明から完全に透明までの個々の透過レベルを持つことができます。この機能は、さまざまな背景に画像を重ねたり、ソフトエッジを作成したり、画像に追加のマスキングを必要とせずに複雑なグラフィカルインターフェイスを作成したりする場合に特に役立ちます。
PNG24画像は、ガンマ補正と呼ばれる機能もサポートしています。これにより、画像をさまざまな表示デバイス間で一貫した明るさと色を維持できます。ガンマ補正は、事前定義されたガンマ値に従って画像の輝度を調整することで機能し、さまざまなモニターの異なるガンマ応答を補正するのに役立ちます。これにより、あるモニターで編集された画像が別のディスプレイで表示されたときに類似して表示されることが保証され、写真家やグラフィックデザイナーにとって重要な側面となります。
インターレースは、PNG24のオプション機能で、画像をWebブラウザで段階的に表示できます。これは、低解像度の画像をロード中に表示できるため、インターネット接続が遅い場合に特に役立ち、ユーザーエクスペリエンスが向上します。PNGは、7パスインターレーススキームであるAdam7アルゴリズムを使用し、各パスで画像の詳細を徐々に増やします。これは、画像が上から下に1行ずつ表示される非インターレース形式とは対照的です。
実装とサポートの点では、PNG24は最新のWebブラウザ、画像編集ソフトウェア、さまざまなオペレーティングシステムで十分にサポートされています。この広範なサポートは、一部には、GIFの特許フリーの代替手段として開発された形式のオープンスタンダードによるものです。PNG24を含むPNG仕様は、World Wide Web Consortium(W3C)によって管理されており、Web標準との継 続的な進化と互換性が確保されています。
数多くの利点にもかかわらず、PNG24形式には欠点もあります。主な問題の1つはファイルサイズです。ロスレス圧縮と高い色深度により、PNG24ファイルは通常、JPEGファイルよりも大きくなります。この大きなファイルサイズは、Webサイトの読み込み時間が長くなり、帯域幅を多く使用する場合があります。したがって、Webで使用する場合、品質の必要性と速度の必要性のバランスをとることが重要であり、場合によってはJPEGのようなロスレス圧縮形式がより適切な場合があります。
さらに、PNG24の広い色域は高品質の画像には有益ですが、色の制限されたより単純なグラフィックスには不要な場合があります。そのような場合、256色をサポートするPNG8などの色深度の低い形式がより適している場合があります。画像の内容に基づいて適切な形式を選択することで、目的の用途に合わせた視覚品質を損なうことなく、ファイルサイズを大幅に削減できます。
標準のPNG24形式に加えて、PNG32と呼ばれるバリアントもあります。違いは、赤、緑、青の既存の24ビットに8ビットのアルファチャンネルが追加され、ピクセルあたり合計32ビットになることです。アルファチャンネルを形式に直接組み込むことで、透過性をさらに制御できるようになり、PNG32は洗練された透過効果を必要とする画像に適しています。
PNG24ファイルの作成と操作は、さまざまなツールやソフトウェアアプリケーションを使用して実行できます。Adobe Photoshop、GIMPなどのほとんどの画像編集ソフトウェアはPNG24をサポートしており、ユーザーはこの形式で直接作業を保存できます。さらに、PNG24ファイルをWeb用に最適化し、品質を損なうことなくファイルをさらに圧縮するためのさまざまなオンラインおよびオフラインツールが利用できます。これらのツールは、カラーパレットを必要最小限に減らしたり、圧縮設定を調整したりするなど、ファイルサイズを削減するためのより積極的な戦略を適用することがよくあります。
技術的な詳細を考慮すると、PNG24のエンコードプロセスには、圧縮効率を向上させることを目的としたフィルタリングなど、いくつかのステップが含まれます。実際の圧縮の前に、エンコーダーは5つのフィルタ方法の1つを各画像行に適用して、画像データをより圧縮可能な形式に変換できます。この前処理ステップはファイルの最終的なサイズに大きな影響を与える可能性があり、画像の特性に基づいて適切なフィルタ方法を選択すると、より効率的な圧縮につながる可能性があります。
PNG24ファイルのもう1つの重要な側面は、チャンクベースの構造です。PNGファイルは複数のチャンクで構成されており、それぞれが画像データ、メタデータ、カラープロファイルなどの異なる目的を果たします。このモジュール方式は、画像の効率的な処理とレンダリングを促進するだけでなく、既存のデータ構造を破壊することなく追加情報を組み込むこともできます。たとえば、著作権とライセンス情報をファイルに直接埋め込むことが可能で、デジタル資産の保護と管理が強化されます。
アクセシビリティと国際化もPNG24ファイルで考慮されています。説明や注釈などのテキスト情報は、ファイルのテキストチャンク内に複数の言語で格納できます。この機能により、PNG24は、作成者がローカライズされた情報とメタデータを含めることができるため、グローバルな配布に適しており、画像をさまざまなオーディエンスがよりアクセスしやすく、理解しやすくなります。
結論として、PNG24画像形式は、高品質の画像を格納および共有するための堅牢で用途の広いオプションです。幅広い色との互換性、透過性のサポート、ロスレス圧縮により、Webと印刷メディアの両方で魅力的な選択肢となっています。ただし、比較的大きなファイルサイズと、単純なグラフィックスでの過剰な可能性は、プロジェクトの特定のニーズに基づいて適切な形式を選択することの重要性を強調しています。テクノロジーとWeb標準が進化し続けるにつれて、PNG24はデジタル画像の領域で重要な役割を果たし続け、その柔軟性と品質が評価されています。
このコンバーターはブラウザ内で完全に動作します。ファイルを選択すると、メモリに読み込まれ、選択したフォーマットに変換されます。その後、変換されたファイルをダウンロードできます。
変換は瞬時に開始 され、ほとんどのファイルは1秒以内に変換されます。大きなファイルの場合、時間がかかる場合があります。
ファイルは決してサーバにアップロードされません。ブラウザ内で変換され、変換されたファイルがダウンロードされます。ファイルは見られません。
画像フォーマット間の変換すべてに対応しています。JPEG、PNG、GIF、WebP、SVG、BMP、TIFFなどです。
このコンバーターは完全に無料で、永久に無料のままです。ブラウザ内で動作するため、サーバを用意する必要がないので、料金を請求する必要がありません。
はい、一度に複数のファイルを変換できます。追加時に複数のファイルを選択してください。