ラスタからベクタ変換について

704 views
Skip to first unread message

Ryuiki

unread,
Jul 30, 2021, 8:56:38 PM7/30/21
to QGIS初心者質問グループ
Ryuikiです。
いつも拝見させて頂いております。

過去の記事から似たようなものを検索したのですが、分かりませんでしたので、標記について質問させてください。
バージョンはQGIS Desktop 3.16.6 with GRASS 7.8.5です。

内容は、数値地図DEM5からラスタ→解析→slope機能で5段階の傾斜区分図を作成しました(添付図参照)。
これをshp(ベクタ)に変換して人に渡したいので、ラスタ→ベクタ化で変換をしました。しかし変換、その後の表示には時間を要して、変換後のshpはどう見ても傾斜区分図には見えません。
また、GRASSのr.to.vect機能でも変換してみましたが、やはり変換、表示には時間がかかり、同様に傾斜区分図には見えませんでした。

何か根本が違うような気がしています。
DEM5をベクタに変換したのち、ベクタの機能で傾斜区分を表示させるのかな?と考えておりますが、ベクタのタグにはそれが見当たりません。

ご教授頂ければありがたいです。
よろしくお願いします。


keisyakubun_zu.JPG

ありた

unread,
Jul 30, 2021, 11:07:04 PM7/30/21
to QGIS初心者質問グループ
こんにちは

「どう見ても傾斜区分図には見えません」とありますが、その結果が示されて
おりませんので、想像での回答となります。


GIS ではラスタ形式であっても、ベクタ形式であっても、基本的に見え方は
プロジェクトで個々に設定する必要があり、設定したからといって、データの
値そのものは書き換わっていません。
傾斜分析を行い得られた値は、ピクセルごとに度またはパーセント単位の斜度と
して保存されています。それをベクタ形式に変換しても、やはり斜度情報が
含まれたデータであり、見た目の情報は含まれません。
ですので、変換後のベクタデータでも同様に見た目の設定を行う必要がありますし、
値による段階ごとの色や、条件による色設定も可能です。


なお斜度のように、広い範囲を連続する四角領域(あるいは代表点として中心点)の
値のデータとしてはラスタ形式のほうが向いており、ファイルの取り回しにしても
表示や解析にしてもおすすめです。
なにかベクタにする必要はありますか?

ありた

unread,
Jul 30, 2021, 11:29:56 PM7/30/21
to QGIS初心者質問グループ
補足いたします。

上記のとおり、見た目(スタイル/シンボロジ)の設定はプロジェクト内で行います。


ですので、人にデータを渡す場合はラスタであれベクタであれ、見た目を定義した
プロジェクトファイルごと渡す必要がありますし、それ以外のプロジェクトでは
見た目が再現されません。

厳密に言えば QGIS であればスタイル定義ファイルを出力し、そのファイルも渡す。
あるいは GeoPackage のようにスタイル定義をファイルに埋め込むという方法も
ありますが基本的な考えとして、データと見た目は別ということに変わりませんし、
QGIS 用のプロジェクトファイルやスタイル定義ファイルであるため、他の GIS では
基本的に見た目を再現することはできません。
( QGIS は OSS であるため、もしかしたら対応可能かもしれませんが)

ありた

unread,
Jul 31, 2021, 2:23:56 PM7/31/21
to QGIS初心者質問グループ
メール(個別返信)で返答いただきましたので、引用のうえ回答します。

>> なにかベクタにする必要はありますか?
> →先方がQGISではなく、ArcGISを使ってますので、受け渡しファイルということで
> shpでのデータを求められています。
> 逆に言えば、先方が数値地図DEM5(ラスタ)をArcで傾斜区分設定が出来れば
> 問題ないのですが、そこまでの域には達しておりません。
ArcGIS でもラスタデータは使用できます。 QGIS でラスタ標高データから
傾斜解析し得られた傾斜値ラスタを TIFF (GeoTIFF) で保存してください。
(初期設定では傾斜解析後、一時レイヤ(メモリ上のデータ)になっていると思います)
あくまで傾斜値のデータですので、同様にスタイルは ArcGIS で設定する必要があります。

なお、単純に見た目だけの背景画像でよいのであれば QGIS で設定したものを
イメージ画像化(傾斜値ではなく RGB 色データ)にすることもできます。
生成したレイヤを右クリックからエクスポートする際に、「生データ」ではなく
「画像」とすると(確か現在のスタイル設定で)画像として出力されます。




> ところで、添付した変換後のベクタデータですが、属性テーブルは何千行という
> データでおいそれとは開きませんが、テーブルは「DN」のみで数字が記入されております。
その属性値がラスタの各ピクセル値です。今回の場合は傾斜値(度またはパーセント)を
表しています。

>>GIS ではラスタ形式であっても、ベクタ形式であっても、基本的に見え方は
>>プロジェクトで個々に設定する必要があり、設定したからといって、データの
>>値そのものは書き換わっていません。
> →変換後のベクタデータをラスタと同様にQGISで傾斜区分図の設定が可能であれば、
> そのヒントをご教授願えれば幸いです。
QGIS の場合、レイヤプロパティのシンボロジタブを開きます。
条件に関わらず一律の見た目にするときは「単一定義」に、条件によって色等を
変えるときは「カテゴリ値による定義」「連続値による定義」「ルールによる定義」などで
設定します。(メニューの日本語はバージョンによって翻訳が異なることがあります。)

GIS は分析はもちろん、同じデータソースから目的に応じて様々な方法で可視化できる
ツールです。 ArcGIS でも同様の機能があるはずです。

Ryuiki

unread,
Jul 31, 2021, 9:17:41 PM7/31/21
to QGIS初心者質問グループ
早速のご返信ありがとうございます。
個別投稿するつもりはなかったのですが、申し訳ありませんでした。

詳細な説明に納得しております。
DNは傾斜地(度またはパーセント)ということは、これを条件で定義すれば、目的の傾斜区分画像が得られ訳ですね。
変換したベクタデータは約2.2GBもあり、 前メールで書いた何千行ではなく、実際は10万行以上ありました。
処理には時間がかかり能率も悪く、おっしゃるようにベクタで表示させる意味があるのか?と思ってしまいました。
先方には、ラスタから表示するよう話してみます。

>「カテゴリ値による定義」「連続値による定義」「ルールによる定義」などで
>設定します。(メニューの日本語はバージョンによって翻訳が異なることがあります。)
→トライ中ですが、砂時計が表示されたまま画像が表示されません。
PCのスペックは悪くないのですが、前述のとおりデータが重すぎると考えております。

ご教授有難うございました!

Ryuiki

2021年8月1日日曜日 3:23:56 UTC+9 ありた:
Reply all
Reply to author
Forward
0 new messages