File size: 1,094 Bytes
21c7197 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
"A script to generate all development files necessary for the image filtering demo."
import shutil
from pathlib import Path
import numpy as np
import onnx
from common import AVAILABLE_FILTERS, FILTERS_PATH, INPUT_SHAPE, INPUTSET
from custom_client_server import CustomFHEDev
from filters import Filter
print("Generating deployment files for all available filters")
for image_filter in AVAILABLE_FILTERS:
print("Filter:", image_filter, "\n")
# Create the filter instance
filter = Filter(image_filter)
image_shape = INPUT_SHAPE + (3,)
# Compile the filter on the inputset
filter.compile(INPUTSET)
filter_path = FILTERS_PATH / image_filter
deployment_path = filter_path / "deployment"
# Delete the deployment folder and its content if it exist
if deployment_path.is_dir():
shutil.rmtree(deployment_path)
# Save the files needed for deployment
fhe_dev_filter = CustomFHEDev(deployment_path, filter)
fhe_dev_filter.save()
# Save the ONNX model
onnx.save(filter.onnx_model, filter_path / "server.onnx")
print("Done !")
|