Joh*_*lin 2 opencv camera-calibration
我对 opencv 相机校准坐标转换感到困惑。我使用示例代码来校准我的相机,得到以下结果:
当我用这个相机矩阵乘以相机坐标系中的一个点时,比如P = [50, 50, 1.35],输出结果太大,不可能是像素坐标。这是怎么回事?我错过了什么?
图像为1920 x 1080。这是棋盘配置文件信息:
您可以在 OpenCV文档中找到透视投影模型的不同方程,如下图所示(感谢此链接)。
P=(X,Y,Z)假设相机坐标系中的一点Fc,其在归一化相机坐标系中的坐标为:
x' = X/Z
y' = Y/Z
Run Code Online (Sandbox Code Playgroud)
及其在图像平面上的投影(假设没有失真):
u = fx * x' + cx
v = fy * y' + cy
Run Code Online (Sandbox Code Playgroud)
其中fx和fy是以像素为单位的焦距cx,cy是图像中主点的坐标。
在您的情况下,您的 Z 距相机的距离为 1.35,但其他 2 个坐标与 Z 坐标相比太远。
数学上没有问题,只是你的相机看不到你的点P。
| 归档时间: |
|
| 查看次数: |
14197 次 |
| 最近记录: |