-2

色付きの背景画像からテキストを抽出しようとしています。私が試みている1つのアプローチはエッジ検出です。これを使用して、元のイメージを私が扱えるイメージに変換します。これにより、画像内のすべての色が除去され、エッジのみが残されます。OpencvでCanny Edge検出を使用して画像内のテキストを認識

私は私の問題は、私はこれらのイメージを取得した後、どのように私はこれらの画像の文字を追跡することができている

import cv2 
import numpy as np 
from matplotlib import pyplot as plt 

img = cv2.imread('messi5.jpg',0) 
edges = cv2.Canny(img,100,200) 

エッジの画像を取得するには、このコードを使うのか?どんな助けも素晴らしいだろう。ありがとうみんな

これらはあなたが非常にの先頭にある

enter image description here

元とエッジ

画像を検出したオリジナル画像のあるエッジ検出された画像

enter image description here

+2

画像をアップロードするには、質問を書くときに入力ダイアログの上部にある画像ボタンを使用するか、質問を書くときに 'ctrl-g'を押すだけで画像アップロードダイアログボックスを開くことができます。 – BHawk

+0

ありがとうございました –

+1

その画像は非常にグラフィックであり、不適切なものとしてフラグが立てられる可能性があります。あなたはそれをより少ないグラフィックイメージで置き換えることができます。この画像は、解決したい問題を示していますが、多くのユーザーを怒らせたり妨げたりする可能性があります。 – BHawk

答えて

1

コンピュータビジョンと機械学習の概念を含む長いプロセスです。ここで簡単で簡潔な答えで説明するにはあまりにも多くのことがあります。しかし、このオンラインを行うための優れたリソースの多くは、(下記参照)があります。

のpython: Simple Digit Recognition OCR in OpenCV-Python

C++:エッジのため、この画像のエッジ検出を使用して https://www.mkompf.com/cplus/emeocv.html

+0

回答ありがとうございました –

+0

これらの2つのリンクはあまり役に立ちません。文字がきれいな背景に孤立し、認識に焦点が当てられているが、OPは明らかに文字抽出の問題に直面しているケースを指す。 –

+0

@BHawkはimg proを学び、基本から機械学習を組み合わせることで、どこから始めるべきか教えていただけますか? –

1

は、時期尚早ですは、背景のエッジによって汚染されます。

ここ

はあなたが白に近いピクセルを選択することで得ることができるものである。

enter image description here

興味深いことに、同様の問題について投稿多くの人々は、エッジ検出は万能薬であると信じます。私の意見では、それは非常にしばしば浪費であり、領域の分割がはるかに適切です。

+0

しきい値でコードを共有できますか? – thewaywewere

+0

あなたが大きな助けになるコードを共有することができる場合 –

+0

また、テキストが異なる色である場合、そのテキストを識別する問題はないでしょうか? –

関連する問題