안녕,
저는 Python 프로그래머가 아니기 때문에 경험이 많은 분들의 도움/지도를 구합니다. 결과적으로 제약 업계를 비롯한 다양한 산업 분야의 많은 고객에게 서비스를 제공하는 시장에 훌륭한 추가 기능이 될 수 있을 것입니다.
배경:
많은 회사에서는 담당자가 손으로 쓴 숫자와 주석을 미리 정의된 구조의 종이에 입력한 후 스캔하여 PDF 파일로 변환하는 절차를 운영하고 있습니다. 예시를 첨부했습니다. 이러한 입력 정보는 추출 및 분석되어야 합니다.
문제는 스캔한 문서가 PDF 이미지이기 때문에 PDF 가져오기 마법사를 통해 가져올 수 없다는 것입니다. 또한, 손으로 쓴 코드는 정확하게 식별하기 어려울 수 있습니다. 현재 많은 제약 회사의 해결책은 직원들이 데이터를 직접 입력해야 한다는 것입니다. 때로는 두 시간씩, 때로는 일주일에 두세 번 정도 입력해야 합니다. 정보의 일부라도 자동으로 추출할 수 있는 옵션이 있다면 큰 도움이 될 것입니다.
좀 조사해 봤는데, 파이썬을 사용해서 PDF에서 이미지를 추출한 후, 몇 가지 패키지를 사용해서 이미지에서 텍스트를 추출할 수 있다고 합니다. 제가 찾은 방법은 다음과 같습니다.
- pytesseract(OCR 엔진)와 pdf2image(PDF 페이지를 이미지로 변환)를 설치합니다.
- 워크플로:
- PDF 페이지를 이미지로 변환합니다.
- pytesseract를 사용하여 각 이미지에 OCR을 실행합니다.
- 추출된 텍스트를 파일에 저장하거나 추가로 처리합니다.
여기서 도움/지원이 필요합니다. 첨부된 문서를 개념 증명(PoC)으로 활용하는 것이 목표입니다. 만약 효과가 있다면 추가 기능을 만들어 마켓플레이스에 출시할 수도 있습니다.
저는 이것이 많은 회사에 큰 위안이 될 것이고, 그들이 JMP를 더욱 고수하게 만들 것이라고 확신합니다.
자원봉사자가 있나요?
@폴_넬슨
PS: (Copilot에서)
아래는 pdf2image 와 pytesseract를 사용하여 스캔한 PDF를 텍스트로 변환하는 완전한 Python 스크립트입니다.
파이썬
pdf2image에서 convert_from_path 가져오기
pytesseract 가져오기
# 스캔한 PDF 파일의 경로
pdf_path = '스캔된_문서.pdf'
# PDF 페이지를 이미지로 변환
페이지 = convert_from_path(pdf_path)
# 추출된 텍스트를 저장할 변수를 초기화합니다.
추출된 텍스트 = ""
# 각 페이지를 반복하고 OCR을 적용합니다.
enumerate(pages, start=1)의 page_number, page에 대해:
텍스트 = pytesseract.image_to_string(페이지)
추출된_텍스트 += f"\n--- 페이지 {페이지_번호} ---\n{텍스트}\n"
# 추출된 텍스트를 파일에 저장합니다
open('extracted_text.txt', 'w', encoding='utf-8')을 f로 설정:
f.write(추출된 텍스트)
print("OCR 추출이 완료되었습니다. 텍스트가 extracted_text.txt에 저장되었습니다.")
pytesseract는 PDF의 타이핑된 부분에만 작동할 것 같습니다. 필기 인식에는 더 나은 기능이 필요할 것 같습니다. 이 링크가 참고가 될 수 있을까요?