Sistema para leitura automática de provas (OMR), usando visão computacional e modelos YOLOv8-Pose para detectar cantos, alinhar páginas e identificar respostas e IDs. O foco é obter alta acurácia com imagens simples (scanner ou foto).
git clone https://github.com/ptonso/OBE-reader.git
cd OBE-reader
pip install -r requirements.txtnix-shell default.nix
Recomendamos usar o direnv:
echo "use nix" >> .envrc
Coloque todas as provas em: data/00--raw/... e execute
flatten_unzip.py data/00--raw/ data/01--cleaned/10--start/ para auxiliar na
organização das pastas.
Execute os notebooks na ordem:
-
00_clean_pipeline.ipynb -
01_keypoints.ipynb -
02_core.ipynb
Após o resultado automático, fix_manual.py
auxilia a para corrigir manualmente possíveis erros.
Respeite os pedidos de inspeção manual indicados nas células dos notebooks e ajuste os caminhos de entrada e saída conforme sua máquina.
Recomenda-se usar GPU da NVIDIA (CUDA) para acelerar o processamento.
data/
├── 00--raw/ # imagens originais
├── 10--clean/ # recortes e padronização
├── 20--results/ # resultados CSV e relatórios