-
[한글 OCR] 2.2 글자 학습카테고리 없음 2022. 9. 3. 22:00
이전 시간에는 한 글자만 데이터를 만들어서 학습을 진행했는데
이번에는 아래 조합으로 데이터를 만들고 학습하려고 한다.
- 길이 -
1. 한 글자
2. 단어
- 조합 -
1. 한글
2. 영어
3. 숫자(숫자 + 특수문자)
4. 한글 + 영어
5. 한글 + 숫자
- 크기 -
1. 소
2. 중
3. 대
한글 단어는 국어국립원에서 데이터를 얻고 중복값을 제거 후 테스트파일로 만들었다.
데이터를 만들 테스트 파일이다.
en.txt4.64MBen_one.txt0.00MBko_one.txt0.01MBkoAndNum_one.txt0.01MBnum.txt0.00MB사용한 명령어다.
한글 한글자 python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 64 -t 8 --output_dir out/vaild/Ko_one_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 96 -t 8 --output_dir out/vaild/Ko_one_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 128 -t 8 --output_dir out/vaild/Ko_one_128/ V 한글 한글자 여러개 python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 64 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/Ko_ones_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 96 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/Ko_ones_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_one.txt -k 5 -rk -na 2 -f 128 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/Ko_ones_128/ V 한글 단어 python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 64 -t 8 --output_dir out/vaild/Ko_dic_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 96 -t 8 --output_dir out/vaild/Ko_dic_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 128 -t 8 --output_dir out/vaild/Ko_dic_128/ V 한글 단어 여러개 python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 64 -t 8 -w 5 -r --output_dir out/vaild/Ko_dics_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 96 -t 8 -w 5 -r --output_dir out/vaild/Ko_dics_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/ko_dic.txt -k 5 -rk -na 2 -f 128 -t 8 -w 5 -r --output_dir out/vaild/Ko_dics_128/ V 영어 한글자 여러개 python run.py -c 100000 -fd fonts/ko -dt dicts/en_one.txt -k 5 -rk -na 2 -f 64 -t 8 -w 20 -r -sw 0 --output_dir out/vaild/En_ones_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en_one.txt -k 5 -rk -na 2 -f 96 -t 8 -w 20 -r -sw 0 --output_dir out/vaild/En_ones_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en_one.txt -k 5 -rk -na 2 -f 128 -t 8 -w 20 -r -sw 0 --output_dir out/vaild/En_ones_128/ V 영어 단어 python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 64 -t 8 --output_dir out/vaild/En_dic_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 96 -t 8 --output_dir out/vaild/En_dic_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 128 -t 8 --output_dir out/vaild/En_dic_128/ V 영어 단어 여러개 python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 64 -t 8 -w 5 -r --output_dir out/vaild/En_dics_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 96 -t 8 -w 5 -r --output_dir out/vaild/En_dics_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/en.txt -k 5 -rk -na 2 -f 128 -t 8 -w 5 -r --output_dir out/vaild/En_dics_128/ V 숫자 한글자 여러개 python run.py -c 100000 -fd fonts/ko -dt dicts/num.txt -k 5 -rk -na 2 -f 64 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/nums_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/num.txt -k 5 -rk -na 2 -f 96 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/nums_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/num.txt -k 5 -rk -na 2 -f 128 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/nums_128/ V 숫자 + 한글 python run.py -c 100000 -fd fonts/ko -dt dicts/koAndNum_one.txt -k 5 -rk -na 2 -f 64 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/koAndnums_64/ V python run.py -c 100000 -fd fonts/ko -dt dicts/koAndNum_one.txt -k 5 -rk -na 2 -f 96 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/koAndnums_96/ V python run.py -c 100000 -fd fonts/ko -dt dicts/koAndNum_one.txt -k 5 -rk -na 2 -f 128 -t 8 -w 10 -r -sw 0 --output_dir out/vaild/koAndnums_128/
모델을 학습하려고 했는데 학습이 진행이 안되서 원인을 찾았다.
Vaild 데이터가 너무 많아서 학습하는데 오래걸리는 것을 확인했다.
그래서 Vaild 데이터를 90% 줄이고 학습을 진행하려고 한다.
데이터가 많아서 학습하는데 오랜시간이 걸렸다.
아래는 도로명 주소를 캡처해서 인식한 결과다.
아래는 영수증을 촬영해서 인식한 결과다.
.
그래도 이전보다 많이 개선되었지만, 영수증 인식은 많이 부족해 보인다.
학습을 해보니 데이터가 다양하고 많을 수 록 결과가 좋다는 것을 알았다.
또한 그만큼 학습하는데 오랜시간이 걸리는 것을 알게되었다.
그래서 이번 OCR은 영수증을 인식하는 데 중점으로 하는 것을 목표로 설정했다.
앞으로 계획은 직접 영수증을 라벨링해서 다시 학습하려고 한다.