About Image to Text (OCR)
OCR (Optical Character Recognition) is the process of turning a picture of text — a scanned page, a photographed sign, a screenshot of a PDF you can't select text from — into actual, selectable, searchable text. It is one of the oldest problems in applied computer vision, and modern OCR engines solve it in roughly the same conceptual stages regardless of implementation: finding where text sits on the page, segmenting it into lines and individual characters or character groups, and then recognising each shape as a specific letter, digit, or symbol using a trained model that has learned what thousands of real fonts and handwriting styles look like.\n\nThis tool runs Tesseract, one of the most established open-source OCR engines (originally developed at HP in the 1980s, later open-sourced and now maintained with Google's involvement), compiled to WebAssembly so it runs directly inside your browser tab rather than on a server. Recognition happens through a neural network (an LSTM — long short-term memory — model, Tesseract's modern recognition engine) that has been trained separately for each supported language on large volumes of real text in that language's script, vocabulary, and letter combinations. That per-language training matters more than it might seem: a model trained on English text knows which letter sequences are statistically likely in English and uses that knowledge to resolve ambiguous shapes (is that faint mark an "rn" or an "m"?), and — critically — it only recognises the specific set of characters it was trained on. An English-only model has no concept of Romanian's ă, â, î, ș, and ț, French's é and ç, or German's ü and ß; feed it text containing those characters and it will either drop them, or substitute the nearest plain-Latin letter it does know, producing visibly corrupted output. This is exactly why choosing the correct language before recognising is the single most important setting on this page, and why an "English + Romanian" combined mode is offered for documents that genuinely mix both languages in the same image, such as a form with English headings and Romanian handwritten answers.\n\nEach language's recognition model is a real file — several megabytes of trained neural network weights — and rather than fetching it from a third-party CDN (the default behaviour of the underlying OCR library), this site hosts all 16 supported languages' models directly, alongside the WebAssembly recognition engine itself. That means recognising text on this page never sends a request to any external service: the image you upload, the text extracted from it, and even the download of the recognition model itself all happen against this site's own servers or entirely inside your browser — nothing about what you're trying to read is visible to a third party. The trade-off is a genuinely large first-time download for whichever language you pick (a few megabytes), which your browser then caches, so recognising a second image in the same language is immediate.\n\nOCR accuracy depends heavily on image quality: clean, high-contrast, reasonably high-resolution scans of printed text recognise very well, often with no errors at all. Handwriting, low-resolution photos, skewed or rotated text, unusual fonts, and busy backgrounds all reduce accuracy, sometimes substantially — OCR is pattern recognition, not comprehension, and it has no way to guess at a word it genuinely couldn't resolve from the pixels in front of it. For the best results, use a straight-on, well-lit, reasonably sharp image, and make sure the selected language actually matches what's written.