Imported Upstream version 1.9.0
[platform/core/ml/nnfw.git] / tools / nnpackage_tool / tflite2circle / tflitejson2circlejson.py
1 #!/usr/bin/python3
2
3 # Copyright (c) 2019 Samsung Electronics Co., Ltd. All Rights Reserved
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #    http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16
17 import json
18 import os
19 import sys
20 from collections import OrderedDict
21
22
23 def usage():
24     script = os.path.basename(os.path.basename(__file__))
25     print("Usage: {} path_to_tflite_in_json".format(script))
26     sys.exit(-1)
27
28
29 if __name__ == '__main__':
30     if len(sys.argv) != 2:
31         usage()
32
33     json_path = sys.argv[1]
34     with open(json_path, "r") as f:
35         try:
36             json_dict = json.load(f, object_pairs_hook=OrderedDict)
37             json_dict["version"] = 0
38             print(json.dumps(json_dict, indent=2))
39         except KeyError:
40             print("subgraphs attribute does not exist.")
41             sys.exit(-2)