You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity物理相机参数构造标定矩阵及cx、cy取值合理性咨询

Unity物理相机参数转OpenCV标定矩阵方案

完全可以基于你已有的Unity物理相机参数生成可用的标定矩阵,相关计算逻辑和注意事项如下:

1. 像素单位焦距计算

Unity物理相机的默认参数单位:焦距f单位为毫米,传感器尺寸sx(宽度)、sy(高度)单位也为毫米,结合你的渲染图像分辨率w(宽度,像素)、h(高度,像素),像素焦距计算公式为:

  • 横向像素焦距:fx = f * w / sx
  • 纵向像素焦距:fy = f * h / sy

2. 主点参数cx、cy取值判断

默认场景下你没有调整Unity相机的*Lens Shift(镜头偏移)*参数时,光轴和渲染图像中心完全对齐,cx = w/2、cy = h/2的取值是完全正确的。
如果你主动修改过Lens Shift参数,设横向偏移值为shift_x、纵向偏移值为shift_y,则需要按以下公式修正:

  • cx = w/2 + shift_x * w
  • cy = h/2 + shift_y * h

3. 构造OpenCV兼容的标定矩阵

最终生成的3x3内参标定矩阵K格式如下:

[ fx   0   cx ]
[  0  fy   cy ]
[  0   0    1 ]

4. 适配OpenCV单应性计算的注意事项

Unity和OpenCV的相机坐标系存在差异:Unity相机Y轴向上、Z轴向前,OpenCV相机Y轴向下、Z轴向前。直接使用Unity输出的相机位姿(外参)计算单应性会出现结果错位,你需要先将Unity外参绕X轴旋转180度再传入OpenCV接口,即可得到正确结果。

内容的提问来源于stack exchange,提问作者chronosynclastic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 04:18:01