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

裁剪/缩放图像后相机内参(f_x,f_y,c_x,c_y)如何变化?

相机裁剪/缩放后的内参计算(无畸变场景)

针对你用Realsense录制的ROS bag,原分辨率848×480、无畸变内参已知的情况,直接给出两种场景的参数变化规则:


1. 裁剪图像(仅顶部裁切)后的内参变化

假设你裁切了顶部h_crop像素,新图像分辨率为848 × (480 - h_crop):

  • 焦距f_x、f_y:完全不变。裁切只是丢弃部分成像区域,未改变相机硬件透视关系,像素焦距是相机固有参数,与图像裁切无关。
  • 主点c_x:完全不变。仅裁切顶部时图像宽度未变,主点水平像素位置不受影响(只有裁切左右两侧时c_x才会变化:比如左裁w_left像素,新c_x = 原c_x - w_left)。
  • 主点c_y:原c_y减去裁切的顶部像素数,即 新c_y = 原c_y - h_crop。

示例

原内参:f_x=615, f_y=615, c_x=424, c_y=240(对应848×480的中心主点),裁切顶部80像素后:
新内参:f_x=615, f_y=615, c_x=424, c_y=240-80=160,新分辨率848×400。


2. 仅缩放图像后的内参变化

假设将原图像(或裁切后的图像)缩放到新分辨率W_new × H_new:

  • 先计算缩放因子:s_x = W_new / 原宽度,s_y = H_new / 原高度(等比例缩放时s_x=s_y)
  • 新焦距:f_x_new = 原f_x × s_x,f_y_new = 原f_y × s_y
  • 新主点:c_x_new = 原c_x × s_x,c_y_new = 原c_y × s_y

示例

原分辨率848×480,原内参f_x=615, c_x=424,缩放到640×360:
s_x=640/848≈0.7547,新f_x=615×0.7547≈464,新c_x=424×0.7547≈320(对应640的中心)。


补充:裁切+缩放的组合场景

先按裁切规则计算裁切后的内参,再将裁切后的图像和内参代入缩放规则,得到最终内参即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 14:10:40