OCR認識シリーズの一つ-----基本紹介

最近いくつかの OCR プロジェクトを行ってきましたが、これでほぼ終了しました。空いた時間を利用して OCR について体系的に整理していきたいと思います。まず、OCR の基本について説明します。

1. OCRの定義

OCR は中国語で光学文字認識とも呼ばれ、光学技術とコンピューター技術を使用してターゲット上のテキスト情報を抽出します。OCR 認識はコンピュータ ビジョンの研究分野の 1 つであり、現在、ID カード認識、ナンバー プレート番号認識、写真を撮って答えを検索するなどの応用など、日常生活での応用が比較的成熟しています。

2. OCRの分類

現在、フォントの認識は主に印刷認識と手書き認識の 2 つに分類されます。

印刷物の認識は比較的単純で、フォントは比較的規則的で、数十のフォント ルールがあります。ただし、印刷されたインク跡の破損、付着、閉塞などにより認識しにくい点もあり、現在の活字認識は一般的にはかなり良好ですが、まだ100%の認識精度には達していません。

手書きフォントは、OCR 業界が常に克服したいと考えている課題でした。主な理由は、手書きフォントはより多様で、医師の処方箋などの個別の特性があり、人間の目では何が書かれているかを認識することが難しく、機械でも理解することが難しいためです。

3. OCR識別方法

現在では主に以下のような種類があります。

  • Google のオープンソース OCR エンジンである Tesseract は外国人によって開発されたため、中国語の認識効果は良くありませんが、英語とデジタル認識ではうまく機能します。
  • Baidu が開発した OCR API は、Python スクリプトを書くことで呼び出して文字認識を実現することができますが、無料ではなく、呼び出し回数が少ない場合は無料、呼び出し回数が多い場合は料金がかかります。漢字認識に適しています。
  • 従来の方法では、文字の特徴を抽出し、それを分類器に入力して OCR モデルを取得します。深層学習が開発される前は、この手法は基本的に複雑なシーンに採用されていました。最初のステップは特徴設計と抽出です。その後の分類に備えて、文字に固有の特徴を設計する必要があります。文字の特徴は何ですか? 構造的特徴: 文字の端点、交差点、円の数、線の数など。2 番目の部分では、これらの特徴が分類器 (SVM) に送信されて分類され、認識結果が得られます。この方法の欠点は、機能設計を行い、手動で設計された機能 (HOG) を通じて文字認識モデルをトレーニングするのに時間がかかることですこの手法では、ひとたび文字が変化したり、ぼやけや背景干渉が発生すると、モデルの汎化能力が急激に低下し、文字切り出しの結果に過度に依存することになり、特に文字の歪み、付着、ノイズ干渉の場合には切り出し誤差が顕著となる。これが、現在 OCR に基本的にディープラーニングが選択される理由です。
  • 暴力的な文字テンプレート マッチング方法は、通常、均一なフォント、高解像度、単純な認識シーン、および単純な文字認識で使用されます。
  • 深層学習に基づく文字認識 (テキスト検出 + テキスト認識)。現時点では、ニューラル ネットワークを使用してテキスト領域を特定し、特定されたテキストに対して文字認識を実行する方が効果的です。

おすすめ

転載: blog.csdn.net/wangmengmeng99/article/details/129796845