이미지를 엑셀 표로 추출
잘 되는 것과 안 되는 것
마이크로소프트 엑셀은 2019년부터 '사진에서 데이터 가져오기' 기능을 제공해 왔습니다. 구글 시트는 2023년에 이 기능을 추가했습니다. 그런데도 사람들은 계속 대안을 찾고 있습니다. 인쇄된 송장, 스캔한 스프레드시트, 웹사이트 표 스크린샷을 휴대폰으로 찍으면 내장 도구가 깔끔한 데이터보다 엉망인 결과를 더 자주 내놓기 때문입니다. 실패 원인은 문자 인식 정확도가 아닙니다. 표 구조, 즉 테두리가 희미하고, 열 간격이 고르지 않으며, 제목이 두 줄로 나뉘어 있을 때 값이 어느 셀에 속하는지 파악하는 문제입니다.
핵심 요약
- 표 추출 결과가 엉망인 이유는 부정확한 문자 인식 때문이 아닙니다. 문자 하나가 인식되기도 전에, 잘못 읽힌 모든 셀 경계가 조용히 전체 데이터 행을 잘못된 열로 밀어 넣기 때문입니다.
- 표 이미지를 엑셀로 변환하려면 세 가지 작업(셀 경계 감지, 내부 텍스트 읽기, 숫자가 가격인지 수량인지 파악)을 동시에 수행해야 하지만, OCR(엑셀 내장 도구의 픽셀-텍스트 엔진)은 중간 단계만 처리할 뿐 구조적, 의미적 오류는 조용히 누적됩니다.
- 시각적 LLM(이미지를 보고 텍스트를 읽는 모델)은 사람처럼 이 세 가지 계층을 동시에 풀어냅니다. 이것이 ImageToTable.ai가 OCR을 완전히 무너뜨리는 테두리 없는 표와 기울어진 사진에서도 사용 가능한 엑셀 데이터를 추출하는 방식입니다.
실제 표 이미지에서 '사진에서 데이터 가져오기'가 실패하는 이유
엑셀의 '사진에서 데이터 가져오기'는 이미지를 마이크로소프트의 클라우드 OCR 엔진으로 보내 텍스트와 대략적인 표 구조를 식별합니다. 깨끗하고 정렬이 잘 된 스프레드시트 인쇄물 사진이라면 사용 가능한 결과를 얻을 수 있습니다. 하지만 그 외의 경우, 즉 대부분의 실제 이미지에서는 제대로 작동하지 않습니다.
근본적인 문제는 구조적입니다. 엑셀의 이 기능은 광학 문자 인식(OCR)을 기반으로 합니다. OCR은 개별 문자와 픽셀 좌표를 식별한 후, 텍스트 블록 간의 공백을 분석하여 휴리스틱 규칙으로 표 구조를 추측합니다. 이는 근본적으로 취약합니다. 카메라 각도가 약간만 틀어져도 간격 계산이 어긋납니다. 스캔한 페이지의 접힌 모서리는 잘못된 열 경계를 만듭니다. 두 열에 걸쳐 있는 병합된 셀은 그리드 정렬을 완전히 깨뜨립니다.
Reddit의 r/excel 포럼에 있는 한 목수는 보편적인 좌절감을 표현했습니다. Home Depot와 Lowe's에서 매주 15개의 영수증을 엑셀에 입력해야 하는데, 내장 도구나 QuickBooks의 내보내기 형식 모두 그가 원하는 것, 즉 자신만의 열이 있는 맞춤형 스프레드시트를 제공하지 못한다는 것입니다. r/Accounting의 한 회계사도 재무 표에 대해 같은 질문을 했습니다. "이미지에서 엑셀로 재무 표를 변환하는 최고의 무료 OCR 도구" — 내장 도구만으로는 충분하지 않습니다.
세 가지 계층 문제: 픽셀, 문자, 의미
표 이미지를 엑셀로 변환하는 것은 하나의 문제가 아닙니다. 동시에 해결해야 하는 세 가지 문제이며, 기존 OCR은 그중 중간 것만 처리합니다.
계층 1 — 시각적 구조. 표 테두리는 어디에 있습니까? 어떤 셀이 병합되었습니까? 열은 어디서 끝나고 다음 열은 어디서 시작됩니까? 이것은 텍스트 문제가 아니라 시각 문제입니다. OCR 엔진은 문자 획보다 가늘 수 있는 구조적 선이 아닌, 배경과 대비되는 텍스트를 찾기 때문에 얇은 선으로 된 표를 종종 완전히 놓칩니다.
계층 2 — 문자 인식. 각 셀의 실제 영숫자 문자는 무엇입니까? 기존의 Tesseract 스타일 OCR은 300 DPI의 깨끗한 인쇄물에 대해 적절히 처리하지만, 텍스트가 컬러 배경에 있거나, 글꼴이 작거나(조밀한 표에서 흔함), 이미지가 페이지 전체에 초점이 고르지 않은 휴대폰 사진인 경우 정확도가 급격히 떨어집니다.
계층 3 — 의미 이해. 각 값이 실제로 나타내는 것은 무엇입니까? 세 번째 열의 "1,250"은 수량, 단가, 또는 라인 합계입니까? OCR은 알 수 없습니다. 문자를 읽을 뿐 의미는 읽지 못합니다. 그러나 이것이 바로 필요한 것입니다. 한 송장의 "금액" 열과 다른 송장의 "총 납부액" 열은 동일한 유형의 데이터를 포함하며, 스프레드시트에서는 이들을 같은 열에 배치해야 합니다.
각 계층이 독립적으로 실패한다는 것은 세 가지 독립적인 오류 원인이 있음을 의미합니다. 계층 1이 셀 경계를 잘못 읽으면 인접 셀의 값이 병합됩니다. 계층 2가 조밀한 숫자 셀 안의 "5"를 "6"으로 잘못 읽으면 대조할 때까지 오류가 정확해 보입니다. 계층 3이 단가와 라인 합계를 구분하지 못하면 추출된 데이터는 구조적으로 잘못됩니다. 기존 OCR은 계층 2만 처리하며, 그것조차 완벽하지 않습니다.
비주얼 LLM이 세 가지 계층을 동시에 해결하는 방법
비주얼 대규모 언어 모델은 사람이 문서를 처리하는 방식과 동일하게 작동합니다. 페이지를 전체적으로 보고, 문맥 속에서 텍스트를 읽으며, 각 값이 무엇을 의미하는지 이해합니다. 세 가지 계층은 서로 전달되는 별도의 파이프라인이 아니라, 각 계층이 서로 정보를 주고받으며 함께 처리됩니다.
이것이 중요한 아키텍처적 변화입니다. 비주얼 LLM이 OCR이 놓칠 희미한 표 테두리를 만나면, 의미 계층이 불일치를 알립니다. "값이 함께 속하지 않는 가격 형태의 숫자이므로, 이는 두 개의 개별 열처럼 보입니다." 시각 계층이 해당 영역을 다시 검사하여 미세한 선을 감지합니다. 텍스트 계층은 양쪽의 문자열이 서로 다른 범주(제품명 vs 금액)에 속한다는 것을 확인합니다. 세 계층이 상호 참조하여 올바른 구조가 도출됩니다.
이러한 상호 참조 덕분에 비주얼 LLM은 기존 OCR을 무력화시키는 이미지, 즉 그리드 선이 안티앨리어싱되어 사라진 저해상도 스크린샷, 각도가 기울어진 인쇄 스프레드시트 사진, 에지 검출을 혼란스럽게 하는 얼룩덜룩한 배경의 스캔 문서 등을 처리할 수 있습니다. 모델은 단일 신호에 의존하지 않고 시각적, 텍스트적, 의미적 증거를 결합합니다.
테이블 이미지에서 명명된 열로: 실제로 중요한 출력
전체 테이블을 추출하는 것은 첫 단계에 불과합니다. 사람들이 실제로 필요한 출력은 처리하는 모든 이미지에서 일관된, 자신의 워크플로우에 관련된 특정 열입니다.
ImageToTable.ai는 열 이름 추출을 통해 이 문제에 접근합니다. 단순히 "테이블을 추출"하고 열이 맞춰지길 바라는 대신, 원하는 열 이름("날짜", "설명", "금액", "범주")을 지정하면 AI가 페이지상의 위치가 아닌 의미를 이해하여 각 값을 찾습니다. "금액" 열은 한 인보이스에서는 세 번째 열, 다른 인보이스에서는 다섯 번째 열일 수 있으며, 또 다른 인보이스에서는 "총 납부액"으로 레이블될 수 있습니다. 비주얼 LLM은 픽셀 위치가 아닌 의미적 역할로 이를 식별합니다.
파일은 안전하게 처리되며 저장되지 않습니다.
이러한 열 이름 접근 방식은 배치 처리를 가능하게 합니다. 다양한 출처의 테이블 이미지 50개를 업로드하고, 열을 한 번 지정하면 일관된 헤더가 있는 하나의 병합된 스프레드시트를 얻을 수 있습니다. 처리 시간은 페이지당 5~10초이며, 이미지 품질이 적절할 경우 인쇄된 테이블 데이터에 대해 최대 99%의 정확도를 제공합니다. 제한 요소는 AI가 아니라 원본 이미지의 물리적 상태입니다.
실제 적용 사례
거래처 정산서를 대조하는 재무팀. 각 거래처가 보내는 PDF 정산서는 서로 다른 형식이지만, 대조 작업에 필요한 열은 날짜, 참조 번호, 금액 세 가지뿐입니다. 30개의 정산서를 수동으로 복사-붙여넣기 하면 오후 내내 걸리지만, 이미지에서 열 단위로 일괄 추출하면 몇 분이면 끝납니다.
논문 데이터를 수집하는 연구자. 학술 논문, 산업 보고서, 정부 데이터셋의 표를 캡처한 이미지들은 모두 형식이 다릅니다. 하지만 필요한 데이터 포인트(표본 크기, 효과 크기, p-값)는 모든 출처에서 동일합니다. 열 이름 기반 추출이 이 데이터들을 하나의 분석 준비된 스프레드시트로 표준화합니다.
선적 명세서에서 데이터를 추출하는 운영팀. 배송 전표, 포장 목록, 화물 청구서 사진이 각기 다른 운송사와 다른 형식으로 들어옵니다. 필요한 열은 일관적입니다: 추적 번호, 중량, 개수, 도착지. AI가 형식에 관계없이 이를 읽어냅니다.
자주 묻는 질문
단순히 더 나은 OCR인가요?
아닙니다. OCR은 픽셀에서 문자를 읽습니다. 비주얼 LLM은 문서 구조와 내용의 의미를 이해합니다. 그 차이는 까다로운 사례에서 드러납니다: OCR이 잘못 분할하는 병합된 셀, OCR이 전혀 감지하지 못하는 테두리 없는 표, 그리고 문맥이 해석을 결정하는 숫자 값들. 비주얼 LLM은 동일한 이미지를 보고 사람처럼 이해합니다 — 값들의 위치, 서식, 주변 숫자와의 관계를 인식하여 이 값들의 집합이 소계임을 파악하는 방식입니다.
추출 정확도는 어느 정도인가요?
선명하고 조명이 좋은 인쇄된 표 데이터의 경우 최대 99%입니다. 이미지 품질이 낮아지면 정확도도 떨어집니다 — 어두운 조명에서 기울어져 찍힌 휴대폰 사진은 300 DPI 평판 스캔보다 정확도가 낮습니다. 필기체 콘텐츠는 정확도를 더 낮추지만, 의미 기반 계층이 OCR이 완전히 놓치는 부분을 보완하는 데 도움이 됩니다.
여러 이미지를 하나의 스프레드시트로 처리할 수 있나요?
네. 여러 이미지를 함께 업로드하고 열 이름을 한 번만 지정하면, AI가 모든 이미지에서 데이터를 추출하여 일관된 열 헤더가 있는 하나의 통합 엑셀 파일로 만들어 줍니다. 처리 속도는 페이지당 5~10초이며, 일괄 출력 시 사용자가 정의한 열 구조가 유지됩니다.
어떤 이미지 형식과 출처가 지원되나요?
이 도구는 JPG, PNG, WebP, AVIF, PDF 및 웹페이지 스크린샷을 지원합니다. 형식보다는 출처가 더 중요합니다. 조명이 잘 들어오는 평평한 사진이 가장 좋은 결과를 제공하며, 눈부심이 있는 구겨진 페이지를 비스듬히 찍은 사진은 형식에 관계없이 정확도가 낮습니다.
이 기능을 사용해 보려면 어떻게 해야 하나요?
표 이미지를 업로드하고 원하는 열 이름을 지정하면 AI가 데이터를 추출합니다. 무료 티어는 간헐적 사용을 지원하며, 유료 플랜은 정기적인 일괄 처리를 지원합니다. 이미지를 엑셀 표로 변환하는 변환기는 위에서 설명한 것과 동일한 시각적 LLM 아키텍처를 기반으로 하며, 문자뿐만 아니라 모든 이미지 형식에서 표 구조를 읽어냅니다.