1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/coggle-tianchi-intel-PaddleOCR

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

«Кубок мастера инноваций Intel»: соревнование по глубокому обучению. Задача 1: распознавание текста в общих сценариях (OCR)

https://tianchi.aliyun.com/competition/entrance/531902/introduction

Конфигурация среды

PaddlePaddle

Установите paddlepaddle-gpu, при наличии установленной CUDA можно установить напрямую через pip.

Официальная документация по установке: https://www.paddlepaddle.org.cn/install/quick

Другие среды

— Python 3; — требуется наличие GPU.

Общий порядок действий: обучение и прогнозирование в один клик

Чтобы участникам было удобно запускать baseline, мы подготовили код для обучения и прогнозирования. В случае с GPU обучение займёт полчаса, а прогнозирование — 10 минут.

git clone https://gitee.com/coggle/tianchi-intel-PaddleOCR
cd tianchi-intel-PaddleOCR
sh run.sh

Конечно, вы можете выполнить действия пошагово, следуя инструкциям ниже. Обратите внимание, что все инструкции выполняются в корневом каталоге кода.

Шаг 1. Загрузка изображений для соревнования

python3 down_image.py

Изображения сохраняются в каталог train_data/tianchi/image, имена файлов сохраняются. Тренировочный и тестовый наборы хранятся вместе.

Шаг 2. Загрузка модели для прогнозирования

Поскольку OCR включает несколько этапов, на этом этапе мы только дорабатываем обнаружение, поэтому нам также нужны веса других этапов.

mkdir inference && cd inference/

# Скачать модель
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_server_v2.0_det_infer.tar
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_server_v2.0_rec_infer.tar

# Распаковать модель
tar -xf ch_ppocr_server_v2.0_rec_infer.tar 
tar -xf ch_ppocr_server_v2.0_det_infer.tar
tar -xf ch_ppocr_mobile_v2.0_cls_infer.tar

После загрузки вы можете проверить, работает ли модель.

python3 tools/infer/predict_system.py --image_dir="./1.jpg" --det_model_dir="./inference/ch_ppocr_server_v2.0_det_infer/"  --rec_model_dir="./inference/ch_ppocr_server_v2.0_rec_infer/" --cls_model_dir='./inference/ch_ppocr_mobile_v2.0_cls_infer/' --use_angle_cls=True --use_space_char=True

Результат:

dt_boxes num : 2, elapse : 0.9568207263946533
cls num  : 2, elapse : 0.006417512893676758
rec_res num  : 2, elapse : 0.05788707733154297
Predict time of ./1.jpg: 1.036s
土地整治与土壤修复研究中心, 0.973
华南农业大学-东图, 0.992

Если вы используете предварительно обученную модель, вы также можете получить хороший результат. Однако из-за различий между данными соревнований и общими данными точность после доработки будет выше.

Шаг 3. Обучение модели обнаружения

Сначала загрузите веса предварительно обученной модели обнаружения.

cd inference
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_server_v2.0_det_train.tar
tar -xf ch_ppocr_server_v2.0_det_train.tar

Затем выполните доработку, здесь мы обучаем 4 эпохи, обучение занимает около получаса.

python3 tools/train.py -c configs/det/ch_ppocr_v2.0/ch_det_res18_db_v2.0.yml -o Global.pretrain_weights=./inference/ch_ppocr_server_v2.0_det_train/

Шаг 4. Прогнозирование для тестового набора

После завершения обучения экспортируйте веса модели для прогнозирования. Затем выполните прогнозирование для изображений тестового набора и запишите результаты в формате json.

# Экспорт модели
python3 tools/export_model.py -c configs/det/ch_ppocr_v2.0/ch_det_res18_db_v2.0.yml -o Global.pretrained_model=output/ch_db_res18/best_accuracy  Global.save_inference_dir=output/ch_db_res18/

# Прогнозирование для тестового набора
python3 tools/infer/predict_system_tianchi.py --image_dir="./doc/imgs/11.jpg" --det_model_dir="output/ch_db_res18/"  --rec_model_dir="./inference/ch_ppocr_server_v2.0_rec_infer/" --cls_model_dir='./inference/ch_ppocr_mobile_v2.0_cls_infer/' --use_angle_cls=True --use_space_char=True

# Сжать результаты
zip -r submit.zip Xeon1OCR_round1_test*

Справочные материалы

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.1/doc/doc_ch/customize.md

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.1/doc/doc_ch/recognition.md

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.1/doc/doc_ch/inference.md

coggle

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/coggle-tianchi-intel-PaddleOCR.git
git@api.gitlife.ru:oschina-mirror/coggle-tianchi-intel-PaddleOCR.git
oschina-mirror
coggle-tianchi-intel-PaddleOCR
coggle-tianchi-intel-PaddleOCR
master