質問: ### 前提・実現したいこと カメラで画像を一枚撮影すると、その画素に対応する角度というのが求められるのでは無いかと思います。 下図のような画像を撮影した際、黄色い線の、カメラに対する角度を求めたいのです。 ![簡略図](https://teratail.storage.googleapis.com/uploads/contributed_images/e6137c089a843940e69450b66a63682b.png) 角度は、3次元的な角度になると思うので、以下二つの角度が求めたいです。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/c86e9889f35432b8d665991fd382ffcb.png) ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/161e99c46d91147f44be37075469357f.png) わかりにくい説明で申し訳ありません。 実際の点の3次元位置を、画像平面上の画像座標から求めることは出来ないと思います。(奥行き方向の情報がないため) ですが、角度であれば計算できるのではないかと考えました。 カメラの内部パラメータと外部パラメータは、Zhangのキャリブレーション法を利用して推定済みです。 どうやってこれらの角度を求めれば良いのか教えていただけないでしょうか。 プログラミングや、画像処理について初心者なので詳しく教えていただけると助かります。 opencvと関係があるのかとかもわかりません。 どうかよろしくお願い致します。 ### 補足情報(FW/ツールのバージョンなど) Windows10 VisualStudio2017 OpenCV-3.4.2 ### 追記 コメントに画像を貼り付ける方法が分からなかったので、ここに追記します。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/0f2f8d1334648fbeee12672282c50fc3.jpeg) こんな感じで考えていたのですが、 まったくの見当違いなのでしょうか? 方向を表すベクトルが分かれば、角度も計算できるのではというように考えていました。
回答: 内部パラメータが求まっているのであれば, 射影式から導出するだけではないでしょうか. Zhangの手法の内部パラメータの意味を調べると良いでしょう. OpenCVを使っているなら,リファレンスに載っているはずです. CVのリファレンスからの引用 !イメージ説明 やることは, pixel座標(u,v)に対応する(x',y')を求めるということですよね(そこから角度の算出はご自由に). (解析的に解けない場合,都度数値計算で求めるなり,事前に逆関数の近似式でも求めておいて使うなり,何らかの方法で頑張る必要はあるでしょうけども)