是用vc与matlab联编时遇到一个问题
比如读取10*5的BMP图像时候,vc读取是将RGB数据存入一个30*5的数组中,
可是matlab却是存入一个5*10*3的数组中。
我现在要将在vc中读取的数据转到matlab中进行处理,应该如何转换呢?
新手~~~  请大家指教 

解决方案 »

  1.   

    引入matlab的库文件就可以了,就是头文件及lib文件一类的
      

  2.   

    就是两者的存储顺序不一样啊,在matlab中做转换简单些。 b = data(1:3:end,end);b = b';
     g = data(1:3:end,end);g = g';
     r = data(1:3:end,end);r = r';
    另:我有点不明白,LZ为什么不直接在matlab打开图像,使用imread函数
      

  3.   

    因为这是一个工程中的一部分,图像已经在vc中读取了。
    我其实就是想将在vc中读取的矩阵,转换成在matlab中用imread读取的一样的矩阵
      

  4.   


    就用我上面的方法,最后要将r、g、b和在一起即可。
    rgb = zeros([size(r) 3]);
    rgb(:,:,1) = r;
    rgb(:,:,2) = g;
    rgb(:,:,3) = b;可能顺序有错哈,你测试下(即可能rgb(:,:,1) = b;)
      

  5.   


    你的程序是不是有点问题?
    是不是该这样?
    b = data(1:3:end,end);b = b';
     g = data(2:3:end,end);g = g';
     r = data(3:3:end,end);r = r';
      

  6.   

    错了,应该是这样:
     b = data(1:3:end,:);b = b';
     g = data(2:3:end,:);g = g';
     r = data(3:3:end,:);r = r';
      

  7.   

    恩  我用了for的方法
    但是楼上的答案显然更简单 散分~~~~~