ofstream和ifstream
输出和读入的数据流
ofstream用法:(保存相机内参为例)
ofstream fout("cam2.txt"); 以输出方式打开文件 如果想以输入/输出方式来打开,就用fstream来定义
fout << "FocalLengthX : " << m_pCameraIntrinsics->FocalLengthX << endl; //向文件写入数据
fout << "FocalLengthY : " << m_pCameraIntrinsics->FocalLengthY << endl; //向文件写入数据
fout << "PrincipalPointX : " << m_pCameraIntrinsics->PrincipalPointX << endl;//相机在X维中的主要点,以像素为单位。
fout << "PrincipalPointY : " << m_pCameraIntrinsics->PrincipalPointY << endl; //相机在Y轴上的主要点,以像素为单位。
fout << "RadialDistortionFourthOrder : " << m_pCameraIntrinsics->RadialDistortionFourthOrder << endl;//相机的四阶径向畸变参数。
fout << "RadialDistortionSecondOrder : " << m_pCameraIntrinsics->RadialDistortionSecondOrder << endl;//相机的二阶径向畸变参数。
fout << "RadialDistortionSixthOrder : " << m_pCameraIntrinsics->RadialDistortionSixthOrder << endl;//摄像机的六阶径向畸变参数。
最后txt文件效果
ifstream用法
以输入txt里面的数据传给矩阵为例,这时候的矩阵是转置矩阵,要进行转置操作。
Eigen::Matrix4d transmatrix1;
ifstream in(path);
for (int i = 0; i <16; i++)
{
in >> transmatrix1(i);
}
transmatrix = transmatrix1.transpose();
in.close();