2014-10-28 3 views
4

이미지 (예 : 신문, 스캔 신문, 잡지 등)가있는 경우 텍스트가 포함 된 지역을 어떻게 감지합니까? 나는 그 지역을 알아야만 그것을 제거하고, 텍스트 인식을 할 필요가 없습니다.이미지에서 텍스트 영역을 감지하는 방법은 무엇입니까?

이 텍스트 영역은 내 응용 프로그램에서 의미가 없기 때문에 이러한 텍스트 영역을 제거하여 내 기능 추출 절차의 속도를 높이고 자합니다. 누구든지이 작업을 수행하는 방법을 알고 있습니까?

아직 Matlab에서 수행 할 수 있다면 좋을 것입니다!

최고! 자연 이미지의

enter image description here

+3

당신이 예를 들어 이미지를 보여줄 수 : enter image description here 내가 SWT.m의 에지 맵 계산을위한 이러한 매개 변수를 사용 :

는이 결과를 얻으려면? 텍스트의 배경이 균일합니까? –

+0

안녕하세요, 하나의 예제 이미지를 업로드했습니다. 어떤 제안? – KimLeung

답변

1

텍스트 검색은 컴퓨터 비전 커뮤니티 연구의 활성 영역입니다. U는 ICDAR 논문을 참조 할 수 있습니다. 하지만 당신의 경우에는 충분히 단순해야한다고 생각합니다. 신문이나 잡지의 텍스트를 볼 때 고정 된 크기 여야하고 가로 방향이어야합니다.

따라서 고정 된 크기, 예를 들어 32x32의 스캔 창을 적용 할 수 있습니다. 그것에 텍스트가있는 양성 윈도우에 대한 ICDAR 2003 교육 데이터 세트를 교육하십시오. U는 색과 그라디언트의 작은 피쳐 세트를 사용하고 텍스트가있는 창에 대해 긍정적이거나 부정적인 결과를 줄 수있는 SVM을 훈련시킬 수 있습니다.

http://crypto.stanford.edu/~dwu4/ICDAR2011.pdf으로 이동하십시오. 코드의 경우 홈 페이지를 사용해보십시오

+0

정보를 제공해 주셔서 감사합니다. 나는 그것을 곧 시도 할 것이다. – KimLeung

1

Matlab의 Computer Vision System Toolbox에있는 example은 MSER 영역을 사용하여 텍스트를 검색하는 방법을 보여줍니다.

1

이미지가 잘 이진화되어 있고 텍스트의 일반적인 크기를 알고있는 경우 HorizontalRunLengthSmoothingVerticalRunLengthSmoothing 알고리즘을 사용할 수 있습니다. 그것들은 오픈 소스 라이브러리 Aforge.Net에서 구현되지만 Matlab에서 다시 구현하기 쉽습니다. 이 알고리즘의 결과 이미지가 교차하면 영역에 텍스트가 포함되어 있다는 것을 알 수 있지만 완벽하지는 않지만 빠릅니다.

2

Stroke Width Transform (SWT)을 사용하여 텍스트 영역을 강조 표시 할 수 있습니다. 내 MEX 구현을 사용 은 여러분의 필요에 결과 마스크를 조정할 수 있습니다 당신이 할 수있는

img = imread('http://i.stack.imgur.com/Eyepc.jpg'); 
[swt swtcc] = SWT(img, 0, 10); 

SWT.m의 에지 맵 추출 및 이미지 필터링의 내부 매개 변수를 사용하여 재생, here을 기록했다.

edgeMap = single(edge(img, 'canny', [0.05 0.25])); 
관련 문제