Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 78 additions & 0 deletions src/inference/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
1. ncnn.
1. PaddlePaddle.
1. Spektral.
1. IREE.

## Вывод глубоких моделей с использованием Inference Engine

Expand Down Expand Up @@ -1482,6 +1483,82 @@ python inference_ncnn.py --model <model_name> \
--batch_size <batch_size>
```

## Вывод глубоких моделей с использованием IREE

#### Аргументы командной строки

Название скрипта:

```bash
inference_iree.py
```

Обязательные аргументы:

- `-m / --model` - путь до vmfb-файла, содержащего скомпилированную модель.
- `-fn / --function_name` - название функции, которая будет вызвана IREE для исполнения модели.
- `-i / --input` - путь до изображения или директории с изображениями
(расширения файлов `.jpg`, `.png`, `.bmp` и т.д.).
- `-is / --input_shape` - размеры входного тензора сети в формате
BxCxWxH, B - размер пачки, C - количество каналов изображений,
W - ширина изображений, H - высота изображений.

Опциональные аргументы:

- `-b / --batch_size` - количество изображений, которые будут обработаны
за один проход сети. По умолчанию равно `1`.
- `-ni / --number_iter` - количество прямых проходов по сети.
По умолчанию выполняется один проход по сети.
- `--time` - время выполнения инференса в секундах. Этот параметр можно
задать вместо задать вместо параметра `-ni / --number_iter`. Если
одновременно указать и `-ni / --number_iter` и `--time`,
то будет учитываться тот параметр, при котором инферес работает дольше.
- `--layout` - формат входных тензоров. По умолчанию `NHWС`.
- `--channel_swap` - порядок перестановки цветовых каналов изображения.
Загрузка изображений осуществляется в формате BGR (порядок
соответствует `(0, 1, 2)`), а большинство нейронных сетей принимают
на вход изображения в формате RGB, поэтому по умолчанию порядок
`(2, 1, 0)`.
- `--norm` - флаг необходимости нормировки изображений.
Среднее и среднеквадратическое отклонение, которые принимаются
на вход указываются в следующих двух аргументах.
- `--mean` - среднее значение интенсивности, которое вычитается
из изображений в процессе нормировки. По умолчанию
данный параметр принимает значение `0 0 0`.
- `--std` - среднеквадратическое отклонение интенсивности, на которое
делится значение интенсивности каждого пикселя входного изображения
в процессе нормировки. По умолчанию данный параметр принимает значение `1 1 1`.
- `-t / --task` - название задачи. Текущая реализация поддерживает
решение задачи классификации (`classification`). По умолчанию принимает значение `feedforward`.
- `-nt / --number_top` - количество лучших результатов, выводимых
при решении задачи классификации. По умолчанию выводится `10` наилучших
результатов.
- `-l / --labels`- путь до файла в формате JSON с перечнем меток
при решении задачи. По умолчанию принимает значение
`image_net_labels.json`, что соответствует меткам набора данных
ImageNet.
- `-d / --device` - оборудование, на котором выполняется вывод сети.
Поддерживается вывод на CPU (значение параметра `CPU`). По умолчанию принимает значение `CPU`.
- `--raw_output` - работа скрипта без логов. По умолчанию не установлен.
- `--report_path` - путь до файла с отчетом в формате `.json`.


#### Примеры запуска

**Командная строка для решения задачи классификации изображений**

```bash
python3 inference_iree.py \
-t classification -i <path_to_image>/<image_name> \
-m <path_to_model>/<model_name>.vmfb \
--function_name main_graph \
--input_shape 1 3 224 224 \
--labels <path_to_labels>/image_net_synset.txt
```

Результат выполнения: набор наиболее вероятных классов, которым принадлежит
изображение.

<!-- LINKS -->
[execution_providers]: https://onnxruntime.ai/docs/execution-providers
[gluon_modelzoo]: https://cv.gluon.ai/model_zoo/index.html
Expand All @@ -1492,3 +1569,4 @@ python inference_ncnn.py --model <model_name> \
[dgl]: https://www.dgl.ai/pages/start.html
[ogb]: https://ogb.stanford.edu/
[tensorflow-gpu]: https://www.tensorflow.org/install/pip
[iree]: https://iree.dev/
Loading
Loading