由于AIMB-2210R-00A1搭载的处理器AMD Ryzen™ 7 PRO 8845HS,不支持BF16的量化。
输入指令:python quantize_quark.py --input_model_path models/yolov8m.onnx --calib_data_path calib_images --output_model_path models/yolov8m_XINT8.onnx --config XINT8,配置在NPU上运行。
测试结果如下。 测试的结果准确率达不到期望值,再次重新对yolov8m.onnx模型进行量化以提高准确度,使用以下指令重新进行量化:python quantize_quark.py --input_model_path models/yolov8m.onnx --calib_data_path calib_images --output_model_path models/yolov8m_XINT8_extended.onnx --config XINT8 --exclude_nodes "/model.22/Concat_3;/model.22/Split;/model.22/dfl/Reshape;/model.22/dfl/Transpose;/model.22/dfl/Softmax;/model.22/dfl/conv/Conv;/model.22/dfl/Reshape_1;/model.22/Shape;/model.22/Gather;/model.22/Add;/model.22/Div;/model.22/Mul;/model.22/Mul_1;/model.22/Slice;/model.22/Slice_1;/model.22/Sub;/model.22/Add_1;/model.22/Sub_1;/model.22/Add_2;/model.22/Div_1;/model.22/Concat_4;/model.22/Mul_2;/model.22/Sigmoid;/model.22/Concat_5",尝试排除更多后处理节点,测试结果如下所示。 重新量化后,准确度有一定的提升。 配置在CPU上运行结果如下。
Float32模型在CPU上运行结果如下。
总的测试结果对比如下。
|