DaniAffCH's picture
[GSoC] Add block quantized models (#270)
85a27e0

ResNet

Deep Residual Learning for Image Recognition

This model is ported from PaddleHub using this script from OpenCV.

Note:

  • image_classification_ppresnet50_2022jan_int8bq.onnx represents the block-quantized version in int8 precision and is generated using block_quantize.py with block_size=64.

Results of accuracy evaluation with tools/eval.

Models Top-1 Accuracy Top-5 Accuracy
PP-ResNet 82.28 96.15
PP-ResNet block 82.27 96.15
PP-ResNet quant 0.22 0.96

*: 'quant' stands for 'quantized'. **: 'block' stands for 'blockwise quantized'.

Demo

Run the following commands to try the demo:

Python

python demo.py --input /path/to/image

# get help regarding various parameters
python demo.py --help

C++

Install latest OpenCV and CMake >= 3.24.0 to get started with:

# A typical and default installation path of OpenCV is /usr/local
cmake -B build -D OPENCV_INSTALLATION_PATH=/path/to/opencv/installation .
cmake --build build

# detect on an image
./build/opencv_zoo_image_classification_ppresnet -i=/path/to/image

# detect on an image and display top N classes
./build/opencv_zoo_image_classification_ppresnet -i=/path/to/image -k=N

# get help messages
./build/opencv_zoo_image_classification_ppresnet -h

License

All files in this directory are licensed under Apache 2.0 License.

Reference