画像処理法考案

『黒い縮緬ノイズ』殲滅作戦

★梅雨入りですが・・・
そもそも腱板断裂した左肩がリハビリ中だし、早くも梅雨入りで天気が悪いので、天体写真が撮れません。
しかし、こういう時こそ「怪しげな」画像処理法を考案する大チャンス!
「コンポジット枚数とノイズの相関が理論と合わない」謎解きにチャレンジすることに。

★過去の解析ごっこでは
以前解析ごっこしたときには、コンポジット枚数を増やすことでノイズがグングン低下するものの「ある程度の枚数を超えると理論値よりも効果が低下する」という結果でした。

その原因として考えられるのは、主に下記の4点です。

①星雲の実写画像を解析したため(できるだけフラットな領域を選んだものの)微妙な輝度勾配をノイズとして誤認している可能性がある。
②ダーク減算は施したものの、ホットピクセルが消し切れていない
クールピクセルが消し切れていない
④短時間露光多数枚コンポジットのため、リードノイズの影響

特に、①の影響は大きいと危惧されます。
下記のように、左図のような輝度勾配が存在するとき、画像を見る人間にとっては
「ああ、画面の左が明るくて右が暗いんだなぁ」
と写っている星雲の明るさなどをイメージできるのですが、数値解析するコンピュータにとっては、右図のようなノイズと本質的に区別できません
『黒い縮緬ノイズ』殲滅作戦_f0346040_22255383.jpg
要するに、そもそもフラットな光源を撮影した場合でないとショットノイズの評価は困難だということです。

ならば、フラットな光源を撮影して解析すればよろしい♪

というわけで、今回はLEDトレース台の光源を思い切り減光して、星雲を撮るときと同等な長めの露光でテストしてみることにしました。

★フル発光で15秒露光
LEDトレース台は調光機能を用いて減光するとフリッカーが生じたりして嫌なので、今回はマルミのND10000を冷却CMOSカメラ(レンズ無し)に装着して、ゲイン300でも15秒露光が行えるように調整。この状態で512コマほど連写して、コンポジット枚数とショットノイズの変化を測定ごっこしてみましょう。
『黒い縮緬ノイズ』殲滅作戦_f0346040_22351747.jpg
使用カメラはモノクロ冷却CMOSカメラ(保有1号機)で、0℃まで冷却します。
もちろん、いかにレンズ無しと言えども無限遠光源(平行光線)ではないので周辺減光は生じます。
その影響を避けるため、画面中央付近の200×200ピクセルをトリミングして、コンポジット枚数を「1・2・4・8・16・32・64・128・256・512」と倍々に変化させた際のノイズ量を測定します。流石に手作業では大変なので、MATATLABでコードを書いてFITS読み込み&SharpCapの出力ギャップ補正&相対ゲイン補正&トリミング&コンポジット処理&ノイズ解析を一気に自動処理させます。
『黒い縮緬ノイズ』殲滅作戦_f0346040_22434167.jpg
こんな難儀な処理が、たったの28秒で完了♪
いやー、こういう時、MATALABは便利だなぁ♪

すると・・・・
ででん!!
『黒い縮緬ノイズ』殲滅作戦_f0346040_22463112.jpg
ふむふむ。
到来光子がポアソン分布に従うことを想定した光子ショットノイズ理論値(青いライン)と比べ、実際のノイズ測定値(赤いライン)がコンポジット枚数の増加とともに乖離していく様子がハッキリと分かるなぁ。
ここまでは、想定内

次に、ダークノイズ(ホットピクセル)の影響を排除するため、プログラムコードをちょっと変更して、ダークフレーム(フラット光源を撮像したときと全く同一の設定で512コマ取得)を用いたダーク補正を施してみます

すると・・・

でで・・・んん??
『黒い縮緬ノイズ』殲滅作戦_f0346040_22533521.jpg
れれ?
ほとんど改善してない・・・・。
ええー、そんなー(泣)

いったい何が起こっているのだ??

★困ったときは画像を「観察」
よし、とりあえずダーク減算なしで512コマコンポジットした画像を見てみよう

『黒い縮緬ノイズ』殲滅作戦_f0346040_22551652.jpg
ああ、512コマもコンポジットしたのに、こんなにノイズがポツポツしてるのでは数値が悪くて当然だよなぁ。
それに、なにより、上記の図を見れば明らかなように「ホットピクセルの数よりもクールピクセルの数の方が圧倒的に多い」のね。
だから、ダーク減算をしてもノイズ量がほとんど減らないという訳だ。

そう、今回の実験台は、3台保有しているASI1600MM系カメラのうち『1号機』。ASI1600MM系カメラは『個性豊か』なんだけど、この個体は「ホットピクセル普通&網目状ノイズ少なめ&クールピクセル多め」というタイプ。

以前解析してみて、クールピクセルは「光源の明るさによって非線形に輝度変化をする」という難儀な化け物であることは知っていたので、これを退治する方法についてもう一度考えてみることに。

★『クールファイル補正法』以外の解を探す
コンポジットした後の画像なら(ショットノイズが少ないため)クールピクセルを弁別して退治するのは容易です。たとえば、ステライメージのクール除去フィルタなどを掛ければ一発で軽減できます。ただし、実際の天体画像においては追尾エラーや鏡筒の撓みなどの影響を補正する段階で位置合わせが必要なため、コンポジット前の画像にクールピクセルの除去作業を施す必要があります。ところが、あぷらなーとが得意とする短時間露光・多数枚コンポジットでは、個々のライトフレームの露光量が少ないため、クールピクセルが光子ショットノイズに埋もれてしまい弁別できません。要するに、クールピクセル除去フィルタが効かないんですね。

そこで、以前考案したのが『クールファイル補正法』というトリッキーな画像処理方法です。

この方法は我ながら面白いアイディアで効果的ですし、FlatAideProに実装されたことで一般の方にも扱いやすくなったのですが、今回はさらに高精度な退治法を模索してみることにします。

まずは、あぷらなーとが得意とする珍妙なノイズ解析手法『時系列ノイズ解析』を試みてみましょう。一般的なノイズ解析と異なり、ピクセル1個1個について、フレームごとの輝度値がどのように変化しているのかを測定して『不良ピクセル』の特長を探るという手法です。

いつもはバイアスフレームやダークフレームを解析しているのですが、今回はクールピクセルを退治する方法を模索するためにフラットフレームを解析対象とします。
ASI1600MM-Coolを0℃で運用しゲイン300・15秒露光で撮像したフラットフレーム64コマをMATLABで時系列解析した結果・・・
『黒い縮緬ノイズ』殲滅作戦_f0346040_23221177.jpg
な、なんぞコレ!?
もう、むちゃくちゃじゃないか!!
通常、宇宙線2次粒子のヒットなどによって生じる「上に伸びる群」が2本もあるし、本来「左下がり」であるべき暗いピクセルが「左上がり」になってる。(通常、輝度値が小さくなると揺らぎも小さくなります)
どう考えても、あり得ない。

ええい、こういう時は・・・・そう!時系列データをテーブルに落として数値を目視チェックすればよろしい♪
『黒い縮緬ノイズ』殲滅作戦_f0346040_23300796.jpg
げげっ!!

512コマのうち、24フレーム目だけほとんどのピクセルが異常値を示しているじゃないかッ!!
まるで空気シャワー(高エネルギー宇宙線が大気原子と相互作用して生成された二次粒子が大群となって地表に降り注ぐ現象)のコア(ガンマ線ではなくハドロンが入射した際に生じる荷電粒子群の芯)が検出器をダイレクトヒットした時みたいなものすごいデータ(笑)。

でも、これ宇宙線などの自然現象じゃないな、たぶん。
だって・・・一斉に輝度値が上に振り切れるなら分かるけど、異常に暗くなってるピクセルも相当数あるもの・・・。
この正体は不明だけど、とりあえず先を急ごう。

とりあえずフレームNo24のデータは抹殺だ!!

さて、改善するだろうか??
『黒い縮緬ノイズ』殲滅作戦_f0346040_23372762.jpg
 ※左:24フレーム目あり 右:24フレーム排除

おおー、赤で囲んだ辺りの異常群が一気に解消されたな。よしよし、良い感じだ♪

ところが・・・・肝心の「コンポジット枚数とノイズ」のグラフはほとんど改善されず

ま、数百コマのうち1コマだけ暴れたところでほとんど影響なし、ということか。


★気を取り直して、よく観察
さて、時系列ノイズ解析の面白いところは「輝度中央値VS輝度揺らぎ」が特徴的な群を弁別して、該当ピクセルの輝度値を時系列モニターできることです。
では、今回の解析結果から得られた「異常ピクセルの挙動」をお見せしよう

ででん!!
『黒い縮緬ノイズ』殲滅作戦_f0346040_23443584.jpg
ああ、ようやく分かってきた。
上記のうち「宇宙線ヒット群」を排除する『コスミカット法』は開発済みだし、「高位安定型」は普通のホットピクセルなのでダーク減算で消せる。通常のダーク減算で消せない「2値振動・酩酊型」と「シャックリ型」もダーク解析結果から編み出した『ソフトウェアピクセルマッピング法』で排除できることは確認済み。
今回の攻撃目標は、ズバリ「低位安定型」の群。要するに、これがクールピクセルですなぁ。

早速、この解析結果からクールピクセルの座標を特定してそのピクセルを排除する『新・ソフトウェアピクセルマッピング法』をMATLABで書いた自作画像処理ソフト『邪崇帝主(ジャスティス)』に実装してみよう♪
『黒い縮緬ノイズ』殲滅作戦_f0346040_23582086.jpg
いやー、過去に作ったサブルーチンをどんどんバージョンアップさせるのは(面倒くさいけど)楽しいなぁ。

さて、もくろみ通りクールピクセルは消えるだろうか?
256コマコンポジットで試してみよう。
『黒い縮緬ノイズ』殲滅作戦_f0346040_00005829.jpg
 ※左:ダーク減算+コンポジット
  右:ダーク減算+『新ピクセルマッピング』+コンポジット

ふはははは。
たわいもない。鎧袖一触とはこのことか。

はい。どうやらクールピクセル抹殺作戦は成功したみたいです。


★理論値とのズレは軽減されたか
では、この『新・ソフトウェアピクセルマッピング法』を用いて処理したフラットフレーム256コマについて「コンポジット枚数とノイズの相関」を再解析してみます。
ででん!!
『黒い縮緬ノイズ』殲滅作戦_f0346040_00063567.jpg
おお、緑のラインを見てください。
かなり理論値に近づきましたよ!!

うひゃー、うれしい!
大成功♪

ええと、256コマコンポジットにおいては、残存ノイズ量が約半分になってる。素敵だ。


★実写ではメリットあるのか?
さて、光子ショットノイズの間に身を隠してフィルタ攻撃をかわしたり、非線形輝度変化を行ってダーク減算やフラット除算からも逃れてしまい、世の中に『黒い縮緬ノイズ』という災難をもたらす憎きクールピクセルどもめ。
今こそ、我が邪悪なる正義のスタンド『邪崇帝主』の必殺技『新ピクセルマッピング』を受けてみよ!!

ででん!!!
『黒い縮緬ノイズ』殲滅作戦_f0346040_00155888.jpg
 ※左:ダーク減算+256コマコンポジット
  右:『新・ソフトウェアピクセルマッピング法』付加
  (ASI1600MM-Cool -10℃ ゲイン300 30秒露光×256コマ)

か、勝った♪


Commented by B.S.Revolution at 2021-05-30 22:21 x
おおっ、憎っくき縮緬ノイズが退治されていますね。
あれが出ちゃうと画像処理する気になれないんですよね~
とりあえず単語登録しちゃいました^^
Commented by supernova1987a at 2021-06-01 20:57
> B.S.Revolutionさん
ありがとうございます。
随分長い間戦い続けている宿敵『縮緬ノイズ』ですが、クールピクセル由来の黒いタイプの退治法には特に苦労していました。今回のアイディアで大きく前進したように思います♪
Commented by B.S.Revolution at 2021-06-28 20:56 x
ででん
昨日はお疲れさまでした。
しっかりと拝聴させていただきました。
酩酊ピクセル退治ってモノクロでの話でしょうか?
あれっ?なんとなく一眼レフだと使えないんじゃ?って思ったもので。
Commented by supernova1987a at 2021-06-29 07:00
> B.S.Revolutionさん
ででん!
ご視聴いただきありがとうございました。
カラーカメラであるASI294MCPでも、デモザイク前にチャンネル分離すれば酩酊ピクセルが大量に見つかるので同様に処理できています。
ただし非冷却の一眼レフの場合は、他のノイズ(不安定な熱ノイズ)が多過ぎで酩酊ピクセルが有るのかよく分からりません。今後の課題とさせてください。
名前
URL
削除用パスワード
by supernova1987a | 2021-05-19 00:19 | 画像処理法考案 | Comments(4)

あぷらなーとの写真ブログ


by あぷらなーと