常见相机模型
cpp
enum class Type {
kPinhole = 0,
kUnifiedProjection = 1,
kOmni = 2, //optimize_on_sphere
kEqFisheye = 3
};
其余类型optimize_on_plane
这4种类型的相机模型具有以下差异:
-
kPinhole (针孔相机模型):这是最基本和常见的相机模型。它假设光线通过针孔进入相机并在成像平面上形成图像。针孔相机模型具有简单的几何关系,可以使用焦距和相机中心点来描述。
-
kUnifiedProjection (统一投影相机模型):这是一种更通用的相机模型,可以用来描述具有更复杂投影特性的相机。统一投影相机模型允许非线性的像素变换,例如径向畸变和切向畸变。相比于针孔相机模型,它更适合描述广角镜头等存在畸变的情况。
-
kOmni (全景相机模型):全景相机模型是一种特殊的相机模型,可以捕捉全景图像或360度全景视频。它具有广角或鱼眼镜头,可以捕捉到更大范围的视野,并产生圆形或球形的投影。
-
kEqFisheye (等距鱼眼相机模型):等距鱼眼相机模型是一种常见的广角镜头模型。它通过将鱼眼镜头的投影转换为等距投影来纠正鱼眼图像的畸变。等距鱼眼相机模型在保持线性特性的同时,提供了更广阔的视野。
这些相机模型的选择取决于具体应用场景和所需的成像效果。不同类型的相机模型对应着不同的投影几何和畸变特性,可以根据实际需要进行选择和配置。