我在
caffe
中有一个模型,产生一个多维数组。这个数组的大小是
[1x10x8x8]
,所以在Python中我对这个大小没有问题,因为Python自动管理这个数组,我知道其中元素的顺序。但是当我用C++切换到
opencv
时,整个数组是一个矢量,我不知道如何重新生成类似于Python数组的东西,我使用
cv::NAryMatIterator
来访问多维数组,如下所示
const cv::Mat* arrays[]={&prob,0}; //my multi-dimensional array is prob
cv::Mat my_planes[1];
cv::NAryMatIterator it(arrays,my_planes);
cv::Mat Multi_Array ; //temporary Mat
for (int p = 0; p < it.nplanes; ++p,++it) {
Multi_Array = it.planes[0];
在这样做之后,我看到Multi_Array
的大小是[640x1]
,似乎与python产生的8x8x10
相等。
编辑:我的多维数组大小是[1x10x8x8]
。