OpenVINO2022 Dev Tools安装与使用

引言
Dev Tools安装与使用
model = models.resnet18(pretrained=True)
model.eval()
model.cpu()
dummy_input1 = torch.randn(1, 3, 224, 224)
torch.onnx.export(model, (dummy_input1), "resnet_model.onnx", verbose=True)
然后直接运行命令行就可以转换IR格式文件,截图如下:
模型下载
omz_downloader --name person-detection-0200
--all表示下载全部模型,建议别这么干!
--name 下载一个或者多个指定名称的模型,推荐这么干!
--precisions 表示下载的模型精度参数,支持FP32/FP18/INT8
Python SDK使用
# 加载标签数据
with open('imagenet_classes.txt') as f:
labels = [line.strip() for line in f.readline******r/>
def resnet_demo():
ie = Core()
# model = ie.read_model(model="resnet_model.onnx")
model = ie.read_model(model="resnet_model.xml")
compiled_model = ie.compile_model(model=model, device_name="CPU")
output_layer = compiled_model.output(0)
means = np.zeros((224, 224, 3), dtype=np.float32)
means[: ,:] = (0.485, 0.456, 0.406)
dev = np.zeros((224, 224, 3), dtype=np.float32)
dev[: ,:] = (0.229, 0.224, 0.225)
image = cv.imread("D:/images/space_shuttle.jpg")
rgb = cv.cvtColor(image, code=cv.COLOR_BGR2RGB)
# resize to MobileNet image shape
input_image = cv.resize(src=rgb, dsize=(224, 224))
blob_img = np.float32(input_image) / 255.0
input_x = (blob_img - means) / dev
input_x = input_x.transpose((2, 0, 1))
input_x = np.expand_dims(input_x, 0)
print(input_x.shape)
result_infer = compiled_model([input_x])[output_layer]
result_index = np.argmax(result_infer)
cv.putText(image, labels[result_index], (20, 50), cv.FONT_HERSHEY_SIMPLEX, 1.0, (0, 0, 255), 2)
cv.imshow("OpenVINO2022 + Pythorch ResNet18", image)
cv.waitKey(0)
cv.destroyAllWindow*****r/>
if __name__ == "__main__":
resnet_demo()
0个评论