将C/C++程序的变量数据导入到MATLAB中的方法!
2016-03-30 13:37
555 查看
欢迎大家加入图像识别技术交流群:271891601,另外,特别欢迎成都从事图像识别工作的朋友交流,我的QQ号2487872782
-----------------------------------------------
2016-5-21日:我发现自己真是傻,既然对象是图像,那何必把像素值导出来呢?直接将图像输出,然后MATLAB再读入图像不就可以了?
这篇博文随接上一篇博文:
将MATLAB的变量数据导入到VC中的方法!
下面直接说方法:
先上VC导出数据变量的代码:
运行结果是:
123.txt中的内容为:
1 2 3 4 5 6
所以从VC中导出数据是很简单的,关键是怎样把数据导入到MATLAB中,并且还一气成为的成为M行N列的矩阵~
在这里,我们想利用从VC中导出的数据生成下面的矩阵:
1 2 3
4 5 6
源码如下:
运行以上程序,就得到了矩阵C,这个矩阵就是我们要的矩阵!
值得注意的是,得到矩阵后,默认的是double类型,我们还应该根据我们的需要对矩阵的数据类型进行强制类型转换!比如C=uint8(C);这样的强制类型转换语句!
-----------------------------------------------
2016-5-21日:我发现自己真是傻,既然对象是图像,那何必把像素值导出来呢?直接将图像输出,然后MATLAB再读入图像不就可以了?
这篇博文随接上一篇博文:
将MATLAB的变量数据导入到VC中的方法!
下面直接说方法:
先上VC导出数据变量的代码:
#include <fstream> using namespace std; int main() { int a[6]={1,2,3,4,5,6};//注意:这里的类型一定要是int,如果设为char那用ocout<<a[i]输出来的全是字符! unsigned char i; ofstream ocout; ocout.open("123.txt"); for(i=0;i<6;i++) { ocout<<a[i]; ocout<<" "; } ocout.close(); return 0; }很简单吧~
运行结果是:
123.txt中的内容为:
1 2 3 4 5 6
所以从VC中导出数据是很简单的,关键是怎样把数据导入到MATLAB中,并且还一气成为的成为M行N列的矩阵~
在这里,我们想利用从VC中导出的数据生成下面的矩阵:
1 2 3
4 5 6
源码如下:
clear all; fid=fopen('123.txt','r'); [C,count]=fscanf(fid,'%d',[3,2]); C=C'; fclose(fid);要明白最后两行,关键还是要知道MATLAB不管是导出矩阵到向量还是由向量导入矩阵,都是按列来进行的!
运行以上程序,就得到了矩阵C,这个矩阵就是我们要的矩阵!
值得注意的是,得到矩阵后,默认的是double类型,我们还应该根据我们的需要对矩阵的数据类型进行强制类型转换!比如C=uint8(C);这样的强制类型转换语句!
相关文章推荐
- 七中滤波方法测试matlab实现
- matlab 3D绘图详解
- Matlab中数据的存储方式
- Matlab中数据的存储方式
- matlab2015a xcode7 找不到sdk问题
- 最大间隔多超平面分类器(多线性SVM分类器)介绍及Matlab实现
- matlab集合经验模态分解EEMD工具包
- 模糊聚类FCM的MATLAB实现
- VS 调用 Matlab (混合编程)
- 傅立叶变换-MATLAB
- matlab 查看电脑系统性能(CPU,GPU),并开启并行运算
- Matlab调用C语言编写MEX文件
- matlab学习笔记
- 将MATLAB的变量数据导入到C/C++程序中的方法!
- matlab图像处理
- ubuntu15.04下Matlab R2012a的安装和GCC4.6配置
- MATLAB中MEX文件的编写与调试
- MATLAB中fopen、fprintf函数的用法
- MATLAB的一些基础知识
- MatLab 代码优化 Fast your MatLab code. (2) 寻找性能瓶颈