onnxruntime-extensions/tutorials/imagenet_processing.ipynb

326 строки
115 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "037905b6",
"metadata": {},
"source": [
"# Pre/Post Processing for ImageNet based classification model\n",
"### First check onnxruntime-extensions is installed in the Python environment"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "230fba23",
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Name: onnxruntime-extensions\n",
"Version: 0.4.2+febe63a\n",
"Summary: ONNXRuntime Extensions\n",
"Home-page: https://github.com/microsoft/onnxruntime-extensions\n",
"Author: Microsoft Corporation\n",
"Author-email: onnx@microsoft.com\n",
"License: MIT License\n",
"Location: c:\\g\\ortext\n",
"Requires: numpy, onnx, onnxruntime\n",
"Required-by: \n"
]
}
],
"source": [
"!pip show onnxruntime_extensions\n",
"from matplotlib.pyplot import imshow"
]
},
{
"cell_type": "markdown",
"id": "8470c79c",
"metadata": {},
"source": [
"Load an image for test"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "4673b4ba",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x2c91ddedeb0>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import numpy\n",
"from PIL import Image\n",
"img = Image.open('../test/data/pineapple.jpg')\n",
"img_npy = numpy.asarray(img.convert('RGB'))\n",
"img.size, img_npy.shape\n",
"%matplotlib inline\n",
"imshow(img)"
]
},
{
"cell_type": "markdown",
"id": "1b778bf2",
"metadata": {},
"source": [
"Try the pre-processing built-in Python function in onnxruntime_extensions, Note the normalized image was miscolored due to the image RGB value normalization."
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "9e85d156",
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\g\\ortext\\onnxruntime_extensions\\pnp\\_onnx_ops.py:71: UserWarning: The maximum opset needed by this model is only 9.\n",
" warnings.warn('The maximum opset needed by this model is only %d.' % op_version)\n",
"Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x2c92280a550>"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"from onnxruntime_extensions import pnp\n",
"pre = pnp.PreMobileNet(size=224)\n",
"img2 = pre.forward(img_npy)\n",
"%matplotlib inline\n",
"imshow(img2.squeeze(0).permute(1, 2, 0))"
]
},
{
"cell_type": "markdown",
"id": "e43dd668",
"metadata": {},
"source": [
"Try the pre-processing in torchvision"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "33340c2e",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x2c922df1430>"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"from torchvision import transforms as T\n",
"pre_torch=T.Compose([\n",
" T.Resize(256),\n",
" T.CenterCrop(224),\n",
" T.ToTensor(),\n",
" T.Normalize(\n",
" mean=[0.485, 0.456, 0.406],\n",
" std=[0.229, 0.224, 0.225]\n",
" )\n",
"])\n",
"\n",
"img3 = pre_torch(img.convert('RGB'))\n",
"%matplotlib inline\n",
"imshow(img3.permute(1, 2, 0))"
]
},
{
"cell_type": "markdown",
"id": "87d48bff",
"metadata": {},
"source": [
"The processed images are identical after the different processing ways.\n",
"\n",
"### Integrate the preprocessing into a model trained on ImageNet dataset"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "fb9b24b1",
"metadata": {},
"outputs": [],
"source": [
"import onnx\n",
"import torch\n",
"from onnxruntime_extensions import PyOrtFunction, pnp\n",
"\n",
"\n",
"mnv2 = onnx.load_model('../test/data/mobilev2.onnx')\n",
"full_model = pnp.SequenceProcessingModule(pnp.PreMobileNet(224),\n",
" mnv2,\n",
" pnp.PostMobileNet())\n",
"\n",
"ids, probabilities = full_model.forward(torch.from_numpy(img_npy))\n",
"full_onnx_model = pnp.export(full_model, torch.from_numpy(img_npy), opset_version=11, output_path='temp_exmobilev2.onnx')"
]
},
{
"cell_type": "markdown",
"id": "73a0609d",
"metadata": {},
"source": [
"### Verify the built full model\n",
"Let me try the model embedded with preprocessing operations"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "1a913ca0",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"953"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"full_model_func = PyOrtFunction.from_model(full_onnx_model)\n",
"ids, probabilities = full_model_func(img_npy)\n",
"ids[0][0]"
]
},
{
"cell_type": "markdown",
"id": "b062631a",
"metadata": {},
"source": [
"Convert the the image class id number to image class text."
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "6d0e00f0",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"top-1 obj=pineapple, ananas prob=99.85%\n"
]
}
],
"source": [
"import ast\n",
"idx = ids[0][0].item()\n",
"text = \"{}\".format(idx)\n",
"with open('../test/data/imagenet1000_clsidx_to_labels.txt', 'r') as f:\n",
" labels = ast.literal_eval(f.read())\n",
" text = labels[idx]\n",
"print(\"top-1 obj={} prob={:.2%}\".format(text, probabilities[0][0]))"
]
}
],
"metadata": {
"interpreter": {
"hash": "d813e4d267de4daed45500e68ebcbe2c00b78daf6ae3f558b6b4058bb32157a6"
},
"kernelspec": {
"display_name": "Python 3.8.0 64-bit ('gpu': conda)",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.0"
}
},
"nbformat": 4,
"nbformat_minor": 5
}