質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
QGIS

QGISは、オープンソースの地理情報システムです。無料でありながら、GISに必要な地理空間情報の作成・編集・可視化・解析といった多くの機能を備えています。さらに、無料のプラグインで機能追加を行うことも可能です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

785閲覧

QGIS 3.24 「単バンドグレー」の自動設定(Python)

Machan

総合スコア10

QGIS

QGISは、オープンソースの地理情報システムです。無料でありながら、GISに必要な地理空間情報の作成・編集・可視化・解析といった多くの機能を備えています。さらに、無料のプラグインで機能追加を行うことも可能です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2022/06/07 03:59

大変お世話になります。
QGIS Ver3.24を使用していますが、
ラスタデータのプロパティで、「シンポロジ」-「単バンドグレー」にある
「グラデーション」を「黒から白」を「白から黒」に変更し、
「コントラスト」を「最小値最大値に引き伸ばす」の「標準偏差×[2.0]」
及び 「透過性」を「60%」に設定する方法をプログラミングしたいのですが、
どの様なAPIを使用するのか不明です。

各種サイトには「単バンド疑似カラー」の方法があるのですが、
「単バンドグレー」の方法がわかりません。

開発環境:Windows10
QGIS3.24.1
Python 3.9.5

ご指導ご鞭撻のほどを宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

別のサイトで回答を得ました。
layer = iface.activeLayer()

band = 1

provider = layer.dataProvider()
renderer = QgsSingleBandGrayRenderer( layer.dataProvider(), band )

renderer.setGradient( 1 )
renderer.setOpacity( 0.6 )

stats = provider.bandStatistics( band, QgsRasterBandStats.All, layer.extent(), 0 )
mean, sd = stats.mean, stats.stdDev
min_val = mean - 2 * sd
max_val = mean + 2 * sd

enhancement = QgsContrastEnhancement( renderer.dataType(band))
contrast_enhancement = QgsContrastEnhancement.StretchToMinimumMaximum
enhancement.setContrastEnhancementAlgorithm(contrast_enhancement, True)
enhancement.setMinimumValue(min_val)
enhancement.setMaximumValue(max_val)

layer.setRenderer( renderer )
layer.renderer().setContrastEnhancement( enhancement )
layer.triggerRepaint()

投稿2022/06/15 00:05

Machan

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問