据我的工程经验,做图像处理过程中经常用到matlab和c++(opencv, opengl etc).下面给大家分享一段我的工作笔记:
//Data interaction between C++ and matlab:
//1.read binary data file generated by cpp project via matlab:
main()
{
fstream data_out;
data_out.open("data_cpp2mat.txt", ios::out | ios::binary);
int Arr[100];
for(int i=0; i<100; i++)
{
Arr = i;
}
writeArr<int>(Arr, 100, &data_out);
data_out.close();
}
template <class Type>
void writeArr(Type *Arr, const int ArrLen, fstream *data_out_file)
//Effect: write data "Arr" to file "data_out_file" in binary type so that can be readed via matlab
//Author: Su Dongcai at 2011/10/29
{
data_out_file->write(reinterpret_cast<char *>(Arr), ArrLen * sizeof(Type));
}
//The matlab m-file for reading:
function a = readCppData(fileName, size, precision)
%Effect: read matrix '