OCR for a selection of low-resource writing systems
# Descry OCR
Welcome to Descry, a project that brings optical character recognition technology to rare writing systems!
Currently, the project supports two alphabets: **Adlam** and **Kayah Li**. More coming soon.
The OCR engine uses CRAFT to detect words on an image and CRNN to recognize individual words; see the technical report for details. Model training code is available under the repo's `training` branch.
Table of Contents
Name
App Overview
Installation Guide
## Name
> **descry** verb
>
> 1. **a:** catch sight of
> **b:** find out, discover
> 2. *(obsolete)* make known, reveal
>
> **Etymology (sense 1)**: ultimately from Latin *dēscrībere* 'describe', from *dē-* + *scrībere* 'write'.
> Merriam-Webster
This name was chosen because its meaning related to seeing, together with its origins in the Latin verb 'to write', make it perfect for a project that applies computer vision to writing systems.
## App Overview
Use the menu on the home page to select a writing system and upload an image containing text. The OCR engine will recognize text on the image and print it in the "Model prediction" box.
## Installation Guide
### 1. Install the app on your local machine
Clone the repo's `main` branch by pasting the following into your command prompt:
```shell
git clone -b main --single-branch
github.com
```
### 2. Run the app
To install required dependencies, open the command prompt in the **descry-ocr** folder and run
```shell
pip install -r requirements.txt
```
Next, run
```shell
python -m flask --app app run
```
After a few seconds, you will see `Running on
127.0.0.1`. Follow the link to open the web app in your browser.