PP-PicoDet 是飛槳推出的超輕量目标檢測算法。本次選用的模型是picodet_s_320,導出的onnx檔案不到5M,使用i5-6200U的古董CPU,加載模型約1s,推理一張圖檔約100ms左右。
環境
在NET中部署picodet的推理可以通過OnnxRuntime和OpencvSharp4實作。需要添加以下NuGet包。
模型輸入
輸入參數有兩個:image和scale_factor
image:3通道320*320的圖檔。通過Cv2.ImDecode()解碼得到BGR格式的圖檔,然後ReSize到320*320,并Normalize處理時按RGB順序輸出TensorInput。
ImDecode
Mat To Tensor
scale_factor:縮放系數,用于後處理。為模型輸入大小/原圖大小。
模型輸出
PP-PicoDet Outputs
有兩個輸出,這裡我們隻要處理第一個即可。其中每行依次為:class,confidence,xmin,ymin,xmax,ymax。
完整流程
還是比較簡單的,重點在于圖檔的處理上,有一點比較奇怪的官方示例在Resize使用的是INTERLINEAR,但是實際使用時居然要用Nearest效果比較好!