4

「NAD 1983 StatePlane Michigan South FIPS 2113 Feet」(別名ESRI 102690 ) に x、y 座標の大規模なデータセットがあります。それらを緯度経度ポイントに変換したいと思います。

理論的には、これはprojが処理するように構築されたものですが、ドキュメントでは手がかりが得られませんでした。はるかに複雑なケースが説明されているようです。

次のように、 python インターフェイスを使用してみました。

from pyproj import Proj
p = Proj(init='esri:102690')
sx = 13304147.06410000000 #sample points
sy = 288651.94040000000
x2, y2 = p(sx, sy, inverse=True)

しかし、それは非常に間違った出力をもたらします。

Javascript ライブラリがありますが、処理するポイントが 50,000 まであるため、適切ではないようです。


私のために働いたもの:

ptest次のように、x 座標と y 座標をスペースで区切って、各ペアを 1 行に配置したファイルを作成しました。

13304147.06410000000 288651.94040000000
...

次に、そのファイルをコマンドに入力し、結果を出力ファイルにパイプしました。

$>cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 
+lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 
+datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to 
+proj=latlon ptest > out.txt
4

2 に答える 2

4

再投影する必要があるだけで、テキスト ファイルでデータ マイニングを行うことができる場合は、好きなものを使用し、参照としてhttp://spatialreference.org/ref/esri/102690/を使用します。

たとえば、Proj4 を使用して shell/cmd ファイルに保存し、入力ファイルを proj4 (linux/windows バージョンが利用可能) で呼び出すと、データセットのサイズに問題はありません。

cs2cs +proj=latlong +datum=NAD83 +to +proj=utm +zone=10  +datum=NAD27 -r <<EOF
cs2cs -f %.16f +proj=utm +zone=20N +to +proj=latlon - | awk '{print $1 " " $2}

あなたの場合、次のようなものです:

cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to +proj=latlon

http://trac.osgeo.org/proj/wiki/man_cs2cs

http://trac.osgeo.org/proj/

于 2009-07-19T18:45:56.577 に答える
3

TXT、CSV、または XLS ファイルに座標がある場合は、CTRL+C を実行してhttp://cs2cs.mygeodata.euに挿入し、適切な入力および目的の出力座標系を設定できます。さまざまな形式で何千もの座標を挿入することが可能です...

于 2012-01-20T08:07:23.097 に答える