基礎 · PixInsight 1.9.x

GeneralizedHyperbolicStretch (GHS)

GeneralizedHyperbolicStretch(GHS)は、リニアデータを目に見える画像に変換する。固定されたカーブとは違い、どの明るさを中心にコントラストを最も強めるかを決め、その上下でストレッチを制限できる。

目的

用途設定
リニアデータを非線形の画像にする最初のストレッチ、SP を背景に
情報を失わずに背景を暗くするTransformation type Linear、Blackpoint
色を褪せさせずにカラー画像をストレッチするMode Colour
なぜ1 回のヒストグラムストレッチではなく GHS を使うのか

HistogramTransformation は、1 本の固定カーブですべての階調を持ち上げる。GHS はコントラストを最も強める範囲(SP)を自由に決め、その上(HP)と下(LP)でストレッチを制限する。淡い構造がある階調にだけコントラストをつけ、恒星を飛ばさずに済む。1 回ごとに測り直せるので、大きな 1 回より小さな数回のほうが制御しやすい。

原理

  • ストレッチが正(D > 0)のとき、カーブは全域で対角線より上にある。背景を含めてすべての値が持ち上がり、背景のピークは右へ移る。
  • GHS はストレッチするだけで、ブラックポイントは 0 のままである。背景は中間のグレーに浮き、その左側の階調は空いたままになる。画像は白っぽく眠い印象になる。SP や LP ではこれは変わらない。
  • ブラックポイントだけを上げると背景は暗くなるが、淡い構造がまだ背景に近いうちは一緒に沈んでしまう。
  • そこで原則は ストレッチとブラックポイントを交互に行うこと。ストレッチで構造と背景を引き離し、ブラックポイントで背景を下げる。繰り返すたびに両者の差が広がる。
  • Auto-STF が 1 回の GHS より締まって見えるのは、ストレッチとブラックポイント(およそ中央値 − 2.8 × MAD)を組み合わせているためである。

パラメーター

パラメーター略号効果一般的な選び方
Stretch factor (ln(D+1))D1 回あたりのストレッチの強さ最初は高く(リニアの背景はとても暗い)、後は細かく調整するため小さく
Local intensitybSP 周辺へのコントラストの集中度。高いほど狙いが絞られる最初は高く、後は均一に持ち上げるため低く
Symmetry pointSPコントラストが最も強まる値背景のピークに。そのすぐ上の構造が最もコントラストを得る
Protect shadowsLPこれより下ではコントラストを追加しない背景より下のノイズの強調を防ぐ。背景が明るくなることは防がない
Protect highlightsHPこれより上のストレッチを制限する恒星の中心や明るい部分の白飛びを防ぐ

操作

  • 先に複製を作っておく。リニアの元画像は戻れる場所として残す。
  • Real-Time Preview を有効にし、メイン画像の STF をリセットする(Ctrl+F12)。そうしないとプレビューが STF を引き継ぎ、さらにストレッチされて見える。
  • 画像は 32 ビット浮動小数点でなければならない(メインウィンドウのステータスバー:f32)。16 ビットでは 0.0001 のリニア背景にわずかな段階しかなく、ストレッチするとトーンジャンプが出る。プレビューには画像ではなくプレビュー自身の形式(例 i16)が表示される。

値を測る

  1. メイン画像で Auto-STF を有効にする(Ctrl+A)。変わるのは表示だけで、画素値は変わらない。
  2. GHS を開いたまま、マウスの左ボタンを押した状態で測りたい場所をクリックする。値は Readout Data に表示される。
  3. Send to SP で値を SP に送る。LP には専用ボタンがないので、値を入力するか Fine adjustment で LP を選ぶ。
  4. メイン画像の STF を再びリセットする。
  • 安定した値を得るには Edit → Readout Options で Probe size 9×9 または 15×15、Mean か Median、Apply Global を設定する。測定範囲に暗い恒星が入る場合は中央値のほうが頑健である。
  • 代わりに GHS のグラフで背景のピークをクリックしてもよい(グラフを拡大する。リニア画像ではピークは左端にある)。
  • ピークは 1 回ごとに右へ移る → 毎回、ストレッチの前に測り直す。

代表的な使い方

サイクルによる最初のストレッチ

1  最初のストレッチ(1〜2 回)        SP = 背景、LP = 0
        ↓
2  ブラックポイント(Linear)         ピークの左裾の手前まで
        ↓
3  SP を測り直してストレッチ          SP = 背景、LP は SP のすぐ下
        ↓
4  ブラックポイント(Linear)         小さく
        ↓
   構造がはっきり分かれ、背景が暗くなるまで 3〜4 を繰り返す
ステップTransformation typeDbSPLPHP
1 最初のストレッチGeneralised Hyperbolic2〜44〜8背景01.0
2 ブラックポイントLinear–––––
3 ストレッチGeneralised Hyperbolic1〜32〜4背景(測り直し)SP のすぐ下0.95〜1.0
4 ブラックポイントLinear–––––
なぜ2 回目以降は LP を SP のすぐ下に置くのか

最初のブラックポイントの後、背景より下にあるのはノイズと最も暗い構造だけになる。LP は、この範囲が回を重ねるごとにコントラストを得て、ノイズが目立つのを防ぐ。LP を SP より上にしてはならない。

  • リニアの背景が非常に暗い場合(中央値が 10⁻⁴ 前後)、最初のストレッチには複数回が必要になる。
  • 淡い構造に SP を置いたコントラスト調整は、たいてい効果的でない。SP と背景が近すぎて背景も明るくなり、恒星も膨らむ。局所的なコントラストは、後で や でつけるほうがよい。

ブラックポイントを置く

  1. Transformation type: Linear を選ぶ。
  2. Blackpoint は、ヒストグラムのピークの左裾のすぐ左までにとどめ、ピークまでは上げない。
  3. プレビューで確認する:背景が暗くなり、淡い構造は見えたままであること。
なぜ左裾までにとどめるのか

左裾より左にはノイズとごくわずかな画素しかないので、そこにブラックポイントを置いても情報は失われない。ピークまで上げると背景の半分が切り捨てられる。

  • クリップしない:ヒストグラムの左端、ゼロに画素が積み上がらないこと。切り捨てた画素は戻らない。
  • 代わりに HistogramTransformation のシャドウスライダーを使ってもよい。ダイアログに切り捨てられる画素の割合が表示されるので、0.01〜0.05 % 程度未満に抑える。
  • 途中のブラックポイントは強めでよいが、最後は控えめに。最後のブラックポイントが、完成画像で暗部にどれだけ余裕を残すかを決める。

カラー画像:Colour モード

Colour Options の項目:

項目機能
ModeRGB:各チャンネルを独立して処理 → 色が褪せる。Colour:画素の全チャンネルを同じ比率で処理 → 彩度が保たれる
Clip type1 を超える値の扱い。既定は RGBBlend
Colour blend1.000 = 純粋な Colour モード。小さくすると RGB が混ざる
Use RGB working space作業色空間の輝度係数で重み付けする

設定: Mode Colour、Colour blend 1.000、Use RGB working space を有効にする。毎回、実行前に確認する。モノクロ画像では関係ない。

なぜColour モードを使うのか

ストレッチは非線形のカーブである。チャンネルごとに別々に適用すると、画素内のチャンネル比が変わる。いちばん暗いチャンネルが相対的に最も持ち上がり、すべての色がグレーへ寄っていく。Colour モードでは重み付き平均をストレッチし、各チャンネルを同じ倍率で拡大するので色が保たれる。Use RGB working space は明るさの感度(緑を強く)で重み付けするため、ストレッチが知覚上の明るさに沿う。

モノクロ画像:Auto-STF をそのまま適用する

GHS を使わない手早い方法:

  1. リニア画像で Auto-STF(Ctrl+A)。
  2. STF の三角形を HistogramTransformation の下部バーへドラッグ&ドロップする。
  3. STF をリセットし(Ctrl+F12)、HistogramTransformation を適用する。

グレースケール画像専用:Auto-STF はチャンネルごとに別々にストレッチするため、カラー画像では彩度が落ちる。背景はやや明るめ(0.25 前後)になるので、必要なら小さくブラックポイントを置く。

よい結果の見分け方

よくある失敗

症状原因対処
恒星が飛ぶ、膨らむHP が高すぎる、D が大きすぎるHP を下げ、1 回あたりの D を小さく
背景が白っぽく眠いブラックポイントがないLinear と Blackpoint で 1 回行う
ブラックポイントの後に構造が消える構造がまだ背景に近すぎるブラックポイントを戻し、さらにストレッチしてからやり直す
色が薄いMode RGBUse RGB working space つきの Mode Colour
構造が平板サイクルが足りないストレッチ+ブラックポイントをもう 1 サイクル
トーンジャンプ、階調の段差画像が 16 ビット32 ビット浮動小数点に変換してストレッチし直す
プレビューが明るすぎるメイン画像の STF が有効Ctrl+F12

向いている場面・向いていない場面

向いている別のツールがよい
リニアデータを制御しながらストレッチするグレースケールを手早くストレッチ → HistogramTransformation で Auto-STF
クリップせずに背景を暗くする非線形画像で階調域を合わせる →
彩度を保ったままカラー画像をストレッチする局所的なコントラスト →
使用されている手順

CurvesTransformation · HaLRGB のワークフロー · StarXTerminator (SXT) · クアッドバンドフィルターを使った OSC のワークフロー · ナローバンドのワークフロー(HOO/SHO)