본문 바로가기

Back/Deep Learning

[Python] [CNN]점자번역 프로그램(7) - 정리

이전글에서 이어집니다.

 

지금까지의 과정은

  1. 이미지의 경로를 입력 받아오고
  2. 이미지를 불러와 알파벳으로 전환한 후
  3. 다시 반환하는 과정이었습니다.

이전의 코드에서 주석처리 된부분에 테스트용 이미지를 넣으면 다음과 같이 콘솔에서 실행 됩니다.

(케라스를 불러오며 load되는 글자는 제외했습니다.)

C:\ProgramData\Anaconda3\envs\ML\python.exe D:/ML/Project_f/braille_TF.py

#이미지 경로를 생성/복사합니다.
Images already exist!

#학습용데이터/검증용 데이터를 불러옵니다.
Found 887 images belonging to 27 classes.
Found 208 images belonging to 27 classes.

#모델을 불러와 검증 데이터로 acc를 확인합니다.
model accuracy: 0.9856

#모델의 softmax로 예측되는 값이 어떻게 알패벳으로 바뀌는지 보여줍니다.
0:a  1:b  2:c  
3:d  4:e  5:f  
6:g  7:h  8:i  
9:j  10:k  11:l  
12:m  13:n  14:o  
15:p  16:q  17:r  
18:s  19:t  20:u  
21:v  22:w  23:x  
24:y  25:z  26:   

#임시로 이미지를 잘라놓기 위한 폴더를 만듭니다.
already exist

#불러온 이미지를 짤라서 하나씩 예측합니다. index값, 알파벳, value값(정확도)를 제시합니다. 
Found 1 images belonging to 1 classes.
7 h 1.0
Found 1 images belonging to 1 classes.
4 e 0.9999976
Found 1 images belonging to 1 classes.
11 l 0.99967873
Found 1 images belonging to 1 classes.
11 l 0.99967873
Found 1 images belonging to 1 classes.
14 o 0.99999726
Found 1 images belonging to 1 classes.
26   0.99487215
Found 1 images belonging to 1 classes.
22 w 0.9999999
Found 1 images belonging to 1 classes.
14 o 0.99999726
Found 1 images belonging to 1 classes.
17 r 0.9999999
Found 1 images belonging to 1 classes.
11 l 0.99967873
Found 1 images belonging to 1 classes.
3 d 0.99999964
#각 값들은 result list에 append 됩니다.

#result list를 보여줍니다. 
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']

Process finished with exit code 0

 

 


 

팀원들이 만든 UI 기능들과 합쳐 다음과 같은 결과를 내놓았습니다.

점자 > 영문번역, 영문 점자>번역 두가지 기능을 선택합니다.

 

점자 영문> 번역선택시 드래그&드롭으로 이미지를 넣을 수 있고 넣은 이미지의 경로를 받아옵니다.

 

받아온 이미지를 표시하고 받아온 이미지에 해당하는 문자열을 반환합니다.

띄어쓰기 는 구현이 되어 있지만 대문자 표기의 경우 점자 표현방식이 달라 구현되어 있지 않습니다.

 

 


 

영문> 점자번역으로 바꾸면 다음과 같은 창이 나옵니다.

가운데 텍스트를 입력하고 CHANGE버튼을 누르면 아래창에 점자 이미지가 생성됩니다.

생성된 이미지는 정해진 경로로 자동으로 저장됩니다. 

이렇게 생성된 파일을 점자변역기능으로 다시 문자열로 확인 할 수 있습니다.