光学文字認識(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はカラーテキストとカラーバックグラウンドをスキャンすることができますが、通常は黒いテキストと白いバックグラウンドといった高いコントラストの色の組み合わせに対して最も効果的です。テキストとバックグラウンドの色のコントラストが不十分な場合、その精度が下がる可能性があります。
Googleが開発したWEBP画像フォーマットは、Web上の画像に優れた圧縮を提供するように設計された、現代的な画像フォーマットとして確立されており、高品質のビジュアルを維持しながらWebページの読み込みを高速化できます。これは、ロスあり圧縮とロスレス圧縮の両方の技術を使用することで実現されています。ロスあり圧縮は、人間の目が違いを検出する可能性が低い領域を中心に、一部の画像データを不可逆的に削除することでファイルサイズを削減し、ロスレス圧縮は画像のディテールを犠牲にすることなくファイルサイズを削減し、冗長な情報を排除するためのデータ圧縮アルゴリズムを採用しています。
WEBPフォーマットの主な利点の1つは、JPEGやPNGなどの従来のフォーマットと比較して、品質を著しく低下させることなく画像のファイルサイズを大幅に削減できることです。これは、サイトのパフォーマンスと読み込み時間を最適化することを目指すWeb開発者やコンテンツ制作者にとって特に有益であり、ユーザーエクスペリエンスとSEOランキングに直接影響を与える可能性があります。さらに、画像ファイルが小さくなると帯域幅の使用量が減り、ホスティングコストが削減され、データプランが限られているユーザーやインターネット接続が遅いユーザーのアクセシビリティが向上します。
WEBPの技術的な基盤はVP8ビデオコーデックに基づいており、予測、変換、量子化などの技術を使用して画像のRGB(赤、緑、青)コンポーネントを圧縮します。予測は、近隣のピクセルに基づいてピクセルの値を推測するために使用され、変換は画像データを圧縮しやすいフォーマットに変換し、量子化はファイルサイズを小さくするために画像の色精度を低下させます。ロスレス圧縮の場合、WEBPは空間予測などの高度な技術を使用 して、ディテールを失うことなく画像データをエンコードします。
WEBPは、さまざまなアプリケーションに適した多様な機能をサポートしています。注目すべき機能の1つは、アルファチャンネルとも呼ばれる透過性のサポートで、画像に可変の不透明度と透過的な背景を持たせることができます。この機能は、画像をさまざまな背景とシームレスにブレンドする必要があるWebデザインやユーザーインターフェイスの要素に特に役立ちます。さらに、WEBPはアニメーションをサポートしており、より優れた圧縮と品質でアニメーションGIFの代替として機能できます。これにより、Web用に軽量で高品質なアニメーションコンテンツを作成するための適切な選択肢となります。
WEBPフォーマットのもう1つの重要な側面は、さまざまなプラットフォームやブラウザでの互換性とサポートです。私の最後の更新時点では、Google Chrome、Firefox、Microsoft Edgeを含むほとんどの最新のWebブラウザがネイティブにWEBPをサポートしており、追加のソフトウェアやプラグインを必要とせずにWEBP画像を直接表示できます。ただし、一部の古いブラウザや特定の環境では完全にサポートされていない場合があり、開発者はJPEGやPNGフォーマットでブラウザに画像を提供するなどのフォールバックソリューションを実装しています。
WebプロジェクトにWEBPを実装するには、ワークフローと互換性に関するいくつかの考慮事項があります。画像をWEBPに変換するときは、アーカイブ目的やWEBPが最も適切な選択肢ではない状況のために、元のファイルをネイティブフォーマットで保持することが重要です。開発者は、さまざまなプログラミング 言語や環境で利用可能なさまざまなツールやライブラリを使用して変換プロセスを自動化できます。この自動化は、特に多数の画像を含むプロジェクトでは、効率的なワークフローを維持するために不可欠です。
画像をWEBPフォーマットに変換するときの変換品質設定は、ファイルサイズと視覚的な忠実度のトレードオフのバランスを取る上で重要です。これらの設定は、より高速な読み込み時間のためのより小さなファイルサイズを優先するか、視覚的なインパクトのためのより高品質の画像を優先するかなど、プロジェクトの特定のニーズに合わせて調整できます。さまざまなデバイスやネットワーク条件で視覚品質と読み込みパフォーマンスをテストし、WEBPの使用が意図しない問題を引き起こすことなくユーザーエクスペリエンスを向上させることを確認することも不可欠です。
数多くの利点にもかかわらず、WEBPフォーマットは課題や批判にも直面しています。グラフィックデザインや写真の専門家の中には、特定のアプリケーションではTIFFやRAWなどのより高い色深度とより広い色域を提供するフォーマットを好む人もいます。さらに、既存の画像ライブラリをWEBPに変換するプロセスは時間がかかり、元の画像の性質や変換に使用される設定によっては、ファイルサイズや品質が大幅に向上しない場合があります。
WEBPフォーマットの将来とその採用は、すべてのプラットフォームでのより広範なサポートと、圧縮アルゴリズムの継続的な改善にかかっています。インターネット技術が進化するにつれて、最小限のファイルサイズで高品質のビジュアルを提供できるフォーマットの需要は今後も 高まり続けるでしょう。WEBPを含む新しいフォーマットの導入と既存のフォーマットの改善は、これらのニーズを満たすために不可欠です。継続的な開発努力により、圧縮効率、品質、高ダイナミックレンジ(HDR)画像や拡張色空間のサポートの向上などの新機能の統合が約束されています。
結論として、WEBP画像フォーマットはWeb画像の最適化における重要な進歩を表しており、ファイルサイズの削減と視覚的な品質のバランスを提供します。透過性とアニメーションのサポートを含むその汎用性は、最新のWebアプリケーション向けの包括的なソリューションとなっています。ただし、WEBPへの移行には、互換性、ワークフロー、各プロジェクトの特定のニーズを慎重に検討する必要があります。Webが進化し続けるにつれて、WEBPなどのフォーマットはオンラインメディアの未来を形作り、より優れたパフォーマンス、向上した品質、改善されたユーザーエクスペリエンスを推進する上で重要な役割を果たします。