タグ付けされた質問 「gdal」

GDAL(地理空間データ抽象化ライブラリ)は、ラスター空間データ形式を処理するためのオープンソースのトランスレータライブラリとコマンドラインユーティリティのセットです。ライブラリとして、サポートされているすべての形式の単一の抽象データモデルを呼び出し側アプリケーションに提供します。また、データの変換と処理に役立つさまざまなコマンドラインユーティリティが付属しています。

1
gdalwarpで通常のファイルサイズの膨張?
を使用gdalwarpし-tapて多数のラスタを(グリッドを介して)グリッドに配置した後、出力ラスタが元のラスタよりも大幅に大きいことに気付きました。かなり徹底的なWeb検索により、このTracの問題が判明しました。 フランク・ウォーマーダムはその理由を説明しました: 「慎重に検討すると、問題のファイルの違いは、gdal_translateがTIFFWriteScanline()インターフェースを使用してGTiffDataset :: CreateCopy?()内から出力ファイルを書き込み、これが最終的な「ストリップ」画像領域を完成させるために必要なファイル。ただし、gdalwarpはblockioインターフェイスを通過し、ファイルの終わりから落ちる部分も含めて、完全な最終ストリップを書き込みます。」 ただし、このTracの問題は7年前のものであり、GDALユーティリティにいくつかの変更が加えられたことを知っgdalwarpています。上記の理由がまだ当てはまるかどうか、そして私が見ているファイルサイズの増加が「正常」かどうかを知りたいのです。ここでの「通常」という言葉は、当然のことと予想されることを意味するかもしれませんが、より重要なことは、出力ラスタファイルのサイズを小さくするなど、影響を軽減するためにできることはありますか?以下は、私が経験しているファイルサイズの膨張の表です。 Input File Size (bytes) Output File Size (bytes) Inflation 1437380431 1698334217 18% 1428001178 1698334433 19% 41683165 137036637 228% 入力TIFFファイルはArcGISで作成されたため、外部のワールドファイル、XMLおよびDBFファイルがありますが、これらはファイルサイズの違いを補うものではありません。gdalwarpこれらすべてのケースで使用した呼び出しのサンプルを次に示します。実際の実行はPythonによって処理されましたsubprocess(subprocess.Popen): $ gdalwarp -tap -tr 30 30 -t_srs "+proj=aea +lat_1=20 +lat_2=60 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs" -co "COMPRESS=LZW" input_file.tif output_file.tif まれに圧縮により大きなファイルが作成されることを理解していますが、LZW圧縮を使用しなくても効果は同じです。表の比率は、LZW圧縮の場合です。

1
なぜ人々はGDAL(地理空間データ抽象化ライブラリ)をgoo-dalのように発音するのですか?
ちょっとばかげた質問ですが、 goooo-dalのようなライブラリGDAL(Geospatial Data Abstraction Library)を発音している人を聞いたことがあります。私の自然な傾向は、文字「g」-dalのように、geeee-dalと発音することでした。 グーダルがどのように人気を博したかについての説明はありますか?グーグルは関与しましたか?
18 gdal 

1
GDAL / Python:SpatialReferenceから座標系名を取得するにはどうすればよいですか?
Pythonでは、GDALを使用して、次のようにラスターの投影をWKT文字列として抽出しました。 wkt = dataset.GetProjection() # wkt is 'PROJCS["GDA_1994_Transverse_Mercator",GEOGCS["GDA_1994",DATUM["GDA_1994",SPHEROID["GRS_1980",6378137,298.2572221010002],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]]' WKT文字列を使用して、次のようにSpatialReferenceインスタンスを作成できます。 src = osr.SpatialReference() src.ImportFromWkt(wkt) これは簡単です。srcUTMゾーンなどから投影のいくつかのパラメーターを簡単に抽出できます。しかし、投影の名前のようなものを抽出する方法がわかりません"GDA_1994_Transverse_Mercator"。これは確かに可能になりましたが、Python APIのドキュメントは、すべての用途において存在しない可能性があります。 投影の名前と地理座標系を抽出するにはどうすればよいですか?

5
GDALを使用してラスターを小さなチャンクに分割しますか?
ラスター(実際にはUSGS DEM)があり、下の画像のように小さなチャンクに分割する必要があります。これは、ArcGIS 10.0でSplit Rasterツールを使用して実現されました。これを行うにはFOSSメソッドが必要です。私はGDALを見て、確かにそれを行うと考えています(何らかの方法でgdal_translateで)が、何も見つかりません。最終的には、ラスターを取得して、どのくらいの大きさ(4KM x 4KMチャンク)に分割したいかを伝えたいと思います。

8
Python用のGDALとOGRをインストールしますか?
この投稿はコミュニティWikiです。この投稿を改善するには、既存の回答を編集してください。現在、新しい回答は受け付けていません。 Pythonでいくつかのコードを開発していますが、GDAL / OGR pythonバインディングを使用したいと思います。GDALおよびOGR pythonバインディングを使用するためにインストールする必要のある最低限のものは何ですか? Pythonからのみ使用したい場合、GDAL / OGRをインストールする最も簡単な方法は何ですか? MacとWindowsの両方に当てはまる答えを探しています。 GDALはPythonパッケージインデックス(PyPi)にリストされていますが、その依存関係(libgdalおよびlibgdalとnumpyの両方のヘッダーファイル)をインストールする方法がわかりません。たぶん私がする必要があるのは、numpyをインストールしてからどこかでlibgdalを取得することです。Windowsのインストールには、libgdalとそのヘッダーファイルに加えて Windowsバイナリが必要ですか? 使用しているバージョンのPython(2.5、2.6、2.7、3)に適切なPythonバインディングを確実に取得するにはどうすればよいですか? PythonからGDALとOGRを使用するには、PATH環境変数を変更する必要がありますか、またはサイトパッケージフォルダーと一般的なimportステートメントからすべてにアクセスできますか? これらの質問はこの質問に関連していますが、答えはしません 。MacOS Xでpython virtualenvにGEOS、PROJ、GDAL / OGR をインストールするWindowsでPythonを使用してGDALをインストールする方法は? FWTools、OSGeo4W、およびkyngchaosはpythonバインディングでogrとgdalを提供し、優れていることに注意する必要がありますが、FWToolsとOSGeo4Wは既存のpythonインストールのライブラリとして機能するのではなく、独自のpythonとともに出荷され、kyng chaosフレームワークはOS Xのみ。
18 python  gdal  ogr 

1
GDAL / OGRを使用してシェープファイルのフィールド値を変更する方法
シェープファイルのフィールド値を変更しようとしています。ただし、値は変更されません。私のコードの何が問題になっていますか? import ogr driver = ogr.GetDriverByName('ESRI Shapefile') fn = 'dist.shp' dataSource = driver.Open(fn, 0) layer = dataSource.GetLayer() feature = layer.GetNextFeature() dist = 233 while feature: feature.SetField("dist", dist) layer.SetFeature(feature) feature = layer.GetNextFeature() dataSource.Destroy()

4
-3.4e + 38 nodata値をどうすればよいですか?
http://www.worldclim.org/current(bioclim set)からダウンロードできるような、いくつかの生物気候ラスターファイルを処理しようとしています。-3.4e+38QGISに従って設定されたnodata値を持っているようです(gdalinfoの出力を見ると、そうです-3.39999999999999996e+38)。 gdalツールはこのnodata値を処理できず、qgisもそれを認識できないようです。レイヤースタイリングには、-3.4e + 38のエントリが100%透明に設定されていますが、「フィーチャの識別」ピッカーに値-3.4e + 38が表示されていても、そのような値が表示されます。 代わりにnodata値を-9999に変換するvrtを作成しようとしましたが、それも機能しませんでした。 使用可能なnodata値を持つようにこのようなファイルを処理するにはどうすればよいですか?
17 qgis  raster  gdal 

2
GDALを使用したPythonでのWGS 1984 Webメルカトル(EPSG:3857)の再投影
GDALを使用してPythonでラスターを再投影しています。後でOpenStreetMapおよび多分Googleマップと一緒にOpenlayersで使用するために、地理的なWGS 84座標からWGS 1984 Webメルカトル(補助球)にいくつかのTIFFを投影する必要があります。私はここからPython 2.7.5とGDAL 1.10.1を使用し、ここからのアドバイスを使用して座標を変換しています(私のコードは下にあります)。つまり、osgeo.osrをインポートし、ImportFromEPSG(code)とCoordinateTransformation(from、to)を使用しました。 私は最初にUTMゾーン29であるEPSG(32629)を試し、この投影されたラスターを取得しました(多かれ少なかれ細かい)ので、コードは正しいようです: それから私はこれとこの質問を読んで見つけたのでEPSG(3857)を使用しましたそれが正しい最近の有効なコードであること。ただし、ラスタは空間参照なしで作成されます。WGS 84データフレームでは遠く離れています(ただし、データフレームをWebメルカトルに切り替えても問題ありません)。 EPSG(900913)出力が地理参照されているが、北に3つのラスタセルについてシフト: ArcGIS(WGS_1984_Web_Mercator_Auxiliary_Sphereにエクスポート)を使用してラスターを再投影すると、結果はほぼ問題ありません。 そして、古いコード102113(41001,54004)を使用すると、結果は完璧です。 すべてのコードを使用した私のテストの要約: 3857: far away up (missing georeference) 3785: far away up (like 3857) 3587: far away right 900913: slightly jumped up 102100: python error 102113: perfect 41001: perfect 54004: perfect ArcGIS (web merc. aux.): good だから私の質問は: 正しいEPSGコードが間違った結果を与えるのはなぜですか? そして、なぜ古いコードがうまく機能するのでしょうか? …

1
GDAL Pythonでデータセットを閉じるのはなぜですか?
Python GDALコードには、スクリプトの最後でデータセットを閉じる人がいることがよくあります。Python GDALでデータセットを閉じるのが理にかなっているのはなぜですか?実行しないと、結果はありますか? import gdal # open dataset ds = gdal.Open('test.tif') # close dataset ds = None
17 python  gdal 

9
シェープファイルとラスターをオーバーレイする方法は?
ポリゴンを含むシェープファイルがあります。また、グローバルラスターファイルがあります。シェープファイルのポリゴンをラスタグリッドにオーバーレイし、各ポリゴンの平均ラスタ値を計算します。 GDALを使用して結果をシェープファイルに書き込むにはどうすればよいですか?

3
ジオティフの「データなし」の色を黒ではなく白/透明に変更するにはどうすればよいですか?
地図がジオサーバー経由で表示されるジオネットワークノードに含めるデータを準備しています。 問題は、「データなし」のセルがジオティフで黒として表示され、色を白または透明に設定したいことです。 ArcViewを使用していますが、Spatial Analystまたは3D Analystにアクセスできません。 新しいデスクトップファイルを割り当てる必要はなく、ArcGIS Desktopからエクスポートするときに「カラーマップを使用」を現在使用しています。

4
VSIS3を使用してS3バケットからGDALのファイルに効率的にアクセスする方法は?
そのため、GDALは最近、S3バケットファイルのランダム読み取りを可能にする新しい機能を追加しました。ファイル全体をダウンロードせずに、画像の複数のタイルからGDAL画像をトリミングしようとしています。GDALを使用してS3バケットを設定およびアクセスする方法に関する非常にまばらなドキュメントしか見ていませんが、開始方法について少し混乱していますか?この目標を達成するために、GDALの仮想ファイルシステムをどのように設定するかについて、非常に短い例/チュートリアルを提供してくれる人がいますか?ソリューションでPythonを使用したスクリプト作成が許可されている場合、ボーナスポイント! 明確にするために、すでにPythonでそれを行っています。Pythonの問題は、画像全体をダウンロードして操作する必要があることです。GDALの最新バージョンでは、S3バケットのマウントがサポートされているため、画像のごく一部をトリミングする必要がある場合、その小さな部分を直接操作できます。残念ながら、この機能は1月に安定版ブランチでのみリリースされたため、ドキュメントは見つかりませんでした。そのため、ソリューションでは、GDALの最新リリースのVSI3システムを使用するか、システムをスマートに使用して、ユーザーがイメージ全体をEBSドライブにダウンロードして操作する必要がないようにします。 つまり、GDALの最新バージョンにあるVSI APIを使用する回答に対して賞金が授与されるため、ファイル全体をメモリまたはディスクに読み込む必要はありません。また、使用するバケットは常に公開されているわけではないため、投稿されるHTTPトリックの多くは、多くの状況で機能しません。

5
MacOSXにGDALをインストールしますか?
MacOSXにGDAL 2.0をインストールする最も簡単な方法を知っている人はいますか? キングカオスのバイナリ配布とhomebrewの通常の容疑者はGDAL 1.11に固執しているようです 2.0に含まれていると思われるTopoJSON機能プロパティのサポートが必要です EDIT 2017/01/07: kingchaosバイナリディストリビューションがGDAL 2.1ディストリビューションを提供するようになりました

3
極立体図の地理変換?
現在、CANGRID気候データ(Surfer Grid ascii、「。grd」ファイルとして提供)をArcGISにインポートしています。グリッドのサイズは、95行125列です。メタデータは、緯度/経度の原点(左下隅)、セルサイズ(50km)に加えて、中央子午線(110度W)と原点の緯度(60度N)を備えた極立体図としてのノートの投影を提供します。 最初に.grdを.asciiおよび.fltとしてラスターに変換しようとして失敗した後、GDALを使用して範囲と投影を設定することができましたが、データセットは意図した領域の境界に正しく整列しません。下の画像をご覧ください。 このアライメントの欠如を説明することができる、ポーラーステレオグラフィックの受け入れられた地理変換はありますか? たとえば、使用すべき特定の変換係数または回転はありますか? データセットのサンプルファイルは次のとおりです。「t201113.grd」 ここに私が現在GDALで使用しているコードがあります ds = gdal.Open("t201113.grd") array = ds.ReadAsArray() x_rotation = 0 y_rotation = 0 xres = 1 yres = -1 llx = -129.8530 lly = 40.0451 ulx = -175.144 uly = 71.385 input_osr = osr.SpatialReference() input_osr.ImportFromWkt(ds.GetProjection()) wgs84_osr = osr.SpatialReference() wgs84_osr.ImportFromEPSG(4326) wgs_to_nps_trans = osr.CoordinateTransformation(wgs84_osr, input_osr) …

1
GDALを使用したジオリファレンス?
Google Earthにオーバーレイしようとしている.tiff画像があります。そのためには、まずジオリファレンスする必要があります。画像投影は、データとしてNAD83を使用したUTMです。画像の四隅の緯度/経度を知っています。 私は次のようにしています: gdalinfoを使用して、4つの座標を取得します。 緯度/経度情報を指定するgdal_translate gdal2tiles.pyで画像を並べます。 私を悩ませているのは、UTMとNAD83を指定したことがないということですが、どうして画像をオーバーレイできますか?誰もこの投影情報を指定する方法を知っていますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.