クリッパーで指定の大きさでの切り取りができない

1,755 views
Skip to first unread message

arai...@gmail.com

unread,
May 22, 2017, 4:25:40 AM5/22/17
to QGIS初心者質問グループ
geotif、空中写真のラスタレイヤを指定の大きさでの切り取りがしたいのですが、うまくいかないのでご教示願います。

1:新規シェープファイルレイヤに長方形などを作成し、これをクッキーカッターにしようと考えました。
2:CRSも揃え、長方形を作成し選択レイヤセーブでshp保存もしました。(プラグイン「Rectangles Ovals Digitizing」使用)
3:クリッパーのマスクでshpを選んで実行しても
Warning 1: the input vector layer has a SRS, but the source raster dataset does not. 
Cutline results may be incorrect. 
が出て、空のレイヤだったり、もとラスタのピクセル解像度で真っ黒レイヤが追加されている。

自宅ではできたのですが、仕事場では上手くいきません。
自宅でも同様な失敗は有りましたが、選択レイヤセーブでshp保存していなかったからだと解決したつもりだったのですが、仕事場
でも再現したりと、原因が分かりません。

ラスタデータに不備が有るようなアラートのようですが、私にはいまいちわかりません。

仮に上手くいったとしても長方形は適当に作っただけなので、これもしっかりピクセル解像度を指定したいところです。
これは後でラスタ画像のタイル分割を考えているためです。この部分はプラグイン「gridSplitter」でうまく行きそうです。

よろしくお願いいたします。

福岡

unread,
May 22, 2017, 4:48:58 AM5/22/17
to QGIS初心者質問グループ
こんにちは

直感での投稿です。外していたら申し訳ありません。

CRS関係のトラブルのような印象を受けました。
プロジェクトのプロパティも揃えて、OTFをオフにして試してみてはいかがでしょうか?

arai...@gmail.com

unread,
May 22, 2017, 5:19:31 AM5/22/17
to QGIS初心者質問グループ
福岡様

素早いアドバイスありがとうございます。

海外サイトのオンザフライを切れ、というのも見てましてやっていました。
自宅成功は覚えてませんが、仕事場で直前の設定ではオフでした。今オンにしても同じエラーです。
プロジェクトのプロパティを揃える、というのは、設定>オプション>CRSと、プロジェクト>プロジェクトのプロパティでいいでしょうか?
これも揃えましたし、新規でやりはじめても同じエラーです。

2.18が終了時にクラッシュダンプ云々毎回言ってくるのでアンインスト後、2.14でも同様にダメです。

福岡

unread,
May 22, 2017, 5:45:20 AM5/22/17
to QGIS初心者質問グループ
外してしまったようで申し訳ありません。

プロジェクトのプロパティも揃えるというのは、プロジェクトプロパティのCRSタブ(OTFのオンオフをするところ)の設定と
各レイヤのCRSと統一するという意味でした。
ところで警告文をグーグル翻訳に掛けたのですが、ラスタに参照空間系が無いと言っているようです。
「ラスタ - 投影法 - 投影法の割り当て」で、定義してみたらどうでしょうか?

また、外したらごめんなさい。m(__)m

arai...@gmail.com

unread,
May 22, 2017, 9:13:23 AM5/22/17
to QGIS初心者質問グループ
福岡様 

申し訳ありません!

CRS3857でなく3858とかになっていたかもしれません。
切り取りもできてるようですが、物理的に切り取りはされてないようですね。エラーは相変わらず出ます。photoshopで開くと余白として黒で囲まれていました。
これでは意味が有りません。で、「gridSplitter」にもマスク指定が有ったので試すと、こちらの方が望ましく、物理的に切り取りされていました。

ですが、先に書いたとうり長方形が適当なサイズなので、切り取った後のサイズが求めるサイズになっていないので、長方形を書いた後任意のサイズに
変更できれば、望む結果を得られるかなと思います。何か手続きは有るのでしょうか?またはできない?

できないならば、今までと全く違う手段がありますか?要は6234x4251のサイズならば、6000x4000みたいに切り取りたいわけです。
かつ、長方形の位置もドラッグしながら配置する、みたいな。

基盤地図とも合わせたいのですが、CRSの違いからか、ちょっと間違えると微妙に回転してしまった結果もあるので、この先思いやられます。。。

なんか、簡単そうに思えてもグラフィックアプリと性格が違うのでなかなか難しいですね。

福岡

unread,
May 22, 2017, 6:02:00 PM5/22/17
to QGIS初心者質問グループ

おはようございます。

ご要望の方法とは若干違うかもしれませんが、クリッピングモードを「範囲」にすると、画面上をドラッグしてクリップする範囲を長方形で設定できます。
また、その後には範囲の座標手入力で修正できます(または、最初から手入力でも設定できます)。

この方法はお役に立ちますでしょうか?

福岡

unread,
May 22, 2017, 6:18:28 PM5/22/17
to QGIS初心者質問グループ

出勤までにちょっと時間があったので、追加投稿いたします。

ピクセル値で揃える場合は、計算値を手入力するとできるかと思います。
レイヤのプロパティのメタデータタグの一番下にプロパティというところがありますが、ここでピクセルの大きさを確認できます。

arai...@gmail.com

unread,
May 22, 2017, 7:07:52 PM5/22/17
to QGIS初心者質問グループ
福岡様

ありがとうございます。

これは座標値であり、ピクセル値でなかったと記憶しているのですが違いましたでしょうか? 
たしか、ピクセルに当てはめるのに、倍率計算ですごい端数で掛け算しても、結果1ピクセルくらい
誤差が入り、結構めんどくさい記憶なんで、マスクなら後でgeotifの次数変換とかで、なんとかなるのかなー?と思ってたんです。
記憶違いならばすみません。

arai...@gmail.com

unread,
May 22, 2017, 7:14:36 PM5/22/17
to QGIS初心者質問グループ
あ、ここの次数と座標値で掛け算した記憶です。

福岡

unread,
May 22, 2017, 9:38:41 PM5/22/17
to QGIS初心者質問グループ

おっしゃるとおり、数値は座標値です。
そこで、ちょっと試してみました。

メタデータで確認したピクセルの大きさはx,yともに10.9196です。
2の方のx,yを3000X10.9196で調整しました。
得た画像をPhotoshopで確認すると意図したとおり、3000X3000になっています。


さらに1の方のx,yともにフリーハンドで範囲を設定した初期値のままにして2の方の値を調整して3回ほど試してみましたが、意図したピクセル値になりました。
たまたまかもしれませんが、メタデータのピクセルの大きさを利用して意図したピクセル数のラスターとしてクリップできるような感触です。

arai...@gmail.com

unread,
May 22, 2017, 10:48:04 PM5/22/17
to QGIS初心者質問グループ
福岡様

お付き合いありがとうございます。

例えば、福岡様の基盤地図の上に地理院地図(写真等)がオンザフライで乗ってた場合、その切り取り座標値を使いまわしできるのでしょうか?できない結果がでませんか?

arai...@gmail.com

unread,
May 22, 2017, 11:03:09 PM5/22/17
to QGIS初心者質問グループ
よく考えると、両者は物理的にピクセル解像度は違うんですよね。切り取ったエリアが地図的に同じでいて欲しい。それぞれの解像度ごとに整合性があれば良いこと。あー、頭がぐちゃぐちゃになってきました。。。

福岡

unread,
May 23, 2017, 12:48:50 AM5/23/17
to QGIS初心者質問グループ
どのようなレイヤがあって、どのような画像の切り出しをしたいのかをもう少しお聞かせくださいませんでしょうか?

例えば、地理院地図を対象としてお考えのようですが、Webマップはクリッパーの対象とはならないと思います。
もし地理院地図の画像をGeotiffとして切り出したい場合は、私ならプリントコンポーザでワールドファイル付きの画像として出力(解像度を設定できます)して、
それをQGISで取り込んでCRSを合わせたGeotiffを作成、その後にクリッパーを使うなどの手間を掛けると思います。

arai...@gmail.com

unread,
May 23, 2017, 2:42:49 AM5/23/17
to QGIS初心者質問グループ
今のところ、前回の質問2つの延長線です。段彩図と地理院地図のwebからの複数画像保存を結合した(QGISで)空中写真の2つのレイヤです。
空中写真は納得できるまでズームをかけて同スケールで保存したもの。それをphotoshopで色目調整したPNG(ワールドファイル付き)を1つのレイヤに結合。

プリントコンポーザはまだ勉強してませんので、ちょっとやってみます。切り取る座標値をうまく使いまわせるかどうかです。

段彩図も空中写真も同じエリアで切り取る。解像度はそれぞれ独立してる。同じ比率の相似形。
今後、段彩図を基準に乗っかるレイヤ(調査中)は同様に画像として切り取りたい。

赤線で共通に切り取り、緑線をプラグイン「gridSplitter」で分割

それぞれの解像度で得られた複数データ(摸式イメージ)

これで分かりますでしょうか?

福岡

unread,
May 23, 2017, 3:59:57 AM5/23/17
to QGIS初心者質問グループ

ラスタレイヤが2つあって、それぞれ同じ座標で画像を抜き出して、さらに同じ画像サイズで保存したいということですね?

おぼろげな記憶を呼び出して、調べながら、試してみました。
クリッパーですが、一番下の枠の冒頭をご覧頂くとわかるように「gdal_translate」を使っています。


そこで、これをキーワードにしてググってみました。
http://www.gdal.org/gdal_translate.html
グーグル翻訳先生の力を借りながら読むと、どうやら「-tr」でセルサイズを指定できるようです。
鉛筆ボタンを押して編集モードにして枠内に「-tr 0.3 0.3」(前後に半角スペース)を書き込みました。
ちなみに切り取る対象画像のセルサイズは「0.57164」でした。


実行して得た画像のメタデータです。セルサイズが意図したとおりになっています。


細かい方のレイヤは普通に切り抜いて、粗い方のレイヤでは細かい方のサイズに指定して切り抜いたら、同位置で同じ解像度を持つ画像を得られると思います。

arai...@gmail.com

unread,
May 23, 2017, 5:20:56 AM5/23/17
to QGIS初心者質問グループ
まだ理解できていないのですが、確認のため

>ラスタレイヤが2つあって、それぞれ同じ座標で画像を抜き出して、さらに同じ画像サイズで保存したいということですね?
同じ座標じゃないと思います。オンザフライですから。
また、同じ画像サイズでもありません。
段彩図は基盤情報データですから必然的に決められた画像サイズです(次元サイズ)、上のデータは10000x10000以上あります。
空中写真はwebでズームをかけて保存したものを繋ぎ合わせています、これは7000x7000程度あります。ズームせず保存した場合は2000ピクセル程度にもなり、可変なサイズですよね。

>細かい方のレイヤは普通に切り抜いて、粗い方のレイヤでは細かい方のサイズに指定して切り抜いたら、同位置で同じ解像度を持つ画像を得られると思います。
「細かい、粗い」が何をさしているのか分かりませんでした。

1:赤い四角で2つのレイヤを切り抜いた。この時点で相似形ではあるが、ピクセル数は同一ではないと思っています。
2:2つのレイヤは同じ地図上エリアで切り抜かれていて、違うCRSで見た目オンザフライで重なっている。
3:切り取られたレイヤは緑のラインのように4分割する。ここでも当然、ピクセル数は同一ではないと思っています。
4:最終的には4つのgeotifと4つの画像tifが得られた。めでたし、めでたし。
これが思い浮かべてることです。

最後の画像では段彩図は小さくなっていますが、上のピクセル数なら大きくしないといけませんでした。わたしの勘違いで摸式しました。

福岡

unread,
May 23, 2017, 6:01:04 AM5/23/17
to QGIS初心者質問グループ
2つのレイヤを同じ位置で切り出したいのでしたら、レイヤのCRSを揃える必要があると思います。
ラスターのCRSは「ラスタ - 投影法 - 再投影(ワープ)」で変換できますので、これで揃えてオンザフライをオフにしたら良いと思います。

それと画像サイズですが、「物理的にピクセル解像度は違う」とおっしゃっていたので、重なった画像のピクセルサイズも同じくしたいと思っているものと勘違いしていました。m(__)m
粗い、細かいはピクセルの大きさを意図したものです。同じ領域で1つのピクセルサイズが大きいと1辺あたりのピクセル数が少なくなりますので、これを粗いと表現しました。
逆に1つのピクセルサイズが小さいと逆に1辺あたりのピクセル数が増えるので、これを細かいと表現しました。
ただ、ピクセルサイズを揃えたいとはお考えではなかったようですので、「-tr」についての記述は無視してください。

混乱を招くような情報を書き込みもうしわけありませんでした。m(__)m

arai...@gmail.com

unread,
May 24, 2017, 10:47:30 PM5/24/17
to QGIS初心者質問グループ
福岡様

ありがとうございました。

上手く切り取りできそうです。

余計なお手間をかけてしまって申し訳ありませんでした。途中から継ぎ足したような質問になり、意図がはっきりしないような文面で無駄な時間を取る結果となり、すみませんでした。
私がCRSを正しく設定し、再投影さえ分かってたら、と考えたらお恥ずかしい限りです。

これでまた違う部分を活用する調査に進めそうです。単語一つ一つがグラフィック的にはなじめないので大変です。

福岡

unread,
May 25, 2017, 12:52:03 AM5/25/17
to QGIS初心者質問グループ
こんにちは

ご返事ありがとうございます。うまくいったようで良かったです。GISは、最初がとっつきにくく、大変ご苦労なさったのではないかと想像しております。
今後ともよろしくお願いいたします。
Reply all
Reply to author
Forward
0 new messages