未验证 提交 4a524a8a 编写于 作者: J Jason 提交者: GitHub

Merge pull request #354 from Channingss/prior_box

fix bug of elementwise_ops
...@@ -174,14 +174,15 @@ class OpSet9(object): ...@@ -174,14 +174,15 @@ class OpSet9(object):
inputs=[op.input('X')[0], temp_value], inputs=[op.input('X')[0], temp_value],
outputs=op.output('Out')) outputs=op.output('Out'))
return [shape_node, y_node, node] return [shape_node, y_node, node]
elif len(x_shape) == len(y_shape): elif axis == -1 or axis == (len(x_shape) - 1
) or len(x_shape) == len(y_shape):
node = helper.make_node( node = helper.make_node(
'Add', 'Add',
inputs=[op.input('X')[0], op.input('Y')[0]], inputs=[op.input('X')[0], op.input('Y')[0]],
outputs=op.output('Out')) outputs=op.output('Out'))
return node return node
else: else:
raise Excpetion("Unexpected situation happend in elementwise_add") raise Exception("Unexpected situation happend in elementwise_add")
def elementwise_sub(self, op, block): def elementwise_sub(self, op, block):
axis = op.attr('axis') axis = op.attr('axis')
...@@ -203,14 +204,15 @@ class OpSet9(object): ...@@ -203,14 +204,15 @@ class OpSet9(object):
inputs=[op.input('X')[0], temp_value], inputs=[op.input('X')[0], temp_value],
outputs=op.output('Out')) outputs=op.output('Out'))
return [shape_node, y_node, node] return [shape_node, y_node, node]
elif len(x_shape) == len(y_shape): elif axis == -1 or axis == (len(x_shape) - 1
) or len(x_shape) == len(y_shape):
node = helper.make_node( node = helper.make_node(
'Sub', 'Sub',
inputs=[op.input('X')[0], op.input('Y')[0]], inputs=[op.input('X')[0], op.input('Y')[0]],
outputs=op.output('Out')) outputs=op.output('Out'))
return node return node
else: else:
raise Excpetion("Unexpected situation happend in elementwise_sub") raise Exception("Unexpected situation happend in elementwise_sub")
def pool2d(self, op, block): def pool2d(self, op, block):
pool_type = { pool_type = {
...@@ -565,7 +567,7 @@ class OpSet9(object): ...@@ -565,7 +567,7 @@ class OpSet9(object):
input_shape = block.vars[op.input('X')[0]].shape input_shape = block.vars[op.input('X')[0]].shape
if op.attr('align_corners') or op.attr('align_mode') == 0: if op.attr('align_corners') or op.attr('align_mode') == 0:
raise Exception( raise Exception(
"Resize in onnx(opset<=10) only support coordinate_transformation_mode: 'asymmetric', Try converting with --onnx_opest 11" "Resize in onnx(opset<=10) only support coordinate_transformation_mode: 'asymmetric', Try converting with --onnx_opset 11"
) )
if ('OutSize' in input_names and len(op.input('OutSize')) > 0) or ( if ('OutSize' in input_names and len(op.input('OutSize')) > 0) or (
'SizeTensor' in input_names and 'SizeTensor' in input_names and
...@@ -763,14 +765,15 @@ class OpSet9(object): ...@@ -763,14 +765,15 @@ class OpSet9(object):
inputs=[op.input('X')[0], temp_value], inputs=[op.input('X')[0], temp_value],
outputs=op.output('Out')) outputs=op.output('Out'))
return [shape_node, y_node, node] return [shape_node, y_node, node]
elif len(x_shape) == len(y_shape): elif axis == -1 or axis == (len(x_shape) - 1
) or len(x_shape) == len(y_shape):
node = helper.make_node( node = helper.make_node(
'Mul', 'Mul',
inputs=[op.input('X')[0], op.input('Y')[0]], inputs=[op.input('X')[0], op.input('Y')[0]],
outputs=op.output('Out')) outputs=op.output('Out'))
return node return node
else: else:
raise Excpetion("Unexpected situation happend in elementwise_add") raise Exception("Unexpected situation happend in elementwise_mul")
return node return node
def feed(self, op, block): def feed(self, op, block):
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册