提交 00533d50 编写于 作者: C Channingss

yolo_v3,hrnet,deeplabv3p,unet,fast_scnn change resize method for export ONNX opset10

上级 a20bc127
......@@ -153,7 +153,7 @@ class YOLOv3:
def _upsample(self, input, scale=2, name=None):
out = fluid.layers.resize_nearest(
input=input, scale=float(scale), name=name)
input=input, scale=float(scale), name=name, align_corners=False)
return out
def _detection_block(self, input, channel, name=None):
......@@ -242,7 +242,7 @@ class YOLOv3:
nms_top_k=self.nms_topk,
keep_top_k=self.nms_keep_topk,
nms_threshold=self.nms_iou_threshold,
normalized=False,
normalized=True,
nms_eta=1.0,
background_label=-1)
return pred
......
......@@ -241,7 +241,7 @@ class HRNet(object):
align_mode=1)
else:
y = fluid.layers.resize_nearest(
input=y, scale=2**(j - i))
input=y, scale=2**(j - i), align_corners=False)
residual = fluid.layers.elementwise_add(
x=residual, y=y, act=None)
elif j < i:
......
......@@ -151,8 +151,8 @@ class DeepLabv3p(object):
padding=0,
param_attr=param_attr))
input_shape = fluid.layers.shape(input)
image_avg = fluid.layers.resize_bilinear(image_avg,
input_shape[2:])
image_avg = fluid.layers.resize_bilinear(
image_avg, input_shape[2:], align_corners=False)
with scope("aspp0"):
aspp0 = bn_relu(
......@@ -260,7 +260,9 @@ class DeepLabv3p(object):
decode_shortcut_shape = fluid.layers.shape(decode_shortcut)
encode_data = fluid.layers.resize_bilinear(
encode_data, decode_shortcut_shape[2:])
encode_data,
decode_shortcut_shape[2:],
align_corners=False)
encode_data = fluid.layers.concat(
[encode_data, decode_shortcut], axis=1)
if self.decoder_use_sep_conv:
......@@ -362,7 +364,8 @@ class DeepLabv3p(object):
bias_attr=True,
param_attr=param_attr)
image_shape = fluid.layers.shape(image)
logit = fluid.layers.resize_bilinear(logit, image_shape[2:])
logit = fluid.layers.resize_bilinear(
logit, image_shape[2:], align_corners=False)
if self.num_classes == 1:
out = sigmoid_to_softmax(logit)
......
......@@ -86,26 +86,27 @@ class FastSCNN(object):
64, 128, 128)
with scope('classifier'):
logit = self._classifier(x, 128)
logit = fluid.layers.resize_bilinear(logit, size, align_mode=0)
logit = fluid.layers.resize_bilinear(
logit, size, align_corners=False, align_mode=1)
if len(self.multi_loss_weight) == 3:
with scope('aux_layer_higher'):
higher_logit = self._aux_layer(higher_res_features,
self.num_classes)
higher_logit = fluid.layers.resize_bilinear(
higher_logit, size, align_mode=0)
higher_logit, size, align_corners=False, align_mode=1)
with scope('aux_layer_lower'):
lower_logit = self._aux_layer(lower_res_feature,
self.num_classes)
lower_logit = fluid.layers.resize_bilinear(
lower_logit, size, align_mode=0)
lower_logit, size, align_corners=False, align_mode=1)
logit = (logit, higher_logit, lower_logit)
elif len(self.multi_loss_weight) == 2:
with scope('aux_layer_higher'):
higher_logit = self._aux_layer(higher_res_features,
self.num_classes)
higher_logit = fluid.layers.resize_bilinear(
higher_logit, size, align_mode=0)
higher_logit, size, align_corners=False, align_mode=1)
logit = (logit, higher_logit)
else:
logit = (logit, )
......@@ -317,7 +318,8 @@ class FastSCNN(object):
data_bn,
out_shape=fluid.layers.shape(input)[2:],
name=psp_name + '_interp',
align_mode=0)
align_corners=False,
align_mode=1)
cat_layers.append(interp)
cat_layers = [input] + cat_layers
out = fluid.layers.concat(cat_layers, axis=1, name='psp_cat')
......@@ -342,7 +344,7 @@ class FastSCNN(object):
w = shape[-1]
h = shape[-2]
lower_res_feature = fluid.layers.resize_bilinear(
lower_res_feature, [h, w], align_mode=0)
lower_res_feature, [h, w], align_corners=False, align_mode=1)
with scope('dwconv'):
lower_res_feature = relu(
......
......@@ -144,7 +144,8 @@ class UNet(object):
with scope("up"):
if self.upsample_mode == 'bilinear':
short_cut_shape = fluid.layers.shape(short_cut)
data = fluid.layers.resize_bilinear(data, short_cut_shape[2:])
data = fluid.layers.resize_bilinear(
data, short_cut_shape[2:], align_corners=False)
else:
data = deconv(
data,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册