プロが教える店舗&オフィスのセキュリティ対策術

魚眼レンズで得られた周囲180の円形画像について展開方法を教えてください。

このように
http://www.hh.iij4u.or.jp/~jun2/EnjoyFisheyeLens …
経度にそって展開する方法

原理或いはそれを紹介するホームページいただいても幸いです。

よろしくお願いします。

A 回答 (4件)

>地図を作る方向と同じのことがわかったので、現在円筒図法とメルトカル図法を検討中、もし目標画像と同じような画像できたら報告します。



メルカトル図法いいですね。
正距円筒を、どのように縦に伸ばしているのかは存じませんが、我々が地図として見ているものの多くはメルカトル図法ですよね。

興味がある人もいると思うので、トランスフォームの式を載せて頂けると嬉しいです。

この回答への補足

inthefloiさん、例の変換画像わかりました、変換画像を得られたわけではないですが、我々は勘違いをしてしまった。私は今までメルカトル図法で魚眼画像を展開しようと思ったが、実際あのホームページの変換画像はもともと経度にそって変換したわけではないのだ、inthefloiさんのりや方では経線と緯線変換後に直線になって、しかしあのホームページ変換画像はこのようになる

http://www.geocities.jp/gongliwen2002/fish.jpg

画像を見ればわかるように、経線と緯線は直線にならなかった、メルカトル図法では直線になるはず、だからこれはまた別の方法で変換したかもしれない。

いろいろ教えてくださって本当にありがとうございました!

補足日時:2005/12/08 23:55
    • good
    • 0
この回答へのお礼

返信ありがとうございました。
メルカトル法とは、緯度φ、経度λ、地球半径Rとすると
x=Rλ
y=Rlntan(π/4+φ/2)

公式わかったけど、プログラムまだできてない…>_<

たぶん私はどこか勘違いかもしれない、もしinthefloiさんできたら教えてください。

お礼日時:2005/12/07 13:16

#1です。


役に立たずに済みませんでした。すでに終わっているとは思いますが・・・。

cosを使うならasinも必要でしたが、単純に、三平方の定理と比率で計算すべきでした。

u = x * sqr(r * r - y * y) / r;
    • good
    • 0
この回答へのお礼

わざわざ教えていただいてありがとうございました。

地図を作る方向と同じのことがわかったので、現在円筒図法とメルトカル図法を検討中、もし目標画像と同じような画像できたら報告します。

いろいろ本当にありがとうございました。

お礼日時:2005/12/06 13:10

#1です。



>と多少違うことがおわかりいただけるでしょう。

がーん。
確かに全然違いますね。
申し訳ないです。
    • good
    • 0

円の中心を原点とし、半径をrとする。



正方形の内側の点(x, y)に対応する円の内側の点(u, v)は

u = x * cos(π / 2 * abs(y) / r);
v = y;

となります。

uを実数で求めてバイリニアで補完すれば、必要十分な画質が得られると思います。
バイリニア補完とは、uが3.8だとしたら、(3, v)のピクセルの20%と(4, v)のピクセルの80%を加算したものを使用するって事です。
    • good
    • 0
この回答へのお礼

公式など教えていただいてありがとうございました。早速inthefloiさんのやり方で試してみたら、このような画像を得られた。

http://www.geocities.jp/gongliwen2002/020Fisheye …

これは
http://www.hh.iij4u.or.jp/~jun2/EnjoyFisheyeLens …
と多少違うことがおわかりいただけるでしょう。

自分ももう一度考えますので、ご回答本当にありがとうございました。

お礼日時:2005/12/05 14:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!