https://github.com/mikhailvokhrameev/archive_vision
A service for extracting and indexing archival document images
https://github.com/mikhailvokhrameev/archive_vision
computer-vision ocr ocr-recognition trocr web-service
Last synced: about 2 months ago
JSON representation
A service for extracting and indexing archival document images
- Host: GitHub
- URL: https://github.com/mikhailvokhrameev/archive_vision
- Owner: mikhailvokhrameev
- License: mit
- Created: 2025-09-25T09:25:29.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-10-18T22:32:25.000Z (9 months ago)
- Last Synced: 2025-10-19T08:51:27.179Z (9 months ago)
- Topics: computer-vision, ocr, ocr-recognition, trocr, web-service
- Language: Python
- Homepage:
- Size: 60.3 MB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Веб-сервис "Archive Vision"
Данный репозиторий содержит исходный код веб‑сервиса для автоматизированной расшифровки архивных документов московских архивов, что способствует сохранению исторического наследия.

Главная страница
---
### Почему мы делали этот проект?
Нам было интересно поработать с современными моделями OCR, в частности **TrOCR**, произвести разметку датасета с архивными изображениями, а также получить опыт создания полноценного веб-сервиса с применением моделей ИИ.
---
### Используемые технологии:
Backend & API
* Python
* FastAPI
* Uvicorn
* Pydantic
Machine Learning & Data Science
* PyTorch
* Hugging Face Transformers
* NumPy & SciPy
* OpenCV & Pillow
* pdf2image
Frontend & Визуализация
* Streamlit
База Данных
* PostgreSQL
---
### Установка и запуск с использованием Docker (рекомендуется)
1. **Клонируйте репозиторий:**
```bash
git clone https://github.com/mikhailvokhrameev/archive_vision.git
cd archive_vision
```
2. **Установите Docker в зависимости от вашей ОС:**
* Windows: Установите Docker Desktop по [официальной инструкции](https://docs.docker.com/desktop/setup/install/windows-install/).
* macOS: Установите Docker Desktop по [официальной инструкции](https://docs.docker.com/desktop/setup/install/mac-install/).
* Linux: Установите Docker Engine по [официальной инструкции](https://docs.docker.com/engine/install/).
3. **Запустите docker-compose:**
**Важно:** Все команды должны запускаться из корневой папки проекта.
```bash
docker-compose up --build # build and run
docker-compose up #run
```
Чтобы открыть frontend нужно перейти по ссылке: http://localhost:8501/
---
### Альтернативный вариант (без Docker):
Для настройки среды проекта выполните следующее:
1. **Клонируйте репозиторий:**
```bash
git clone https://github.com/mikhailvokhrameev/archive_vision.git
cd archive_vision
```
2. **Создайте и активируйте виртуальное окружение (рекомендуется):**
```bash
# Создание окружения
python3 -m venv venv
# Активация на macOS/Linux:
source venv/bin/activate
# Активация на Windows:
venv\Scripts\activate
```
3. **Установите зависимости:**
```bash
pip install -r requirements.txt
```
#### **Запуск:**
1. **Запуск backend**
Этот скрипт запускает backend по адресу http://127.0.0.1:8001.
```bash
uvicorn main:app --reload --host 127.0.0.1 --port 8001
```
2. **Запуск frontend**
Этот скрипт запускает frontend по адресу http://127.0.0.1:8000. Для изменения порта или IP требуется добавить в переменные окружения в docker файле API_BASE_URL ссылку на сервер.
```bash
streamlit run ./front/app.py
```
3. **Настройка БД**
В качестве базы данных используется PostgreSQL. Для связи backend и базы данных требуется создать файл .env в папке backend и добавить переменную:
`DATABASE_URL="postgresql://user:password@localhost:5432/db_name"`
4. **Работа с сервисом**
По умолчанию работа сервиса производится по адресу http://127.0.0.1:8501. Для загрузки и обработки документа требуется загрузить файл с изображением страницы документа через веб интерфейс.