You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
INFO:onnx2keras:Converter is called.
DEBUG:onnx2keras:List input shapes:
DEBUG:onnx2keras:[(1, 64, 64)]
DEBUG:onnx2keras:List inputs:
DEBUG:onnx2keras:Input 0 -> input_0.
DEBUG:onnx2keras:List outputs:
DEBUG:onnx2keras:Output 0 -> output_0.
DEBUG:onnx2keras:Gathering weights to dictionary.
DEBUG:onnx2keras:Found weight deconv1.weight with shape (256, 128, 5, 5).
DEBUG:onnx2keras:Found weight deconv1.bias with shape (128,).
DEBUG:onnx2keras:Found weight bn4.weight with shape (128,).
DEBUG:onnx2keras:Found weight bn4.bias with shape (128,).
DEBUG:onnx2keras:Found weight bn4.running_mean with shape (128,).
DEBUG:onnx2keras:Found weight bn4.running_var with shape (128,).
DEBUG:onnx2keras:Found weight deconv2.weight with shape (128, 64, 5, 5).
DEBUG:onnx2keras:Found weight deconv2.bias with shape (64,).
DEBUG:onnx2keras:Found weight bn5.weight with shape (64,).
DEBUG:onnx2keras:Found weight bn5.bias with shape (64,).
DEBUG:onnx2keras:Found weight bn5.running_mean with shape (64,).
DEBUG:onnx2keras:Found weight bn5.running_var with shape (64,).
DEBUG:onnx2keras:Found weight deconv3.weight with shape (64, 1, 5, 5).
DEBUG:onnx2keras:Found weight deconv3.bias with shape (1,).
DEBUG:onnx2keras:Found weight onnx::Conv_56 with shape (64, 1, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_57 with shape (64,).
DEBUG:onnx2keras:Found weight onnx::Conv_59 with shape (128, 64, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_60 with shape (128,).
DEBUG:onnx2keras:Found weight onnx::Conv_62 with shape (256, 128, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_63 with shape (256,).
DEBUG:onnx2keras:Found input input_0 with shape (1, 64, 64)
DEBUG:onnx2keras:######
DEBUG:onnx2keras:...
DEBUG:onnx2keras:Converting ONNX operation
DEBUG:onnx2keras:type: Conv
DEBUG:onnx2keras:node_name: /conv1/Conv_output_0
DEBUG:onnx2keras:node_params: {'dilations': [1, 1], 'group': 1, 'kernel_shape': [5, 5], 'pads': [2, 2, 2, 2], 'strides': [1, 1], 'change_ordering': False, 'name_policy': None}
DEBUG:onnx2keras:...
DEBUG:onnx2keras:Check if all inputs are available:
DEBUG:onnx2keras:Check input 0 (name input_0).
DEBUG:onnx2keras:Check input 1 (name onnx::Conv_56).
DEBUG:onnx2keras:The input not found in layers / model inputs.
DEBUG:onnx2keras:Found in weights, add as a numpy constant.
DEBUG:onnx2keras:Check input 2 (name onnx::Conv_57).
DEBUG:onnx2keras:The input not found in layers / model inputs.
DEBUG:onnx2keras:Found in weights, add as a numpy constant.
DEBUG:onnx2keras:... found all, continue
DEBUG:onnx2keras:conv:Conv with bias
DEBUG:onnx2keras:conv:2D convolution
DEBUG:onnx2keras:conv:Paddings exist, add ZeroPadding layer
Traceback (most recent call last):
File "", line 1, in
File "/home/duyangfan/nxy/pytorch2keras/pytorch2keras/converter.py", line 72, in pytorch_to_keras
k_model = onnx_to_keras(onnx_model=onnx_model, input_names=['input_0'],
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/onnx2keras/converter.py", line 175, in onnx_to_keras
AVAILABLE_CONVERTERS[node_type](
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/onnx2keras/convolution_layers.py", line 91, in convert_conv
layers[padding_name] = input_0 = padding_layer(input_0)
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/keras/utils/traceback_utils.py", line 70, in error_handler
raise e.with_traceback(filtered_tb) from None
File "/home/duyangfan/miniconda3/lib/python3.10/contextlib.py", line 135, in enter
return next(self.gen)
ValueError: '/conv1/Conv_output_0_pad/' is not a valid root scope name. A root scope name has to match the following pattern: ^[A-Za-z0-9.][A-Za-z0-9_.\/>-]*$
torch.onnx.export(G,input_var,'model.onnx',input_names=['input_0'],output_names=['output_0'],dynamic_axes={'input_0':[0],'output_0':[0]} )
/home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/onnx/utils.py:2040: UserWarning: No names were found for specified dynamic axes of provided input.Automatically generated names will be applied to each dynamic axes of input input_0
warnings.warn(
/home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/onnx/utils.py:2040: UserWarning: No names were found for specified dynamic axes of provided input.Automatically generated names will be applied to each dynamic axes of input output_0
warnings.warn(
The text was updated successfully, but these errors were encountered:
Describe the bug
I get an error when I convolve with the padding !=0
To Reproduce
this is my model
Logs
INFO:pytorch2keras:Converter is called.
WARNING:pytorch2keras:Custom shapes isn't supported now.
DEBUG:pytorch2keras:Input_names:
DEBUG:pytorch2keras:['input_0']
DEBUG:pytorch2keras:Output_names:
DEBUG:pytorch2keras:['output_0']
Exported graph: graph(%input_0 : Float(1, 1, 64, 64, strides=[4096, 4096, 64, 1], requires_grad=0, device=cpu),
%deconv1.weight : Float(256, 128, 5, 5, strides=[3200, 25, 5, 1], requires_grad=1, device=cpu),
%deconv1.bias : Float(128, strides=[1], requires_grad=1, device=cpu),
%bn4.weight : Float(128, strides=[1], requires_grad=1, device=cpu),
%bn4.bias : Float(128, strides=[1], requires_grad=1, device=cpu),
%bn4.running_mean : Float(128, strides=[1], requires_grad=0, device=cpu),
%bn4.running_var : Float(128, strides=[1], requires_grad=0, device=cpu),
%deconv2.weight : Float(128, 64, 5, 5, strides=[1600, 25, 5, 1], requires_grad=1, device=cpu),
%deconv2.bias : Float(64, strides=[1], requires_grad=1, device=cpu),
%bn5.weight : Float(64, strides=[1], requires_grad=1, device=cpu),
%bn5.bias : Float(64, strides=[1], requires_grad=1, device=cpu),
%bn5.running_mean : Float(64, strides=[1], requires_grad=0, device=cpu),
%bn5.running_var : Float(64, strides=[1], requires_grad=0, device=cpu),
%deconv3.weight : Float(64, 1, 5, 5, strides=[25, 25, 5, 1], requires_grad=1, device=cpu),
%deconv3.bias : Float(1, strides=[1], requires_grad=1, device=cpu),
%onnx::Conv_56 : Float(64, 1, 5, 5, strides=[25, 25, 5, 1], requires_grad=0, device=cpu),
%onnx::Conv_57 : Float(64, strides=[1], requires_grad=0, device=cpu),
%onnx::Conv_59 : Float(128, 64, 5, 5, strides=[1600, 25, 5, 1], requires_grad=0, device=cpu),
%onnx::Conv_60 : Float(128, strides=[1], requires_grad=0, device=cpu),
%onnx::Conv_62 : Float(256, 128, 5, 5, strides=[3200, 25, 5, 1], requires_grad=0, device=cpu),
%onnx::Conv_63 : Float(256, strides=[1], requires_grad=0, device=cpu)):
%/conv1/Conv_output_0 : Float(1, 64, 64, 64, strides=[262144, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/conv1/Conv"](%input_0, %onnx::Conv_56, %onnx::Conv_57), scope: pt.mymodel.Generator::/torch.nn.modules.conv.Conv2d::conv1 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:458:0
%/relu/Relu_output_0 : Float(1, 64, 64, 64, strides=[262144, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Reluonnx_name="/relu/Relu", scope: pt.mymodel.Generator::/torch.nn.modules.activation.ReLU::relu # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:1453:0
%/conv2/Conv_output_0 : Float(1, 128, 64, 64, strides=[524288, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/conv2/Conv"](%/relu/Relu_output_0, %onnx::Conv_59, %onnx::Conv_60), scope: pt.mymodel.Generator::/torch.nn.modules.conv.Conv2d::conv2 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:458:0
%/relu_1/Relu_output_0 : Float(1, 128, 64, 64, strides=[524288, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Reluonnx_name="/relu_1/Relu", scope: pt.mymodel.Generator::/torch.nn.modules.activation.ReLU::relu # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:1453:0
%/conv3/Conv_output_0 : Float(1, 256, 64, 64, strides=[1048576, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/conv3/Conv"](%/relu_1/Relu_output_0, %onnx::Conv_62, %onnx::Conv_63), scope: pt.mymodel.Generator::/torch.nn.modules.conv.Conv2d::conv3 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:458:0
%/relu_2/Relu_output_0 : Float(1, 256, 64, 64, strides=[1048576, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Reluonnx_name="/relu_2/Relu", scope: pt.mymodel.Generator::/torch.nn.modules.activation.ReLU::relu # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:1453:0
%/deconv1/ConvTranspose_output_0 : Float(1, 128, 64, 64, strides=[524288, 4096, 64, 1], requires_grad=0, device=cpu) = onnx::ConvTranspose[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/deconv1/ConvTranspose"](%/relu_2/Relu_output_0, %deconv1.weight, %deconv1.bias), scope: pt.mymodel.Generator::/torch.nn.modules.conv.ConvTranspose2d::deconv1 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:953:0
%/bn4/BatchNormalization_output_0 : Float(1, 128, 64, 64, strides=[524288, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::BatchNormalization[epsilon=1.0000000000000001e-05, momentum=0.90000000000000002, training_mode=0, onnx_name="/bn4/BatchNormalization"](%/deconv1/ConvTranspose_output_0, %bn4.weight, %bn4.bias, %bn4.running_mean, %bn4.running_var), scope: pt.mymodel.Generator::/torch.nn.modules.batchnorm.BatchNorm2d::bn4 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:2435:0
%/relu_3/Relu_output_0 : Float(1, 128, 64, 64, strides=[524288, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Reluonnx_name="/relu_3/Relu", scope: pt.mymodel.Generator::/torch.nn.modules.activation.ReLU::relu # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:1453:0
%/deconv2/ConvTranspose_output_0 : Float(1, 64, 64, 64, strides=[262144, 4096, 64, 1], requires_grad=0, device=cpu) = onnx::ConvTranspose[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/deconv2/ConvTranspose"](%/relu_3/Relu_output_0, %deconv2.weight, %deconv2.bias), scope: pt.mymodel.Generator::/torch.nn.modules.conv.ConvTranspose2d::deconv2 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:953:0
%/bn5/BatchNormalization_output_0 : Float(1, 64, 64, 64, strides=[262144, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::BatchNormalization[epsilon=1.0000000000000001e-05, momentum=0.90000000000000002, training_mode=0, onnx_name="/bn5/BatchNormalization"](%/deconv2/ConvTranspose_output_0, %bn5.weight, %bn5.bias, %bn5.running_mean, %bn5.running_var), scope: pt.mymodel.Generator::/torch.nn.modules.batchnorm.BatchNorm2d::bn5 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:2435:0
%/relu_4/Relu_output_0 : Float(1, 64, 64, 64, strides=[262144, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Reluonnx_name="/relu_4/Relu", scope: pt.mymodel.Generator::/torch.nn.modules.activation.ReLU::relu # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/functional.py:1453:0
%/deconv3/ConvTranspose_output_0 : Float(1, 1, 64, 64, strides=[4096, 4096, 64, 1], requires_grad=0, device=cpu) = onnx::ConvTranspose[dilations=[1, 1], group=1, kernel_shape=[5, 5], pads=[2, 2, 2, 2], strides=[1, 1], onnx_name="/deconv3/ConvTranspose"](%/relu_4/Relu_output_0, %deconv3.weight, %deconv3.bias), scope: pt.mymodel.Generator::/torch.nn.modules.conv.ConvTranspose2d::deconv3 # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/conv.py:953:0
%output_0 : Float(1, 1, 64, 64, strides=[4096, 4096, 64, 1], requires_grad=1, device=cpu) = onnx::Tanhonnx_name="/tanh/Tanh", scope: pt.mymodel.Generator::/torch.nn.modules.activation.Tanh::tanh # /home/duyangfan/miniconda3/lib/python3.10/site-packages/torch/nn/modules/activation.py:358:0
return (%output_0)
INFO:onnx2keras:Converter is called.
DEBUG:onnx2keras:List input shapes:
DEBUG:onnx2keras:[(1, 64, 64)]
DEBUG:onnx2keras:List inputs:
DEBUG:onnx2keras:Input 0 -> input_0.
DEBUG:onnx2keras:List outputs:
DEBUG:onnx2keras:Output 0 -> output_0.
DEBUG:onnx2keras:Gathering weights to dictionary.
DEBUG:onnx2keras:Found weight deconv1.weight with shape (256, 128, 5, 5).
DEBUG:onnx2keras:Found weight deconv1.bias with shape (128,).
DEBUG:onnx2keras:Found weight bn4.weight with shape (128,).
DEBUG:onnx2keras:Found weight bn4.bias with shape (128,).
DEBUG:onnx2keras:Found weight bn4.running_mean with shape (128,).
DEBUG:onnx2keras:Found weight bn4.running_var with shape (128,).
DEBUG:onnx2keras:Found weight deconv2.weight with shape (128, 64, 5, 5).
DEBUG:onnx2keras:Found weight deconv2.bias with shape (64,).
DEBUG:onnx2keras:Found weight bn5.weight with shape (64,).
DEBUG:onnx2keras:Found weight bn5.bias with shape (64,).
DEBUG:onnx2keras:Found weight bn5.running_mean with shape (64,).
DEBUG:onnx2keras:Found weight bn5.running_var with shape (64,).
DEBUG:onnx2keras:Found weight deconv3.weight with shape (64, 1, 5, 5).
DEBUG:onnx2keras:Found weight deconv3.bias with shape (1,).
DEBUG:onnx2keras:Found weight onnx::Conv_56 with shape (64, 1, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_57 with shape (64,).
DEBUG:onnx2keras:Found weight onnx::Conv_59 with shape (128, 64, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_60 with shape (128,).
DEBUG:onnx2keras:Found weight onnx::Conv_62 with shape (256, 128, 5, 5).
DEBUG:onnx2keras:Found weight onnx::Conv_63 with shape (256,).
DEBUG:onnx2keras:Found input input_0 with shape (1, 64, 64)
DEBUG:onnx2keras:######
DEBUG:onnx2keras:...
DEBUG:onnx2keras:Converting ONNX operation
DEBUG:onnx2keras:type: Conv
DEBUG:onnx2keras:node_name: /conv1/Conv_output_0
DEBUG:onnx2keras:node_params: {'dilations': [1, 1], 'group': 1, 'kernel_shape': [5, 5], 'pads': [2, 2, 2, 2], 'strides': [1, 1], 'change_ordering': False, 'name_policy': None}
DEBUG:onnx2keras:...
DEBUG:onnx2keras:Check if all inputs are available:
DEBUG:onnx2keras:Check input 0 (name input_0).
DEBUG:onnx2keras:Check input 1 (name onnx::Conv_56).
DEBUG:onnx2keras:The input not found in layers / model inputs.
DEBUG:onnx2keras:Found in weights, add as a numpy constant.
DEBUG:onnx2keras:Check input 2 (name onnx::Conv_57).
DEBUG:onnx2keras:The input not found in layers / model inputs.
DEBUG:onnx2keras:Found in weights, add as a numpy constant.
DEBUG:onnx2keras:... found all, continue
DEBUG:onnx2keras:conv:Conv with bias
DEBUG:onnx2keras:conv:2D convolution
DEBUG:onnx2keras:conv:Paddings exist, add ZeroPadding layer
Traceback (most recent call last):
File "", line 1, in
File "/home/duyangfan/nxy/pytorch2keras/pytorch2keras/converter.py", line 72, in pytorch_to_keras
k_model = onnx_to_keras(onnx_model=onnx_model, input_names=['input_0'],
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/onnx2keras/converter.py", line 175, in onnx_to_keras
AVAILABLE_CONVERTERS[node_type](
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/onnx2keras/convolution_layers.py", line 91, in convert_conv
layers[padding_name] = input_0 = padding_layer(input_0)
File "/home/duyangfan/miniconda3/lib/python3.10/site-packages/keras/utils/traceback_utils.py", line 70, in error_handler
raise e.with_traceback(filtered_tb) from None
File "/home/duyangfan/miniconda3/lib/python3.10/contextlib.py", line 135, in enter
return next(self.gen)
ValueError: '/conv1/Conv_output_0_pad/' is not a valid root scope name. A root scope name has to match the following pattern: ^[A-Za-z0-9.][A-Za-z0-9_.\/>-]*$
The text was updated successfully, but these errors were encountered: