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

求矩形金字塔内uniform sampling (by volume)实现方法(已知相机内参)

矩形金字塔(相机视锥体)内按体积均匀采样实现方案

核心思路

体积均匀采样的本质是让采样点的概率密度与微元体积成正比,即每个微小体积单元被采样到的概率相同。结合相机内参,可将问题转化为相机坐标系下的参数化采样,通过逆变换采样生成符合要求的随机点。

步骤1:结合相机内参定义矩形金字塔范围

相机内参包含焦距f、图像宽W、高H、主点坐标(cx, cy),近平面深度z_near,远平面深度z_far。在相机坐标系下:

  • 任意深度z(满足z_near ≤ z ≤ z_far)对应的投影面上,x方向范围为[z*(0 - cx)/f, z*(W - cx)/f],y方向范围为[z*(0 - cy)/f, z*(H - cy)/f]
  • 若主点在图像中心(cx=W/2,cy=H/2),则x、y范围简化为[-z*W/(2f), z*W/(2f)]和[-z*H/(2f), z*H/(2f)]

步骤2:体积均匀采样的具体实现

采用分层采样:先采样深度z,再采样对应深度下的x、y坐标,确保联合概率密度符合均匀体积分布:

  1. 生成3个[0,1]区间的均匀随机数u1, u2, u3
  2. 采样深度z:
    由于体积随z³增长,深度的累积分布函数为CDF(z) = (z³ - z_near³)/(z_far³ - z_near³),逆变换得到:
    z = (z_near³ + u1*(z_far³ - z_near³))^(1/3)
    
  3. 采样x、y坐标:
    • 先采样图像平面上的像素坐标u = W*u2,v = H*u3(均匀分布在图像尺寸范围内)
    • 通过透视投影关系转换到相机坐标系:
      X = z*(u - cx)/f
      Y = z*(v - cy)/f
      
  4. 最终得到的(X, Y, z)即为矩形金字塔内按体积均匀采样的点。

步骤3:底面(截面)宽度/长度的概率分布

以x方向的截面宽度w=2|X|为例,其概率分布推导如下:

  1. X的边缘概率密度:
    分两种情况:
    • 当|X| ≤ z_near*(W - 2cx)/(2f)(主点偏移时的近平面X范围),X的概率密度为常数:
      p(X) = 3f*(z_far + z_near)/(2W*(z_far² + z_far*z_near + z_near²))
      
    • 当z_near*(W - 2cx)/(2f) < |X| ≤ z_far*(W - 2cx)/(2f),X的概率密度随X²递减:
      p(X) = 3f/(2W*(z_far³ - z_near³)) * (z_far² - (f²X²)/( (u - cx)² ) )
      
      (注:若主点在中心,可简化为p(X) = 3f/(2W*(z_far³ - z_near³))*(z_far² - 4f²X²/W²))
  2. 宽度w的概率分布:
    由于w=2|X|,通过变量替换可得w的概率密度与X=w/2处的密度相等,即p(w) = p(X=w/2),分布趋势为:在近平面宽度范围内为常数,超出后随w²递减。

y方向的长度分布与x方向完全类似,只需将公式中的W替换为H,cx替换为cy即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:52:39