次linkたちはデュアル魚眼レンズは、以下の式を用いて座標を正距円筒座標に変換できることを示唆しているの正距円筒の座標変換は座標
const float FOV = 220.0f * PI/180.0f;
float r = sqrt(u*u + v*v);
float theta = atan2(v, u);
float phi = r * FOV * 0.5f;
float px = u;
float py = r * sin(phi);
float pz = v;
float longitude = atan2(py, px); // theta
float latitude = atan2(pz, sqrt(px*px + py*py)); // phi
x = longitude/PI;
y = 2.0f * latitude/PI;
残念ながら私の数学は、私は、PX、PYおよびPZの値を推測しようとしたところ、私は、正確に上記のコードを記述する場合は必ずこのことを理解していないために十分ではありません。
私のカメラのFOVが220度で、カメラの解像度が2880x1440であると仮定すると、重なり合った領域のリアカメラのポイント(358,224)と、オーバーラップしたエリアのフロントカメラのポイント(2563,197)エリアは(2205,1009)に近い座標にマップされます。しかし実際のマッピングポイントはそれぞれ(515.966370,1834.647949)と(1644.442017,1853.060669)であり、両方とも(2205,1009)から非常に離れています。上記のコードを修正する方法をお手伝いしてください。どうもありがとう!