사진이나 캡처 속 한국어·영어 글자를 텍스트로 바꿔 줍니다. 사진이 서버로 전송되지 않습니다 — 인식 엔진과 언어 데이터를 이 사이트에서 내려받아 당신의 브라우저 안에서만 계산합니다. 횟수 제한·워터마크·가입 없음.
사진·캡처 속 한국어와 영어 글자를 읽어 편집할 수 있는 텍스트로 바꿔 줍니다. 오픈소스 OCR 엔진(Tesseract, Apache-2.0)과 언어 데이터를 이 사이트에서 내려받아 브라우저 안에서만 인식하므로 사진이 외부로 전송되지 않고, 횟수 제한이나 가입도 없습니다. 정면에서 찍은 고대비 인쇄 글자는 잘 읽지만 손글씨·기울어진 사진·저해상도 캡처는 오류가 많으니, 결과를 그대로 믿지 말고 창에서 직접 고쳐 쓰세요. 첫 실행에만 언어 데이터를 내려받고, 그 뒤로는 브라우저에 저장되어 바로 시작됩니다.
사진을 끌어다 놓거나 상자를 눌러 고르면 됩니다. 화면을 캡처한 직후라면 파일로 저장할 필요 없이 이 페이지에서 Ctrl+V(맥은 ⌘+V)로 바로 붙여넣을 수 있습니다. 윈도우 캡처 도구, 맥의 ⇧⌘4, 카카오톡 대화 캡처 모두 클립보드에 이미지로 들어오므로 그대로 붙여넣으면 됩니다. 여러 장을 한꺼번에 올리면 위에서부터 차례로 인식하고, 결과는 파일별 탭으로 나뉘어 나옵니다.
언어는 한국어+영어가 기본입니다. 한국 문서는 대개 영문 단어와 숫자가 섞여 있어서 둘을 함께 켜 두는 편이 정확합니다. 다만 언어를 하나만 켜면 인식할 후보가 줄어 조금 더 빠르고, 순수 영문 자료라면 영어만 고르는 쪽이 정확도까지 올라갑니다. 처음 한 번은 고른 언어의 데이터를 내려받느라 몇 초가 걸리고, 상자 아래에 정확한 용량이 표시됩니다. 한 번 받은 데이터는 브라우저에 저장되어 다음부터는 즉시 시작합니다.
결과는 편집할 수 있는 글 상자에 줄바꿈 그대로 들어옵니다. 잘못 읽은 글자를 그 자리에서 고친 뒤 복사하거나 .txt로 저장하세요. 여러 장을 처리했다면 파일 이름을 구분선으로 넣어 전체를 하나로 합쳐 복사·저장할 수도 있습니다. 오른쪽 아래 낮은 신뢰도 표시를 누르면 엔진이 자신 없어 한 단어에 표시가 붙으니, 그 부분만 원본 사진과 대조하면 검수 시간이 크게 줄어듭니다.
인식이 오래 걸릴 때는 중단을 누르면 그때까지 끝난 장의 결과는 남고 나머지가 취소됩니다. 진행 막대 옆에는 지금 무엇을 하는 중인지(엔진 불러오기 / 언어 데이터 / 인식)와 경과 시간이 함께 표시됩니다.
첫째, 정면입니다. 종이나 화면을 카메라 축과 나란히 두고 찍은 사진이 가장 잘 읽힙니다. OCR은 글자를 가로줄로 잘라 한 줄씩 읽는데, 비스듬히 찍으면 줄이 사다리꼴로 휘어 줄 자르기부터 어긋납니다. 책상에 놓인 종이를 앉은 자세로 찍으면 대개 위쪽이 좁아지는 사다리꼴이 되니, 폰을 종이 바로 위로 들어 화면 안에서 종이의 네 변이 직사각형에 가깝게 보이도록 맞춰 주세요.
둘째, 대비입니다. 흰 바탕에 검은 글자처럼 밝기 차가 큰 이미지가 유리합니다. 회색 배경에 연회색 글자, 사진 위에 얹힌 흰 글자, 형광펜으로 덧칠한 부분은 글자와 배경을 나누는 단계에서부터 실패하기 쉽습니다. 이럴 때 흑백 대비 강화를 켜면 회색조로 바꾼 뒤 가장 어두운 값과 밝은 값을 양 끝으로 늘려 주므로 눈에 띄게 좋아지는 경우가 많습니다.
셋째, 글자 크기입니다. 경험적으로 글자 높이가 화면 픽셀로 20px 이상이면 안정적이고, 30~40px이면 거의 완벽합니다. 10px 아래로 내려가면 획이 뭉개져 사람이 봐도 헷갈리는 수준이 됩니다. 원본이 작다면 이 도구가 자동으로 2배 확대해 주지만, 없는 정보를 만들어 내는 것은 아니므로 애초에 크게 찍는 편이 훨씬 낫습니다. A4 한 장을 통째로 담기보다 문단 단위로 나눠 찍으면 같은 해상도에서 글자가 두세 배 커집니다.
그림자를 없애세요. 실내에서 종이를 찍을 때 가장 흔한 실패 원인은 자기 몸이나 폰이 만든 그림자입니다. 종이 한쪽만 어두워지면 그 부분의 글자와 배경 밝기가 다른 쪽 배경 밝기와 겹쳐 버려서, 화면 전체에 같은 기준을 적용하는 이진화가 무너집니다. 창가의 간접광이나 방 전체를 밝히는 조명 아래에서, 광원을 등지지 말고 옆에 두고 찍으세요. 형광등 바로 아래에서 광택지를 찍으면 반사광이 하얗게 뜨니 각도를 조금 틀어 주세요.
초점을 확인하세요. 폰 카메라는 가까이 다가가면 초점이 흔들립니다. 화면에서 글자 부분을 한 번 탭해 초점을 맞추고, 셔터를 누른 뒤 사진을 확대해 획이 또렷한지 보세요. 흔들려 흐린 사진은 어떤 전처리로도 되살릴 수 없습니다. 손이 떨린다면 폰을 책 위에 올려놓거나 팔꿈치를 책상에 붙이고 찍으면 훨씬 안정적입니다.
필요한 부분만 잘라 주세요. 책상 위 잡동사니, 손가락, 다른 종이가 함께 담기면 엔진이 그 영역에서도 글자를 찾으려다 이상한 기호를 뱉습니다. 미리 사진 앱에서 글이 있는 영역만 잘라내면 정확도와 속도가 함께 좋아집니다. 이 도구는 자른 이미지를 그대로 받으므로, 잘라낸 뒤 붙여넣기만 해도 됩니다.
기울기는 미리 펴 두세요. 이 도구에는 자동 기울기 보정이 없습니다. 대신 폰 사진 앱 대부분에 회전·수평 보정 기능이 있으니, 사진의 글줄이 화면 가로선과 나란해지도록 몇 도만 돌려 주면 결과가 눈에 띄게 달라집니다. 스캐너 앱으로 사각형 보정(원근 보정)을 한 뒤 저장한 이미지라면 더할 나위 없습니다.
화면 캡처는 배율을 키우고 찍으세요. PDF나 웹페이지의 글을 옮기려는 것이라면, 브라우저나 뷰어에서 Ctrl++로 150~200%까지 키운 뒤 캡처하는 것이 가장 확실합니다. 글자 픽셀 자체가 커지므로 축소된 원본을 확대하는 것과는 품질이 다릅니다. 물론 그 문서에서 글자를 직접 복사할 수 있다면 OCR을 쓸 이유가 없으니, 먼저 마우스로 끌어 선택되는지부터 확인해 보세요.
OCR(Optical Character Recognition, 광학 문자 인식)은 사진의 픽셀 배열을 글자 코드로 바꾸는 기술입니다. 이 도구가 쓰는 Tesseract는 1980년대 HP 연구소에서 시작해 2005년 오픈소스로 공개되고 이후 구글이 오래 지원한 엔진으로, 지금은 100개가 넘는 언어를 지원하는 사실상의 표준입니다. 브라우저에서 돌아가는 것은 이 C++ 엔진을 WebAssembly로 컴파일한 판으로, 계산 자체는 네이티브 프로그램과 같은 코드가 수행합니다.
처리는 크게 네 단계를 거칩니다. 첫째, 이진화 — 회색조로 바꾼 뒤 픽셀을 글자(검정)와 배경(흰색)으로 나눕니다. 조명이 고르지 않으면 이 단계에서 이미 글자가 배경에 묻히므로, 앞에서 그림자를 없애라고 강조한 이유가 여기 있습니다. 둘째, 레이아웃 분석 — 검은 덩어리들의 위치와 간격을 보고 어디까지가 한 단, 한 문단, 한 줄, 한 단어인지 나눕니다. 표나 다단 편집에서 결과가 뒤섞이는 것은 이 단계의 판단이 어긋나기 때문입니다. 셋째, 줄 인식 — 잘라낸 한 줄을 왼쪽에서 오른쪽으로 훑으며 글자를 읽습니다. 넷째, 후처리 — 사전과 문자 조합 통계를 이용해 어색한 결과를 다듬습니다.
셋째 단계가 핵심인데, 요즘 Tesseract는 글자를 하나씩 잘라 모양을 맞추는 옛 방식 대신 LSTM이라는 순환 신경망을 씁니다. 한 줄 이미지를 얇은 세로 띠로 잘라 왼쪽부터 차례로 넣으면, 신경망이 앞서 본 띠들의 문맥을 기억한 채 "지금 지나온 획들의 조합은 이 글자일 확률이 높다"고 판단합니다. 글자 경계를 미리 정하지 않아도 되기 때문에 자간이 붙거나 획이 이어진 글자에 강합니다. 한글처럼 초성·중성·종성이 한 칸에 모여 수천 자의 조합을 만드는 문자에는 특히 이 방식이 잘 맞습니다.
각 단어에는 신뢰도(confidence)가 0~100으로 함께 나옵니다. 신경망이 후보 글자들에 매긴 확률에서 계산한 값으로, 90 이상이면 대체로 믿을 만하고 60 아래면 다시 봐야 합니다. 다만 이것은 "이 모델이 얼마나 확신하는가"이지 "정답인가"가 아닙니다. 비슷하게 생긴 글자를 자신 있게 잘못 읽는 경우(ㅁ과 ㅇ, 0과 O, 1과 l, rn과 m)도 있으므로, 숫자·계좌·주소처럼 틀리면 곤란한 정보는 반드시 눈으로 확인하세요.
이 도구는 언어 데이터로 tessdata_fast를 씁니다. Tesseract 공식 데이터에는 정확도 우선의 best, 균형형 standard, 속도 우선의 fast가 있는데, 브라우저에서 몇 초 안에 끝내려면 용량과 연산량이 가장 작은 fast가 현실적입니다. 인쇄가 선명한 문서에서는 셋의 차이가 크지 않고, 조건이 나쁠수록 벌어집니다.
회의실 화이트보드 — 회의가 끝나고 화이트보드를 찍어 두었지만 며칠 뒤에는 사진 속 글씨를 다시 옮겨 적어야 하는 상황, 흔합니다. 보드마카로 또박또박 쓴 인쇄체에 가까운 글씨라면 상당 부분 건집니다. 다만 손글씨라는 점을 감안해 결과를 초안으로만 쓰고, 항목 이름과 숫자는 사진과 대조하세요. 찍을 때 보드 전체를 한 장에 담기보다 좌·우 절반씩 두 장으로 나누면 글자가 커져 훨씬 잘 읽힙니다.
명함 — 이름·회사·직함·전화·이메일이 인쇄체로 또렷하게 박혀 있어 OCR에 잘 맞는 대상입니다. 다만 명함은 디자인 요소가 많아 로고 옆의 장식이 이상한 기호로 나오거나 항목 순서가 뒤섞일 수 있으니, 추출한 텍스트를 연락처에 붙여넣기 전에 한 번 정리하세요. 이메일 주소의 @ 앞뒤, 전화번호의 숫자는 특히 확인이 필요합니다.
책·논문 발췌 — 인용하려는 문단을 찍어 텍스트로 옮기면 타이핑 시간을 크게 줄일 수 있습니다. 책은 안쪽이 휘기 쉬우니 페이지를 최대한 평평하게 눌러 찍고, 두 페이지가 아니라 한 페이지씩 찍으세요. 발췌한 글을 공개적으로 쓸 때는 저작권 범위(인용의 정당한 범위, 출처 표시)를 지키는 것은 이용자의 몫입니다.
메신저·앱 화면 캡처 — 카카오톡 대화에서 주소나 계좌번호를 받았는데 이미지로 온 경우, 긴 안내문이 캡처로 공유된 경우처럼 "복사가 안 되는 글"을 옮길 때 유용합니다. 화면 캡처는 원래 픽셀이 또렷해서 사진보다 인식률이 좋습니다. 폰 캡처는 폭이 좁고 세로로 긴 편이라 자동 확대가 잘 듣는 편입니다.
영수증·서류 정리 — 영수증의 감열지 인쇄는 흐리고 글자가 작아 어려운 편이지만, 상호와 금액 정도는 건지는 경우가 많습니다. 세금계산서나 계약서 같은 서식은 표 선이 글자와 겹쳐 깨지기 쉬우니, 필요한 항목만 잘라서 올리는 편이 낫습니다. 참고로 세무·법률 서류의 내용 판단이나 금액 계산은 이 도구가 하지 않으며, 추출한 텍스트의 정확성도 보장하지 않습니다.
네. 이 페이지는 이미지를 어디에도 보내지 않습니다. 브라우저 개발자 도구(F12)의 네트워크 탭을 켜고 실행해 보시면, 이 사이트에서 인식 엔진(tesseract.min.js, worker.min.js, .wasm)과 언어 데이터(kor.traineddata.gz, eng.traineddata.gz)를 내려받는 요청만 보이고 이미지가 나가는 요청은 없습니다. 외부 CDN도 쓰지 않아 이 도메인 밖으로 나가는 요청 자체가 없습니다. 신분증, 계약서, 의료 서류처럼 민감한 문서를 다룰 때 이 점이 중요합니다.
첫 실행에서 언어 데이터(한국어 약 1.1MB, 영어 약 1.9MB, 둘 다면 약 2.9MB)와 WebAssembly 인식 엔진(약 2.9MB)을 내려받기 때문입니다. 받은 언어 데이터는 브라우저 저장소(IndexedDB)에 보관되어 다음 방문부터는 즉시 시작합니다. 또한 인식이 끝나도 작업 프로세스를 종료하지 않고 유지하므로, 같은 화면에서 두 번째 사진부터는 준비 과정 없이 바로 인식이 시작됩니다.
대개 원인은 셋 중 하나입니다. 글자가 너무 작거나(높이 20px 미만), 사진이 기울었거나, 대비가 부족한 경우입니다. 흑백 대비 강화를 켜서 다시 시도해 보고, 그래도 나아지지 않으면 사진을 더 크고 평평하게 다시 찍는 것이 가장 확실합니다. 문서 전체를 한 장에 담았다면 문단 단위로 나눠 여러 장으로 올려 보세요. 한글 문서인데 영어만 켜져 있거나 그 반대인 경우도 흔하니 언어 설정도 확인하세요.
OCR은 글자 사이의 물리적 간격으로 띄어쓰기를 추정합니다. 자간이 넓은 서체에서는 한 단어가 둘로 쪼개지고, 자간이 좁으면 두 단어가 붙습니다. 줄바꿈도 이미지에 보이는 줄 그대로 넣기 때문에, 문단 안에서 줄이 바뀐 곳마다 개행이 들어갑니다. 글 상자에서 직접 고치시면 되고, 문단을 하나로 잇고 싶다면 붙여넣은 뒤 편집기의 찾아 바꾸기로 정리하는 편이 빠릅니다.
이 도구는 이미지 파일만 받습니다. PDF 안의 글자를 옮기려면 먼저 PDF를 이미지로 변환해 페이지를 PNG로 만든 뒤 여기에 올리세요. 다만 PDF가 스캔본이 아니라면 대개 글자 정보를 품고 있으므로, PDF 뷰어에서 그냥 복사되는지 먼저 확인하는 편이 빠르고 정확합니다.
아이폰 기본 형식인 HEIC/HEIF는 대부분의 브라우저가 읽지 못합니다. 아이폰이라면 설정 → 카메라 → 포맷에서 높은 호환성을 고르면 JPG로 저장되고, 이미 찍은 사진은 사진 앱에서 공유 → 사진 복사 후 이 페이지에 붙여넣으면 JPG로 들어옵니다.
인식 엔진 tesseract.js와 WebAssembly 코어 tesseract.js-core는 Apache License 2.0, 언어 데이터 tessdata_fast(kor, eng)도 Apache License 2.0입니다. 세 가지 모두 상업적 이용이 허용되며, 라이선스 전문을 /tools/lib/README.txt가 가리키는 폴더에 원본 그대로 함께 두었습니다.