問題タブ [mser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1897 参照

python - 重複する輪郭を削除し、各文字を個別の輪郭として分離して文字を抽出するにはどうすればよいですか?

MSERinを使用して、Python で画像からの文字抽出を実装しようとしていopencvます。これは今までの私のコードです:

しかし、この方法では同じ文字に対して複数の輪郭が得られ、場所によっては複数の単語が 1 つの輪郭に配置されます。ここに例があります:元の画像:

ここに画像の説明を入力

輪郭を追加した後:

ここに画像の説明を入力

ここでは、最初の T の周りに複数の輪郭があり、2 つの rs が 1 つの輪郭に結合されています。どうすればそれを防ぐことができますか?

0 投票する
1 に答える
250 参照

image - ドキュメント画像文字パッチ識別における最大安定極値領域 (MSER) の実装

私の仕事は、文書画像内の文字パッチを識別することです。以下の画像を検討してください。

ここに画像の説明を入力

論文に基づいて、文字パッチを抽出するために、MSERベースの方法を採用して文字候補を検出します。

「MSER ベースの方法の主な利点は、ドキュメントの画像が低品質であっても、そのようなアルゴリズムが最も読みやすい文字を見つけることができることです。」

別の論文では、MSER について説明しています。後者の論文を理解するのに苦労しています。MSERサンプル ドキュメントに文字パッチを実装して抽出するために必要な手順を簡単に説明してくれる人はいますか? Python で実装しますが、MSER の仕組みを完全に把握/理解する必要があります。

以下は、画像ドキュメントの文字パッチを特定する手順です (私の理解に基づいて、間違っている場合は修正してください)。

  1. 「まず、ピクセルは強度によってソートされます」

    私の理解:

    たとえば、画像に強度が(Pixel 1) 1, (Pixel 2) 9,(Pixel 3) 255,(Pixel 4) 3,(Pixel 5) 4連続する 5 つのピクセルがあるとします。次に、強度に基づいて並べ替えを行うと、出力が得られますPixel 1,4,5,2 and 3

  2. 並べ替えの後、ピクセルはイメージに配置され (降順または昇順)、接続されたコンポーネントとその領域のリストは、効率的なユニオン検索アルゴリズムを使用して維持されます。

    私の理解:

    1の例を使用すると、ピクセルは次のように配置されます。ピクセル コンポーネント/グループと画像の X、Y 座標は単なる例です。

    /li>
  3. 「このプロセスは、強度の関数として各連結成分の面積を格納するデータ構造を生成します。」

    私の理解:

    #2 の表に という名前の列が追加されAreaます。同じ強度レベルを持つ特定のコンポーネントのピクセル数をカウントします。これは、同じ強度レベルを持つコンポーネント グループ内のピクセルの集合のようなものです。

    4.「最後に、面積関数の変化率の局所最小値である強度レベルが、MSER を生成するしきい値として選択されます。出力では、各 MSER は局所強度最小値 (または最大値) の位置としきい値によって表されます。 "

面積関数の変化率の極小値を取得するにはどうすればよいですか?

MSERの実装方法と内容を理解するのを手伝ってください。私の理解を自由に修正してください。ありがとう。