1年以上前に作成した Tetra というプログラムをマイナーバージョンアップして公開します。

変更点は座標値に小数点形式が使えるようになっただけ^^;
この変更の理由は、Keypoints というプログラムが星の写真から星の座標を小数点形式で出力できるから、です^^;

VIXEN天体望遠鏡電動化のページ、きっかけ、の下に keypoints と tetraf というダンロードリンクを付けました。

Tetra の方はダウンロードした後に、星の離角テーブルファイルを作成する必要があります。

テーブルの元になるデータは9等級までの星の赤経・赤緯を持っています。(21万7227件、約8MB程度)

約21万の星々のうち2星が成す角度が4度未満の組み合わせをすべて計算して離角テーブルを作成します(3582万4425件)。このテーブルファイルはテキストで800MB、バイナリー形式で400MB程度になるので、ダウンロードファイルには準備せず、各自のPCで作成してもらうことになります。作成用プログラムと作成手順は readme.txt にあるので従って下さい。
ご自身の星写真が視野2度までならもう少し小さいテーブルファイルで済みます。4度版に比較して1/4程度です。その作成手順も readme.txt に収めてあります。

最初に作るきっかけになったのは、撮り貯めた写真中央に写るNGC天体が不明だったことで、周りの恒星のパターンから計算して求められないか考えはじめたことです。
ただ、写真から座標を4つ読み取らなければならず、これが面倒で面倒で自動化できないかと以前思っていました。そこで keypoint を作ることができたので、再び活用の日の目を見ることになりました。

興味があればダウンロードして使ってみてくださいm(..)m

-----追記ここから------------------------------------
Keypoints に星の半径を出力する機能を追加しました。
使い方は従来通りですが、出力形式が変更になっています。

特徴点から右にピクセルをたどって急に暗くなったところまでの距離が半径という判断です。

特徴点からX軸プラス方向に微分して極値になった場所を例のごとくパラボラフィッティングしています。本来はX軸マイナス方向やY軸±方向にも演算して最小値とか平均値とかにするべきなのかも知れませんが本当に手抜きです。半径は最大50まででそれを超えても50.0と表示されます(仕様)。

実例:
元写真


結果写真


出力
$ keypoints_r.exe albi.bmp albig.bmp
pix average = 79.300158
Octave=5, k=1.259921
Octave[0] done
Octave[1] done
Octave[2] done
Octave[3] done
Octave[4] done
Octave[5] done
[octave][scale][radius]int x, int y, float x, float y
[0][0][2.50]124,507,124.352232,507.030041
[0][0][2.37]137,481,137.081441,481.156656
[0][0][2.27]550,443,549.604865,442.510967
[0][0][2.74]561,382,560.814393,381.955831
[0][0][3.72]62,345,62.253874,344.512524
[0][0][2.82]451,205,451.118499,204.538637
[0][0][2.68]428,166,428.212962,166.156204
[0][0][2.56]380,163,380.073939,163.321121
[0][0][2.66]242,145,242.465120,144.727980
[0][0][2.46]297,110,296.790073,110.377838
[0][0][2.72]559,106,559.045214,105.746934
[0][0][2.69]10,59,10.343621,58.807975
[0][0][8.20]526,33,526.252553,33.219803
[0][0][2.15]28,22,28.019806,21.527077
[0][0][2.47]374,2,373.818578,1.905169
[0][1][3.30]12,465,11.696694,465.413862
[0][2][4.25]269,513,268.557319,513.117153
[1][0][4.94]166,393,167.268268,392.313476
[2][0][1.85]8,11,10.566150,9.759424
[3][0][5.46]312,155,317.167251,154.211406

20 keypoints found

上記リスト中、赤字にしたのは間違っている出力です。特徴点が星の中心ではなく背景にあるときは、明→暗の点を右に探しにいくので、おかしな半径になります。
最後の5.46は連星アルビレオ主星の誤検出により不正な値です。

7月24日23:59に kp.zip アップロードしました。