【发布时间】:2021-10-22 08:29:16
【问题描述】:
假设我创建了一个具有以下维度的张量
[num_tracks,num_frames,height,width,num_channels]
*output = tensorflow::Tensor(tensorflow::DataType::DT_UINT8,
{4, 11, 128, 128, 3});
然后我用 flat 方法返回数据。
auto data = output->flat<uint8>().data();
如果我遍历展平的数据,数据将以什么顺序返回 ++数据?
会不会
[(track1, frame1, row1,column1,channel1), (...,channel2), (...,channel3),(...,column2,channel1)]
来自docs,它没有描述顺序:
这些方法允许您访问具有您选择的维度和大小的数据。您无需知道张量的维数即可调用它们。但是,他们会检查类型是否匹配,并且请求的维度会创建一个 Eigen::Tensor,其元素数量与张量相同。
typedef float T;
Tensor my_ten(...built with Shape{planes: 4, rows: 3, cols: 5}...);
// 1D Eigen::Tensor, size 60:
auto flat = my_ten.flat();
【问题讨论】:
标签: c++ tensorflow