流星の動画撮影試行
ZWO ASI482MCによる星空動画撮影をぼちぼちと続けているが、元々はMeike6.5mm F2.0と組み合わせて流星の動画を撮影したくて購入したもの。しかし大きな流星群は年間でも数が限られているため、あまり撮影機会がないのが実情。かと言って、全く試行をしていないと次の大きな流星群(冬のふたごとか、しぶんぎとか)でぶっつけ本番になるので、とりあえず何もない日ではあるが散在流星が入ることを期待して試行してみた。
撮影環境は、光害地(SQM18程度)で、かつ、月齢21程度の月明有りなので、暗い流星は写らないであろう悪条件。ただ、今回のように月が大きい悪条件のときほど遠征せずに自宅で撮影するであろうから、自宅の場合はこれが標準的な環境と言える。
これまでと同じく自由雲台に取り付けて真上を向けた。今回は朝まで放置するため、カメラレンズ用の露よけヒータも装着した。これをパソコンに繋ぎ、SharpCap 4.0.8282.0で撮影(録画)した。撮影条件・設定など下記の通り。
- 環境:気温約16℃・光害地(SQM 18程度)・月明有り(月齢21)
- ゲイン:400
- 露出時間: 1/15 [sec]
- フレームレート: 15 FPS
- 記録フォーマット: RAW8
- 録画時間: 21時頃から、10分×42 (合計7時間)
後処理のことを考え、10分毎に区切って撮影した。1ファイル(10分)が約18.2GBになるので、42ファイル(7時間)では764GBにもなる。恐ろしや。ノートPCの内蔵SSDには収まらないので、1TBの外付けSSDに記録した。
その結果、不確実だが流星らしきものが一つだけ写ったので、その部分だけをDaVinci Resolveでノイズ低減などを行ってからYouTubeにアップロードした(流星の出現は、1:35 ぐらいから、左下)。
本当に流星なのか怪しいが、いずれにせよこのぐらいの明るさの流星なら動画として記録できることがわかった。星については、光害下かつ月明下でも5等星まで写っている。これは明らかに肉眼で見るよりもよく写っている。これはセンサーのピクセルサイズが大きい(5.8μm)ASI482MCの感度の高さのおかげだと思う。また、Meike6.5mm F2.0も、開放から良い星像をしている。
流星の検出をどうするか
さて、今回の試行では撮影だけでなく、膨大な量の撮影済みデータから、どのようにして流星が写っている箇所を検出して切り出すのかということについても検討した。
実際、流星の動画撮影をしている人は、どうやっているんだろう? WEBで検索してみても、あまり出てこない。少し考えてみたが、思いつくのは下記ぐらい。
- 動画をリアルタイムまたは2~3倍速で早送りして、それを眺めて見つけ出す。
- 動画を何らかの検出ソフトに読み込ませて見つけ出す。
- 動画の各コマを一旦静止画に変換し、それを見て見つけ出す。
- 動画の各コマを一旦静止画に変換し、それを何らかの検出ソフトで見つけ出す。
まず1については、リアルタイムは大変な時間がかかるし、早送りでも2~3時間かかる。何より、動画を見て流星を見つけるのは、ずっと注意力を保つ必要があるし、疲れてくると見逃す危険もある。
2については、動画を直接対象とした検出ソフトがあまり見当たらない。UFO Captureが有名だが、これはHDMIによるビデオ信号入力向けなのかな(?)。あと、動画編集ソフトで星の軌跡を残すエフェクトを掛けると分かりやすいかと思ったが、これも膨大な時間がかかる。
3はシンプルではあるが、7時間分として37万8000コマの静止画を人が見て確認するのは無理。
4については、静止画からの検出方法として、こちらにPythonによる検出スクリプトがあったので試したが、うまく行かなかった。おそらくパラメータを適切に設定すれば動作するのだろうが、よくわからなかった。
今回採用した検出方法
いろいろ考えた結果、今回は下記の手法を用いた。
- まずSharpCapで録画したSERファイル(RAW8フォーマット)を、PIPPを用いて1コマごとのTIFF静止画に変換する。
- 次に、TIFF静止画ファイルを10分の区切り毎(つまり元のSERファイルのまとまり毎)に、StarStaXを用いて比較明合成する。
1については、動画ファイルをデベイヤーしてTIFF静止画にする際、サイズを半分にして、出力するコマを1つ飛ばしにする。流星の有無を確認するだけならサイズは半分でも良いし、15FPSあるのでコマを一つ飛ばしにしてもおそらく大丈夫。後で気がついたが、さらにモノクロ化してサイズ低減しても良かった。なお、PIPPでサイズを半分に縮小するのは「Processing Options」の「Frame Resize」で縮小後の目標のサイズを設定する。また、出力コマの一つ飛ばしは、「Output Options」の「Output Frame Dropping」を1にする。
これで10分間の動画を約4500枚のTIFF静止画にするのに約5~6分程度かかった。あまり時間短縮になっていないように思えるが、PIPPは複数ファイルをバッチ処理が出来るのが利点。撮影が終わった朝、仕事に行く前などに全てまとめて処理を仕掛けていくのはそれほど手間ではない。42ファイル分で4時間程度で終わるので、午前中ぐらいには終わるはず。
2については、静止画の比較明合成は多くのソフトが対応しているが、最も安定して速かったのが「StarStaX」だった(ステライメージも結構速かったが、数千コマになると途中で落ちたりした)。このソフトは比較明の処理中にその途中経過を見ることが出来るので、静止画を元の動画1ファイル分のグループ毎にして処理すれば、どの辺りで流星が出現したのか分かる。動画1ファイル分(10分間)、一コマ飛ばし&半分サイズの静止画4500コマを処理するのに約1分かかる。PIPPのようにバッチ処理は出来ないが、比較明で星が伸びていくのを見て、流星の出現をワクワクしながら待つのは結構楽しいので、あまり苦にならない。
下の画像は今回の流星(らしきもの?)が含まれていた動画の比較明画像。
左下隅をかすめているのは明らかに航空機。そのやや右に流星らしき光跡が写っている。一コマ飛ばしなので、線が途切れている区間が約1/15秒間となり、継続時間も流星として妥当なものだと思う。一コマ飛ばしで比較明合成するのは、このように光跡の継続時間を推定するのにも使える。昔懐かしい、流星撮影用の回転シャッター羽根がついた「四連儀」を思い出す。
これで流星が写っている動画ファイルがわかれば、その10分間の中から改めて検索し、今度はフルサイズで切り出して動画ソフトで処理すれば良い。10分間のうちどの辺りに写っているかは比較明の過程を見ていればおおよそ見当がつくが、もしどうしてもわからなければ、StarStaXでの比較明合成時に、Blending Modeのオプション「Save after each step」を使うと、比較明の過程の静止画を各コマごとに出力してくれるので、それを見て、流星の出現したタイムスタンプ(左上の小さな字の時刻)を確認すれば良い。ただし、この途中経過出力のオプションを使うと処理時間が格段に増大するので、最後の手段としたほうが良い。
なお、今回の静止画を比較明合成する方法には欠点があって、雲の通過が多い天気の場合、少しの間でも雲が通過したところは白く塗りつぶさされるので、流星が隠れてしまい、見逃す可能性がある。そのため、雲が多い場合は動画の区切り(つまり比較明画像を作成する時間幅)を短くする工夫が必要となるが、手間は増えることになる。
下の画像は、今回の撮影で雲の通過が多かった時間帯のもの。比較明処理により画面がほとんど塗りつぶされてしまった。それに月齢21の月も画面内に入ってきて、雲を明るく照らしている。こうなると、もう流星の存在は分からないと思う。
とりあえずこのような方法で流星動画の撮影と検出、処理ができそうだ。ただし非常に多くのストレージ領域を使用するので、ワークエリアとして6TBぐらいの外付けHDDを付けたほうが良いかもしれない。
(続きはこちら)
コメント
素晴らしいの一言です 読ませていただいて勉強になりましたまた閲覧したいと思います
一つお伺いしてよろしいでしょうかパソコンの容量がいっぱいになったら外付けのハードデスクの設定はどうすればいいのですか私も撮りたくなりました流星を
位置男さん
コメントありがとうございます。
私の使い方としては、ハードディスクの設定は特にありません。
いっぱいになったパソコンのディスクからデータを移したり、作業領域として使っています。