iOS アプリケーションで Tesseract OCR 3.01 を使用しています。携帯電話のライブラリから画像を選択すると、90% の精度でデータが表示されます。しかし、カメラからの同じ画像を使用すると、ごちゃごちゃした文字が表示されます。私はこのチュートリアルに従いました。ギャラリー画像で機能するように、カメラからも機能することを確認するために何かできることがあれば、親切にガイドしてください。
2 に答える
はい、具体的に3つのことがあります。まず、OCRはカラーではなく白黒の画像でうまく機能するため、画像を白黒に変換しようとすると、精度が向上します。
2つ目は、サイズと向きです。画像を640 * 480または320サイズにする必要があります。これにより、認識速度と精度の両方が向上します。向きについては、管理する方法がたくさんあります。 。
最後に、ユーザーがOCRを実行する画像の場所または部分を正確に指定できるようにする方法がある場合、ライブラリは画像全体のテキストをチェックする必要がないため、精度と時間が大幅に向上します。検索するパーツはすでに指定しています。
PS:私は過去数週間OCRアプリの作成に取り組んできました。
ほぼ確実に問題は「向き」です。Apple は 1 つのビット マップ形式でイメージを作成する傾向があります。イメージ ビットは、ボリューム ボタンが上と右にあり、カメラが横になっているように配置されます。縦長に見える画像も上記のように配置されていますが、画像に含まれる EXIF オブジェクトには「向き」があります。
tesseract は EXIF を見ていないと推測しますが、テキストがテキストを読む人にとっての位置にあるように、「標準」形式の画像を期待しています。
右上の音量ボタンで撮影したカメラ画像を使用して、私の仮説を検証できます。
それらが機能する場合は、画像を自分で処理し、向きの設定ごとにビットを再配置する必要があります。これを行うのはそれほど難しいことではありませんが、vImage やビットマップのコンテキストを読む必要があります。