1

写真OCRを開発するためにスライディングウィンドウ技術を実装しています。つまり、特定のサイズの長方形が写真から切り取られ、テキストが含まれているかどうかがチェックされます。次に、長方形がいくつかのピクセルだけシフトされます。しかし、このスライディング ウィンドウ手法には多くの時間がかかります。たとえば、1366x768 の画像を処理するには、ステップ サイズ 2、ウィンドウ サイズ 20x25 で 6 時間かかります。役立つ可能性のある他の手法や、プロセスをスピードアップする方法はありますか?

私はJavaでコーディングしています。

4

2 に答える 2

3

アルゴリズム/コードの詳細を知らずに具体的な推奨事項を提示することは困難です。考慮できる潜在的なパフォーマンスの改善がいくつかあります。

  1. ディスク I/O とキャッシュ ミスを最小限に抑えます。あなたは、長方形は「絵から切り出されたもの」であると述べました。各「カット」がディスクからの個別の読み取りである場合、それは非常に非効率的であり、実行時間に大きく影響します。ウィンドウを移動すると (2 ピクセルで表示されます)、新しいウィンドウのほとんどのデータは同じであるため、そのデータを再読み込みすることはできる限り避けてください。
  2. ウィンドウ サイズを小さくするか、ステップ サイズを大きくしてください。これは明らかに結果に影響しますが、OCR しようとしている文字のサイズによっては、オプションになる場合があります。
  3. 畳み込みフィルターを適用して OCR を実行する場合は、画像データの 2D FFT を介して高速畳み込みを行うことを検討してください。
  4. アプリケーションがマルチスレッド化されていない場合は、マルチスレッド化します。あなたの問題は恥ずかしいほど並列ではありませんが、かなり簡単にマルチスレッド化できます。
于 2012-11-27T13:34:41.903 に答える
1

スライディング ウィンドウ アプローチは力ずくで行われるため、その性質上非常に遅くなります。おそらく、フィルターを使用して処理する画像の領域に優先順位を付ける、顕著性ベースの手法を検討する必要があります。

B. Draper と A. Lionelle という、私がある程度知っている論文を次に示します。「相似変換の下での選択的注意の評価」、視覚と画像の理解、100:152-171、2005

最後に、どの ANN ライブラリを使用していますか? ANN コードが行列/ベクトル演算を実行していること、およびそれらが可能な限り最適化されていることを確認してください!

于 2012-11-30T04:34:33.663 に答える