MISAO Project

Home Page       Tue Mar 31 17:11:51 JST 1998

next up previous
Next: 実験結果 Up: PIXYシステム Previous: PIXYシステムの使い方

PIXYシステムの実装

ここで、PIXYシステムの実装についての概要を述べておく。 星像検出からカタログとのマッチング、星像の位置と光度の測定に至るまでの、 一連の処理を順番に紹介する。

  1. スカイ画像の作成

    画像の背景にあたるスカイ画像を作成する。 具体的には、画像に39×39ピクセルのメディアンフィルタを適用する。 この方法は、天体画像に於ける星像は、通常の画像に於ける白ノイズと似た性質 を持っていることを利用したものである。 文献 [4]にある、M51の画像から星雲に重なる恒星を除去し、星雲のみの 画像を作成する手法も同様の原理を用いている。

  2. ノイズの大きさを求める

    ピクセル値がスカイ画像よりも大きいピクセルだけを選んで、ピクセル値とスカ イ値との差の平均値と標準偏差 tex2html_wrap_inline382 'を計算する。 この tex2html_wrap_inline384 'を仮のノイズの大きさとする。 ここで、ピクセル値とスカイ値との差が tex2html_wrap_inline386 'よりも大きければ、そのピ クセルは星像の一部と考えられる。 そこで、ピクセル値とスカイ値との差が tex2html_wrap_inline388 'よりも小さいピクセルのみ を選んで、改めて差の平均値を求める。 この平均値の4倍をノイズの大きさの上限値 tex2html_wrap_inline390 とする。

  3. 閾値を動的に変化しつつ星像を検出

    スカイ値 tex2html_wrap_inline392 を閾値として、星像を検出する。 ここで、検出された星像の個数を数え、1星像あたりのピクセル数を計算する。 この段階では、1星像あたりのピクセル数が200に近くなるようにする。 もし密度が低ければ閾値を下げ、密度が高ければ閾値を上げて再び星像を検出す る。 経験上、1星像あたりのピクセル数が200より少なくなると、密度が高くなりすぎ て、複数の星がくっついてしまうことが多くなり、マッチングに影響をきたす。 逆に、元々写っている恒星が少ない場合は大量のノイズを含むことになるが、こ れは後の処理で対処する。 この時点で個々の星像の重心位置と光量が定まる。 しかし、スカイよりも大きいが閾値よりも小さいピクセルを無視しているため、 特に淡く広がった天体の場合には、光量は実際よりもかなり小さく見積もられて しまう。

  4. 暫定的に光量を光度に変換

    予め入力した概略の赤経赤緯と画角に基づき、カタログからデータを読み込む。 ここで、検出した星像とカタログとのマッチングを行うために、星像の光量を通 常の光度(等級)に換算する。 具体的には、検出した星像とカタログから読み込んだデータとをそれぞれ明るい 順に並べる。 そして、カタログ中のうちの最も明るいデータの光度を最も明るい星像の光度と する。 2番目以降も同様に、順番に光度を割り当てて行く。 この手法は星像の相対的な明るさの順序関係だけを利用しているために、かなり 精度が悪いが、これは後の処理で対処する。

  5. マッチング

    検出した星像とカタログから読み込んだデータとを比較し、画像が星空のどこに 当たるかを求める。 具体的な手順は次の通り。 まず、カタログから読み込んだデータをプロットした星図を作成する。 検出した星像から任意の3個を選んで三角形を作り、これらと光度が似た3つの恒 星をカタログから探す。 もしその3星が作る三角形が相似であれば、これらの3個の星像と3個のデータは 対応するものである可能性がある。 そこで、星像の座標を星図の座標に変換する写像関数を求める。 ただ1組の三角形だけでは対応が誤っている可能性もあるが、これをすべての三 角形に対して行うと、真の写像関数を求めることができる。 こうして、画像上の任意の点が星図上のどこに位置するのかが把握できた。 但し、予め入力する赤経赤緯の精度が悪く、画像がプロットした星図の端の方に 該当する場合は、精度が悪くなってしまう。 そこで、一度写像関数が求められたら、画像の該当する位置を中心に改めてカタ ログからデータを読み込み、マッチングを行って、精度の良い写像関数を求める。

  6. 暫定的なペアリング

    求められた写像関数を用いて、検出した個々の星像と、カタログ中のデータとを ペアにする。 但しこの時点では、検出した星像の光度は暫定的に割り当てられただけなので、 誤差が大きい。 そのため、カタログ値と光度が大きく異なって、ペアではないと判定されてしま う可能性がある。

  7. 光量を正確な光度に変換する

    ペアになったものを利用し、検出した星像の光量の対数をとったものと、光度 (等級)との変換関数を計算する。 通常の写真や、GIFやJPEG等の画像も扱うため、データ数が多い場合は変換関数 を3次関数として求める。 この変換関数を用いて、検出したすべての星像の光度を改めて計算し直す。

  8. ペアリングと極限等級の設定

    計算し直された光度を用いて、改めて検出した星像とカタログのデータとをペア にする。 ところで、星像検出の際に、元々画像に写っている恒星数が少ない場合でも、強 制的に密度が一定になるようにしていた。 そのため、検出した星像のうち、暗いものの大部分はノイズである可能性がある。 ここで、有効極限等級を定めて、暗いノイズを除去する。 検出した星像を明るい順に並べ、各星像について、前後10個の星像のう ち対応するペアがカタログに見つかったものの割合を求める。 有効極限等級より明るい時には、ほぼすべての星像について対応するペアが見つ かっているはずだが、有効極限等級より暗い時にはノイズが混じるため、この割 合は小さくなる。 暗い星像になる程、この割合は次第に減少していく。 そこで、この割合が平均的に8割を下回るようになる位置を有効極限等級とし、 それよりも暗い星像はすべてノイズとして除去する。 前述した通り、恒星と白ノイズは性質が似通っているため、このようにカタログ と比較して閾値を定める方法が、最も有効に暗い星まで検出できる。

Copyright(C) Seiichi Yoshida (comet@aerith.net). All rights reserved.