def test_permute_converter(self):
     input_dim = (4, 1, 2, 3)
     output_dim = (4, 3, 1, 2)
     inputs = [('input', datatypes.Array(*input_dim))]
     outputs = [('output', datatypes.Array(*output_dim))]
     builder = NeuralNetworkBuilder(inputs, outputs)
     builder.add_permute(name='Permute', input_name='input', output_name='output', dim=(0, 2, 3, 1))
     model_onnx = convert_coreml(builder.spec)
     self.assertTrue(model_onnx is not None)
 def test_load_constant_converter(self):
     value = numpy.ndarray(shape=(1, 1, 2))
     value[:] = [[[-95, 95]]]
     shape = value.shape
     input_dim = (1, 2, 3, 4)
     inputs = [('input', datatypes.Array(*input_dim))]
     outputs = [('const', datatypes.Array(*shape)), ('output', datatypes.Array(*input_dim))]
     builder = NeuralNetworkBuilder(inputs, outputs)
     builder.add_load_constant(name='LoadConstant', output_name='const', constant_value=value, shape=shape)
     builder.add_permute(name='Permute', input_name='input', output_name='output', dim=(0, 1, 2, 3))
     model_onnx = convert_coreml(builder.spec)
     self.assertTrue(model_onnx is not None)
 def test_permute_converter(self):
     input_dim = (4, 1, 2, 3)
     output_dim = (4, 3, 1, 2)
     inputs = [('input', datatypes.Array(*input_dim))]
     outputs = [('output', datatypes.Array(*output_dim))]
     builder = NeuralNetworkBuilder(inputs, outputs)
     builder.add_permute(name='Permute',
                         input_name='input',
                         output_name='output',
                         dim=(0, 2, 3, 1))
     context = ConvertContext()
     node = PermuteLayerConverter.convert(
         context, builder.spec.neuralNetwork.layers[0], ['input'],
         ['output'])
     self.assertTrue(node is not None)