Skip to content

Commit 1b8663e

Browse files
committed
Add option to use TorchDyanmo exporter in DeepLab export script
1 parent 98790e4 commit 1b8663e

File tree

1 file changed

+30
-8
lines changed

1 file changed

+30
-8
lines changed

rten-examples/src/export-deeplab.py

+30-8
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from argparse import ArgumentParser
2+
13
import torch
24
from torchvision.models.segmentation import (
35
deeplabv3_mobilenet_v3_large,
@@ -16,12 +18,32 @@
1618
img = torch.rand((3, 480, 640))
1719
batch = preprocess(img).unsqueeze(0)
1820

19-
# Export to ONNX
20-
torch.onnx.export(
21-
model,
22-
args=(batch),
23-
f="deeplab.onnx",
24-
verbose=False,
25-
input_names=["input"],
26-
output_names=["output"],
21+
parser = ArgumentParser()
22+
parser.add_argument("-f", "--filename", default="deeplab.onnx")
23+
parser.add_argument(
24+
"--dynamo", action="store_true", help="Use TorchDynamo-based exporter"
2725
)
26+
args = parser.parse_args()
27+
28+
if args.dynamo:
29+
print("Exporting model using TorchDynamo...")
30+
onnx_prog = torch.onnx.export(
31+
model,
32+
args=(batch),
33+
verbose=False,
34+
input_names=["input"],
35+
output_names=["output"],
36+
dynamo=True,
37+
)
38+
onnx_prog.optimize()
39+
onnx_prog.save(args.filename)
40+
else:
41+
print("Exporting model using TorchScript...")
42+
torch.onnx.export(
43+
model,
44+
args=(batch),
45+
f=args.filename,
46+
verbose=False,
47+
input_names=["input"],
48+
output_names=["output"],
49+
)

0 commit comments

Comments
 (0)