onnx2tf 1.29.3__py3-none-any.whl → 1.29.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- onnx2tf/__init__.py +1 -1
- onnx2tf/ops/BitwiseAnd.py +115 -0
- onnx2tf/ops/BitwiseNot.py +98 -0
- onnx2tf/ops/BitwiseOr.py +115 -0
- onnx2tf/ops/BitwiseXor.py +115 -0
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/METADATA +7 -7
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/RECORD +11 -7
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/WHEEL +0 -0
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/licenses/LICENSE +0 -0
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/licenses/LICENSE_onnx-tensorflow +0 -0
- {onnx2tf-1.29.3.dist-info → onnx2tf-1.29.4.dist-info}/top_level.txt +0 -0
onnx2tf/__init__.py
CHANGED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import random
|
|
2
|
+
random.seed(0)
|
|
3
|
+
import numpy as np
|
|
4
|
+
np.random.seed(0)
|
|
5
|
+
import tensorflow as tf
|
|
6
|
+
import onnx_graphsurgeon as gs
|
|
7
|
+
from onnx2tf.utils.common_functions import (
|
|
8
|
+
get_constant_or_variable,
|
|
9
|
+
print_node_info,
|
|
10
|
+
inverted_operation_enable_disable,
|
|
11
|
+
make_tf_node_info,
|
|
12
|
+
get_replacement_parameter,
|
|
13
|
+
pre_process_transpose,
|
|
14
|
+
post_process_transpose,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@print_node_info
|
|
19
|
+
@inverted_operation_enable_disable
|
|
20
|
+
@get_replacement_parameter
|
|
21
|
+
def make_node(
|
|
22
|
+
*,
|
|
23
|
+
graph_node: gs.Node,
|
|
24
|
+
tf_layers_dict: dict,
|
|
25
|
+
**kwargs: dict,
|
|
26
|
+
):
|
|
27
|
+
"""BitwiseAnd
|
|
28
|
+
|
|
29
|
+
Parameters
|
|
30
|
+
----------
|
|
31
|
+
graph_node: gs.Node
|
|
32
|
+
graph_surgeon Node
|
|
33
|
+
|
|
34
|
+
tf_layers_dict: dict
|
|
35
|
+
optype, shape, dtype, tensorflow graph
|
|
36
|
+
"""
|
|
37
|
+
before_op_output_shape_trans_1 = \
|
|
38
|
+
tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
|
|
39
|
+
before_op_output_shape_trans_2 = \
|
|
40
|
+
tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
|
|
41
|
+
before_op_output_shape_trans = \
|
|
42
|
+
before_op_output_shape_trans_1 \
|
|
43
|
+
and before_op_output_shape_trans_2
|
|
44
|
+
|
|
45
|
+
graph_node_input_1 = get_constant_or_variable(
|
|
46
|
+
graph_node.inputs[0],
|
|
47
|
+
before_op_output_shape_trans,
|
|
48
|
+
)
|
|
49
|
+
graph_node_input_2 = get_constant_or_variable(
|
|
50
|
+
graph_node.inputs[1],
|
|
51
|
+
before_op_output_shape_trans,
|
|
52
|
+
)
|
|
53
|
+
graph_node_output: gs.Variable = graph_node.outputs[0]
|
|
54
|
+
|
|
55
|
+
shape = graph_node_output.shape
|
|
56
|
+
dtype = graph_node_output.dtype
|
|
57
|
+
|
|
58
|
+
# Preserving Graph Structure (Dict)
|
|
59
|
+
tf_layers_dict[graph_node_output.name] = {
|
|
60
|
+
'optype': graph_node.op,
|
|
61
|
+
'shape': shape,
|
|
62
|
+
'dtype': dtype,
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
# Generation of TF OP
|
|
66
|
+
input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
|
|
67
|
+
if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
|
|
68
|
+
input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
|
|
69
|
+
if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
|
|
70
|
+
|
|
71
|
+
# Pre-process transpose
|
|
72
|
+
input_tensor_1 = pre_process_transpose(
|
|
73
|
+
value_before_transpose=input_tensor_1,
|
|
74
|
+
param_target='inputs',
|
|
75
|
+
param_name=graph_node.inputs[0].name,
|
|
76
|
+
**kwargs,
|
|
77
|
+
)
|
|
78
|
+
input_tensor_2 = pre_process_transpose(
|
|
79
|
+
value_before_transpose=input_tensor_2,
|
|
80
|
+
param_target='inputs',
|
|
81
|
+
param_name=graph_node.inputs[1].name,
|
|
82
|
+
**kwargs,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
tf_op_type = None
|
|
86
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = \
|
|
87
|
+
tf.bitwise.bitwise_and(
|
|
88
|
+
x=input_tensor_1,
|
|
89
|
+
y=input_tensor_2,
|
|
90
|
+
name=graph_node.name,
|
|
91
|
+
)
|
|
92
|
+
tf_op_type = tf.bitwise.bitwise_and
|
|
93
|
+
|
|
94
|
+
# Post-process transpose
|
|
95
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
|
|
96
|
+
value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
97
|
+
param_target='outputs',
|
|
98
|
+
param_name=graph_node.outputs[0].name,
|
|
99
|
+
**kwargs,
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
# Generation of Debug Info
|
|
103
|
+
tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
|
|
104
|
+
make_tf_node_info(
|
|
105
|
+
node_info={
|
|
106
|
+
'tf_op_type': tf_op_type,
|
|
107
|
+
'tf_inputs': {
|
|
108
|
+
'x': input_tensor_1,
|
|
109
|
+
'y': input_tensor_2,
|
|
110
|
+
},
|
|
111
|
+
'tf_outputs': {
|
|
112
|
+
'output': tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
113
|
+
},
|
|
114
|
+
}
|
|
115
|
+
)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import random
|
|
2
|
+
random.seed(0)
|
|
3
|
+
import numpy as np
|
|
4
|
+
np.random.seed(0)
|
|
5
|
+
import tensorflow as tf
|
|
6
|
+
import onnx_graphsurgeon as gs
|
|
7
|
+
from onnx2tf.utils.common_functions import (
|
|
8
|
+
get_constant_or_variable,
|
|
9
|
+
print_node_info,
|
|
10
|
+
inverted_operation_enable_disable,
|
|
11
|
+
make_tf_node_info,
|
|
12
|
+
get_replacement_parameter,
|
|
13
|
+
pre_process_transpose,
|
|
14
|
+
post_process_transpose,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@print_node_info
|
|
19
|
+
@inverted_operation_enable_disable
|
|
20
|
+
@get_replacement_parameter
|
|
21
|
+
def make_node(
|
|
22
|
+
*,
|
|
23
|
+
graph_node: gs.Node,
|
|
24
|
+
tf_layers_dict: dict,
|
|
25
|
+
**kwargs: dict,
|
|
26
|
+
):
|
|
27
|
+
"""BitwiseNot
|
|
28
|
+
|
|
29
|
+
Parameters
|
|
30
|
+
----------
|
|
31
|
+
graph_node: gs.Node
|
|
32
|
+
graph_surgeon Node
|
|
33
|
+
|
|
34
|
+
tf_layers_dict: dict
|
|
35
|
+
optype, shape, dtype, tensorflow graph
|
|
36
|
+
"""
|
|
37
|
+
before_op_output_shape_trans_1 = \
|
|
38
|
+
tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
|
|
39
|
+
before_op_output_shape_trans = \
|
|
40
|
+
before_op_output_shape_trans_1
|
|
41
|
+
|
|
42
|
+
graph_node_input_1 = get_constant_or_variable(
|
|
43
|
+
graph_node.inputs[0],
|
|
44
|
+
before_op_output_shape_trans,
|
|
45
|
+
)
|
|
46
|
+
graph_node_output: gs.Variable = graph_node.outputs[0]
|
|
47
|
+
|
|
48
|
+
shape = graph_node_output.shape
|
|
49
|
+
dtype = graph_node_output.dtype
|
|
50
|
+
|
|
51
|
+
# Preserving Graph Structure (Dict)
|
|
52
|
+
tf_layers_dict[graph_node_output.name] = {
|
|
53
|
+
'optype': graph_node.op,
|
|
54
|
+
'shape': shape,
|
|
55
|
+
'dtype': dtype,
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
# Generation of TF OP
|
|
59
|
+
input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
|
|
60
|
+
if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
|
|
61
|
+
|
|
62
|
+
# Pre-process transpose
|
|
63
|
+
input_tensor_1 = pre_process_transpose(
|
|
64
|
+
value_before_transpose=input_tensor_1,
|
|
65
|
+
param_target='inputs',
|
|
66
|
+
param_name=graph_node.inputs[0].name,
|
|
67
|
+
**kwargs,
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
tf_op_type = None
|
|
71
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = \
|
|
72
|
+
tf.bitwise.invert(
|
|
73
|
+
x=input_tensor_1,
|
|
74
|
+
name=graph_node.name,
|
|
75
|
+
)
|
|
76
|
+
tf_op_type = tf.bitwise.invert
|
|
77
|
+
|
|
78
|
+
# Post-process transpose
|
|
79
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
|
|
80
|
+
value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
81
|
+
param_target='outputs',
|
|
82
|
+
param_name=graph_node.outputs[0].name,
|
|
83
|
+
**kwargs,
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
# Generation of Debug Info
|
|
87
|
+
tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
|
|
88
|
+
make_tf_node_info(
|
|
89
|
+
node_info={
|
|
90
|
+
'tf_op_type': tf_op_type,
|
|
91
|
+
'tf_inputs': {
|
|
92
|
+
'x': input_tensor_1,
|
|
93
|
+
},
|
|
94
|
+
'tf_outputs': {
|
|
95
|
+
'output': tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
96
|
+
},
|
|
97
|
+
}
|
|
98
|
+
)
|
onnx2tf/ops/BitwiseOr.py
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import random
|
|
2
|
+
random.seed(0)
|
|
3
|
+
import numpy as np
|
|
4
|
+
np.random.seed(0)
|
|
5
|
+
import tensorflow as tf
|
|
6
|
+
import onnx_graphsurgeon as gs
|
|
7
|
+
from onnx2tf.utils.common_functions import (
|
|
8
|
+
get_constant_or_variable,
|
|
9
|
+
print_node_info,
|
|
10
|
+
inverted_operation_enable_disable,
|
|
11
|
+
make_tf_node_info,
|
|
12
|
+
get_replacement_parameter,
|
|
13
|
+
pre_process_transpose,
|
|
14
|
+
post_process_transpose,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@print_node_info
|
|
19
|
+
@inverted_operation_enable_disable
|
|
20
|
+
@get_replacement_parameter
|
|
21
|
+
def make_node(
|
|
22
|
+
*,
|
|
23
|
+
graph_node: gs.Node,
|
|
24
|
+
tf_layers_dict: dict,
|
|
25
|
+
**kwargs: dict,
|
|
26
|
+
):
|
|
27
|
+
"""BitwiseOr
|
|
28
|
+
|
|
29
|
+
Parameters
|
|
30
|
+
----------
|
|
31
|
+
graph_node: gs.Node
|
|
32
|
+
graph_surgeon Node
|
|
33
|
+
|
|
34
|
+
tf_layers_dict: dict
|
|
35
|
+
optype, shape, dtype, tensorflow graph
|
|
36
|
+
"""
|
|
37
|
+
before_op_output_shape_trans_1 = \
|
|
38
|
+
tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
|
|
39
|
+
before_op_output_shape_trans_2 = \
|
|
40
|
+
tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
|
|
41
|
+
before_op_output_shape_trans = \
|
|
42
|
+
before_op_output_shape_trans_1 \
|
|
43
|
+
and before_op_output_shape_trans_2
|
|
44
|
+
|
|
45
|
+
graph_node_input_1 = get_constant_or_variable(
|
|
46
|
+
graph_node.inputs[0],
|
|
47
|
+
before_op_output_shape_trans,
|
|
48
|
+
)
|
|
49
|
+
graph_node_input_2 = get_constant_or_variable(
|
|
50
|
+
graph_node.inputs[1],
|
|
51
|
+
before_op_output_shape_trans,
|
|
52
|
+
)
|
|
53
|
+
graph_node_output: gs.Variable = graph_node.outputs[0]
|
|
54
|
+
|
|
55
|
+
shape = graph_node_output.shape
|
|
56
|
+
dtype = graph_node_output.dtype
|
|
57
|
+
|
|
58
|
+
# Preserving Graph Structure (Dict)
|
|
59
|
+
tf_layers_dict[graph_node_output.name] = {
|
|
60
|
+
'optype': graph_node.op,
|
|
61
|
+
'shape': shape,
|
|
62
|
+
'dtype': dtype,
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
# Generation of TF OP
|
|
66
|
+
input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
|
|
67
|
+
if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
|
|
68
|
+
input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
|
|
69
|
+
if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
|
|
70
|
+
|
|
71
|
+
# Pre-process transpose
|
|
72
|
+
input_tensor_1 = pre_process_transpose(
|
|
73
|
+
value_before_transpose=input_tensor_1,
|
|
74
|
+
param_target='inputs',
|
|
75
|
+
param_name=graph_node.inputs[0].name,
|
|
76
|
+
**kwargs,
|
|
77
|
+
)
|
|
78
|
+
input_tensor_2 = pre_process_transpose(
|
|
79
|
+
value_before_transpose=input_tensor_2,
|
|
80
|
+
param_target='inputs',
|
|
81
|
+
param_name=graph_node.inputs[1].name,
|
|
82
|
+
**kwargs,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
tf_op_type = None
|
|
86
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = \
|
|
87
|
+
tf.bitwise.bitwise_or(
|
|
88
|
+
x=input_tensor_1,
|
|
89
|
+
y=input_tensor_2,
|
|
90
|
+
name=graph_node.name,
|
|
91
|
+
)
|
|
92
|
+
tf_op_type = tf.bitwise.bitwise_or
|
|
93
|
+
|
|
94
|
+
# Post-process transpose
|
|
95
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
|
|
96
|
+
value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
97
|
+
param_target='outputs',
|
|
98
|
+
param_name=graph_node.outputs[0].name,
|
|
99
|
+
**kwargs,
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
# Generation of Debug Info
|
|
103
|
+
tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
|
|
104
|
+
make_tf_node_info(
|
|
105
|
+
node_info={
|
|
106
|
+
'tf_op_type': tf_op_type,
|
|
107
|
+
'tf_inputs': {
|
|
108
|
+
'x': input_tensor_1,
|
|
109
|
+
'y': input_tensor_2,
|
|
110
|
+
},
|
|
111
|
+
'tf_outputs': {
|
|
112
|
+
'output': tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
113
|
+
},
|
|
114
|
+
}
|
|
115
|
+
)
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import random
|
|
2
|
+
random.seed(0)
|
|
3
|
+
import numpy as np
|
|
4
|
+
np.random.seed(0)
|
|
5
|
+
import tensorflow as tf
|
|
6
|
+
import onnx_graphsurgeon as gs
|
|
7
|
+
from onnx2tf.utils.common_functions import (
|
|
8
|
+
get_constant_or_variable,
|
|
9
|
+
print_node_info,
|
|
10
|
+
inverted_operation_enable_disable,
|
|
11
|
+
make_tf_node_info,
|
|
12
|
+
get_replacement_parameter,
|
|
13
|
+
pre_process_transpose,
|
|
14
|
+
post_process_transpose,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@print_node_info
|
|
19
|
+
@inverted_operation_enable_disable
|
|
20
|
+
@get_replacement_parameter
|
|
21
|
+
def make_node(
|
|
22
|
+
*,
|
|
23
|
+
graph_node: gs.Node,
|
|
24
|
+
tf_layers_dict: dict,
|
|
25
|
+
**kwargs: dict,
|
|
26
|
+
):
|
|
27
|
+
"""BitwiseXor
|
|
28
|
+
|
|
29
|
+
Parameters
|
|
30
|
+
----------
|
|
31
|
+
graph_node: gs.Node
|
|
32
|
+
graph_surgeon Node
|
|
33
|
+
|
|
34
|
+
tf_layers_dict: dict
|
|
35
|
+
optype, shape, dtype, tensorflow graph
|
|
36
|
+
"""
|
|
37
|
+
before_op_output_shape_trans_1 = \
|
|
38
|
+
tf_layers_dict.get(graph_node.inputs[0].name, {}).get('before_op_output_shape_trans', True)
|
|
39
|
+
before_op_output_shape_trans_2 = \
|
|
40
|
+
tf_layers_dict.get(graph_node.inputs[1].name, {}).get('before_op_output_shape_trans', True)
|
|
41
|
+
before_op_output_shape_trans = \
|
|
42
|
+
before_op_output_shape_trans_1 \
|
|
43
|
+
and before_op_output_shape_trans_2
|
|
44
|
+
|
|
45
|
+
graph_node_input_1 = get_constant_or_variable(
|
|
46
|
+
graph_node.inputs[0],
|
|
47
|
+
before_op_output_shape_trans,
|
|
48
|
+
)
|
|
49
|
+
graph_node_input_2 = get_constant_or_variable(
|
|
50
|
+
graph_node.inputs[1],
|
|
51
|
+
before_op_output_shape_trans,
|
|
52
|
+
)
|
|
53
|
+
graph_node_output: gs.Variable = graph_node.outputs[0]
|
|
54
|
+
|
|
55
|
+
shape = graph_node_output.shape
|
|
56
|
+
dtype = graph_node_output.dtype
|
|
57
|
+
|
|
58
|
+
# Preserving Graph Structure (Dict)
|
|
59
|
+
tf_layers_dict[graph_node_output.name] = {
|
|
60
|
+
'optype': graph_node.op,
|
|
61
|
+
'shape': shape,
|
|
62
|
+
'dtype': dtype,
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
# Generation of TF OP
|
|
66
|
+
input_tensor_1 = tf_layers_dict[graph_node_input_1.name]['tf_node'] \
|
|
67
|
+
if isinstance(graph_node_input_1, gs.Variable) else graph_node_input_1
|
|
68
|
+
input_tensor_2 = tf_layers_dict[graph_node_input_2.name]['tf_node'] \
|
|
69
|
+
if isinstance(graph_node_input_2, gs.Variable) else graph_node_input_2
|
|
70
|
+
|
|
71
|
+
# Pre-process transpose
|
|
72
|
+
input_tensor_1 = pre_process_transpose(
|
|
73
|
+
value_before_transpose=input_tensor_1,
|
|
74
|
+
param_target='inputs',
|
|
75
|
+
param_name=graph_node.inputs[0].name,
|
|
76
|
+
**kwargs,
|
|
77
|
+
)
|
|
78
|
+
input_tensor_2 = pre_process_transpose(
|
|
79
|
+
value_before_transpose=input_tensor_2,
|
|
80
|
+
param_target='inputs',
|
|
81
|
+
param_name=graph_node.inputs[1].name,
|
|
82
|
+
**kwargs,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
tf_op_type = None
|
|
86
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = \
|
|
87
|
+
tf.bitwise.bitwise_xor(
|
|
88
|
+
x=input_tensor_1,
|
|
89
|
+
y=input_tensor_2,
|
|
90
|
+
name=graph_node.name,
|
|
91
|
+
)
|
|
92
|
+
tf_op_type = tf.bitwise.bitwise_xor
|
|
93
|
+
|
|
94
|
+
# Post-process transpose
|
|
95
|
+
tf_layers_dict[graph_node_output.name]['tf_node'] = post_process_transpose(
|
|
96
|
+
value_before_transpose=tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
97
|
+
param_target='outputs',
|
|
98
|
+
param_name=graph_node.outputs[0].name,
|
|
99
|
+
**kwargs,
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
# Generation of Debug Info
|
|
103
|
+
tf_layers_dict[graph_node_output.name]['tf_node_info'] = \
|
|
104
|
+
make_tf_node_info(
|
|
105
|
+
node_info={
|
|
106
|
+
'tf_op_type': tf_op_type,
|
|
107
|
+
'tf_inputs': {
|
|
108
|
+
'x': input_tensor_1,
|
|
109
|
+
'y': input_tensor_2,
|
|
110
|
+
},
|
|
111
|
+
'tf_outputs': {
|
|
112
|
+
'output': tf_layers_dict[graph_node_output.name]['tf_node'],
|
|
113
|
+
},
|
|
114
|
+
}
|
|
115
|
+
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: onnx2tf
|
|
3
|
-
Version: 1.29.
|
|
3
|
+
Version: 1.29.4
|
|
4
4
|
Summary: Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC).
|
|
5
5
|
Home-page: https://github.com/PINTO0309/onnx2tf
|
|
6
6
|
Author: Katsuya Hyodo
|
|
@@ -106,10 +106,10 @@ https://github.com/PINTO0309/onnx2tf/wiki/model_status
|
|
|
106
106
|
|BatchNormalization|:heavy_check_mark:|
|
|
107
107
|
|Bernoulli|:heavy_check_mark:|
|
|
108
108
|
|BitShift|:heavy_check_mark:|
|
|
109
|
-
|BitwiseAnd
|
|
110
|
-
|BitwiseNot
|
|
111
|
-
|BitwiseOr
|
|
112
|
-
|BitwiseXor
|
|
109
|
+
|BitwiseAnd|:heavy_check_mark:|
|
|
110
|
+
|BitwiseNot|:heavy_check_mark:|
|
|
111
|
+
|BitwiseOr|:heavy_check_mark:|
|
|
112
|
+
|BitwiseXor|:heavy_check_mark:|
|
|
113
113
|
|Cast|:heavy_check_mark:|
|
|
114
114
|
|Ceil|:heavy_check_mark:|
|
|
115
115
|
|Celu|:heavy_check_mark:|
|
|
@@ -345,7 +345,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
|
|
|
345
345
|
docker run --rm -it \
|
|
346
346
|
-v `pwd`:/workdir \
|
|
347
347
|
-w /workdir \
|
|
348
|
-
ghcr.io/pinto0309/onnx2tf:1.29.
|
|
348
|
+
ghcr.io/pinto0309/onnx2tf:1.29.4
|
|
349
349
|
|
|
350
350
|
or
|
|
351
351
|
|
|
@@ -353,7 +353,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
|
|
|
353
353
|
docker run --rm -it \
|
|
354
354
|
-v `pwd`:/workdir \
|
|
355
355
|
-w /workdir \
|
|
356
|
-
docker.io/pinto0309/onnx2tf:1.29.
|
|
356
|
+
docker.io/pinto0309/onnx2tf:1.29.4
|
|
357
357
|
|
|
358
358
|
or
|
|
359
359
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
onnx2tf/__init__.py,sha256=
|
|
1
|
+
onnx2tf/__init__.py,sha256=pluvSdvaC9nePqUVOCSAuPcchjfddyLkq1cJnhohl5w,66
|
|
2
2
|
onnx2tf/__main__.py,sha256=2RSCQ7d4lc6CwD-rlGn9UicPFg-P5du7ZD_yh-kuBEU,57
|
|
3
3
|
onnx2tf/onnx2tf.py,sha256=wdBA-lgCEu-ZfUAKIUQgLe8hSP8ifE7rS6nWAq6iF6o,151519
|
|
4
4
|
onnx2tf/ops/Abs.py,sha256=V7btmCG_ZvK_qJovUsguq0ZMJ349mhNQ4FHSgzP_Yuo,4029
|
|
@@ -16,6 +16,10 @@ onnx2tf/ops/AveragePool.py,sha256=kifQJZplqC2Px209BotbjXCPpRBQQsB8DlJYJTvJD78,20
|
|
|
16
16
|
onnx2tf/ops/BatchNormalization.py,sha256=_hlf2-5-j3MCJHEoE2oMNQ8YhCm7ad9h2fwPpTo3i7g,26624
|
|
17
17
|
onnx2tf/ops/Bernoulli.py,sha256=PM0xS0n1q4bnT_9PnbcKW8_Qj8dJYYBQR8kb2X-wIp4,3670
|
|
18
18
|
onnx2tf/ops/BitShift.py,sha256=a28_E9hwA8yfjvtsrSKCZCeeMPB5RBQbjB3cmaNGN6k,3861
|
|
19
|
+
onnx2tf/ops/BitwiseAnd.py,sha256=snmmVzVwLxhWh0aKyaskScBvefncGyW7ZPVrmbugazk,3456
|
|
20
|
+
onnx2tf/ops/BitwiseNot.py,sha256=QuFUyK24JGrEOKYu-6lRi9uZLz4MKVtBwUqzDdqtBKA,2721
|
|
21
|
+
onnx2tf/ops/BitwiseOr.py,sha256=WSswhA3qmp3OJ4iIibl_2ps-tZEyfKI7B19GiFH7Uik,3453
|
|
22
|
+
onnx2tf/ops/BitwiseXor.py,sha256=d1WoshWdfcoQnYrdaxafRleipy1d0AKleTgh0G7lZlw,3456
|
|
19
23
|
onnx2tf/ops/Cast.py,sha256=M0LRClHPgZ_8NubwME6ipKrAqcY9aKC5ihQXCkTkNkM,4601
|
|
20
24
|
onnx2tf/ops/Ceil.py,sha256=0-jaueltpQSwpOIDUmy9DdTy98qN-XimYu5cHVPnUIs,3586
|
|
21
25
|
onnx2tf/ops/Celu.py,sha256=9g7WNKo4G_jMtUXcoOfpNdLYqEsuyXLPkkyQZxDuL4U,3853
|
|
@@ -190,9 +194,9 @@ onnx2tf/utils/enums.py,sha256=7c5TqetqB07VjyHoxJHfLgtqBqk9ZRyUF33fPOJR1IM,1649
|
|
|
190
194
|
onnx2tf/utils/iterative_json_optimizer.py,sha256=qqeIxWGxrhcCYk8-ebWnblnOkzDCwi-nseipHzHR_bk,10436
|
|
191
195
|
onnx2tf/utils/json_auto_generator.py,sha256=OC-SfKtUg7zUxaXTAg6kT0ShzIc3ByjDa3FNp173DtA,60302
|
|
192
196
|
onnx2tf/utils/logging.py,sha256=yUCmPuJ_XiUItM3sZMcaMO24JErkQy7zZwVTYWAuiKg,1982
|
|
193
|
-
onnx2tf-1.29.
|
|
194
|
-
onnx2tf-1.29.
|
|
195
|
-
onnx2tf-1.29.
|
|
196
|
-
onnx2tf-1.29.
|
|
197
|
-
onnx2tf-1.29.
|
|
198
|
-
onnx2tf-1.29.
|
|
197
|
+
onnx2tf-1.29.4.dist-info/licenses/LICENSE,sha256=5v_Kxihy8i6mzHVl349ikSREaIdsl9YeUnX1KBDLD2w,1070
|
|
198
|
+
onnx2tf-1.29.4.dist-info/licenses/LICENSE_onnx-tensorflow,sha256=gK4GtS9S5YcyINu6uuNNWdo-kBClyEM4MFLFGiNTeRM,11231
|
|
199
|
+
onnx2tf-1.29.4.dist-info/METADATA,sha256=HYGQZOLfX2Hvk0xSg3t8Dfd376S7WlGyAc16CEfQztM,153246
|
|
200
|
+
onnx2tf-1.29.4.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
201
|
+
onnx2tf-1.29.4.dist-info/top_level.txt,sha256=WgfPiEy3f6vZ_FOpAIEA2CF3TCx1eYrhGw93Ih6b9Fw,8
|
|
202
|
+
onnx2tf-1.29.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|