Naver Craft와 deep-text-recognition-benchmark를 통한 OCR - 2

조현민·2024년 1월 10일
0

OCR

목록 보기
3/4

📕서론

앞의 포스팅에서 Craft의 학습 과정에대해 알아 보았다.
손글씨 OCR도 진행 하고싶었지만 손글씨는 학습 방식에 맞지않는 특징들이 많아 추후에 진행 해보도록 하겠다.

📗 Craft의 Base모델

clovaai에는 공개된 데이터 SynthText, IC13, IC17을 통해 학습한 기본 모델을 제공해 주고있다. 우선 3가지 전부 테스트 해 보았는데 General model의 성능이 가장 좋아보였다.
해당 모델은 Craft👈에서 다운 받을 수 있다.

🎈 Craft 모델 Inference

clovaai의 오픈소스와 모델을 다운 받았으면 테스트를 진행할 수 있다.

python test.py --trained_model=path/to/your/model/folder/model_name.pth --test_folder=path/to/your/data/folder/

글자가 있는 이미지를 넣어 테스트 해보겠다

  • 원본이미지 (test_img.jpg)

1. Inference 결과

👉Region Box (res_test_img.jpg)

👉Mask (res_test_img_mask.jpg)

👉Region (res_test_img.txt)

11,35,68,35,68,58,11,58
71,35,111,35,111,58,71,58
114,37,172,37,172,58,114,58
342,53,400,53,400,70,342,70
...

위와 같이 3가지 결과 파일이 Output으로 나온다. 앞의 포스팅을 보면 Mask Map이 왜 저렇게 나오는지 이해하기 쉬울것이다.

글자가 많고 촘촘하게 있어도 좋은 결과를 내고있는 General Model의 결과를 볼 수 있다.

2. 손글씨 Inference 결과

  • 여러가지 테스트 해본 결과 손글씨도 어지간한 악필이 아닌 이상 높은 성능을 보여준다.
  • 다만 인쇄체에 비해 '1', 'l', 'I'와 같은 문자에 취약하다.
  • 표 안에 글씨가 있거나 낱자간의 경계가 명확하지 않으면 Detect가 잘 안된다.

🔔결론

  • clovaai의 General Model 성능도 좋다.
  • 개발 하고자 하는 데이터에 General Model을 사용하여도 높은 퍼포먼스가 나왔다.
  • 필요시 추가 학습을 진행 하겠지만 큰 이슈가 발견되지 않는 이상 General Model을 사용해도 문제가 없을것이다.

출처

이미지 출처 : https://blog.naver.com/PostView.naver?blogId=typrinter&logNo=221106389288

profile
개발노트

0개의 댓글