본문 바로가기

직접 만든 소프트웨어

(인공지능 버전)화면 글자를 인식하여 추출하는 프로그램

반응형

1. 개요

 

일전에  이미지속 문자를 추출해주는 프로그램을 만들어 공개한 적 있습니다.


화면에 보이는 글자를 인식하여 추출해 주는 프로그램 (choogo.net)(링크)

 

화면에 보이는 글자를 인식하여 추출해 주는 프로그램

1. 개요. PDF나 그림, 문서 등에서 글자를 복사해서 붙여넣어야 하는 경우가 많습니다.그런데 원본에 복사방지 기능이 적용되어 있거나 이미지나 동영상 등 아예 복사를 할 수 없는 것에서 문자

www.choogo.net

 


 

위 프로그램은 전형적인 OCR 인식 툴로서 문자를 인식하기 위해 오픈소스 OCR인 Tesseract OCR 을 사용합니다.

근데 아래에도 다시 언급하겠지만 이 OCR 기술의 태생적인 한계로 인해 문자 가독성이 그리 좋지는 않습니다.

그런 가독성 문제를 극복하기 위해 매개변수를 조절하여 가독성을 높일 수 있도록 만들었지만 아무리 매개변수를 조절하여도 인식률이 현저히 떨어져서 문자가 많은 이미지의 경우에는 출력결과에서 틀린곳을 일일이 점검해야 하는데..오히려 이 과정이 시간이 더 걸리기도 했습니다.

 

그래서 새로 만들게 되었습니다.

 

 

 

2. 프로그램 설명

화면 구성은 기존의 OCR 방식 UI에서 조금 변경하여 아래와 같이 만들었습니다. 

 

 

 

기존의 OCR방식은 타겟이미지에서 문자패턴과 일치하는 부분을 찾아 문자로 인식하는 방식이므로 패턴에 없는 폰트의 문자(손으로 쓴 글씨나 디자인 심볼 등)은 제대로 읽어낼 수 없었고 오히려 문자가 아닌것을 문자로 간주하는 경우도 발생기도 했습니다.

 

그에 비해 이번에 만든건 Google Cloud Vision의 API를 활용해서 만들었는데 기존의 OCR 방식과 다르게 인공지능이 이미지속의 글자를 찾는 방식으로 글자를 인식하므로 위와 같은 오류가 거의 없으며 사람도 읽기 어려운 샘플이 아니라면 대체로 인식이 다 가능한것 같습니다.

 

 

다만, 이 프로그램을 사용하기 위해서는 Google Cloud Vision의 API 키를 발급받아야 하는데 이 과정이 꽤 번거롭습니다.

키를 발급받으면 JSON파일로 다운로드 할 수 있는데 프로그램에서 이 키를 등록하여야만 사용이 가능합니다.

참고로 Google Cloud Vision 현재 과금 정책에서는 문자인식의 경우 무료로 월 1000건의 사용이 가능하고 그 이상은 과금이 되므로 주의하셔야 합니다.

 

 

 

3. 사용법

 

사용방법은 다음과 같습니다.

  • Google Cloud Vision에 가입하여 API 키를 발급 받고 JSON파일로 다운로드 합니다. (중요!!)
  • 프로그램을 실행 후 API 키를 등록합니다.
  • '영역지정' 버튼을 사용해서 문자를 인식할 영역을 지정합니다.
  • '텍스트 추출' 버튼을 사용해서 인식된 영역에서 문자를 추출합니다.

 

 

 

4. 다운로드

 

!!! 주의 !!!

개인이 만든거라 100% 바이러스 백신 프로그램에 감지될겁니다.

제가 만들었는데도 제 컴퓨터에서조차 바이러스 프로그램일수 있다며 삭제되더군요;;

(실시간 감시를 끄고 다운을 받아야 하며 몇번의 경고를 넘긴뒤에야 다운이 되고 그마저도 다운이 완료되어 실행을 해도 신뢰할수 없는 게시자 경고를 무시하고 넘어가는 난리를 쳐야 사용 할 수 있습니다..)

해결방법은 제가 프로그램을 빌드할때 인증서를 발급받고 프로그램 빌드하는 건데..인증서 발급 비용이 꽤 들어가서 포기했습니다..

 

하지만 위험한 코드는 절대 없음을 분명히 말씀드립니다.!

 

 

Capture Vision(v1.1).zip.001
19.00MB
Capture Vision(v1.1).zip.002
2.28MB

 

5. 성능 테스트

 

아래는 이 프로그램으로 어디까지 인식이 가능한지를 테스트를 해본 결과입니다.

아래의 테스트 이미지들은 모두 기존의 OCR 방식로는 거의 인식 불가능했던 것들이라고 생각하시면 됩니다.

 

게임 화면 테스트

 

악필 인식 테스트

 

 

비스듬한 이미지 테스트

 

 

캡챠 이미지 테스트

 

사람도 읽기 어려운건 인공지능도 잘 못읽어 오류가 좀 있는것을 볼 수 있으며 사람이 읽을 수 있는 수준의 글자들은 인공지능도 잘 인식하는것을 확인할 수 있었습니다.

댓글