gdalwarpコマンドなどを使おうとすると下記のように「Cannot find proj.db」と言われる場合があります。 これは環境変数の設定が不足しているため発生します。
エラー内容
gdalwarp -t_srs EPSG:4326 input.tif output.tif ERROR 1: PROJ: proj_create_from_database: Cannot find proj.db ERROR 1: Translating source or target SRS failed: EPSG:4326 Usage: gdalwarp [--help-general] [--formats] [-s_srs srs_def] [-t_srs srs_def] [-to "NAME=VALUE"]* [-novshiftgrid] [-order n | -tps | -rpc | -geoloc] [-et err_threshold] [-refine_gcps tolerance [minimum_gcps]] [-te xmin ymin xmax ymax] [-tr xres yres] [-tap] [-ts width height] [-ovr level|AUTO|AUTO-n|NONE] [-wo "NAME=VALUE"] [-ot Byte/Int16/...] [-wt Byte/Int16] [-srcnodata "value [value...]"] [-dstnodata "value [value...]"] -dstalpha [-r resampling_method] [-wm memory_in_mb] [-multi] [-q] [-cutline datasource] [-cl layer] [-cwhere expression] [-csql statement] [-cblend dist_in_pixels] [-crop_to_cutline] [-of format] [-co "NAME=VALUE"]* [-overwrite] [-nomd] [-cvmd meta_conflict_value] [-setci] [-oo NAME=VALUE]* [-doo NAME=VALUE]* srcfile* dstfile Available resampling methods: near (default), bilinear, cubic, cubicspline, lanczos, average, mode, max, min, med, Q1, Q3, sum.
解決方法
環境変数に「PROJ_LIB」を設定することで解決します。
PROJ_LIBに設定する値はインストールディレクトリ直下のprojlibフォルダのパスです。
変数名 | PROJ_LIB |
---|---|
変数値 | C:\Program Files\GDAL\projlib |
これで無事コマンドが成功しました。
gdalwarp -t_srs EPSG:4326 input.tif output.tif Using band 4 of source image as alpha. Creating output file that is 20527P x 10449L. Processing input.tif [1/1] : 0...10...20...30...40...50...60...70...80...90...100 - done.
GDALインストール場所の確認方法
インストールディレクトリが分からない場合は下記のコマンドでどこにインストールされているか確認できます。
where gdalinfo C:\Program Files\GDAL\gdalinfo.exe
どうしてもうまく行かない時
どうしてもうまく行かない場合、GDALをインストールせずにGDALを使う方法もあるので、下記の記事も参考にしてみてください。
【簡単】GDALインストールせずにGDALを使う方法
gdalのインストールがうまく行かずに悩んでいるあなたに朗報です。
gdalのdockerコンテナを使うとgdalをインストールせずに使用することが可能です。