PixInsightにてDBEを共通背景モデルで加算合成前の各コマにバッチ適用

FlatAide Proの場合

ELシートで撮影したフラット画像によるフラット補正は、特に光害が多い場合や広写野角の場合に合わないことが多い。例えば昨年秋に購入したAskar ACL200は周辺光量が豊富だが、周辺部の色ムラの処理に悩まされた。環境光のせいなのか、対光害フィルターのせいなのか、または光路上にあるセンサー枠などの影響なのかわからないが、いずれにしてもフラット補正があまり合わないことは確か。

このように合わないフラットや光害による傾斜カブリを補正するため、FlatAide Proでは「バッチキャリブレーション補正」で加算合成前の各コマに対して修正を施す事ができる。特に光害による傾斜カブリは時間と共に移動するため合成前の補正が望ましい。フラットの不整合は各コマで共通だが、基本的には除算処理になるため減算によるカブリ補正前に実施したい。

具体的には、light画像と同じ光学系・撮影条件でなるべく星雲・輝星などのない領域(Void領域)を狙って1コマのみ撮影しておく。これを「Void画像」と呼ぶ。このVoid画像の星を消去した上でなめらかにぼかして「シェーディング画像」とする。これを除算または減算して補正する。また、その際に傾斜カブリを同時に補正する事もできる。

FlatAide Proのバッチキャリブレーション
FlatAide Proのバッチキャリブレーション

「フラット補正の補完」ということに限れば、シェーディング補正は除算で行うのが正しいと思う。一方、光害カブリの除去は減算だと思う。

PixInsghtでの処理概要

最近導入したPixInsightでも同様の処理ができないか検討した。流れとしては下記のように考えた。

  1. プリ処理をWBPP(Weighted Batch Preprocessing)にて、加算合成直前(registerまで)実施。
  2. まずDBEでフラット補正の不整合を修正する(除算補正)。
    1. Void画像にDBE(DynamicBackgroundExtraction)を適用し、背景モデル画像を作っておく(このウィンドウを閉じずに置いておく)。
    2. イメージコンテナ(ImageContainer)にregisterまで済んだ各light画像を登録する。出力先には別のフォルダを指定。新しいインスタンスとしてワークスペースにアイコン化して保存。
    3. Void画像のDBE実施済みのウィンドウからNew Instanceを上記イメージコンテナアイコンにドラッグ&ドロップして処理する。このとき背景モデル画像は、最初に適用したVoid画像に対するものが共通して使い回される。
  3. まだ光害による傾斜カブリが残っているため、次にABE(AutomaticBackgroundExtractor)でこれを補正する(減算補正)。
    1. 上記DBE適用済の各コマを新しいイメージコンテナに登録し、出力先を更に新しいフォルダに指定する。
    2. ABEのウィンドウでの設定は、Function degreeを出来るだけ低次(多くの場合1次)にして、New Instance を上記イメージコンテナにドロップして処理する。
  4. DBEとABE適用済みのlight画像各コマをWBPPでImage Integrationのみ実施し、Master light画像とする。

PixInsightとして仕様通りの動作なのかどうか不明だが、(私の環境では)イメージコンテナに対して処理を行う場合、DBEでは最初に処理した画像の背景モデルがそのまま共通して全コマに適用され、一方でABEではコンテナ内の各イメージについて、それぞれ背景を評価した上で処理されるようだ。そのため、共通のVoid画像で補正するDBE、光害の傾斜カブリを別個に評価して補正するABE共に都合が良い。

なお、今回のDBEがフラット処理の補完という位置づけであれば、本来Registrationの前(つまりキャリブレーション完了後)に実施すべきである。しかしWBPPで処理するとキャリブレーション完了後のファイルはデベイヤーされておらず色ムラの状態を確認しにくい。今回のDBEとABEは僅かな位置ずれに対しては寛容なので、Registration後の(デベイヤーされた)ファイルを対象とした。

(2021/3/11追記)後でよく確認したら、calibrated-light フォルダの下に更にdebayeredフォルダが出来ていて、その中にデベイヤーされたファイルが入っていた。なので、void画像もlight画像もそのファイルを用いれば良い。 

WBPPによるプリ処理

ここから具体的な説明となる。題材は光害地の自宅で2020年の晩秋にAskar ACL200とASI294MC Proで撮影した、ぎょしゃ座の勾玉星雲~M38付近。当時の処理ではLight画像44コマを使用したが、今回は質の良いもの33コマに絞り込んだ。撮影ソフトはAPT3.84。SQM-L測定値は19.2で、明石市内の自宅にしては光害レベルがややマシな状況。

まず下準備としてWBPPをlight画像のregisterまで行う。

Bias, Dark, Lightの各画像を登録する。

WBPPのLight画像
WBPPのLight画像

このとき、Void画像をLight画像と一緒に混ぜておく(上の画像では最下部のファイル)。このVoid画像がRegistrationのリファレンスにならないよう、Auto-detect reference frameのチェックは外し、手動でLight画像のいずれかを指定しておく。また、Image Integrationはまだ行わないため、チェックを外す(ただし、ABE・DBE無しのMaster lightも生成する場合はチェックを入れたままでも良い)。なお、これも私の環境だが、Bayerパターンが「自動」では正常にDebayerされなかったので、ASI294MCの「RGGB」に指定した。

これでWBPPを実行すると、Void画像だけがRegistrationに失敗して、Registeredフォルダに入らず、Calibrated止まりになる(もちろんこれは計画的失敗)。

Void画像のDBE処理

calibrated – light フォルダに入っているキャリブレーション済みのVoid画像を開き、手動でデベイヤーしておく。

DBEのウィンドウを開き、設定を変えながら何回か試行し、背景モデルが適切と思われるように調整する。何が「適切」なのかの判断は難しいが、細かな色ムラはなく、フラット不整合による周辺のムラが出る程度だと思う。

Void画像のDBE設定
Void画像のDBE設定
  • Sample radiusはデフォルトよりかなり大きめ。
  • Sample per rowも試行錯誤で、特に周辺部の色むらを適切に拾うように決めた。
  • Smoothing factorは0から1の間でスムーシングの度合いを調整する。0がスムーシング無しで1が最大。今回はかなり大きめの0.9とした。
  • Toleranceは、全てのサンプル点が有効になる程度まで大きくした。今回は1.4。
  • (上の画像では隠れているが)Model ImageのDownsampleは1とした。
  • Correctionは除算(Division)

何回か試行して、得られた背景モデルが下の画像(STF Autostreach Boosted表示 )

Void画像 DBE背景モデル(Boosted表示)
Void画像 DBE背景モデル(Boosted表示)

まだ若干細かいムラが残るようにも思えるが、おおむねFlatAide Proで作成されるシェーディング画像に似た感じになった。

ただし、明るさの分布が右に偏っている。これは光害の影響と思われるので、本来は先にABEで除去しておくべきと思うが、手順が複雑になるので今回はこのまま使う(Void画像における光害カブリについては後で考察する)。

このDBEのウィンドウは後で使うのでそのまま置いておく。

Light画像のイメージコンテナへのDBE適用

メニューから「Process」ー「Image Container」でイメージコンテナのウィンドウを開き、DBE処理対象となる、Register済みのLight画像をイメージコンテナに登録する。

Light画像のイメージコンテナ化
Light画像のイメージコンテナ化

既存ファイルを上書きされないよう、Output directoryには別途作成した新規フォルダを指定しておく。

「左下の直角三角マーク(New Instance)」をワークスペース上にドラッグ&ドロップしてアイコン化しておきウィンドウを閉じる。

その後、Void画像の処理を行ったDBEウィンドウの「左下の直角三角マーク(New Instance)」を今回作成したLight画像のアイコン上にドラッグ&ドロップしてバッチ処理する。

Light画像(コンテナ化)のDBEバッチ処理
Light画像(コンテナ化)のDBEバッチ処理

このとき、「Replace target image」にチェックを入れる。このチェックを入れないと各画像の処理毎に処理後の新規ウィンドウが開いてしまう。このチェックを入れていても、コンテナの方で出力先を別フォルダにしておけば元画像が上書きされることはなかった。

同様に「Discard background model」も新規ウィンドウが開かないようにチェックを入れるべきだが、今回の試行では全ての画像の背景モデルを確認するため、あえてチェックを外している。

バッチ処理後に背景モデルの新規ウィンドウが全て開くので、いくつかBoost表示にして確認したが、全てVoid画像の背景モデルと同じになっていた。

Light画像(コンテナ化)のDBE背景モデル例
Light画像(コンテナ化)のDBE背景モデル例

Void画像背景モデルによるDBE適用の効果

下の画像は、DBE処理適用前のキャリブレーション済みLight画像の、一番最初と最後のコマをBoost表示したもの。

DBE適用前のLight画像(上:最初のコマ、下:最後のコマ) *Boosted
DBE適用前のLight画像(上:最初のコマ、下:最後のコマ) *Boosted

不整合とはいえ基本的なフラット処理はなされているため、光害カブリの変化のほうが目立つ。しかしよく見ると周辺部などの色むらが直線的ではない。

次に下の画像は今回の方法でDBEを適用した後の、最初と最後のコマ。

DBE適用後のLight画像(上:最初のコマ、下:最後のコマ) *Boosted
DBE適用後のLight画像(上:最初のコマ、下:最後のコマ) *Boosted

相変わらず光害カブリの変化のほうが目立つが、それが直線的な変化になっているように見える。現時点ではごくわずかの違いだが、この後光害カブリを補正し、加算平均合成して強調すると大きな差になってくる。

ABEによる光害カブリの補正

ここまでで、DBEにてフラットの不整合を補正したが、まだ光害カブリによる傾斜が残っている。光害カブリの時間による変化が大きいため、このまま合成すると背景ムラが複雑化してしまう。そこで次にABE(AutomaticBackgroundExtractor)をバッチ処理で各コマに施す。

DBEと同様にして、DBE処理後のLight画像をコンテナ化してワークスペースにアイコンとして置き、ABEのウィンドウを起動する。コンテナ化の手順はDBEと同じなので省略(出力先を新規フォルダにしておくこと)。

ABEの設定については、これはこれで色々わからないことが多いが、とりあえず補正に用いる多項式の次数を指定する「Function degree」を1にした。今回の光害カブリは直線的な感じだが、広い写野角で強い光源を中心に広がる光害の場合は2にする必要があるかもしれない。

DBE処理済みLight画像(コンテナ化)を更にABEで光害カブリ補正
DBE処理済みLight画像(コンテナ化)を更にABEで光害カブリ補正

光害カブリの除去なので、Correctionは減算(Subtraction)とする。

ABEについては背景モデルの確認をしないので「Discard background model」にチェックを入れる。また、処理済み画像のウィンドウが開かないよう「Replace target image」にチェックを入れる。DBEと同様、このチェックを入れていてもコンテナの方で出力先を別フォルダにしておけば元画像が上書きされない。

下の画像は、DBEの後更にABE処理したLight画像の、一番最初と最後のコマをBoost表示したもの。

DBEの後更にABE適用後のLight画像(上:最初のコマ、下:最後のコマ) *Boosted
DBEの後更にABE適用後のLight画像(上:最初のコマ、下:最後のコマ) *Boosted

光害によるカブリの変化もほとんど無くなったのがわかる。

加算平均合成

DBEとABEの処理が終わったので、WBPPで加算平均合成(ImageIntegration)を行う。

WBPPによるLight画像合成のみ実施
WBPPによるLight画像合成のみ実施

ファイルはDBEおよびABEで処理した後のものをLight画像として登録し、Image Integrationだけにチェックを入れる。

WBPPによるLight画像合成のみ実施(Controlの設定)
WBPPによるLight画像合成のみ実施(Controlの設定)

Controlの設定では、Dark, Flatのチェックを外す。デベイヤーも済んでいるのでCFA imagesもチェックを外す。

これでMaster lightが作成される。

結果:合成後に強調処理した画像での評価

今回の処理で得られたMaster light画像をステライメージ9でオートストレッチ・レベル調整・デジタル現像し、Photoshop CCでノイズ低減、レベル・彩度強調調整した。

まず、今回の手順で合成前の各コマにDBE・ABEの両処理をしたものが下の画像。なお、作業簡略化のため星マスク無しで強調しているため星像が膨らんでいるが、ACL200の星像が悪いわけではない。

DBE(フラット不整合補正)とABE(光害カブリ除去)を適用
DBE(フラット不整合補正)とABE(光害カブリ除去)の両方を適用

次に、DBEによるフラット補正は適用せず、ABEによる光害カブリ除去のみ行ったもの(↓)。

ABE(光害カブリ除去)のみ適用
ABE(光害カブリ除去)のみ適用

最後に、DBE・ABEとも無しで、WBPPによる処理のみのもの(↓)。

DBE・ABE共に無し(WBPPによる処理のみ)
DBE・ABE共に無し(WBPPによる処理のみ)

3画像ともほぼ同程度の処理をして、特に勾玉星雲の上部あたりが同じ色と輝度になるよう調整した。一見して「WBPPによる処理のみ」では色ムラがひどすぎて全くダメなのがわかる。「ABE(光害カブリ除去)のみ」ではパッと見たところなかなか良く補正されているように見えるが、周辺部と中央部の背景色が微妙に異なり、最周辺部の落ち込みも目立つ。今回のように散光星雲を大きく中央部に取り入れた構図では、中央部と周辺の色むらが、赤い星雲による色の変化なのかフラット不整合なのかわかりにくい。

DBE(フラット不整合補正)とABE(光害カブリ除去)を両方適用すると周辺部まで良く補正され、更にここから強調していく余地がありそうに思える。

Void画像の光害カブリについての考察

Void画像も光害地で撮影しているので、光害による傾斜カブリが発生しており、今回DBEで作成した背景モデルも右側が明るくなっている。これについての対応は下記の2通りが考えられる。

1.Void画像にABEを事前適用し光害の影響を除去しておく。

Void画像はフラット補正の補完であるという位置づけでは、光害成分は事前に除去する必要がある。キャリブレーション後のVoid画像にDBEを適用する前に、1次のABEで光害成分を除去しておく。

2.Void画像の光害カブリ傾斜の方向をLight画像と同じにしておく。

Void画像に光害成分が載ったままでも、方向が各Lihgt画像と同じであれば、各Light画像をDBEで補正した際に、光害カブリは同じ向きで一緒に補正される。ただし、Light画像の光害カブリの方向が変化しているようであれば、各コマのDBE適用後のカブリは線形ではなくなる恐れがある。それに、光害成分が除算で補正される状況となるので、原理的におかしい。

こうして考えると、原則としては上記「1」が正しいように思える。しかし今回は手順の単純化のため何も対応をしていなかった。そのためVoid画像に光害成分が載ったままであったが、結果は良好であった。これはたまたま今回のVoid画像が「2」の状態であったためと思われる。

つまり、光害カブリ傾斜方向の時間変化がそれほど大きくなければ、撮影対象に近い空の領域でVoid画像を撮影しておけば良い。実はこれまでVoid画像を撮影するときは出来るだけそのようにしてきた。光害地では、たとえ天頂であっても光害カブリの傾斜は避けられないので、どうせならLight画像と同じ方向になるのが無難である。

もちろん「1」の方が正しいので、後で色々と試行できるように、出来ればその撮影地で最も光害の影響が小さい空の領域で1コマと、各撮影対象近くの空の領域で1コマずつ撮っておけば良いと思う。Void画像は1コマで良いのでそれほど手間もかからない。

代替手法:Void起源背景モデルで再度フラット補正する

実は今回の処理手順の検討を始めたとき、DBEのコンテナ内画像に対する処理が共通の背景モデルであることを知らなかった。つまりABEと同じくコンテナ内の各画像に対して背景モデルを各々作成して処理するものだと思っており、DBEのコンテナ利用バッチ処理は念頭になかった。

もちろん、Void画像をDBE処理した背景モデル(Void起源背景モデル)を作成するところまでは今回と同じだが、それを各Light画像に適用する手段として、まず考えたのが「PixelMath」による除算処理である。しかしこれではどうもうまく行かなかった。Void背景モデルをnormalizeするなど色々試行したがカラーバランスがおかしくなり、あきらめた。

次に試したのが、Void起源背景モデルをマスターフラットとして、ImageCalibrationで再度フラット処理すること。この際、バイアスとダークの指定は無しで、CFAもオフにする。対象は今回と同じくキャリブレーション後のカラー画像で、カラー画像同士のフラット補正とする。これは結果として上手くいった。強調処理後の画像も今回の「DBEとABEを適用」の画像と同等レベルで補正されていた。

今回は、DBEの背景モデルが共通になる挙動を利用した形だが、これは正式な仕様なのかどうか分からず、将来的に変わってしまう可能性がある。その際にはVoid起源背景モデルをDBEで各Light画像に適用する今回の方法ではなく、ImageCalibrationでフラット補正すれば良いと思う。

まとめ

・イメージコンテナに対して処理を行う場合、DBEでは最初に処理した画像の背景モデルがそのまま共通して全コマに適用され、一方でABEではコンテナ内の各イメージについて、それぞれ背景を評価した上で処理される。

・今回の事例ではフラット補正の不整合よりも光害カブリの移動のほうが目立ったため、ABEだけでもある程度の背景均一化を図ることが出来ているが、淡い星雲をあぶり出すには不十分である。DBEによるフラット補正の不整合修正も併用することで強い強調処理ができる余地が生まれる。

・光害地で撮影したVoid画像は光害カブリ成分が載っている。原則的にはVoid画像をDBEで背景モデル化する前に、1次のABEで光害成分を除去すべきであるが、光害カブリ方向が各Light画像とほぼ同じであれば、そのままでも良好な結果が得られる。

・Void画像は1コマのみで良く手間も少ないので、その撮影地で最も光害の影響が少ない空の領域と、各撮影対象に近い空の領域で1コマずつ撮っておけば、後で様々な試行をする際に役立つ。

・DBEのコンテナに対する処理が共通背景モデルになる動作は、仕様上正しいのかどうか不明である。将来的にこの動作が変更された場合、各Light画像に対するVoid起源背景モデルによる補正は、ImageCalibrationによるフラット補正で代替できる。


この続きはこちら

コメント

タイトルとURLをコピーしました