ポータブル赤道儀を使っている私は、露光は短時間。しかし張り切って数時間露光するため、画像ファイルは200枚程度になります(最近、SWATの改造をしたこともあり、露光時間は長くなりました!)。これまで画像ファイルの選別はBlinkで眺めていましたが、見過ごしがあるのではないかと不安があり、ずっと使いたいと思っていたSubframeSelectorを試してみました。これがなかなか良い!。
SubframeSelectorのできること
SubframeSelectorにはおおきく3つの役割があります
- 画像のクオリティ評価… 星の大きさ、形、SN比を使って品質の評価をします
- 評価基準に基づく画像の選別… 指定した評価式をもとに自動で採用、不採用を決定します
- 重み付け… 指定した評価式を下に、画像の重要さを重み付けします
今回は1と3を試しました。
2はネット上にはたくさんの式が提唱されていますが、これは光学系や撮影環境によって変わるので、もう少し経験を積んで自分にあった数値の感覚を掴んだ方がよいという判断からです。
評価はFWHM(星の大きさ)、Eccentricity(星の形、丸さ)、SNR(信号とノイズの比率)の3つで評価します。この3つについてはWBPPの記事の「FWHM、Eccentricity、SNR、Pedestalの意味」の箇所をご参照ください。
試してみたところ・・・
自分が目で見て選別した結果とSubframeSelectorの結果を比較しました。いまから新規にやるとPixInsightに負けまいと自分の選別に変に気負いが入るので、最近撮影したクラゲ星雲でためしてみました。クラゲ星雲は二晩にわたって撮影しています。
まず三浦で撮影したクラゲ。これは道に迷った結果、時間切れで途中でクラゲ星雲の高度が低くなってしまいました。Blinkを使って目で確認したときは、最後の4枚は背景が明るく信号が弱くなったので不採用としました。信号が弱くなったのでSN比と考えて、SubframeSelectorのSNR Weightを見てみると・・・
おお、見事に最後の4つが評価が下がっています。Xマークは私が目で確認して排除した画像で、SubframeSelectorでもSNR Weightの評価が下がっています。
次は別の日に撮影したクラゲ星雲です。この日は天文なうに夢中になり(?)星像にぶれが生じた画像が2つありました。星像の乱れなので、Eccentricity(星の形)とFWHM(星の大きさ)をみてみます。まずはEccentricityから。
Eccentricityは値が大きい方が品質が悪いことを示します。私が不採用とした画像2つの評価は確かに大きい値ですが、左の二つの○のついた画像がさらに悪い値を示しています。その画像の一つを開いてみると・・・
あらら・・・確かに星が横に伸びています。おそらく天文なうではしゃぎすぎたのが原因です。厳しいなあ、SubframeSelector。比較のために良い値だった画像も載せてみます。左が上記の画像です。
Light Vortex Astronomyの記載によれば、Eccentricityが0.42以下であれば点像、0.42-0.60くらいも悪くないとのことです。FWHMもみてみましょう。
私の選んだ画像の一つがダントツで悪い値ですが、○をつけたファイルも疑った方が良さそうです。
ここまでの検証では、SubframeSelectorは目で確認するのと同等以上の評価ができるとわかってきました。ここからは使い方をみてきましょう。
SubframeSelectorの設定
Process-ImageInspectionメニューのSubframeSelectorを起動します。
Add Filesを押して選定する画像を追加します。次にSystem Parametersで下記を設定します。
- Subframe scale: 自分の光学系とカメラがのarcsec/pixelです。こちらのサイトのCCD Resolution Calculatorで簡単に計算できます。” / pixelで表示される値を入力ください。
- Camera gain: 自分のカメラのADUあたりの電子数です。ややこしいのですが、これはCMOSカメラの感度にあたるGainではなく、コンバージョンファクターと呼ばれるADUを電子数に変換する値です。ZWOのサイトではGainと見分けるためGAINと大文字表示になっていました(それでもややこしい)。Camera gainの値はPixInsightのScriptであるMuleDenoiseDetectorSettingsか、BasicCCDParametorsでも簡単に測定することができます。
- Camera resolution: カメラのビットレートを入力します。
- Site local midnight: 撮影地のUTCからの差を入力します。日本は9時間です。
私の設定値は上の画像の通りです・・・と、あれれ。Camera gainがおかしい。今回はいわゆるユニティゲインで撮影したので、ADUと電子数は1:1。Camera gainは1になるはずです。MuleDenoiseDetectorSettingsの方がデータが楽ちんだったのでそれで値を取得したのですが、0.224になっています。
ためしにBasicCCDParametersを試してみました。
やっぱり0.225で1より小さい値です。とりあえず0.224を採用しました。ちなみにこの後、Canera gainを1にして採用して実行ところ、0.224の場合と評価には違いはありませんでした。なんやねん。
●ボタンを押して実行です。
画像の評価
実行すると評価結果が一覧とグラフに表示されます。今回はFWHM(星の大きさ)、Eccentricity(星の形)、SNR(信号とノイズの比率)の3つを確認します。
一覧表示の並び替え設定と、グラフの表示設定で確認したい項目を選択します。グラフをみながら品質の低い画像を、勇気をもって非採用としていきます。FWHMとEccentricityは小さい値が、SNR Weightは大きな値の方が品質の良いデータです。詳細は「FWHM、Eccentricity、SNR、Pedestalの意味」をご覧ください。
3つの値をひととおり確認し、心を鬼にして非採用画像を決定していきます。
重み付け
3つの数値を総合的に判断する重み付けの設定も可能です。
WBPPでは次の式を使っていますので、それを踏襲して重み付けを設定してみます。
星雲:
(5(1-(FWHM-FWHMMin)/(FWHMMax-FWHMMin)) + 10(1-(Eccentricity-EccentricityMin)/(EccentricityMax-EccentricityMin)) + 20*(SNRWeight-SNRWeightMin)/(SNRWeightMax-SNRWeightMin))+65
銀河:
(20(1-(FWHM-FWHMMin)/(FWHMMax-FWHMMin)) + 15(1-(Eccentricity-EccentricityMin)/(EccentricityMax-EccentricityMin)) + 25*(SNRWeight-SNRWeightMin)/(SNRWeightMax-SNRWeightMin))+40
星団:
(35(1-(FWHM-FWHMMin)/(FWHMMax-FWHMMin)) + 35(1-(Eccentricity-EccentricityMin)/(EccentricityMax-EccentricityMin)) + 20*(SNRWeight-SNRWeightMin)/(SNRWeightMax-SNRWeightMin))+10
▶︎ボタンを押すと、一覧表示のWeightに重みが設定されます。この重み情報はSSWEIGHTというキーワードで、画像のFITSヘッダーに記載されます。
画像の仕分け
データの値やグラフから選別した画像は、フォルダに仕分けすることができます。書き出し先はSubframeSelectorのOutputで設定します。
この状態で●ボタンで実行すると、画像評価画面でXを付けなかった採用画像のファイル名に”_a”を追加してデータ保存フォルダに保存されます。
これでめでたしめでたし・・・といきたいところですが、Xをつけた不採用画像もねんのため、みたいもの。SubframeSelectorが不採用といってもそんなんに気にならないなら、採用するケースもあるはずです。しかし不採用画像を仕分けする方法が見つかりませんでした。でもちょっと一手間でできたので、ご安心を。
次の手順で書き出すことができます。
- 不採用画像を一覧で選択
- Toggle Approveを押して、いったん不採用を解除
- Invertを押して、選択画像を反転
- もう一度Toggle Approveを押して、採用画像を不採用状態に
この操作で採用画像にXマークが設定されます。
SubframeSelectorのOutputで、不採用画像の書き出すフォルダを設定します。
●を押して実行です。これでapprovedフォルダに採用画像が、rejectedフォルダに不採用画像が書き出されます。接尾辞は_rにしようと思いましたが、WBPPのregistrationでも_rとなるので、_dにしています。
設定した重み情報も、SSWEIGHTというキーワードでFITSヘッダーに記載されます。
これで心を鬼にして不採用とした画像も、優しい心で採用することができます。SubframeSelectorで精度よく画像選別ができたので、今後はまずSubframeSelectorをかけ、その後に目で検証する、というステップにしようと思います。最初から目だけの検証より精度良く選別ができそうです。