Tesseract로 자연어 처리하기 - ch01

한준수·2023년 6월 13일
0

Spring

목록 보기
1/8

📖Tesseract란?

  • 초기 HP 연구소는 개발 문자인식(OCR)으로 개발됨
    • C언어와 C++을 혼합하여 만들었으나, 현재 C++통합
  • 2000년 초반 HP로부터 지원 중단되어 프로젝트가 없데이트였으나, 2006년 이후 우리의 갓 구글이 다시 지원해줘서 업데이트를 시작했다.
  • Tesseract 3.x 단순 알고리즘을 통한 문자 인식
  • Tesseract 4.x 부터 학습 기반으로 딥러닝 알고리즘 적용
    • 적용된 알고리즘 LSTM
  • 최근 딥러닝 기술들은 학습데이터를 기반으로 정확도를 높이는 방법을 활용
  • Tesseract는 문자인식을 위한 학습한 데이터 제공

📖 Tesseract가 제공하는 학습모델 3가지

📌 Tessdata

  • 학습을 위한 기본 모델

📌 Tessdata-fast

  • 정확도보단 인식 속도들 중심으로 개발된 학습모델
  • 연산을 위한 데이터 타입을 Integer로 사용하여, 소수점 이하 연산 결과를 포기함

📌 Tessdata-best

  • 가장 인식률(정확도) 높은 학습모델
  • 연산을 위한 데이터 타입을 float로 사용하며, 소수점 이하 연산 처리함
  • 단, 인식 속도가 가장느림
  • 본 실습은 교육으로 속도를 크게 고려하지 않기에 Tessdata-best 학습모델을 사용

📖 Tesseract 다운로드

https://github.com/tesseract-ocr/tessdata_best

우선 위 링크를 들어간다

  • 한국어 인식 학습모델

    kor.traineddata : 가로로 작성된 문자 인식용 학습모델
    kor_vert.traineddata : 세로로 작성된 문자인식용 학습모델
    두개를 다운로드

모두 다운로드 받았으면 C:\model\tessdata 폴더에 저장하자.


📖 개발 도구 및 사용 프레임워크

📌 개발도구

  • Intelli J

📌 사용 프레임워크

  • Spring Boot Frameworks
  • Lombok
    • @ 어노테이션을 활용하여 코드 작성을 쉽고 간결하게 할 수 있다.
  • Tessract
  • Komaran
    • 자바 기반 인공지능 기술 중 자연어 처리 기술
      • 형태소 분석 및 명사 추출 실습 진행

0개의 댓글

관련 채용 정보