2

これはプログラミングの問題ではない可能性があることは理解していますが、プログラマーとして私がぶつかり続ける問題なので、ここにいる他の人が共有するのに役立つ知識を持っているかもしれないと思います。

地球のある地域の地図があります(これはどのようなものでもかまいませんが、ここに例があります)。地図で使用される投影法を決定する方法と、緯度と経度の座標を画像上のピクセル位置にプログラムで変換する方法を教えてください。

現時点では、画像を開いて結果の(x、y)座標をプロットするためのMATLABコードがありますが、lat / longをx、yに変換する方法がわかりません。

どんな助けでも大歓迎です。

4

2 に答える 2

0

地理座標は、球面座標のバリエーションです。それらを通常の座標に変換できます。

x = r * sin(90 - lat) * cos(lon)
y = r * sin(90 - lat) * sin(lon)
z = r * cos(90 - lat)

地球は正確には球体ではないため、これは実際には正確ではありません。マップのタイプに応じて、これらから2D座標を取得する方法がいくつかあります。画像は球から円柱または2つの平面に投影できます。

これらのリンクは役立つかもしれません:

于 2009-11-29T23:01:29.907 に答える
0

地図の投影をプログラムで計算することは、画像処理の複雑な作業であることがわかります。この問題を回避する方法は、明確に定義された投影法を持つマップを使用することです。たとえば、Googleマップは、英国のほとんどのマップと同様に、メルカトル図法を使用します(英国の参照グリッドはユニバーサル横メルカトル図法に基づいているため)。

これが他の誰かの助けになることを願っています!

于 2009-12-06T12:18:00.790 に答える