geotiff画像の黒い部分を透過するプログラムについて

1,102 views
Skip to first unread message

_imglab maturyu

unread,
Jun 7, 2023, 3:04:52 AM6/7/23
to QGIS初心者質問グループ
初めて質問させていただきます。
添付しているようなgeotiff画像の黒く表示されている部分を
透過するプログラムを作成しようとしています。
実行はQGISのコンソールで行うことを想定しています。
素人ながらコードを書いてみたのですが、うまくいきません。
アドバイスをいただければと思います。
よろしくお願いいたします。

QGISのバージョン:3.30.1

スクリーンショット 2023-06-07 160044.png
スクリーンショット 2023-06-07 155828.png

ありた

unread,
Jun 7, 2023, 8:26:07 AM6/7/23
to QGIS初心者質問グループ
こんにちは

GIS ソフトにおいて取り扱うラスタデータには
 ・標高などの数値データ
 ・土地利用などのカテゴリ値データ
 ・背景画像などの RGB 色情報データ
 ・衛星写真などの「ある波長における観測データ」が複数波長分
などがあります。

またベクタデータと同じように、これらのラスタデータに対し、たとえば
 ・白:0.0 ~ 黒:1000.0 のグラデーション
 ・各波長における値を、植生などを強調するために本来とは異なる色に割り当て
など、どのように描画するか、 GIS ソフト側でスタイルの設定を行います。

これはどういうことかというと
 ・透過描画の設定を行えば、現データでも透過した描画は可能
 ・マスク用のバンドを追加した GeoTIFF であっても、設定が不十分であれば透過されない
となります。



透過の設定は、レイヤプロパティの不透明度から nodata を設定する方法と、透過設定を行う方法があります。
透過設定では、もしマスクバンドがあれば選択するほか、抜き色を指定して透過させる方法もあります。

なお、提示いただいた Python スクリプトについて、手元での確認を行ったわけではありませんが、
スクリプトでは4番目のバンドを追加しただけであり、マスクバンドとして明示して作成しないと、
QGIS に読み込んだ際に、マスクバンドとして自動的に透過設定に使用されないのだと思います。
Reply all
Reply to author
Forward
0 new messages