외국어 번역 함수 만들기
소스 코드 'step_3_1.py'를 활용하여 외국어 번역 함수를 만들어 봅시다. 비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_2.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하면 문자 인식 결과가 한국어로 변역됩니다.
from pathlib import Path
import deepl
from step_1 import IN_DIR
from step_2_2 import read_text
def read_text_translated(path: Path) -> list: # 06
text_list = read_text(path) # 문자 인식 함수 # 07
DEEPL_KEY = "37d1c222-b030-40a9-86e2-8635b079ea62:fx" # DEEPL API KEY
tran = deepl.Translator(DEEPL_KEY)
result = [] # 10
for coords, text, prob in text_list:
resp = tran.translate_text(text, target_lang="KO") # 12
result.append((coords, resp.text, prob)) # 13
return result
if __name__ == "__main__":
path = IN_DIR / "ocr.jpg"
print(read_text_translated(path))
[실행결과]
[([[85, 288], [1088, 288], [1088, 457], [85, 457]],
'채식주의자 되기',
0.9823604886339942), ([[77, 417], [1159, 417], [1159, 574], [77, 574]],
'큰 실수를 저지른 스테이크',
0.4830981879580033)]
06 이미지 파일에서 문자를 인식하고, 한국어로 번역한 결과를 반환하는 함수 read_text_translated()를 정의합니다.
07 소스 코드 'step_2_2.py'에서 불러온 함수 read_text()를 사용해 path 경로를 이미지 파일에서 문자를 인식합니다.
10 비어있는 리스트를 만들고, 변수 result에 저장합니다. 이 변수에 번역된 결과를 저장합니다.
12 deepl 패키지의 함수 translate_text()를 사용하여 변수 text에 저장된 문서 인식 결과를 한국어로 변역합니다. 이때 매개변수 source_lang를 생략하면 Deepl, API가 입력 언어를 판단합니다.
13 리스트 result에 인식된 문자의 좌표(coords), 번역된 결과(resp.text), 인식률(prob)를 튜풀 형식으로 추가합니다.
실행 결과로 출력된 리스트에 이미지에서 인식한 문자의 위치와 번역 결과, 인식률이 저장되어 있습니다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
| 번역 기능이 추가된 문자 인식 웹 앱 만들기 (0) | 2026.01.21 |
|---|---|
| 이미지에 번역된 문자 출력하기 (0) | 2026.01.18 |
| DeepL 번역 기능 추가하기 (0) | 2026.01.12 |
| 문자 인식 웹 앱 만들기 (0) | 2026.01.09 |
| 문자 인식 프로그램(2) (0) | 2026.01.05 |