C++调用matlab时 数组转换成矩阵怎么处理

c++的数据是先行再列但是matlab是先列再行本来认为在matlab里转置就可以了但是好像结果不对改怎么做呢//从c++给matlab传数据constmwSizedim... c++的数据是先行再列 但是matlab是先列再行
本来认为在matlab里转置就可以了 但是好像结果不对
改怎么做呢
//从c++给matlab传数据
const mwSize dims[3]={IMAGE_HEIGHT,IMAGE_WIDTH,3};
mxArray *A=mxCreateNumericArray(3,dims,mxUINT8_CLASS,mxREAL);
unsigned char* pchar=(unsigned char*)mxGetData(A);
for(int i=0;i<dataLength;i++)
{
pchar[i]=lpdata[i];
}

//把结果从matlab传回c++
mxArray *C=mxCreateNumericArray(3,dims,mxUINT8_CLASS,mxREAL);
mlfFaceMatch(1,&C,A); //调用m文件函数
memcpy(lpdata,mxGetPr(C),3*IMAGE_WIDTH*IMAGE_HEIGHT*sizeof(unsigned char));

在matlab的代码里我用了转置 但是好像还是不对 麻烦大家给看看 谢谢
展开
 我来答 举报
shuozhan89
2011-05-12 · TA获得超过179个赞
知道答主
回答量:307
采纳率:0%
帮助的人:0
展开全部
请问在MATLAB中的单元数组能整体的将其转换成矩阵码?例如有一个单元数组是注意矩阵和数组转换时,矩阵编号是按列编号的,举这个例子是让你更清楚些!
追问
你看是不是这个地方有问题啊
const mwSize dims[3]={IMAGE_HEIGHT,IMAGE_WIDTH,3};
mxArray *A=mxCreateNumericArray(3,dims,mxUINT8_CLASS,mxREAL);
在申请三维数组的时候的顺序有没有问题啊
阿斯顿193dd
2011-05-15
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
const mwSize dims[3]={IMAGE_HEIGHT,IMAGE_WIDTH,3};
mxArray *A=mxCreateNumericArray(3,dims,mxUINT8_CLASS,mxREAL);
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式