这看起来很基本,但由于某种原因,我找不到任何关于它的清晰文档。
假设我的ONNX模型需要一个[245, 245, 3]
形状的输入,构造函数Ort::Value::CreateTensor
中的第二个参数需要一个线性数组来填充Tensor,线性数组的顺序是什么?
例如,线性数组中的前三个值是图像中第0个像素的BGR值,还是线性数组中的前三个值是图像中前三个像素的B通道值?至于图像中像素的排序:划船专业?
这看起来很基本,但由于某种原因,我找不到任何关于它的清晰文档。
假设我的ONNX模型需要一个[245, 245, 3]
形状的输入,构造函数Ort::Value::CreateTensor
中的第二个参数需要一个线性数组来填充Tensor,线性数组的顺序是什么?
例如,线性数组中的前三个值是图像中第0个像素的BGR值,还是线性数组中的前三个值是图像中前三个像素的B通道值?至于图像中像素的排序:划船专业?
2条答案
按热度按时间fjaof16o1#
以行为主。ONNX中的输入格式为NCHW。C =通道数。在本例中,C=3。C的顺序(BGR或RGB)取决于型号。例如,YOLO型号采用3(RGB)x 416px x 416px的图像。
iyzzxitl2#
简短的回答是:ONNX仅支持NCHW
作为参考,请查看onnxruntime.ai中的My converted TensorFlow model is slow - why?部分。这是迄今为止我找到的唯一一个讨论数据格式的“官方”材料。