방정식 OCR 가이드

OCR을 맹신하지 않고 사진에서 방정식을 읽는 방법

업데이트

사진 입력에서 제가 가장 피하고 싶었던 실수는 OCR을 수학 solver처럼 믿는 것이었습니다. OCR은 픽셀을 보고 문자를 추정할 뿐입니다. 그래서 제 흐름은 사진 → 인식 문자 → 사람의 확인 → solver입니다. 이 확인 단계가 있어야 오독한 식에 대해 정확히 계산해 버리는 문제를 막을 수 있습니다.

OCR을 맹신하지 않고 사진에서 방정식을 읽는 방법

예쁜 사진보다 읽기 쉬운 사진을 찍습니다

가능하면 방정식 하나만 크게 자르고, 카메라를 종이와 평행하게 두며, 그림자를 피합니다. x, ×, 1, l, 0, O가 뭉개지지 않을 정도로 크게 찍는 것만으로도 인식이 좋아집니다. 인쇄 식이 보통 더 안정적이지만 또렷한 손글씨도 가능합니다.

한 페이지에 여러 문제가 있으면 OCR은 제가 어떤 줄을 원하는지 모릅니다. 현재 기능은 x와 =가 있는 줄에 점수를 더 주지만 힌트일 뿐입니다. 필요한 식만 자르는 것이 더 확실합니다.

특정 수학 기호는 틀릴 것을 예상하고 확인합니다

위첨자, 분수선, 루트, 마이너스, 곱셈 기호는 자주 틀립니다. x²가 x2가 되거나 √가 v처럼 보이고, 절댓값 세로줄이 숫자 1로 읽힐 수 있습니다.

인식 후에는 이런 기호 주변을 이미지와 문자로 비교합니다. 사진은 x² - 5x + 6 = 0인데 입력칸이 x2 - 5x + 6 = 0이라면 풀이 전에 지수를 고칩니다.

x² ↔ x2
− ↔ -
× ↔ x
√ ↔ v
|x - 3| ↔ 1x - 31

OCR 결과를 일반 입력칸으로 돌려보내는 것은 의도적입니다

인식이 끝났다고 자동 Solve하지 않습니다. 인식된 한 줄을 손입력이나 LaTeX와 같은 입력칸에 넣어 제가 직접 편집하고 MathML 미리보기도 확인할 수 있게 합니다.

검토한 뒤 Solve를 누르면 그 다음부터는 모든 입력이 같습니다. 같은 정규화, parser, solver, 풀이 단계, 검산, 그래프를 사용합니다.

개인정보 경계도 분명히 적습니다

지원 방정식을 푸는 기능은 외부 수학 API가 필요하지 않습니다. OCR을 사용할 때는 이 사이트에서 Tesseract.js와 인식 자산을 불러옵니다. 인식과 이미지는 브라우저에 유지되며, 외부 OCR 제공자에게 이미지를 보내지 않습니다.

공유용 ?q= URL에는 식이 들어가므로 민감한 정보도 넣지 않는 편이 좋습니다.

OCR이 계속 틀리면 가장 빠른 신뢰 가능한 방법으로 바꿉니다

짧은 식은 직접 입력하는 것이 빠릅니다. 원본에 LaTeX가 있다면 붙여 넣는 편이 더 정확합니다. 손글씨가 애매하면 제가 직접 옮겨 적고 미리보기로 확인합니다.

목표는 OCR이 모든 문제지를 읽는다고 보이는 것이 아닙니다. 선명한 이미지에서 반복 입력을 줄이되, 수학을 시작하기 전에 최종 식은 제가 확인할 수 있게 하는 것이 목적입니다.