这个程序的目标是读取摄像机的参数(内参和畸变系数),并对畸变图像进行去畸变操作,然后进行一些特征点和矩形框的绘制。
#include
语句引入所需的库。using namespace std;
和using namespace cv;
语句是在代码中使用std和opencv命名空间,这样就不用在每次使用这些库的函数或类时都写出完整的命名空间路径。int main()
函数是C++程序的主函数,程序从这里开始执行。const string strSettingPath = "../undistort.yaml";
声明并初始化一个string常量,表示参数文件的路径。FileStorage fSettings(strSettingPath, FileStorage::READ);
创建一个FileStorage对象,打开指定的文件并准备读取。- 检查参数文件是否打开成功,如果没能打开,则打印错误信息并结束程序。
- 从参数文件中读取摄像机内参,构建内参矩阵K。其中,fx和fy表示焦距,cx和cy表示主点坐标。
- 从参数文件中读取畸变系数,构建畸变系数矩阵DistCoef。其中,k1和k2是径向畸变系数,p1和