Deep Sky Memories

横浜の空で撮影した星たちの思い出

画像処理どこまでかける?

ちょっと前のことですが、プロカメラマンの西嶋伸嘉さんのこんなツイートが話題になっていました。

天体写真やってるとこの女性を笑えないというか、天体写真も画像処理が前提で、どこまでやるのかって線引きは曖昧だし、光害地での撮影っていう無茶をやってるとかなりキツい強調処理は当たり前というか、そのままだとそれこそ「こんなの××星雲じゃない!」みたいな話になっちゃうわけで悩ましいところなのです。

先日の M101 回転花火銀河、撮って出しの状態だとこんなのです。

M101 (2017/4/19 01:29) (撮って出し)
M101 (2017/4/19 01:29) (撮って出し)
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 360s
Lightroom CC のデフォルト設定で現像, フルサイズ換算1920mm相当にトリミング

カメラの液晶画面で見えたのがこんな感じでしたから、正直撮っている間ずっと今撮っているのが M101 だという確信が持てなかったくらいでした。

DeepSkyStacker でダーク、フラット、コンポジット(12枚)したものがこれ。基本的にノイズ軽減だけなのでまだ何も見えません。

M101 (2017/4/19 01:29) (ダーク、フラット、コンポジットのみ)
M101 (2017/4/19 01:29) (ダーク、フラット、コンポジットのみ)
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 360s x 12枚
DeepSkyStacker 3.3.2 で画像処理, フルサイズ換算1920mm相当にトリミング

これにレベル補正、傾斜カブリの補正、明瞭度の調整等をかけるとやっと姿が見えてきます。いつもは黒レベルをもっと下げて全体の光害カブリを消しているのですが、今回は少し残すように調整してみました。

M101 (2017/4/19 01:29) (強調処理後(光害カブリ除去少なめ))
M101 (2017/4/19 01:29) (強調処理後(光害カブリ除去少なめ))
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 360s x 12枚
DeepSkyStacker 3.3.2, FlatAide Pro 1.0.05, Lightroom CC で画像処理, フルサイズ換算1920mm相当にトリミング

どうせ光害地での撮影と開き直ってこのくらいに仕上げた方がいいんですかね。カブリが消えるまで補正すると天体の淡く広がった部分がボソボソになってノイズにしか見えなくなってしまうのですが、このくらいだとそういう部分もなんとか天体の一部として認識できる程度に見えてきます。

しかしせめて最初からこのくらいに見える空で撮ってみたいものですね。横浜の空でも大停電でも起こればこのくらいは… ってその状況で天体撮影するほどイカれてはいないつもりですが。いや、やってしまうかも…

ライトフレームとダークフレームどっちを増やす? (追記あり)

2021/4/3追記: 以下の計算には誤りがあると思われます。詳細は記事末の追記を参照してください。

天体写真をコンポジット処理するのはランダムなノイズを減らすためです。重ねるライトフレームの枚数が多いほどノイズが減ります。

一方ダーク減算は固定パターンのノイズを除去する一方でランダムなノイズを増やします。ノイズの増加を抑制するためにはダークフレームを複数枚をコンポジット処理したものを使って減算します。

ライトフレームもダークフレームもどちらも増やせば増やすほどノイズは減るのですが、限られた撮影時間の中でどちらを増やすのが得でしょうか? 僕は日頃ライトフレーム 8 枚、ダークフレーム 4 枚でコンポジットしているのですが、あと 4 枚増やすとしたらどちらを増やせばよいでしょう?

先日撮影した M101 の写真、カブリが大きくてボツにしたのも含めてライトフレームを 12 枚用意、ダークフレームは 4 枚しか撮っていませんが別の日に撮ったものを合わせて 8 枚用意して、ライト 8 枚 + ダーク 8 枚のコンポジットと、ライト 12 枚 + ダーク 4 枚のコンポジットを実施して、ライト 8 枚 + ダーク 4枚の写真と比較してみました。それぞれ DeepSkyStacker の出力を同じトーンカーブで処理しただけの画像です。

https://rna.sakura.ne.jp/share/light-or-dark/L8+D8-vs-L12+D4.jpg

ライトフレームを増やした方はノイズが減っているのがわかりますが、ダークを増やした方はほとんど変わらないような? 4 枚から 8 枚で倍に増やしたので結構効果があるかと思ったのですが。気温の違う日のダークじゃだめ?

よくわからないので基本的なところから計算してみました。以下ではダークノイズだけ考えます。

標準偏差と分散

ライトフレームの各ピクセル値はシグナルとノイズの和です。ノイズが乗っているのでシグナルの値が同じ大きさのピクセルでも場所によってピクセル値がばらついて、フラットなはずの画像がザラザラして見えます。

シグナル値がどのピクセルでも等しいフラットな画像を考えます。ピクセル値を変数 x で表すと、含まれるノイズの平均的な大きさはその標準偏差 D(x) で、分散 V(x) はその 2 乗です。

分散には以下の性質があります(a は定数)。

 V(ax) = a^{2}V(x) (1)
 V(x + a) = V(x) (2)
 V(x + y) = V(x) + V(y) (3)*1

これらの公式を使って画像処理後のノイズを計算します。

ライトフレームのコンポジットによるノイズの低減

ライトフレーム iピクセル値を x_i とすると、N 枚を加算平均コンポジットした結果のピクセル値の分散 V(x') は、公式 (1), (3) から、

V(x') = V(\frac{x_1 + x_2 + x_3 +\cdots}{N}) = \frac{V(x_1) + V(x_2) + V(x_3) + \cdots}{N^2}

各フレームの分散が同じ値 V(x) だとすると、

V(x') = \frac{N V(x)}{N^{2}} = \frac{V(x)}{N}

となります。ノイズの大きさ = 標準偏差はこの平方根なので、

D(x') = \frac{1}{\sqrt{N}} D(x)

つまり、元のノイズの大きさ D(x) と比べてコンポジット処理後ノイズの大きさは、ライトフレームの数の平方根分の 1 になります。4 枚なら \frac{1}{2}、16 枚なら \frac{1}{4} です。

ダーク減算によるノイズの増加

ダーク減算を行うとノイズが増えてしまいます。これはノイズの差の分散はノイズの分散の和になってしまうためです。ダーク減算後の分散 V(x - x_{dark}) は公式 (1), (3) から、

V(x - x_{dark}) = V(x + (-1)x_{dark}) = V(x) + (-1)^{2} V(x_{dark}) = V(x) + V(x_{dark})

ピクセルx を シグナル成分 x_{signal} とノイズ成分 x_{noise} に分けると、

V(x) = V(x_{signal} + x_{noise}) = V(x_{signal}) + V(x_{noise})

ここではシグナル値は一定なので x_{signal} は定数であり、公式 (2) より

V(x) = V(x_{noise})

V(x_{noise}) はダークフレームのピクセル値の分散 V(x_{dark}) と等しいと考えられます。よって、

V(x) = V(x_{dark})
V(x - x_{dark}) = V(x) + V(x) = 2 V(x)
D(x - x_{dark}) = \sqrt{2} D(x)

つまり、ダーク減算後のノイズの大きさは \sqrt{2} = 約 1.41 倍に増えてしまいます。

この効果はダークフレームをコンポジットしてから減算すると緩和されます。ダークフレームを M 枚用意してコンポジットした画像のピクセル値を x_{dark}' とすると、その分散 V(x_{dark}') は先ほどのコンポジット処理結果の分散の計算から、

V(x_{dark}') = \frac{V(x_{dark})}{M}

よって、

V(x - x_{dark}') = V(x) + V(x_{dark}') = (1 + \frac{1}{M}) V(x)
D(x - x_{dark}') = \sqrt{1 + \frac{1}{M}} D(x)

つまり、1.41 倍だったノイズ増加は、ダークフレーム 2 枚なら 1.22 倍、4 枚で 1.12 倍、8 枚で 1.06 倍にまで抑えられます。

コンポジットとダーク減算によるノイズの変化

ライトフレーム N 枚を、それぞれダークフレーム M 枚のコンポジット結果でダーク減算してからコンポジットした結果のピクセル値を x'' とすると、分散 V(x'') は、

V(x'') = V(\frac{(x_1 - x_{dark}') + (x_2 - x_{dark}') + \cdots}{N})
        = \frac{V(x - x_{dark}')}{N}
        = \frac{1 + \frac{1}{M}}{N} V(x)
        = (\frac{1}{N} + \frac{1}{MN}) V(x)
 D(x'') = \sqrt{\frac{1}{N} + \frac{1}{MN}} D(x)

うーん、これでいいのかな?

そんなわけで、NM の組み合わせによって、元画像のノイズに比べて処理後のノイズがどう変化するかを表にしてみました。

https://rna.sakura.ne.jp/share/light-or-dark/composite-and-dark-subtract-table.png

ライト 8 枚 + ダーク 4 枚のノイズは 0.40 、ライト 8 枚 + ダーク 8 枚のノイズは 0.38 で 5% しか違いません。一方、ライト 12 枚 + ダーク 4 枚のノイズは 0.32 で、25% の違いがあります。やはりライトフレームを増やした方がノイズが減るようです。

以上はセンサーのダークノイズだけを考慮したものですが、ライトフレームのコンポジットはフォトンノイズ(被写体から届く光子の数そのもの統計的揺らぎによるノイズ)にも効くので、そういう意味でもライトフレームを増やすほうがお得なはず。

参考

コンポジットとダーク減算の計算は、田中光学工業株式会社の記事「ノイズの計算」を参考にしました。ダーク減算でノイズが増えるというのもこの記事で知りました。

分散の公式はすっかり忘れてしまっていたので、高校数学の美しい物語の記事「期待値と分散に関する公式一覧」を参照しました。

2021/4/3 追記: 本記事の計算の誤りについて

冒頭でお伝えしたように上の計算には誤りがあるものと思われます。というのは、ダーク減算後のフレームのコンポジットのノイズの計算で、各フレームに含まれるマスターダーク減算由来のノイズがフレーム間で相関することを考慮に入れていないからです。

V(x'') = V(\frac{(x_1 - x_{dark}') + (x_2 - x_{dark}') + \cdots}{N})
        = \frac{V(x - x_{dark}')}{N}

1行目から2行目への式変形では「ライトフレームのコンポジットによるノイズの低減」で導出したコンポジット後のピクセル値の分散の式 V(x') = \frac{V(x)}{N} を利用しているのですが、この式の導出で公式 (3) ( V(x + y) = V(x) + V(y))を使っていました。

公式 (3) は注釈にあるように「x と y が無相関」であることを前提としています。しかし、ダーク減算後のフレームのコンポジットでは全てのフレームで同じマスターダークを減算しているため、マスターダークに由来するノイズ成分は相関するはずです。

マスターダーク由来のノイズ成分は、コンポジットの際にアライメントを行わないならば全フレームで完全に一致するので何枚コンポジットしようと全く減りません。ガイドエラーがありアライメントを行うなら全フレームは一致しませんが、いくらかは相関が残るものと考えられます。

この点は Twitterあぷらなーとさんにご指摘いただきました。

以上の点を考慮するとどういう計算になるかは後日別エントリに書こうと思います。

*1:この公式は x と y が無相関なら、という条件が付きます。ダークノイズのランダムな成分は無相関なはず。

テンモンGO 更新

ポケモンGO」はすっかりご無沙汰ですが「テンモンGO」は続けています。

2月24日以降追加分は以下の 5 つ。

というわけでこうなりました。オートガイド導入前に撮った M5, M61, M88, M90, M104 の写真は最近撮ったものに置き換えています。

捕まえた数は 69 に。3月の後半に天気に恵まれず少しペースダウン。梅雨入りまであと 1 ヶ月半。なるべくがんばります。

M101 回転花火銀河 (2017/4/18)

またまた深夜から晴れるという予報だったので、23:20 頃にいつもの公園に出撃。今回のターゲットは M101 回転花火銀河です。時間があれば M13 も、と思っていましたが色々と手間取って結局今回も撮れませんでした…

到着後 20 分くらいかけて機材の設置が終わり、さて極軸合わせをと思って空を見るといつのまにか南天から雲がひろがっていました。南天が曇っていてはドリフトアライメントができません。ほどなく雲は空一面にひろがってどうしようもない状態に。

しかしあきらめずに待って 20 分後、雲が流れていって空が晴れてきました。極軸合わせに 40 分、ピント合わせに数分、そして M101 の導入。ミザールから星を辿っていったのですがそれらしき星雲がみつからずに手間取っていると、どこからともなく知らないおじさんがあらわれて声掛け事案発生。

と言っても不審なのはむしろこっちの方なので… とりあえず挨拶して天体写真を撮っていることを説明したり、南天に輝いている明るいあの星は何の星だと尋ねられて木星だと答えたり。

気を取り直して導入を続けたのですが、M101 は想像以上に淡く、15 秒から 30 秒の試し撮りではそれらしいものがかすかに見えるだけで、本当にそこに M101 があるのかわからないまま 1:30 に撮影開始。6 分露出の結果を見るとどうもそれっぽいものが写っているようなので撮影続行。

途中風が吹いたりまた雲がでてきたりで撮影を中断することもあって、合わせて 11 枚の撮影が終わったのは 3 時前。さすがに時間が足りないので M13 は今回もあきらめました。導入も手間取りそうですし。

さて、撮影した写真にはちゃんと M101 が写っていました。よかった。しかし 11 枚のうち最後の 3 枚はカブリがひどく使えませんでした。どうも照明灯の光が入ってしまったようです。この公園、意外と撮影できる範囲が狭いかも。他の場所も探さなきゃいけないかなぁ…

残った 8 枚をコンポジットして出てきたのがこれです。

M101 (2017/4/19 01:29)
M101 (2017/4/19 01:29)
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 300s x 8枚
DeepSkyStacker 3.3.2, FlatAide Pro 1.0.05, Lightroom CC で画像処理, フルサイズ換算1920mm 相当にトリミング

渦巻き… いいですね。M51 よりも大きく開いて広がった渦巻きで僕の好きな形です。右側に淡く広がった腕がほとんど写っていないのが残念ですが…

しかしノイズが多いです。前回の M51 もノイジーだったので今回は 12 枚でコンポジットする予定だったのですが枚数が確保できませんでした。残念。

露出も不足気味な気がしますが元の写真ではバックグラウンドの濃度が 50% を超えています。光害カットフィルターを使うと 1 枚 12 分以上の露出になるので、スカイメモ S の 1 軸ガイドでは厳しいです。

今回も撮影中に赤緯方向にガイドがズレてきたので途中で極軸方位を微調整しています。調子のいい時は赤緯RMS エラーが ±2 秒以内におさまった状態が 10 分くらいは続くのですがそれ以上は厳しい感じです。

そもそも 2 時間以上の露出時間を確保するには今よりずっと手際よくやらないと無理です。それにバックグラウンドのカブリが公園の照明灯に由来するものなら LED 灯なので光害カットフィルター効かないんですよね。

次こそは M13 を撮りたいです。球状星団ならあまり光害も気にしなくてよさそう。ですが、ちゃんと導入できるのかどうか…

ファインダーの位置にはオートガイダーが乗っているので肉眼でターゲット近くの明るい星を導入するのですが、ヘルクレス座は 3.45 等の η 星はほぼ見えず、なんとか見える 2.85 等の ζ 星を狙うことになります。しかし公園の照明灯が視界に端に入るだけで見失うぐらいなので導入には苦労しそうです。

国際宇宙ステーション(ISS)

国際宇宙ステーション(ISS) が 19 時過ぎに飛来しました。

国際宇宙ステーション(ISS) (2017/4/15 19:11)
国際宇宙ステーション(ISS) (2017/4/15 19:11)
OLYMPUS OM-D E-M5, 笠井BLANCA-80EDT (8cm F6), 2x TELECONVERTER EC-20
ISO 1600, 1/1000s
Lightroom CC で画質調整, 等倍切り出し

今日は風が強くて望遠鏡が揺れまくってピント合わせが難しかったこともあって、前回に比べるとややピンぼけ気味。

今回も前回同様、北天から天頂付近を通って南天に来る ISS をマンションの南向きのベランダから待ち伏せしていたのですが、やはり動きが速くてなかなか狙いが付けられず、実際に撮れたのは視認してから10秒ほど経ってからでした。直距離で 500km ほどでしょうか。

眼視でも見てみたいのですが、この速度だとファインダーの倍率でも追うのに精一杯なのでちょっと無理ですね…

M51 子持ち銀河 (2017/4/13)

4月13日の横浜の夜は快晴でした。月があまりに眩しいので迷いましたが、週末は曇りそうだし、せっかくなので訓練のつもりで出撃しました。先日購入したモバイルバッテリー Poweradd Pilot Pro2 のデビュー戦でもあります。

23 時過ぎに家を出て機材の設置に 30 分、ドリフトアライメントに 40 分、M51 の導入に 5 分、で 0:20 に撮影開始。ですがまた赤緯方向に星が流れていきます。6 分間の露出で 8 秒くらい流れていって話になりません。今回はほぼ無風なので風のせいではありません。

機材のたわみとかならそのうち落ち着くかと思ってそのまま撮り続けましたが一向におさまる気配がないので、撮影中断。思い切ってその場で極軸の方位を微調整。調整量は勘です。幸運にもこれが効いて 20 分くらいはほとんど流れることなく赤緯方向の RMS エラーは ±2 秒以内におさまりました。

調整後の 4 枚目で少し流れてきたのでまた極軸を微調整。これがまた効いてなんとか 8 枚確保できました。なんだか邪道というかこんなんでいいのか?などと思うのですが、結果オーライということで…

そうやって撮れた写真がこれです。

M51 (2017/4/14 01:10)
M51 (2017/4/14 01:10)
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 360s x 8枚
DeepSkyStacker 3.3.2, FlatAidePro 1.0.04, Lightroom CC で画像処理, フルサイズ換算1920mm相当にトリミング

やはり月明かりのせいか背景がずいぶん明るくて困りましたがなんとかここまであぶり出しました。ややピントが甘いのと画像処理で無理したせいかノイズが多めですが、一応撮れたということにしておきます。

この後 M13 を撮ろうかとも思っていたのですが、M51 の撮影が結局 2 時過ぎまでかかってしまったので、そこはぐっと我慢してすぐにフラットとダークを撮って撤収して 3 時前に帰宅。

前回あったマウントアダプターの光線漏れと思われる迷光ですが、今回は普通にフォーサーズ用の T リングを使ったところ前回のような迷光は一度も出ませんでした。やはりあの隙間のせいだったようです。

今回初投入のモバイルバッテリー Poweradd Pilot Pro2 は 2 時間半ノートラブルで ThinkPad に給電してくれました。撮影終了時の残量は 50% ちょっと。本体のバッテリーは丸々温存できました。この分なら 5 時間くらい撮影できそうです。

しし座の三つ子銀河 (2017/3/7)

予報によると明日の夜は晴れそうなのですが、満月から間もないこともあって無理して出撃するべきかどうか迷います。というか普通はパスするのでしょうが…

そういえばテスト撮影ということで月齢を気にせず撮ったしし座の三つ子銀河の写真があったなと*1 3月7日に撮影した写真を引っ張りだしてきて、当時はまだ使っていなかった FlatAide Pro も使って再処理してみました。

M65, M66, NGC3628 (2017/3/7 23:51)
M65, M66, NGC3628 (2017/3/7 23:51)
OLYMPUS OM-D E-M5, 笠井 BLANCA-80EDT (8cm F6)
ISO 200, 300s x 8枚
DeepSkyStacker 3.3.2, FlatAide Pro 1.0.04, Lightroom CC で画像処理, フルサイズ換算1600mm相当にトリミング

当日の月齢は 9.0 (輝面比 0.73) で、しし座の三つ子銀河からは約 58 度離れていました。*2 結構バックグラウンドが明るくなっていましたが、FlatAide Pro の補正が効いているのかそれなりの仕上がりに。

明日出撃するなら先日撮りそこねた M51 を撮りたいのですが、月齢は 16.6 (輝面比 0.94) で、M51 との角距離は約 65 度です。条件的にはやや悪い?どうしようかなぁ…

ところで FlatAide Pro のレベル調整、1.0.04 になって調整 UI を操作してもプレビュー画面が更新されないことがありませんか?というかバーのドラッグ操作とか一部の操作でしか更新がかからないような。

*1:スカイメモSの追尾精度の限界は?」で撮影したもの。

*2:真木さんの 赤道座標の2つの星の角距離計算 Version 1.01 で計算しました。