タグ

射影変換に関するcrexistのブックマーク (7)

  • カメラの位置・姿勢推定0 同次座標・斉次座標の導入 - Daily Tech Blog

    前回のエントリ「カメラの位置・姿勢推定0 透視投影モデルと座標系の定義」で若干フライングしてしまいましたが,このエントリで斉次座標(Homogeneous Coordinate)を導入します.前回のエントリから,カメラ座標系から見た三次元の点(X, Y, Z)を正規化画像座標系に投影すると下記のように表されることがわかりました. 上式を見ればわかるように,3Dから2Dに変換する計算をするときに簡単な行列の連鎖式で表現できません.任意の世界座標(Xw, Yw, Zw)の投影点をもとめる式も計算しましたが,計算式が複雑になってくるとこれは面倒極まりないので,投影点を3Dの座標とみなします.3Dの座標とみなした場合,正規化画像座標系ではスクリーンは Z = 1 の場所にあるので,投影点は (x, y, 1) と表現されます.これを表現すると となります. 斉次座標系の導入 当は2Dの投影点を(

    カメラの位置・姿勢推定0 同次座標・斉次座標の導入 - Daily Tech Blog
  • カメラの位置・姿勢推定2 PNP問題 理論編 - Daily Tech Blog

    引き続きカメラの位置・姿勢推定問題です.PNP問題の解き方をまとめます. 問題分類のエントリで書いたように,下記を前提とします. 前提条件1:カメラの内部パラメータがわかっている. 前提条件2:基準となる座標系(ワールド座標系)が定義されており,撮影する物体(の各点)のワールド座標系での位置が事前に分かっている. 問題設定 解こうとしている問題のイメージ 上記の前提を図示してみると,下記のようなイメージかと思います.ここで,Xiは各点のワールド座標系での位置,xiはその各点をカメラで撮影した時の画像座標系での投影点です. 家の頂点五点が赤く塗られていますが,この頂点のワールド座標系での位置が分かっているとします.この時にカメラで撮った家の写真をみて,「この写真をとったカメラの位置は?」を求めるのがこの問題です.ちなみに,上記の絵に記載されている「R, t」がカメラの位置になります. アルゴ

    カメラの位置・姿勢推定2 PNP問題 理論編 - Daily Tech Blog
  • transform:matrix3d()-CSS3リファレンス

    transformプロパティのmatrix3d()関数は、要素に3D変形を適用する際に使用します。 マトリクスとは行列のことで、matrix3d()関数では行列を使用して3D変形を指定します。 変形の内容は16個の数値で指定します。 基準となる値は、matrix(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 )で、この場合には座標は変化しません。 指定すべき数値が16個もあると複雑に感じますが、以下のように4×4に分けて考えると理解しやすいでしょう。 16個の数値とはつまり、4x4の行列を指定していることに他なりません。 ■4x4の行列で座標変換する理由 まず、何も変形しない場合の座標変換を確認してみましょう。 次に、拡大縮小を行う場合の座標変換を確認してみましょう。 ここまでの計算では、4x4の行列ではなくても3x3の行列でも十分でした。

  • https://www.programering.com/a/MDN3YzMwATE.html

  • CALayerで3Dグラフィックス? - terazzoの日記

    ちょっと3Dグラフィックスやってみようかと思って、もしかしたら座標変換のライブラリはないかとドキュメントを見ていたら、Core Animationの関数を使ってアフィン変換・透視変換とかできる上に、そのまま描画もできるらしいということが分かった。 Core Animationプログラミングガイド: レイヤジオメトリと変換 Core Animationプログラミングガイド: Core Animationレイヤの配置 やってみた結論としては、がっつり3DやるならやっぱりOpenGLとか使った方が良いと思う。けど、簡単な図形や画像をちょっと俯瞰っぽく見せたい、ぐらいなら使えるかも。 ちなみにOSバージョンはSnow Leopard(10.6.6)です。 追記: これで立体迷路アプリ作ってみた 準備1. CocoaのクラスにCALayerを貼付ける とりあえず適当なサイズのウィンドウを表示させてC

    CALayerで3Dグラフィックス? - terazzoの日記
  • 射影変換(ホモグラフィ)について理解してみる その2 - デジタル・デザイン・ラボラトリーな日々

    前回の続きです。 ただ、私としては台形に変形させたいので、8次元連立一次方程式を解いた方式をさらに模索していた中で、下記サイトを見つけました。 ホモグラフィ(CSS3 Transform 3D Test)- Shogo Computing Laboratory 内容的には私が目指していたものですが、残念なのは中身はCSSなんですよね。 射影変換(ホモグラフィ)について理解してみる - デジタル・デザイン・ラボラトリーな日々 先ず下記の8次元連立一次方程式を解く方法ですが、これには行列を使えばいいことが分かりました。 変換前の座標 左上から時計回り 変換後の座標 左上から時計回り 8次元連立一次方程式 これを行列式に変換します。 CSSを使用したホモグラフィのソースリストを見ても、変換元座標(origin)と変換先座標(markers)で4点分ループして行列式を作成していますね。 var i

  • Transforming a rectangle image into a quadrilateral using a CATransform3D

  • 1