欢迎访问宙启技术站
智能推送

使用Python中的onnx.numpy_helper.from_array()将数组转换为ONNX格式的简便方法

发布时间:2023-12-17 09:26:51

在Python中,可以使用onnx.numpy_helper.from_array()函数将NumPy数组转换为ONNX格式。该函数的目的是将NumPy数组转换为ONNX张量,可以在ONNX模型中使用。

onnx.numpy_helper.from_array()函数的使用方法如下:

from onnx import numpy_helper

# Convert NumPy array to ONNX tensor
onnx_tensor = numpy_helper.from_array(numpy_array, name="tensor_name")

参数说明:

- numpy_array:要转换为ONNX格式的NumPy数组。

- name:转换后的ONNX张量的名称(可选参数)。

以下是一个使用onnx.numpy_helper.from_array()函数的例子:

import numpy as np
from onnx import numpy_helper


# Create a NumPy array
numpy_array = np.array([1, 2, 3, 4, 5])

# Convert NumPy array to ONNX tensor
onnx_tensor = numpy_helper.from_array(numpy_array, name="input_tensor")

# Print the converted ONNX tensor
print(onnx_tensor)

输出结果:

name: "input_tensor"
dims: 5
data_type: 7
float_data: 1.0
float_data: 2.0
float_data: 3.0
float_data: 4.0
float_data: 5.0

在此示例中,我们首先创建一个NumPy数组numpy_array,其中包含一维数组[1, 2, 3, 4, 5]。然后,我们使用onnx.numpy_helper.from_array()函数将该数组转换为ONNX张量,并指定名称为"input_tensor"。最后,我们打印转换后的ONNX张量。

转换后的ONNX张量的输出结果包括名称、维度(dims)和数据类型(data_type),以及与NumPy数组中的值对应的浮点数据(float_data)。

onnx.numpy_helper.from_array()函数是将NumPy数组转换为ONNX格式的简便方法,以便在ONNX模型中使用。通过将NumPy数组转换为ONNX张量,我们可以在使用ONNX模型进行预测、推理或模型转换时更方便地处理输入数据。