디지털인문학 여름 워크숍 3·4차시
부산대학교 · 2026년 8월 11–12일 · 비정형 사료의 디지털화와 OCR 방법론
목차
개요
| 항목 | 내용 |
|---|---|
| 3차시 | 2026. 8. 11.(화) 15:00 · 120분 |
| 4차시 | 2026. 8. 12.(수) 15:00 · 120분 |
| 장소 | 부산대학교 인문관 201호 강의실 |
| 준비물 | 개인 노트북, Google 계정, API 키 2종(사전 발급) |
| 실습 환경 | Google Colab — 설치할 프로그램 없음 |
스캔본 PDF에는 글자가 들어 있지 않습니다. 이틀에 걸쳐 그것을 눈과 코드로 확인하고, Google Cloud Vision과 Gemini를 이어 붙여 한 쪽에서 텍스트를 뽑아내는 전 과정을 돌려 봅니다. 코딩 경험이 없는 참가자를 기준으로 설계했습니다.
강의 전 준비
Vision 키 파일(
.json)은 Google Drive의keys폴더에 올려 두어야 합니다. 코랩은 본인 PC의 바탕화면을 볼 수 없습니다. 발급 안내 5-2절을 확인해 주십시오.
두 키는 생김새가 다릅니다. 이 둘을 바꿔 넣는 것이 가장 흔한 실수입니다.
| 키 | 형태 | 두는 곳 |
|---|---|---|
| Vision API 키 | 파일 (.json) |
Google Drive의 keys 폴더 |
| Gemini API 키 | 문자열 한 줄 | 코랩 왼쪽 열쇠 아이콘(보안 비밀), 이름은 GEMINI_API_KEY |
보안 비밀 이름은 대소문자와 밑줄까지 같아야 하며, 등록할 때 노트북 액세스 토글을 켜야 합니다.
절차는 API 키 발급 안내에 그림과 함께 한 곳에 정리되어 있습니다. 당일에 하면 시간이 모자랍니다.
3차시 — 비정형 사료의 디지털화
Google Colab 실행 환경과 API 키 등록에서 시작해, 현대 한국어 인쇄 자료의 이미지 변환부터 텍스트 추출까지 기본 공정을 시연하고 실습합니다.
실습 노트북
위에서부터 차례로 엽니다. 각 노트북 맨 위에 파일 → 드라이브에 사본 저장 안내가
있습니다. 원본은 읽기 전용이므로 반드시 사본에서 작업합니다.
| 노트북 | 하는 일 | 시간 |
|---|---|---|
| 텍스트 레이어 확인 | PDF 안에 글자가 몇 자 들어 있는지 센다 | 약 10분 |
| OCR 실습 | PDF → 사진 → 글자 → 문맥 교정 | 약 40분 |
직접 고치는 칸은 ③ 하나뿐입니다. 나머지는 ▶ 만 누르면 됩니다. 이날 참가자가 직접 돌리는 것은 ⑤칸까지이고, 열쇠가 필요한 ⑥칸부터는 화면으로 보신 뒤 4차시에 각자 돌립니다.
실습 사료
| 파일 | 자료 | 성격 |
|---|---|---|
drag_A_busan60.pdf |
자료로 본 부산광복 60년 201~205쪽 | 글자층 없음. 344쪽 전체가 0자 |
drag_B_gusulsa.pdf |
구술로 보는 부산음악의 역사 발췌 | 글자층 있음. OCR이 필요 없음 |
같은 뷰어에서 하나는 긁히고 하나는 안 긁힙니다. 그 차이가 이 시간의 출발점입니다. 노트북 ①칸이 자동으로 내려받으므로 따로 준비할 것은 없습니다.
전 과정은 A의 201쪽 「여성사회의 변화」 한 쪽으로 돌립니다. 순한글 · 가로쓰기 · 단 하나 · 사진 없음 — 가장 잘 되는 조건을 일부러 고른 것입니다.
강의 자료
4차시 — 현대어·근대어별 OCR 방법론과 파이썬 실무
어제는 글자만 있는 쪽이었습니다. 실제 사료가 그렇게 생긴 경우는 드뭅니다. 사진과 목록이 든 쪽을 직접 돌려 보고, 세로쓰기·국한문 혼용 근대 지면까지 사다리를 올라가며 어디서 무너지는지 봅니다.
어제 만든 사본이 아니라 아래 링크에서 새 노트북을 엽니다. 런타임이 새로 뜨므로 ①칸부터 다시 실행합니다.
실습 노트북
| 노트북 | 하는 일 | 누가 |
|---|---|---|
| 4차시 실습 | 사진 있는 쪽과 목록 있는 쪽을 넣고, 몇 개가 남았는지 센다 | 각자 |
| 학보 사다리 | 현대 → 근대 기사면 → 명단면으로 자료를 바꿔 가며 돌린다 | 강사 화면 |
직접 고치는 칸은 실습 노트북 ③ 하나뿐으로 어제와 같습니다. ⑤칸부터 열쇠가 필요합니다. 어제는 화면으로만 보셨던 자리입니다.
실습 사료
| 자료 | 무엇이 들어 있나 | |
|---|---|---|
| A | 부산광복 60년 발췌본 3쪽 (원본 203쪽) | 본문 + 사진 + 사진 설명 |
| B | 내사랑 부산바다 243쪽 | 지명 대조 목록 15줄 + 사진이 목록을 가름 |
A는 3차시에 긁어보신 그 파일로, 노트북 ①칸이 3차시 폴더에서 그대로 받아옵니다. B의 목록은 「옛 지명(한자) ‑ 일제강점기 지명(한자)」 꼴로 짝을 이룹니다. 짝이 맞으니 몇 개가 살아남았는지 셀 수 있고, ⑦칸이 그 일을 합니다.
시연에 쓰는 근대 지면은 다음과 같습니다.
| 파일 | 단 |
|---|---|
busan60_p201.png |
1단 — 3차시의 그 쪽 |
hakbo1957_p1.jpg |
2단 — 부산대학보 1957 1면 |
hakbo1957_p3.jpg |
3단 — 같은 신문 3면, 졸업생 명단 |
강의 자료
- 4차시 슬라이드 (PDF)
- 4차시 읽기자료 (PDF) — 홀리(2009) · 이서준 외(2024) 두 편 정리
읽기자료는 강의 전에 읽어 오지 않으셔도 됩니다. 강의에서 짚는 대목만 추려 둔 것이라, 끝난 뒤에 다시 보시는 편이 낫습니다.
자주 막히는 곳
드라이브 keys 폴더에 파일이 없다. 바탕화면에만 두면 코랩이 읽지 못합니다.
발급 안내 5-2절을 확인합니다.
보안 비밀 이름이 다르다. 노트북 ②칸이 찾는 이름은 GEMINI_API_KEY 입니다.
대소문자와 밑줄까지 같아야 합니다.
노트북 액세스가 꺼져 있다. 토글을 켜지 않으면 저장은 되어도 값을 읽지 못합니다.
칸을 건너뛰었다. 앞 칸이 만든 것을 뒤 칸이 받아 씁니다. ④를 건너뛰고 ⑥을 누르면 「그런 이름 없다」는 오류가 납니다. 고장이 아니라 순서 문제입니다.
빈 응답이 온다. 목록이 든 쪽에서 실제로 일어납니다. ⑥칸이 경고를 찍어 줍니다. 한 번 더 실행하면 대개 나옵니다. 본인 잘못이 아닙니다.
같은 말을 반복하며 길어진다. 이것도 ⑥칸이 잡아냅니다. 그 결과는 쓰지 않습니다.
비용
Vision은 월 1,000장까지 무료입니다. Gemini는 한 쪽에 몇 원 수준이며, 이틀 실습 분량이면 십원 단위입니다.
워크숍이 끝나고 더 쓸 일이 없으면 프로젝트를 종료하거나 서비스 계정 키를 삭제합니다. 자세한 것은 발급 안내 6절에 있습니다.
이 워크숍의 요지
줄어드는 것은 옮겨 적는 시간이지 대조하는 시간이 아닙니다. 기계는 빠르지만 틀리고, 틀린 자리를 스스로 알려주지 않습니다. 여기서 만드는 것은 완성된 판독문이 아니라 1차 가공물입니다.
3차시에는 틀리게 읽은 자리를 찾고, 4차시에는 없어진 자리를 찾습니다. 틀린 것은 눈에 띄지만, 없어진 것은 스스로 드러나지 않아 세어봐야 압니다. 에러도 나지 않고 결과물은 멀쩡해 보입니다.
파이프라인은 범용입니다. 자료가 바뀌어도 코드는 그대로고, 바뀌어야 하는 것은 지시문입니다. 그래도 넘지 못하는 선이 있습니다.
원본과 나란히 놓고 보는 습관이 도구를 쓰는 능력보다 중요합니다.
자료 저장소
전체 파일은 korean-ocr-lectures / 2026-08-pnu-workshop 저장소에서 관리합니다. 워크숍 이후에도 그대로 공개됩니다.