反赤を使いこなせ!

アクセスカウンタ

zoom RSS ソフトウェア的なAO(補償光学)実験

<<   作成日時 : 2017/06/17 15:23   >>

驚いた ブログ気持玉 1 / トラックバック 0 / コメント 2

暗い天体や小さい天体、さらに20等級とかのジミ天を撮る際の最大の敵は空の状態とおもいますが、そのうちのシーイングについては対策の取りようがあるので何とかできないかと思う今日この頃。

この対策としては補償光学(Adaptive Optics)があって、有名どころでは、すばる望遠鏡に使われるレーザーガイド星を含めた専用品から、SBIG/StarlightXpress社等が市販しているアマチュア向けAO機器等まであります。
もちろん前者のシステムは凄いですがアマチュアが手を出せるものではないですから、後者に目を向けると方式的にはTip&Tiltとよばれる数ミリのガラス板を傾けて光路をシフトさせて高速なガイド装置みたいな使い方をしています。
原理的なところはこちらで紹介

もちろん予算はないですし、自作するにしてもDSLRでは機構的に光路長が足りずに実現困難だったりします。
そのため別の方式を考えているのですが、なかなか準備も大変なのでボチボチと進めています。...
そして必要なソフトウェア開発などは、費用も掛からないので時間を見つけて進めているのですが、その検討の中で現在の汎用的な新しい機材を使えば、ハードウェアではなくてソフトウェア的に実現出来るのではと思えるようになりました。どちらにせよハードウェア用の評価用プログラムは作らないといけないので、思いついたからにはソフトウェア版のお試しシミュレーション版を作ってみました。

でも出来てみたら、これってビデオの手ぶれ補正と一緒だよね。
補償光学(AO)なんて言ったらこっぱずかしい... かも。
(手ぶれ補正はヨーレート/加速度センサーや使って制御してますが、イメージセンサ自体によるリアルタイム制御は聞いたことがないような?)


ということで、お試しソフトの紹介。
まずはカメラ画像から星を認識します。実際は静止画なので平均などは取らず一発で決めています。
画面端のある星や、暗い(ピクセル面積の小さい)星、近傍に他の星がある場合は、追跡対象からリジェクトします。
画像



この認識された星の座標を元に、時間に伴い星の位置変化を検出していきます。
そして以下の動画がお試しソフトの動作状況です。(60コマ分を追跡し、最後にスタック画像を表示)

1) 最初に星の認識を実施。
2) 5秒後位に新しいウインドウが生成され
星の画像を乱数でX/Y個別に最大±2.5ピクセルシフト表示させています。
3) シフト画像に対して星の位置認識を実施してズレ量を推定し、
星が認識された位置に黄色い十字を描画しています。
4) 認識されたズレ量分、星の画像をシフトさせて、この画像をスタックしていきます。
必要枚数分スタックできるまで2)に戻る。

追尾精度は現状のアルゴリズムでは一個の星単独では±0.2pixel以下で、複数追尾で±0.1pixel程度でしょうか。
そしてズレが解析された画像はズレ分をバイリニア補完でずれ量を修正してスタックしていくわけです。
星が写っているカメラ画像を10〜30fps程度で撮影できれば、オートガイドすら不要になるという...
見た目は手ぶれ補正なのに....、我ながら恐ろしいものを作ってしまった。


元画像(PoleNavi用の北天付近)
画像



ずれ補正なしの600フレームスタック画像(ブレブレですね)
画像


そしてこちらが、ズレ補正をした600フレームスタック画像
画像




少々わかりにくいので、部分拡大してみました。(画像で右上領域を拡大しています)
画像


上から、元画像、補正無し、補正ありになります。
補正を行うと元画像とほぼ遜色ないことがわかります。
(背景が残存ブレの分で、ディザリング効果が認められます)



ただこれは何にでも使えるというわけではなく、条件があります。
シーイング・シンチレーションに対応するため、短い露光時間(0.2sec程度以下)で星が写らないといけません。
そのため明るい光学系や位星まで写るカメラが必須です。
またプログラムの実行には、かなりのCPUパワーを必要とするので、PCの要求スペックが高いです。

ちなみにテストに使った画像は752x640ピクセルですが、CPUにIntel ATOM Z3735を使うと8fps程度しか処理できませんでした。(若干はプログラムチューニングで改善しますが)


割合と機材面でハードルが高い技術ですね。
出来れば1920x1200ピクセルを30fps程度で処理できるようにしたいですが、これはATOMでは困難な領域でしょう。ハードウェア版も計画していますが、開発リソースをどのように割り振るか?
少ない資金(おこずかい)をどこに投入するか悩みどころです。

月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 1
驚いた

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(2件)

内 容 ニックネーム/日時
ある程度星が写ってしまえば、加算処理で露光時間の問題は解決するのでしょうか?

何にせよ機材のハードルがすごく高そうですが、完成したら凄い物になりそうですね!!(@_@)
kame
2017/06/17 20:31
kameさん、
光子が量子化されるわけですが、リードアウトノイズに埋もれない程度光量があれば写ると思います。
ただしソフトウェア処理はおまけ的なチャレンジなので、その分カメラやPC以外は特別なものはいらないかもしれませんね。

まあ本番はハードウェア版のつもりです。(汗)
miner
2017/06/17 21:54

コメントする help

ニックネーム
本 文
ソフトウェア的なAO(補償光学)実験 反赤を使いこなせ!/BIGLOBEウェブリブログ
文字サイズ:       閉じる