OpenGLでレンズ歪みを考慮してレンダリングする方法
Posted: 2013年8月08日(木) 00:26
OpenGLでレンズ歪みを考慮してレンダリングしたいです。
・条件
OpenGLのProjection Matrix, Modelview Matrixは既知とします。
レンズ歪みはOpenCVモデルに従うとします。(distCoeffs = [k1, k2, p1, p2])
http://opencv.jp/opencv-2svn/cpp/camera ... ction.html#
3次元点をX=(x,y,z)とし、それをGLでレンダリングする(GLSLだとglModelViewProjectionMatrix * X)と、4次元ベクトルが出てきます。そこから、glReadPixelsで得る画像上の座標を取得したいです。画像座標が手に入れば、後はOpenCVモデルに当てはめれば歪ませることが出来るのですが、どうやって得ればよいかが分かりません。CVだと、3次元ベクトルが出てくるだけなので、(x/z, y/z)で取得出来ますが、GLだとどうなるのでしょうか。
・条件
OpenGLのProjection Matrix, Modelview Matrixは既知とします。
レンズ歪みはOpenCVモデルに従うとします。(distCoeffs = [k1, k2, p1, p2])
http://opencv.jp/opencv-2svn/cpp/camera ... ction.html#
3次元点をX=(x,y,z)とし、それをGLでレンダリングする(GLSLだとglModelViewProjectionMatrix * X)と、4次元ベクトルが出てきます。そこから、glReadPixelsで得る画像上の座標を取得したいです。画像座標が手に入れば、後はOpenCVモデルに当てはめれば歪ませることが出来るのですが、どうやって得ればよいかが分かりません。CVだと、3次元ベクトルが出てくるだけなので、(x/z, y/z)で取得出来ますが、GLだとどうなるのでしょうか。