Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 명령어
- 기초
- conda
- react
- 기존 모델 학습
- 함수
- 파이썬 pool
- javascript
- python 기초
- Anaconda
- EasyOCR
- python 멀티프로세싱
- 파이썬 학습 테스트
- python 학습
- 파이썬 기초
- easyocr 기존 모델
- 설치
- 파이썬
- 리액트
- 자바스크립트
- 파이썬 멀티프로세싱
- python pool
- easyocr 기존 모델 학습
- 가상 환경
- Java
- 자료형
- python multiprocessing
- multiprocessing
- python
- python easyocr 학습
Archives
- Today
- Total
귀찮아서가끔하는블로그
[Python] easyocr 사용자 모델 학습하기 - 학습데이터 생성 본문
반응형
easyocr 사용자 모델 학습하기 - 학습데이터 생성
지난 포스팅에서 easyocr을 사용하는 법을 다뤘다.
https://y-unknow94.tistory.com/21
[python] easyocr 사용해보기
easyocr 사용해보기 easyocr을 사용하기 전에 OCR이 무엇인지 알아보자 OCR이란? 보통 컴퓨터가 2진법(0/1) 데이터를 폰트를 통해 인간이 인식할 수 있는 형태로 글자를 보여 준다면, OCR은 그 반대로 인
y-unknow94.tistory.com
easyocr의 인식률이 생각보다 좋지 않아 모델 학습을 할 필요성이 있었다.
이번 포스팅에서는 easyocr 학습데이터 생성하는 법을 다뤄보도록 할 것이다.
1. 프로젝트 설치 및 환경 구축
# 소스코드 내려받기
$ git clone https://github.com/Belval/TextRecognitionDataGenerator.git
# 개발환경 구축
$ pip install -r requirements.txt
# 개발환경 구축 (수기 관련 문자열 지원 필요시)
$ pip install -r requirements-hw.txt
2. 학습 데이터 생성하기
# 언어설정(-l ko) 한글 학습데이터 생성
$ python trdg/run.py -c 10 -l ko
* trdg/fonts/ko폴더에 폰트를 다운받아 넣으면 학습데이터 생성 시 폰트가 적용된다.

데이터 생성 옵션
No
|
Arguments
|
Description
|
1
|
-i, --input_file
|
기본으로 제공되는 학습 단어 모음(dictionaries)이 아닌, 직접 구축한 학습 단어 모음을 사용하고 싶을 때 사용
(단, 학습 단어 모음을 지정하게 되면, 그에 맞게 반드시 -l을 이용해 학습데이터 생성 언어도 변경 필요) |
2
|
--output_dir
|
생성데이터를 저장하는 위치를 지정할 수 있으며, 기본값은 '/out' 디렉토리이다.
|
3
|
-c, --count
|
생성할 학습 데이터의 개수로, 기본값은 1,000
|
4
|
-l, --language
|
학습데이터의 언어를 변경하고자 할 때 사용
|
5
|
-t, --thread_count
|
학습데이터 생성 시 사용할 CPU 코어의 개수
|
6
|
-f, --format
|
생성되는 이미지 사이즈로, 기본값은 32 pixel
|
7
|
-ft, --font
|
생성할 학습데이터에 사용할 특정 폰트파일 지정 시 사용
(단, 여러 폰트로 생성하고자 할 경우 특정 폰트파일 지정을 할 필요가 없다) |
run.py 실행 시 에러 발생 (opencv 버전 문제)
Traceback (most recent call last):
File "trdg/run.py", line 15, in <module>
from trdg.data_generator import FakeTextDataGenerator
File "trdg/../trdg/data_generator.py", line 6, in <module>
from trdg import computer_text_generator, background_generator, distorsion_generator
File "trdg/../trdg/background_generator.py", line 1, in <module>
import cv2
File "/usr/local/lib/python3.6/dist-packages/cv2/__init__.py", line 181, in <module>
bootstrap()
File "/usr/local/lib/python3.6/dist-packages/cv2/__init__.py", line 175, in bootstrap
if __load_extra_py_code_for_module("cv2", submodule, DEBUG):
File "/usr/local/lib/python3.6/dist-packages/cv2/__init__.py", line 28, in __load_extra_py_code_for_module
py_module = importlib.import_module(module_name)
File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/local/lib/python3.6/dist-packages/cv2/gapi/__init__.py", line 290, in <module>
cv.gapi.wip.GStreamerPipeline = cv.gapi_wip_gst_GStreamerPipeline
AttributeError: module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline'
해결
#기존 opencv 삭제
pip uninstall opencv-python
#4.5.5.64 버전 opencv 설치
pip install opencv-python==4.5.5.64
다시 실행 시 정상 동작
python trdg/run.py -c 10
/usr/local/lib/python3.6/dist-packages/requests/__init__.py:104: RequestsDependencyWarning: urllib3 (1.26.9) or chardet (2.3.0)/charset_normalizer (2.0.12) doesn't match a supported version!
RequestsDependencyWarning)
100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████| 10/10 [00:00<00:00, 39.81it/s]
python trdg/run.py -c 10 -l ko
/usr/local/lib/python3.6/dist-packages/requests/__init__.py:104: RequestsDependencyWarning: urllib3 (1.26.9) or chardet (2.3.0)/charset_normalizer (2.0.12) doesn't match a supported version!
RequestsDependencyWarning)
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████| 10/10 [00:00<00:00, 296.89it/s]
python trdg/run.py -c 1000 -l ko
/usr/local/lib/python3.6/dist-packages/requests/__init__.py:104: RequestsDependencyWarning: urllib3 (1.26.9) or chardet (2.3.0)/charset_normalizer (2.0.12) doesn't match a supported version!
RequestsDependencyWarning)
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 1000/1000 [00:02<00:00, 389.66it/s]
결과 저장 디렉토리 '/out'에는 임의의 단어로 구성된 영어 문자열 데이터가 생성

참고 사이트 : https://davelogs.tistory.com/70
반응형
'Python' 카테고리의 다른 글
[Python] easyocr 사용자 모델 학습하기 - 모델 학습 (2) | 2022.07.14 |
---|---|
[Python] easyocr 사용자 모델 학습하기 - 학습데이터 변환 (0) | 2022.07.13 |
[python] multiprocessing (Pool) (0) | 2022.07.08 |
[python] flask api 호출 테스트 (0) | 2022.07.06 |
[python] flask를 이용한 python api 만들기 (0) | 2022.07.04 |
Comments