[UFOAnalyzer]
UFOAnalyzerはUFOCaptureEx および UFOCaptureV2でキャプチャしたビデオクリップの分類整理/自動分析ツールです。
関連連プログラムおよびダウンロードはこちらでどうぞ
【概要】
UFOAnalyzerは次のように、キャプチャディレクトリを読み込んで、必要クリップを選択し保存ディレクトリに分類して格納します。
【操作方法】
以下、実際の操作手順に従って、UFOAnalyzerの機能を説明します。
- 起動と入力ディレクトリ指定
- カメラプロファイル設定
- 分析
- 分類
- 確認
- 再分析
- トレイルマップ出力
- レポート出力
- 分配
- ユーティリティ
[起動と入力ディレクトリ指定]
・インストール
- 事前に、UFOCaptureExがインストールされ、Register操作されている必要があります。
- 古いバージョンが存在する場合にはその実行ディレクトリを削除して下さい。
- 配布lzhパッケージを解凍してできるUFOAディレクトリを適当なディレクトリに置いて下さい。
・起動
- エクスプローラー上でUFOA.exeをクリックすると実行します。
- 起動すると最初は以下のMainタブが表示されるので、ここで 入力ディレクトリ(InDir)を指定して下さい。
- InDirは欄の右のボタンにより指定して下さい。
-
- InDirには以下の G:\Captureのように、UFOCaptureExのマルチファイルモードでキャプチャされたログ(Cxxx.csv)が格納されている必要があります。
- 動画ファイルがないクリップおよび、xxx.bmpとxxxM.bmpが両方ともないクリップは分析できません。現在、分析可能なクリップはaviファイルのみです。
- xxx.bmpファイル、xxxC.bmpファイル、xxxM.bmpプァイルはあれば、表示できます。
- 特にcsvファイルは重要で、キャプチャ後無変更のものをご使用下さい。空白欄への書き込み等があっても動作しない場合があります。
- ログファイルが破壊されている場合にはUtyタブで最低限度のログファイルを復元することができます。
- csvファイルが複数あるとマージします。UFOCaptureExのログ以外のcsvファイルはディレクトリに置かないで下さい。混乱しやすいので、ディレクトリ内のcsvファイルは1つにすることをお薦めします。
-
-
- InDirを設定すると入力ディレトリが読み込まれます。
- 2回目以降の起動ではInDir設定が記憶されるため、起動時に自動的に読み込まれます。
- 読み込みが終了すると以下のようにクリップリストが表示され、ビュー領域には最初のクリップの静止画が表示されます。
[カメラプロファイル設定]
読み込みが終了したら、Profileタブでカメラプロファイル設定をして下さい。前回とカメラの方位等が全く同じ場合には調整の必要はありませんが、星図を重畳表示してカメラの方位を確認することをお薦めします。
プロファイル情報は、方位や速度の自動計算、レポート出力に使用されます。
- Longitude: 観測地経度(度、東経が正 -180.0〜180.0)
- Latitude:観測地緯度(度、北緯が正 -90.0〜90.0)
- Altitude:観測地標高(m)
- TZ:観測地タイムゾーン(日本なら +9)
- Direction: 視野中心方位(度、南が0、西が90、北が180、東が270)
- Altitude:視野中心仰角(度、水平が0、天頂が90)
- 左右および上下の移動ボタン(V0.21より)
- 天頂付近など、各パラメータの独立した調整が難しい場合に使用します。
- Direction,Altitude,FOV ROTの3つのパラメータを同時に変更して希望方向に恒星位置を移動します。
- FOV H:写野水平画角
- WAT-100N + CBC6mmF0.8では上図の値(H=56.1)を推奨します。
- FOV V:写野垂直画角
- 水平画角を変更すると解像度に合わせた固定比率で自動設定されます。
- FOV ROT: 水平または赤緯線に対する写野の傾き(度、時計周り=右下がりが正)
- FOV X/Y ratio キャプチャボード画素縦横比(V0.13より追加)
- CameraID: カメラ固有のID文字列(当面は英数字3文字)
- 複数のカメラで撮影されクリップを1つのディレクトリに入れると名前が重複することがあります。
- これを避けるため、カメラ固有の符号をファイル名に挿入することができます。
- Dispatch時に + CametaID のチェックをオンにしておくと、Dispatchによって移動されたクリップの名称にCameraIDが追加されます。
- 例 M20031201_001122.avi -> M20031201_001122_S1.avi
- ローカルにIDを決める場合には その先頭文字を '_'(アンダースコア)に固定し、続く2文字の範囲で自由に設定して下さい。
- LocationID: 観測地点のIDです。都道府県名+数字を推奨します。オンラインでの集計時の観測者IDになります。当面はM..CSVのみに使用されます。
- Display Mag: 重畳表示する恒星の最暗等級
- Lens k2, k3 レンズ歪曲補正値
- 恒星表示位置を、写野中心からの距離 r (水平端で1.0)を R = k3*r*r*r + k2*r*r + (1-k3-k2)r とすることにより補正します。
- k3を正の値にすると、最周辺部の恒星位置を外に補正します。この最、内側の恒星位置がずれるのをk2により補正します。
- Center offset x, y
- レンズの光軸中心がCCDの中心にない場合、k2,k3による補正では2つあるいは1つの隅に収差が残る場合があります。
- 例えば、光軸中心が画面中心から左にずれている場合には通常(k3>0)の場合、左側最縁部の恒星のみが実写の外側にずれます。
- 光軸中心が画面中心から左にずれている場合には、例えば x を-10と指定した後、全パラメータを最設定して下さい。
- Adjust to record
- 過去にV0.10以降で分析したログファイルを使用している場合には、ログファイル中のデータからProfileタブ内データ(Display Magを除く)を再設定することができます。
- この機能は、カメラの方向が複数ある環境で、過去に分析したディレクトリについてトレイルマップ等を表示する際に使用します。
以上を出来る限り正確に入力し、Star Map ボタンを押して下さい。画面にそのクリップの撮影時刻の指定方向の恒星位置が計算され以下のように表示されます。
(現在は恒星位置の表示はFixedモードのみでしか機能しません)
画面上、青い丸がM.bmp内のマスク情報で、白い点が星図データから計算された恒星の位置です。
上図では指定値が実際のカメラ方向とある程度ずれています。
各スピンボタンを押しながら画面の出来るだけ多くの恒星がマスク位置に一致するように調整します。
調整は各パラメータが相互に関係するので、根気よく繰り返す必要があります。
k2,k3,x,y,FOV関係等は一度精密に合わせれば、同一機材を使用する場合は再設定の必要はありません。
さらに、カメラ方向が完全に固定されていれば、毎回調整する必要はありません。
WAT-100N+CBC6mmf0.8を使用した場合の調整結果例(V0.12)は以下です。画面内の殆どのマスクに恒星が一致しています。
尚、現状では共通のプロプァイルを分析に使用するため、監視途中でカメラ方向が変更された場合には対応していません。
WAT-100N+CBC3.8mmF0.8を使用した場合のとりあえずの調整結果例(V0.13)は以下です。光軸中心がかなりずれることがあるようです。
調整の手順は未だこれといった方法が定まってませんが、私は概ね、以下の順序で調整しています。
最初は大変だと思いますが、慣れれば新しい機材でも数分でできます。
- Location を正確にあわせる。Rot,k2,k3,x,yは0に設定、X/Yratioは1に設定
- レンズの画角(FOV VとH)をおよそカタログ値にあわせて設定する。
- カメラのおよその方位高度を市販星図ソフト等で調べて、これをDirectionに設定する。
- 最初はMagを3程度にして、明るい星で対応すべき青と黄を見極める。
- 中心付近の星の位置をDirectionとAltitudeとRotでだいたい合わせる。Magを殆どの青の近くに黄色の点が出るようにする(惑星は出ないので注意)。
- 中央左右端に近い星の位置をFOV Hで合わせる
- 四隅で黄色が青の内側にくるようなら、収差は外に伸びるものなので、k3を増やし、FOV Hを下げて四隅の中心からの距離を合わせる。
- 内側の星があうようにk2を設定する(k3が正なら殆どの場合k2は負)
- 5〜8を繰り返し、できるだけ合わせる。
- 中央があっていて、k3が正で右半面の黄色の点が内側、左半面が外側にきている時はCenterOffsetXを負にする。逆なら正にする。
- 中央があっていて、k2が正で上反面の黄色の点が内側、下半面が外側にきている時はCenterOffsetYを負にする。逆なら正にする。
- 上下はあっているが、左右が内側にきている時はX/Yratioを1.00より大きくする。逆なら1.00未満にする。
- 5〜12を繰り返し、できるだけ合わせる。
- X/YRatioはキャプチャボードによって異なります。私のELSA EX-VISION 500TVは1.00でOKでしたが、MELCO PC-MV3Sは1.02が最適でした。
- 最初からk2,k3,x,y,X/Yraioを指定すると混乱します。およその位置を合わせて、差の傾向を見極めながら、順次進めるのがコツです。
[分析]
- Main タブで Analyze ALL ボタンを おすと 全クリップの分析が始まります。分析はクリップ当たり1秒から10秒程度かかります。
- 分析中は以下のように、ビュー領域に各クリップの分析結果のプロットが表示されます。
- 緑の点が各フレームの輝度中心点で、+印が動体検出開始点、×印が動体検出終了点です。
- 赤線が動体の移動方向で、赤の明るい線が、動体の進入方向です。
- Stop Analyzeボタンで中断できます。
- Set Class チェックボックスをOnに設定しておくと、分析と同時にClass,SubClassを自動設定します。
- Set Mag チェックボックスをOnに設定しておくと、分析と同時にMagを自動設定します。
- Exタブで分析パラメータを変更した場合などにAnalyze ALL を再実行することもできます。
- V0.22よりwmvファイルも分析可能になりましたが、分析時間はaviファイルの数倍以上かかることがあります。また、wmv圧縮により輝点の多くが失われている場合があるので、wmvを分析する場合にはExタブのDL offsetを-10程度に設定し、その副作用として検出点が増え過ぎる場合には個々SetAreaして個別分析するなどの対処をして下さい。
[分類(Classify)]
自動分析が終わったら、クリップを眺めながら、手動で、分類の確認と修正をします。
・表示のコントロール
リストが表示されている状態ではいつでもそのクリップの静止画や動画をビュー領域に表示することができます。
表示の切り替えには右上部のコントロールボダン類を使います。
- Next: リスト上の次のクリップに移動します。
- Prev: リスト上の前のクリップに移動します。
- bmp: クリック時または移動時に xxx.bmpを表示します。
- cmp: クリック時または移動時に xxxC.bmpを表示します。
- map: クリック時または移動時に xxxM.bmpを表示します。
- mov: クリック時または移動時に 動画を表示します。
- >/|| : クリック時に動画再生を開始/中断します。
- バー: 動画表示中に表示フレームを移動します。
- ×1 : ビュー領域のサイズをファイルに一致させます。
ビュー領域の大きさはウインドの大きさを変えると追従して変化します。
リストの行をクリックするとそのクリップに移動します。
リストにフォーカスがある(リストをクリックした後など)では上下カーソルキーによりクリップを移動できます。
- 静止画状態では連続して静止画を送り見ることができます。(是非お試し下さい)
ビュー領域をクリックすると静止画表示状態でも一時的に動画を開始/停止します。
- 動画は再生が終わると再生位置をHeadで示される動体検出開始位置に戻します。
- 画面のクリックでは常に先頭から再生されます。
- 静止画で検出点を確認し、その位置をクリックして動画を再生すると暗い対象などの動きを容易に見つけることができます。
・分類指定
分類の指定は Classify タブで行います。 Classifyタブを表示している状態では、クラス名をクリックすることにより、リストで選択されているクリップの分類を連続して指定してゆくことができます。リストで特定のクリップをクリックすれば、そのクリップを再分類することができます。クラス欄で空白部分をクリックするとクラスを変更することなく次のクリップに移動します。
クラス指定されたクリップはUFOARules.txtで指定されているクラス処遇デフォルトによりそれを保存するか廃棄するかが仮決定されます。
保存(移動を含む)されるクリップは リスト上で K 列に '*'が表示されます。また、そのクリップを選択すると、KeepチェックボックスがONになっています。敢えて廃棄したい場合にはチェックを外してください。このチェックは再度クラス指定されると再設定されます。
廃棄されるクリップはリスト上で K 列が空白になっています。そのクリップを保存したい場合には、そのクリップを選択してKeepをチェックして下さい。
- 実際のクリップの移動は最終段階でDo Dispatchボタンを押した時のみに行なわれます。
- 廃棄処理はDeletedという名前のディレクトリに移動するたけで、クリップファイルを自動的に削除することはありません。
クラス指定とは別次元でMarkとMagを設定することができます。クラス指定をすると次のクリップに移動してしまうので、これらはクラス指定以前に設定して下さい。
- Markは特に大切なクリップを示すためのマークです。自由にお使い下さい。
- Magは-20から+20までの整数で自由に指定できます。
- Set and Next ボタン押すとMagを設定し、次のクリップに移動できます。
尚、クラスは現在 クラスとサブクラスの2階層構成になっています。詳細分類を行いたい場合にはサブクラスボタンを押すと以下のようにクラス一覧にサブクラスが追加されます。クラスとサブラクスの詳細については別項を参照して下さい。
また、 C Select ボタンを押すと、次のダイアログが表示され、表示されたクラス名をクリックするとそのクラスのみのリスト表示とすることができます(Ctrlキーを押しながらクリックすると追加選択できます)。選択さているクラスには"*"が表示さます。
通常、TooShort,NoTail,Noise,pMateorなど数の少ない不確定な分類を先に調べて分類してゆくと効率的です。
[確認]
ListOp.タブでは分類されたクリップを分類別に表示したり、表示内容を選択して、分類結果を確認することができます。
分類が終了し、ListOp.タブを開くと以下のように、クラス毎にそのクリップ数が表示されます。
- Ccntはそのクラス配下の全クリップ数を表示します。
- Scntはそのクラスに属しているが、その配下のサブクラスには属していない詳細未分類のクリップ数が表示されます。
ListOp.タブでは次の指定を行なうことができます。
Class Select:
- クラス名をクリックするとそのクラスに属するクリップのリストへの表示(DISP = ON)/非表示を切り替えることができます。
- 単独でクリックするとそのクラスのみ表示されます。
- 例えば Meteor をクリックすると Meteor に分類されたクリップだけが表示されます
- Ctrlキーを押しながらクリックすると他のクラスの指定を変更することなく、追加/取消 指定できます。
- 複数の項目がONに指定されているときは指定は通常ORとみなされます。
- *Brighterと*Dimmerだけはその他の項目の指定とANDとみなされます。
- 上図の例では、Keep指定されている54クリップの中でMagが0.1以下の5つのクリップだけ表示さています。
- AllOnボタンを押すとすべてのクラスが表示になります。
- AllOffボタンを押すとすべてのクラスが非表示になります。
- SubClassボタンを押すと、次のようにサブクラスの表示が追加されます。
-
- サブクラス表示状態ではクラス名を右クリックするとその配下のサブクラスの表示/非表示を一度に変更できます。
- <ROOT>とはすべてのクラスの上位クラスすなわち全体を示すクラスです。
- <ROOT>のCcntには有効な全クリップ数が表示され、Scntには未だにクラス指定されていないクリップ数が表示されます。
- クラス名リストの後半には以下の特別クラスがあります。これらを指定してこれらのみの表示を行なうことができます。
-
- (Mark)はマークされているクリップを示します。
- (Keep)は保存(移動)指定されているクリップを示します。
- (delete)は保存指定されていないクリップを示します。
- (*Brighter)はMag Select で指定されている値よりMag値の小さな(明るい)クリップを示します。
- (*Dimmer)はMag Select で指定されている値よりMag値の大きな(暗い)クリップを示します。
- *Brighterおよび*Dimmerは他のクラス指定を併用しないといけません。すなわち、MateorとDimmerを同時に指定するとMeteorの中でMagが指定値より大きいものだけ表示します。
- (moved)は過去のDispatchによって移動されており、csvには残っているが実体が入力ディレクトリに存在しないクリップを示しています。
- (deleted)は過去のDispatchによって廃棄されており、csvには残っているが実体が入力ディレクトリに存在しないクリップを示しています。
- (DELETED)はキャプチャ時点で時間制限等によって保存されなかったクリップを示しています。
- (lost)は外部のなんからの操作によって入力ディレクトリから削除されているクリップを示しています。
Row Select:
RowSelect欄では、列名をクリックすることによりリスト領域に表示される列の表示/非表示を切り替えることができます。
列名は自動分類のキーとなる項目で、現時点では次のものがあります。
- VF: そのクリップの実体が入力ディレクトリに存在するか否かのフラグ
- Class: クラス名
- SubClass: サブクラス名
- K: Keep指定されている印
- M: Mark指定されている印
- t: 1つのクリップ内の軌跡(トレイル)番号(通常 1で、複数の事象がある場合などに増えます)
- Mag : 等級
- dur : そのトレイルの継続フレーム数
(1フレームのみの事象で1になります。継続時間として使用する場合には1引いて下さい)
- adur : クリップ全体の動体検出フレーム数
- cnt : そのトレイル内の動体検出画素数
- acnt : クリップ全体の動体検出画素数
- ppf : 1フレーム内の動体検出画素数平均値 (要するに動体の大きさです)
- bmax : そのトレイル内での最高輝度(別項参照)
- vel : 動体移動速度(deg/sec).....プロファイルで設定されているFovや画面ザイズを参照して計算しています。
- err : 最小二乗近似誤差(pixel)
- vx , a,b : 最小二乗近似式 vx = 0なら y=ax+b の関係、vx=1なら x = ay + b の関係(x,yは左下原点)
- x1,y1 : 動体開始画面内座標(x,yは左下原点)
- x2,y2 : 動体終了画面内座標(x,yは左下原点)
- plng〜fovr : プロファイル情報
- dir1 : 検出開始点方位(南を0として西周りの角度 0〜360度)
- alt1 : 検出開始点高度(水平を0として天頂を90とする仰角)
- dir2 : 検出終了点方位(南を0として西周りの角度 0〜360度)
- alt2 : 検出終了点高度(水平を0として天頂を90とする仰角)
- ra1 : 検出開始点赤経(0〜360度)
- dec1: 検出開始点赤緯(-90〜90度)
- ra2 : 検出終了点赤経(0〜360度)
- dec2: 検出終了点赤緯(-90〜90度)
- u1〜u5 : 外部連携用データ(外部でcsvに設定することにより、分類規則で参照できます)
- g1: 誤差が最小な輻射点をもつ群の番号(UFOAMGroups.txt内の先頭を0行目とした行位置)
- dd1: g1の輻射点と流星の終了点を結ぶ線が流星の経路となす角度の絶対値--輻射点方位誤差(度)
- g2: 誤差が2番目に小さい輻射点を持つ群の番号(UFOAMGroups.txt内の先頭を0行目とした行位置)
- dd2: g2の輻射点と流星の終了点を結ぶ線が流星の経路となす角度の絶対値(度)
- v1: 発光開始点付近の角速度(度/秒)
- ra1: v1算出赤経(度)
- dec1: v1算出赤緯(度)
- a1: v1算出仰角(度)
- h1: 対地速度を分類された群のUFOARadiant.txtにある値とした仮定した時の発光開始高度(km)
- V: 発光開始高度をExタブのH(km)、分類された群に属すると仮定した時の対地(観測)速度(km/s)
- r: 流星経路延長線と仮定輻射点の角距離(度)
[再分析]
必要に応じて以下の再分析を行なうことができます。
- Exタブで静止画や動画上の座標、RGB値をテキストファイル出力する。
- Exタブを表示している状態で、画面上にマウスカーソルを移動すると、その位置/方位/座標/RGB値が以下のように表示されます。V0.25より明度/等級(画面上/星図上)も表示されます。
- Save Click Data チェックボックスをONにした状態で画面上をクリックするとその時点の情報が出力ディレクトリに.txtファイルとして出力されます。
- 出力される情報はクリップ名、フレーム番号、画像内X,Y座標(左下原点)、方位、高度、赤経、赤緯、RGB値です。
- 静止画を表示状態ではクリック位置に+マークが表示されます。
-
- Exタブで等級設定パラメータを設定して、Magのみ一括再設定する。
- 次の4つのパラメータを設定し、 Reset Mag ボタンを押すと一括再設定できます。計算式は別項を参照して下さい。
- Mag 0 level : 0 等級とするbmax値
- Mag unit level : 1等級相当のbmax差分
- Above max : 飽和画素数に対する係数
- Max level : そのシステムにおける飽和明度
-
- 等級のパラメータの設定手順以下が良いと思います。
- Max level は予め設定しておく(別項参照....通常は255です。primeTV7133をお使いの方のみ修正が必要です)
- bmaxがMax level 以下で最も明るいものに注目して、そのMagを Mag0 levelを変更しながら妥当なものにする。
- 一番暗いものに注目してそのMagを Mag unit levelを変更しながら妥当なものにする。
- bmaxがMax levelより大きい最も明るいものに注目して Above max を変更しながら そのMagを妥当なものとする。
- 以上を繰り返して、全体が妥当になるようにする。
- 時間帯によってパラメータの変更が必要な場合があると思いますが、現状ではこれに対応していません。
- Exタブで分析パラメータを設定し、個別に再分析する。
- 次の2つのパラメータを変更して Analyze One ボタンを押すと現在表示されているクリップのみを再分析できます。
- (Analyzeボタンでは経路分析のみなされ、Classボタンでは分類のみなされ、Analyze One ボタンでは両方処理されます)
- Max vel : フレーム間で継続したトレイルとみなす最大画素距離
- 大きく設定すると、昆虫など移動速度の速い対象の軌跡を1つの連続したトレイルと見なすことができます。但し、流星のトレイルにノイズが混入し、移動方向が不正確になることがあります。
- 小さく設定すると、トレイルに離れた位置のノイズが含まれることが少なくなり、移動方向の計算精度が上がります。但し、昆虫の軌跡などが多数のトレイルに分割され、分類が不正確になることがあります。
- DL offset : 動体検出に用いる明度変化閾値の調整値
- 負を指定すると動体検出点が増加し、正を指定すると動体検出点が減少します。
- 負、例えば、-2程度を指定すると次のことが起きます。
- 昆虫の軌跡が多数のトレイルに分離され、個々が流星とみなされてしまうように場合に中間の点を検出させることによって、これを防ぎ、単一のトレイルとすることができる場合があります。
- TooShortなどに分類される短い(暗い)クリップの軌跡を正しく検出することができることがあります。
- 雲やバックグラウンドノイズがより多く混入する場合があります。
- 正、例えば 2 程度を指定すると、次のことが起きます。
- 雲などの影響でバックグラウントノイズが大きく、流星の移動が検出されない場合に、より明るい流星のみを分析できるようになります。
- 暗い流星が検出できることがあります。
- ノイズが増え、トレイルが不正確になったり、分類が不正確になったりします。
- V1.43よりの群分類パラメータ
- dd 輻射点方位誤差(流星の終了点と輻射点を結んだ線と流星経路がなす角度)の許容最大値(度)
- dr 輻射点角距離誤差(流星経路延長線と仮定輻射点の角距離)の輻射点リスト中のerrとの許容最大比(%)
- dv 速度誤差許容値(%)
- H0 速度算出パラメータ--速度が0km/sの流星の発光高度(km)
- H1 速度算出パラメータ--速度が100km/sの流星の発光高度(km)
- Alalyze Log: ONに設定すると各クリップの分析時にフレーム毎の輝度中心座標他をテキストファイルとしてInDirに出力します。
- 例 : M20040226_040416.txt 対応するクリップのC.bmp画像、分析時のプロット画像
- テキストファイル中の各項目の意味は以下です。
- fno : フレーム番号
- cnt : フレーム内の輝度変化検出点数
- bmax : フレーム内輝度変化検出点の最大輝度
- amax : フレーム内輝度変化検出点で輝度が飽和している画素数
- bave :フレーム内輝度変化検出点の平均輝度
- x: : 輝度変化検出点の輝度を重みとした加重平均 x 座標 左下原点
- y : 輝度変化検出点の輝度を重みとした加重平均 y 座標 左下原点
- dir: x,yの方位(南を0、西90、北180、東270)
- alt: x,yの仰角
- ra: x,yの見かけの赤経
- dec: x,yの見かけの赤緯
- 以下 V1.40での追加項目
- av: 直前のフレームとの間での移動角速度
- Angle velocity: Average 全フレームでの平均移動角速度
- Start : 発光開始部分(開始から最大5フレーム)の平均移動角速度
- Start altitude 発光開始部分の仰角
- Za: 当該輻射点の天頂引力による輻射点移動角度
- Vi: 当該群の天頂引力補正前の流星速度(km/s)
- Vo: 当該群の天頂引力補正後の流星速度(km/s)
- RA: 当該輻射点赤経 その日の赤経 -> 天頂引力補正後の赤経
- DEC: 当該輻射点赤緯 その日の赤緯 -> 天頂引力補正後の赤緯
- dd: 輻射点方位誤差
- dr: 輻射点角距離誤差
- V: 当該群、かつ、発光高度Hが H=(H1-H0)*V/100+H0 を満たす流星の観測速度(km/s)
- dV: VのVoとの誤差(%)
- H: 当該群、かつ 速度がVであると仮定した時の流星の発光高度,算出不可能な場合には100(km)
- SetDelfaultボタンを押すと Max vel ,DL offset,Analyze Logをデフォルト値に戻します。
- Exタブで設定したパラメータは MainタブのAnalyze ALL時に次回以降有効になります。不必要な変更は元に戻してください。
- Change Area ボタンを押すと現在の監視領域枠を青で表示し、新たな監視領域再設定モードに入ります。
- 静止画面上をドラッグすると新たな監視領域が設定され緑で表示され、再設定モードを終了します。
- 再設定した状態で分析すると新たな監視領域内のみの分析をすることができます。
- 再設定により、不要な検出点の影響を除去した分析ができる場合があります。
- 再設定できる領域は1つのみです。
- 再設定された領域はSaveCSVによりログファイルに記録されます。
- 例: 以下は流星と飛行機が重なり、流星が分析できないクリップです。
-
- このクリップで流星部分のみを監視領域と再設定することにより右図のように流星が正しく分析できます。
-
- MainタブでReset ClassInf ボタンを押すと、設定されているクラス情報をすべてクリアします。
- UFOARules.txtを変更した場合、Mainタブで ReClassify ボタンを押すことにより、分類のみの再設定を行なうことができます
[トレイルマップ出力]
- 分析が終了していれば、分析結果にある各流星の開始終了点情報から推定した各流星の経路を描いた心射図法の星図(トレイルマップ)を描くことができます。
- トレイルマップはExタブでTrail Mapボタンを押すと、その時点でリストに表示されている全流星の経路を描きます。
- ListOpでリストに表示する流星を選択しておくとにより、描く流星を選択できます。下図は2004年1月3日に実際にキャプチャされた流星の中でM_Quaに分類された全流星の経路を描いたものです。
- トレイルマップの表示状態では以下の操作ができます。
- Ra : 表示中心の赤経をスピンボタンにより0〜360(度)まで設定できます。
- Dec: 表示中心の赤緯をスピンボタンにより-89〜89(度)まで設定できます。
- +90と-90は特異点であるため、指定しないでください。
- スピンコントロールによって+90をまたぐ操作をするとその時点でRaとRotを反転します。
- Rot: 表示の回転角度をスピンボタンにより0〜360(度)まで設定できます。
- Mag: 表示する恒星の最暗等級を指定できます。
- Axisチエックボタンにより経緯線の表示をON/OFFできます。
- Trailチェックボタンにより経路の表示をON/OFFできます。
- Radiantsチェックボタンにより輻射点を中心とする輻射半径の表示をON/OFFできます。
- マウスカーソルが画面内にあるとその位置、座標がExタブ内に表示され、クリックによって+マークを画面に描くことができます。
- Save Click Data チェックボックスがONになっていれば、画面上をクリックした時の位置、座標がOutDirのテキストファイルに出力されます。
- トレイルマップの経緯線のうち白い点線は赤経0度線と赤緯0度線です。
- 輻射点をなるべく中央に配置すると、経路の集中がよく描写されます。
[レポート出力]
MainタブでCSV格納とレポート出力を実行することができます。
- SaveCSVボタンで入力ディレクトリのcsvファイルを更新することができます。
- CSVログファイル(Cyyyymmdd.csv)には分析結果の主要情報が追加されています。
- 更新されたcsvファイルはDispatch以前なら一旦プログラムを終了しても再度読み込み、操作を続けることができます。
- 終了前にDispatchを行なう場合には必ずしもセーブする必要はありません。
- Make Report ボタンを押すことにより、任意の時点でレポート生成することができます。
- レポートは出力ディレクトリ(Out Dir)にCxxx.htmlとして作成されます。
- Make M.CSV ボタンを押すことにより流星に関するレポート内容相当を Myyyymmdd_LocCamID.CSV というファイル名のCSV形式でOutDirに作成します。
レポート例
[分配(Dispatch)]
分配方法の指定と実行はMainタブで行います。事前に出力先ディレクトリ OutDir を設定して下さい。一度分配したファイル群を自動的に元に戻す手段はありません。Do Dispatchボタンを押す場合には十分注意して下さい。
- OutDirを空欄まま分配すると、入力ディレトリ配下に分配します。
- OutDirがIndirと同一のドライブ内であると数秒程度と高速です。
- 異なるドライブへ分配するとクリップの移動のため数分から数時間かかることがあります。
- 分配は中断できますが、中断時にはcsvファイルは不完全なものになるため、bak等から復元して下さい。
- Add Date DirチェックをONにしておくと、OutDir直下に日付のディレクトリが作られ、その配下に分配されます。
- Add Class DirチェックをONにしておくと、OutDirまたは日付ディレクトリの下に必要なクラス名のディレクトリが作成されその配下に分配されます。
- Add SubClass DirチェックをONにしておくと、OutDirまたは日付ディレクトリまたはクラス名ディレクトリの下に必要なサブクラス名(クラス名を含む)のディレクトリが作成されその配下に分配されます。
- 廃棄クリップは入力ディレクト直下にDeletedという名称のディレクトリが作られ、すべてその直下に移動されます。
- すでに分配先ディレクトリが存在した場合にはそのディレクトリに追加します。既存ファイルはそのまま保存され、CSVが既存の場合にはその内容に分配内容が追加されます。
- 1つのクリップに複数の保存トレイルがあり、各々別の移動先の場合にはクリップがコピーされます。
- ディスクの容量増加にご注意下さい。
- コピー時間もかかります。
- 分配先に同名のクリップがあった場合には異常終了します。同名のクリップがないようにして下さい。
- OutDirをIndirの上位ディレクトリに設定する場合には、分配先ディレクトリが偶然InDirと重ならないように気をつけてください。
以下は G:\DB を出力ディレクトリとして、日付付きで分配した結果です。
分配後、入力ディレトリは以下のようになります。廃棄クリップはすべてdeletedディレクトリに移動されています。消すのは手動でお願いします。
Cxxxx.csvは分配内容によって更新されています。
.Cxxx.csv.orgファイルはUFO処理以前のcsvファイルのバックアップ(つまり最初のもの)です。
Cxxxx.csv.bakは最後にcsvを上書きする直前のバックアップ(つまり最近のもの)です。
何度もSave CSVを実行した場合には、最初のものと最後のものと最後の直前のものが残ることになります。
[ユーティリティ]
〜V0.61 |
V0.62〜V0.72 |
V0.73〜 |
|
|
|
Utyタブでは蓄積ファイルに対する以下の操作を実行できます。これらの操作は実行指示により即時にファイルを変更します。元に戻す手段はないので、十分注意して実行して下さい。中断もできません。また、操作はその時点でクリップリストに表示されているクリップのみについて実行されます。ListOpタブで処理したいクリップのみが表示されるよう指定してから実行して下さい(特定クラスのみの処理や、Magの低いものののみの処理などが指定できます)。
- トリミング
- 動画ファイルのHeadとTailの切り詰めます。
- 現在処理できるのは音声無しAVIファイルのみです。AVIファイル以外を指定した場合には動作は保証されません。
- ログ内のTotalF,Head,Tailは同時に変更されます(処理終了時にSaveCSVされます)。
- 指定値より長いクリップのみ処理され、HeadとTailが両方とも指定より既に小さいクリップについては無視されます。
- Headの最低値は10で、これは再分析の関係からこれ以上小さくできません。
- HeadとTailは独立に指定できます。例えばTailのみ切り詰めたい場合にはHeadに9999などを指定して下さい。
- HeadとTailに希望値を入力し、Do Trim ボタンを押してください。
- 動画内にスーパーインポーズされているフレーム番号は変更されません。例えば、Headが30であったものを10に切り詰めると フレーム番号21から始まるクリップになります。
- トリミング処理は各クリップの再生と同程度の処理時間がかかります。
-
- [非常用モード]
- キーボードのコントロールキーを押しながら Do Trim ボタンをクリックすると、ログを無視して InDir内の全aviファイルについての切り詰めを実行します。
- ログは一切変更されないため、ログがある場合にはログ内の情報と食い違ってしまうため、ログがある場合には使用しないで下さい。
- 非常用モードでは HeadとTailに切り詰めるフレーム数(残すフレーム数ではない)を指定します。
- ダイアログでHeadに10, Tailに 20 と指定している時は、先頭から10フレームと最後から20フレームを削除します。
- フレームの削除は全体が2フレーム以下にならない範囲で無条件に実行されるので、指定によっては動体検出期間が含まれることがあります。
- ログリカバー
- ログリカバーボタンはV0.60で廃止されました。V0.60以降ではディレクトリ内容に合わせて常時CSVファイル内容が変更されます。
- CSVにないファイルが存在した場合、Logrecover.txtが同一ディレクトリにあればそれを元にCSVファイルが再構築されます。Logrecover.txtがない場合にデフォルト値が仮定されて再構築されます。
- V0.56以前のログリカバー機能は以下です。
- ログ(*.csv)ファイルを削除または変更してしまった場合に、Mxxxxxxxxx_xxxxxx.bmpと動画ファイルが残っていれば、再分析可能となる最低限度の情報をもったcsvファイルを生成することができます。
- ログリカバーする場合には、1つのディレクトリにbmpと動画を集め、さらにインストールディレクトリにあるLogrecover.txtをそのディレクトリに置きます。
- Logrecover.txtは復旧するcsvファイルの雛形です。この中で、以下の情報はクリップに合わせて正しく設定しておくことが必要です。
- xl,yl,fps,head,tail,A1x1〜A1y2 (インストールディレクトリにあるものは各々、640,480,30,30,30,1,638,1,463 となっています)
- bmp、動画、Logrecover.txtの準備ができたら、UFOAnalyzerを起動してそのディレクトリをIndirに指定ます。
- Utyタブを開き、Log Recoverボタンを押します。確認の後実行され、ログファイルが生成され、分析可能状態となります。
- *M.bmpファイルはあってもなくても構いません。V0.12以降ではM.bmpファイルがなくても分析できます。
- 復旧直後のログファイルはTotalFとPureFが0になっています。この2項目は分析によって値が設定されます。その他、値が0となっている項目は復旧できません。
- コンテンツファイルデリート
- その時点でリストに表示されている全クリップの指定ファイルを削除します。
- mov は再分析に必須です。これらを削除すると再分析できなくなります。
- 削除したい種別のチェックをONにして、Do Delete ボタンを押してください。
- ログファイルは変更されません。
- 選択クリップデリート
- Delete This Clipボタンを押すとその時点で選択されている1つのクリップの静止画/動画を即時に削除します。ログファイルは変更されません。
- UFOCapture動作中にこの機能を利用して飛行機などの無駄なクリップをその場で削除してゆくことができます。
- Update Listボタンを押すとログファイルを再読み込みします。
- キャプチャと並行してやって良いのはこの即時削除だけで、分析や分類をやって結果を格納してはいけません。ログファイルはキャプチャ中はキャプチャプログラムが使っていて、これを横から書き換えると色々不都合がおきます。
- 最大値ホールド静止画生成
- Make A P.BMPボタンを押すとその時点で選択されている1つのクリップについて、全画素RGB値各々について保存されている全フレームの中の明度最大値を求めた静止画を入力ディレクトリに生成します。
- 静止画表示オプション設定
- bmp View Option ではbmp(V2のjpegを含む)静止画表示時に以下の重畳表示をオンオフできます(V0.62〜)
- +Hit Mark : 動体検出画素をマゼンタ色で強調表示します(V2の検出位置が含まれいない静止画にマップ情報を重畳します)。
- +Analyzedd Line : 分析後の経路近似直線(赤)を表示します。
- 観測時刻一括補正機能
- V0.73より、システム時刻の誤差などで観測時刻の誤差が大きかった場合に、観測時刻を指定されさた秒数前後して設定する Clock adjust for listed clips機能が付きました。
- 本機能はリスト表示されている全クリップの観測時刻(xml および C*.csv 内の記録)をクリップ名内の日時と指定オフセット秒数から作成し直します。
- 本機能使用後、レポートおよび、M.CSV出力を行うと補正された時刻の情報が格納されます。また、オフセット秒数が大きい場合には、再度恒星位置あわせを行い、再分析することも有効です。
- sec欄にオフセット秒数を指定して、Do Adjustボタンをおすと、リスト内に表示されている全クリップのデータが書き換えられ、保存されます。
- 例えば、観測したパソコンの時計が3秒進んでいることが判明した場合には、-3 を指定します。この時、例えば M20060429_000000 というクリップの観測時刻は 2006/4/28 23:59:57 と変更されます(クリップ名は変化しません)。
[参考情報]
UFOAディレクトリの中身
- UFOA.exe : UFOAnalyzerの実行ファイルです。
- UFOARules.txt : クラス定義、分類規則などを入れるファイルです(むやみに変更しないで下さい)。
- UAF.ax : クリップ分析用DirectXフィルタです。
- regsvr.bat : UAF.axをシステムに登録するためのWindowsXp,2000用バッチファイルです(V0.74より通常は使用する必要がなくなりました)。
- UFOAStarMap.txt 星図(恒星)のデータです。
- 各行が1つの恒星を表し、赤経時、分、秒、赤緯度、分、秒、等級のデータとなっています。
- UFOARadiant.txt 流星群 輻射点データです。
- 各行が1つの流星群を表し、サブクラス名、発生開始日、月、終了日、月、極大日、月、輻射点赤経(度)、 赤緯(度)、赤経移動量、赤緯移動量、代表観測速度、頻度、許容誤差、名称 となっています。
- V0.17より輻射点は極大日からの移動が自動計算されて使用されます。
- 許容誤差は流星の経路方向と流星の終点から見た輻射点の角度の絶対値の最大値で指定します。
- 日付が範囲内かつ許容誤差内の輻射点の中から最小の誤差の流星群に自動分類されます。
- UFOARadiantM.txt 主要流星群用輻射点データです。必要な場合、これをUFOARadiant.txt とリムームして使用して下さい。 (V0.70より廃止した)
- UFOARadiantA.txt より多くの輻射点を含む輻射点データです。デフォルトではUFOARadiant.txt と同じです。 (V0.70より廃止した)
- msvcr70.dll :フログラムの動作に必要なマイクロソフト社のライブラリです。
- 実行後、設定値を記憶するためのUFOAnalyzer.iniファイルが作成されます。
- UFOAディレクトリはシステムに幾つあってもかまいません。
- これによって設定値を使い分けることができます。
- regsvr.batはどこかで一度実行すれば十分です。
- 起動ディレクトリには必ずUFOARules.txt ,UFOAMGroups.txt, UFOAStarMap.txtが必要です。
起動方法の種類
- エクスプローラでUFOA.exeをクリックして実行する。
- UFOA.exeのショートカットを作りそれをクリックする、または、コマンドプロンプト、バッチファイル等で指定する。
- いずれの場合にも、実行ディレクトリはUFOARules.txtのあるディレクトリにして下さい。
- パラメータとして、入力ディレクトリ(絶対パス)を指定することができます。
輝度計算方法
- 画素の輝度は通常0〜255です。
- システムによっては最大輝度が例えば 235となるものもあります。
- 明らかに飽和しているのにbmax欄に例えば235以上のものが無ければ、それが最大値です。
- 等級計算のためには最大値をExタブ内のMax Level を正しく設定しておく必要があります。
- 最大値が255未満となるのは、通常、キャプチャデバイスのインストール時にシステムのYUVモジュールがメーカーの独自モジュールに変更されている場合に発生します。すなわち、同じクリップを別のマシンで分析すると異なる結果が出ることがあります。
- bmaxはトレイル中の最大輝度をB、フレーム内で明るさが飽和している画素数の最大値をN, 最大輝度をLとしておよそ以下の式で算出されています
- N =0 -> bmax = B;
- N >0 -> bmax = B + N -1;
- Magは以下の式で計算されます。
- N=0 -> Mag = ((Mag 0 level) - B)/ (Mag unit level);
- N>0 -> Mag = ((Mag 0 level) - L - sqrt(N)*(Above max))/ (Mag unit level);
流星の速度の算出方法
a …流星の検出開始点付近の観測角速度
h …aを測定した位置の仰角
D …aを測定した位置の輻射点からの離角
H0…速度0km/sの流星の仮定発光高度(デフォルト80km)
H1…速度100km/sの流星の仮定発光高度(デフォルト130km)
R …観測地の地心距離(緯度36度として6371km)
Vo…流星の観測速度(km/s)
Ho…流星の観測発光開始高度(km/s)
Ho = H0 *sin(D)*sin(h)/(sin(D)*sin(h)-a*(H1-H0)/100) (ただし、負になる場合は100kmと仮定する)
Vo = a * (sqrt( R^2*sin(h)^2+Ho^2+2*R*Ho ) -R*sin(h) ) / sin(D)
天頂引力補正と群分類
UFOAnalyer V0.40以降ではSonotaCo.JPにますみさんが書いて下さった以下の式により天頂引力補正を行なっています。
Vi.....地球の引力の影響を受ける前の流星の地心速度(km/s)
Zt....輻射点の観測時刻における天頂からの離角
Za...天頂引力による輻射点の仰角増分
Vi = sqrt(Vo^2 - 132.2)
Za = Zt/ - arcsin(Vi/Vo* sin(Zt/2))
群分類では、流星発生時刻毎に このZaによって、輻射点仰角を修正したものを輻射点とし、以下の2つの値を計算します。
dd...輻射点方位誤差(流星検出終了点と輻射点を結ぶ線と流星経路がなす角度の絶対値)
dr...輻射点角距離誤差(流星経路の延長線と輻射点との角距離 ..ただし、ddが90度を越える場合には計算しません)
群分類では、dd,dr,Vo,の各値についての閾値を用いて、閾値を越える輻射点を排除します。
その上で、ddの最も小さいものを候補とします。
クラス階層について
- ROOTから始まるクラス階層は排他的で1つのトレイルは1つのサブクラスにしか含まれてはいけません。
- クラス直下とはクラスに含まれるが配下サブクラスに含まれないもので、クラス名と同一名称のサブクラスが暗黙にあると考えます。
- クラスにクラス直下があるように、ROOTにはROOT直下があり、最初すべてのクリップはここに含まれます。
- 現在、1次元の2階層です。独立次元としてmarkとmagが設定可能です。
- 分類規則との一貫性を保てば、任意のクラスを追加削除でき、その名称を分類処理やレポートで使用できます。
- クラスの名称と構造はできるだけグローバルに統一すべきなので、変更は慎重にお願いします。
以下、V0.05でUFOArules.txtに定義されているクラスとサブクラスです。 左側が親クラスで右側がサブクラスです。keepとあるものはデフォルトで保存され、deleteとあるものはデフォルトでは廃棄処理されます。keep/deleteの指定が無いものは上位クラスの設定に従います。keep/deleteの変更は用途に応じて変更して構いません。
C ROOT Meteor keep //流星クラス
//流星群分類用サブクラスは輻射点データとしてV0.17より UFOARadiant.txt として独立しました。(V0.08〜V0.16までのUFOAMGroups.txt は使用しなくなりました)
C ROOT pMeteor keep //流星である可能性が高いがやや誤差が大きいため昆虫等である可能性も高いものが入る仮分類です。
C ROOT Lightning keep //雷クラス
C Lightning L_Lightning //稲妻
C Lightning L_Flash delete //雷光(フラッシュ)
C Lightning L_Sprite //スプライト
C Lightning L_Bluejet //ブルージェット
C Lightning L_Elves //エルブス
C ROOT Noise delete //宇宙線などによるノイズ
C ROOT Nature delete //自然現象クラス
C Nature N_cloud //雲
C Nature N_snow //雪
C Nature N_rain //雨
C Nature N_star //恒星
C Nature N_etc
C ROOT Animal delete //動物クラス
C Animal A_bird //鳥
C Animal A_insect //昆虫
C Animal A_etc
C ROOT Flight delete //人工飛行物体クラス
C Flight F_plane //飛行機
C Flight F_heli //ヘリコプター
C Flight F_etc
C ROOT Satellite keep //人工衛星クラス
C Satellite S_burst //バースト
C Satellite S_path //軌跡
C Satellite S_etc
C ROOT Ground delete //地上光クラス
C Ground G_hlight //ヘッドライトなど
C Ground G_slight //サーチライトなど
C Ground G_firework //花火
C Ground G_etc
C ROOT UFO keep //正体不明クラス
C UFO U_burst //バースト光
C UFO U_etc
C ROOT ETC keep //その他クラス
//現象的仮分類
C ROOT TooShort keep //トレイルが短く直線性判定ができないもの
C ROOT TooMany keep //変化点が多すぎで分析できないもの
C ROOT NoTrail delete //変化点が連続せず分析できないもの
//ゴミ
C ROOT Trash delete //手動分類で廃棄処理するもの
既知の問題点と注意事項
- 本プログラムはUFOCaptureExが動作しているマシン上でしか動作しません。
- 本プログラムの入力はUFOCaptureExの出力である必要があります。
- キャプチャはSMask=ON状態で記録されている必要があります。
- スーパーインポーズエリアは再分析の対象にはなりません。
- avi形式のみでテストしています。
- キャプチャデバイス付属ソフトがシステムの標準DLL類を変更している場合、動作保証しません。
- 現在判明しているのは primeTV7133のみです。これにはMax levelの設定により対応できます。
- 以下の数量制限があります。
- 一度に読み込める最大クリップ数 : 10000
- 最大ルール数 50
- 1ルール当たりの最大条件数 10
- 1フレーム内での最大変化画素数 10000
- 1フレーム内の最大グールプ数 2048
- 1つの動体の継続フレーム数 1000
- 1フレーム内の最大動体数 10
- 1クリップ内の最大トレイル数 10
- 最大値を超えた部分は通常無視されます。
- 分類設定が歯抜けの状態でDispatchを繰り返すと分配先のcsvファイル内でクリップの順番が狂うことがあります。
- 分類先を再度入力ディレクトリとして指定しさらに分類することができます。
- 入力csvファイル中のRun/Stopなどの操作情報は更新後のcsvファイルから削除されます。
- 分析パラメータ、クラス、分類規則はWAT-100N+6mmレンズで夜間キャプチャされたクリップをもとに設定しています。これ以外の条件では変更が必要な場合があります。
- 自動分類は画像認識によるものなので、必ずしも正確でありません。また認識方法は今後変化する可能性があります。
- 現在の等級設定ロジックは極めて不正確なものです。将来、星図を利用した抜本的改良を予定しています。
- 当分の間は、本プログラムの使用前にキャプチャ結果のバックアップをとって下さい。不都合には責任持てません。
更新履歴
V0.01 2003/12/03 新規作成
V0.02 2003/12/04 Reportにrot、SubClassの統計情報が表示されなかったバグを修正した。
V0.03 2003/12/04 Report形式をtxtでなくhtmlに変更した。
V0.04 2003/12/05 Report形式を一部変更した(不要な特殊クラスの表示をやめ、等級に合計行を加えた)
V0.05 2003/12/28 動画のフレーム毎分析により自動分類を可能とした。その他、全機能を大幅に変更した。
V0.06 2003/12/31 Analyze ALLの後異常終了することがあるバグを修正した。MagによるBrighter Dimmerの選択を可能にした。
V0.07 2004/1/5 Utyタブを新設し、TrimとDelete機能を追加した。クラス選択のクリック方法を変更した。レポートでunclassifyの個数を正しくし、表示を一部変更した。
V0.08 2004/1/18 星図データ、輻射点データの取り込みによる流星位置情報の自動計算および群の自動判定機能を追加した。非常用トリミング機能を追加した。
V0.09 2004/1/23 以下の機能を追加した
- トレイルマップの表示/格納機能を新設した。
- M.bmpの表示を可能とした。
- Exタブで画面上のマウスカーソル位置の位置/方位/座標/RGB値などを表示するようにし、クリック位置をテキストファイルとして出力するようにした。
- キャプチャ時刻において地平線以下10度を超える輻射点は自動分類の対象とならないようにした。
- レポートに輻射点参考座標を表示し、各流星について参考座標からの誤差を表示するようにした。
V0.10 2004/1/27 以下を修正しました。
- レンズ収差の補正をガンマ関数から、3次式に変更し、光軸中心位置の調整機能を新設した。
- profileをログから再読み込みする機能を新設した。
- リスト上、g1とg2は名称を表示するように変更した。
- SetClassをOFFにしてもNoTrailが設定されてしまうバグを修正した。
- ReClassによって、流星については群も再分類されるようにした。
- 星図データで従来赤緯-0度台のデータが0度台に扱われていたため、星図データを度数表示とし、全面的に変更した。
- 輻射点データからm1_Comを削除した。
- わかりにくいので、分類からpMeteorを削除した。
- ログファイルにレンズ補正係数などのprofile情報を追加した。
V0.11 2004/1/31 以下を修正しました。
- Profileタブで星図を描く前にExタブで画面上の座標を調べようとすると異常終了するバグを修正した。
V0.12 2004/2/1 以下を修正しました。
- xxxM.bmpファイルがないクリップについてもxxx.bmpファイルが残っていれば分析できるようにした。
- xxx.bmpと動画ファイルが残っている場合、ログを分析可能となる必要最低限度生成する機能を追加した。
V0.13 2004/2/14 以下の機能を追加しました。
- ProfileにX/Y ratiioを追加、画素の縦横比に誤差があるキャプチャボードでもより正確に位置合わせできるようにした。
- 実験用にbmpファイルがなくてもログの再生が可能なように変更した。(分析はできません)
V0.14 2004/2/22 以下の機能を追加変更しました。
- 分析時にフレーム毎の輝度中心座標他をテキストファイルに出力するAnalyze Log機能を新設した。
- 監視領域を再設定するChange Area機能を新設した
- Exタブで画面クリックで+マークを表示するのをSave Click DataがONの時のみに限定し、その他では従来どおり動画の表示とした。
V0.15 2004/2/23 以下を修正しました。
- V0.14の修正によりTrailMap上でのクリックが効かなくなっていたバグを修正した。
V0.16 2004/2/28 以下を修正しました。
- Analyze Log に 方位/高度/赤経/赤緯 を追加した。
- Utyタブに クリップを即時に削除する Delete this clip, 最新のCSVを読み込む Update List を追加した。
- 静止画/動画が全くないクリップはlost扱いとして、リストに載らないようにした。
V0.17 2004/4/2 以下を修正しました。
- 輻射点データをIMO準拠とし、日付による輻射点移動の自動計算結果を使用することとした。
- cmp ボタン map ボタンがタイミングによる動作しないことがあるバグを修正した。
V0.18 2004/6/18 以下を修正しました。
- レポート、ログ、Exタブで表示される観測方位が360度を越える場合やマイナスになる場合があり、これを0.0〜360.0となるようにした。
- 動画表示の直後、ExタブのStarMapボタンを押しても星図が表示されないバグを修正した。
- 輻射点リストにm_XX1(Itokawa),m_XX2(2002-4-6Metteor),m_jBo(June Bootids 2004)を追加し、M_dAr(Arietids Daytime)を標準リストにも加えた。
V0.19 2004/6/19 以下を修正しました。【 重要 】
- UFOAnalyzer V0.18 以前に以下のバグがありました。
- 視野中心の地上方位と流星位置の地上方位が90度以上ずれた場合、流星の地上方位計算を誤り、これに伴って赤経、赤緯の計算も誤る。
- この現象は天頂が視野に入っている場合や超広角レンズなどを使用した場合で、流星の開始点または終了点が天頂に対して視野中心の反対側に現れた時に発生します。V0.19以降で再分析することにより、正しい座標を得ることができます。
- 1. 上記「天頂バグ」を修正しました。
- 2. RAが360度を越える場合があったので、0〜360内に入るようにしました。
- 3. ExタブにDir/AltボタンとRa/Decボタンを追加した。各々、静止画上に一時的に方位仰角線と赤経赤緯線を描画します。
V0.20 2004/7/17 英語版Windows上で動作するようになりました。このため、フォントおよび画面配置を微調整しました。
V0.21 2004/8/13 以下の機能追加をしました。
- Profileに左右、上下の星図移動ボタンを付けた。
- PAL/SECAMでキャプチャされた25fpsクリップにも対応した。
V0.22 2004/9/1 以下の機能を追加変更しました。
- Make A P.BMP ボタンによって、最大値静止画像を生成できるようにした。
- WMVについても分析できるようにした。
- レポートの個々の流星座標に、最も近い輻射点名G1とその角度誤差G1errを常時表示するようにした。
- UFOARadiant.txtでerrが0.0になっているものはサブクラスとして設定されないようにした。これによって、UFOARadiantA.txtとUFOARadiantM.txtを切り替えてもサブクラス番号がずれなくなった。
- 輻射点リスト内のerrパラメータを公開されているデータがあるものはそれに合せ、ないものは8.0度とした。
V0.23 2004/9/8 UFOCaptureV1.85以降の特殊レジストレーションに対応した。機能的変更はない
V0.24 2004/9/9 以下を修正しました。
- ProfileタブのAdjust to recordで旧Trackingモードに設定されてしまううことがないようにした。
- ExタブのSetエリア時にハングする可能性を減らした。
- ClassifyのMagを-1000から1000まで許すようにした。
V0.25 2004/9/24
- Analyze Oneに軌跡分析のみ行なうAnalizeと分類のみ行なうClassの2つの部分処理ボタンを付けた。
- 静止画/動画類表示中、Exタブでマウス座標表示中に、Br(明るさ),Mag(等級計算値/星図値)を表示するようにした。
- Trail Mapにリスト中で使用している輻射円を表示するRadiantチェックボックスを追加した。
- Trail Map表示中、Exタブでマウス座標表示中、トレイルおよび輻射点位置で流星ファイル名および輻射点名を表示するようにした。
V0.26 2004/9/25
- Trail Mapの輻射円の経度方向の誤差を正しく表示するようにした。
- Trail Mapの輻射円を日々の輻射点移動を加味した位置に表示するようにした。
V0.27 2004/9/25
- 流星の速度算出を画面座標と画角を元にする方式から、方位仰角を元にする方式に変更した。
V0.40 2004/10/3
- 以下の機能を加えて流星群分類機能を大幅変更した。併せてレポート形式、Analyze Log形式を変更した。
- 長い流星の場合平均角速度とは別に 流星の検出開始点付近の角速度を求めるようにした。
- 可能性のある輻射点を仮定して流星の対地速度、あるいは、発光高度を試算するようにした。
- 代表速度が知られている輻射点については、天頂引力による輻射点移動を考慮した上で群分類に使用することとした。
- 群判定基準を従来の方位誤差方式から、方位誤差、角距離誤差、速度誤差、高度誤差を組み合わせたものに変更した。
V0.41 2004/10/6
- 天頂引力補正式を変更した。
- 群判定において、ddまたはdrのどちらか一方が指定閾値を越える群は排除するようにした。
V0.42 2004/10/7
- dr の算出方法が不適切で 角度が大きい場合に算出できなかったり、誤差が大きかったのを修正した。
V0.43 2004/10/10
- 高度の仮定を固定値とせず、速度から見積って仮定することとした。
- これにともない ExタブのH,dHをH0,H1に変更し、高度による閾値、レポートへのH掲載を廃止した。
- Exタブのfsを廃止して、候補順位はddで判定することとした。
- 計算上速度が100km/s以上または10km/s以下となる群は候補から除外することにした。
- dvの閾値のデフォルトを50%から40%に減らした。
- レポートのClip list --Meteor で 群分類されていない流星は最もddの小さいsubclass名を括弧付きで表示するなどレポート形式を一部変更した。
- リストに何も表示されていない状態でRadiantsをオンにしてトレイルマップを表示するとハングすることがあるバグを修正した。
- 分類規則で N_cloud への自動分類を止めた。
V0.44 2004/11/24
- Make M.CSV機能を追加した。
- M..CSV に使用する Location ID を指定できるようにした。
V0.45 2004/12/01
- Location ID の制限を英数10文字から16文字に拡大した。
- 分析時の各フレームの座標を使って流星経路の極の方向余弦(alpha,delta)を求めCSVファイルに保存するようにした。
- M.CSVの形式の以下を変更して、レコード符号をR01からR02に変更した。
- 秒(UT)を浮動小数点形式とした(当面内容は0)。
- タイムゾーンTZ,観測地標高Alt,alpha,deltaを追加した。
- Dur(sec)の計算が1フレーム分ずれていたので修正した。
- Profile の経度を小数点以下4桁まで保存されるようにした。
V0.46 2004/12/10
- X1ボタンでのウィンドサイズが不正確だったのを修正した。
- Exタブに検出開始点および終了点をマニアル設定するための >1ボタンと >2ボタンを新設した。
- 静止画から座標をもとめてCSVファイルに設定するための特殊機能です。
- Exタプで Save Click Data 時、画面クリック位置が僅かにずれるのを修正した。
- Log Recover機能でbmpファイルのみでもログファイルを再製できるようにした。
- Map画像がなくbmp画像を代用する時の色を変更した。
- M.CSVファイルの以下を修正した
- L_Elves L_Bluejet もM.CSVに含めるようにした。
- フレーム数が1の時Durが0になるようにした。
V0.50 2004/12/12
- html レポート、およびM.CSV の形式および有効数字を大幅に見直した。
- htmlレポートからは観測地の緯度経度標高情報を削除し、代わりにLocation ID を表示することとしました。
- M.CSVは高精度の内部計算値を一部使用し、UFOOrbitへ受け渡すこととしました。このM.CSVを読み込むためにはUFOOrbit V0.02以降が必要です。
V0.51 2004/12/30
- M.CSVに記載される時刻がクリップの終了時刻になっていたのを開始時刻に修正した。
V0.52 2004/12/31
- MCSVのレコードバージョンを R04B とし、UFOOrbit過去バージョンへの互換性と識別を両立した。
V0.53 2005/1/1
- 群判定オプションに 期日範囲を前後に指定日数広げる +D を設定可能にした。
- 年をまたぐ群判定が場合によりできないバグを修正した。
V0.54 2005/1/16
- 年をまたぐ群でトレイルマップの輻射点が大幅にずれて表示されていた(極大日が12月が観測日が1月のM_Comなど)
V0.55 2005/2/15
- 手動で設定した分類は再分析によって変更されないように変更した。
(RestClassInfボタンでは手動設定もクリアされます)
V0.60 2005/4/15
- 将来のUFOCaptureV2.xxの出力形式である個別のxmlファイル読み込みに対応した。
- Log Recoverボタンを廃止し、常時ディレクトリ内のクリップに合わせてCSVを自動変更するようにした。
- 従来ステータスがDELETED,LOST,MOVED等となっていた移動または削除されているクリップはCSVに残さないようにした。
- Analyze logを指定した場合に作成される Mxx.txt内のfnoの値が1大きかったバグを修正した。
- 輻射点リスト内のm_XX1, m_XX2 をm_sLe とm_sCoと改名し、速度を加えた
V0.61 2005/4/30
- V2のレポートでヘッダ部分に正しい情報が入らないバグを修正した。
V0.62 2005/5/18
- 720x576を含む任意の解像度に対応した。
- Utyタブに bmp View Option (+Hit mark, Analyzed Line)を追加した。
V0.63 2005/5/22
- V0.62の変更によりMake P.BMP が機能しなくなっていたバグを修正した。
- Delete A Clip で最後のファイルを削除しても、CSVを再読み込みしないようにした。
V0.64 2005/5/23
- V0.62よりV1系記録が分析できなくなっていたバグを修正した。
- UFOCaptureV2ユーザはUFOCaptureExを使用してなくても使用できるようにした。
- V0.6で表示されるようになった動画が消去されているクリップの動画を表示しようとするとハングしていたバグを修正した。
- UFOCaptureV2のjpegオプションをオフにして生成される *P.bmp と*S.bmp も表示できるようにした。
- レポートの時間別集計および等級別集計で、削除されているものを無視するようにした。
- 起動時、map表示になっていた場合、bmp表示に直すようにした。
V0.65 2005/5/30
- UFOCaptureV2の結果処理時に、午前0時以前のクリップがない場合にレポートとCSVの日付が翌日にならないようにした。
- ZIP版も同時公開することとした。
V0.66 2005/5/31
- 日本語版Windows以外で、システムフォントサイズが異なる場合、ダイアログの大きさが変化して、マウスポインタによる位置指定がずれるバグを修正した。
V0.67 2005/8/9
- 日本語版Windows以外で、システムフォントサイズが異なる場合、ダイアログの大きさが変化して、Exタブでmag=xx/yy の表示が出ないバグを修正した。
- 輻射点リストで開始日付を一部修正した。
V0.68 2005/9/3
- 輻射点raの計算結果が負になる場合も0〜360度の範囲内となるようにした。
V0.70 2005/11/13
- 輻射点リスト UFOARadiant.txtに最近の修正を加えた。UFOARadiantA.txt と UFOARadiantM.txt は添付しないこととした。
- 輻射点リスト で err が0のものは候補として選択されないようにした。
- 過去の設定ファイルが読み込まれないことがあるバグを修正した。
- 夏時間を使用する地域で、星図やM.csvの時刻がずれることがあったバグを修正した。
V0.71 2006/01/17
- 1つのクリップに複数の流星が含まれていた時、再読み込みで1つしか読み込まれなかった。
V0.72 2006/01/18
- Adjust to record で Longitude だけ復元されないバグを修正した。
V0.73 2006/04/29
- Utyに観測時刻を秒単位で補正する Clock adjust for listed clips 機能を追加した。
- レポートの date_time欄およびM.csvのクリップ名を従来のクリップ名に基づく表示から、観測時刻に基づく表示に変更した。
- リンクライブラリをVS2005準拠の最新版に変更した。
V0.74 2006/10/02
- V0.73でインストールディレクトリ名に英数字以外が含まれている場合にregsvr.batが正常動作しないため、通常は自動登録するようにした。
- 実験用に分析ログ Mxxxxxxxx_xxxxxxx.txt に 平均極などの情報を加えた。
V0.75 2006/10/05
- 角速度の測定方法を平均極を利用して測定座標を補正した後に速度算出する方式に変更した。
- csvファイルに 速度測定点の赤経、赤緯、仰角を加え、角速度の有効数字を増やし、M.CSVのレコードバージョンを R05Bとした。
- R05Bは従来のR04Bと混在可能で、従来のUFOOrbitでそのまま処理できます。
- R05Bは将来のUFOOrbitでKV を使用しない高精度地心速度算出を行なうことができます。
- 速度測定点仰角はM..CSV上では単独の復元が不可能な形式で格納されており、UFOOribt以外は利用できません。
V0.76 2006/10/09
- V0.75で新規に追加した 速度測定点赤経が、観測流星の位置により誤った値になることがあるバグを修正した。
- M.CSVのレコードバージョンを R05B2 とした
V0.77 2006/11/02
- 角速度の測定方法に最小二乗法を導入した。V0.77における角速度測定方法は以下となります。
- フレーム毎観測座標のRaまたはDecのどちらかを前後2フレーム(全5フレーム)の情報を使用して正確に5フレームの中央になるように最小二乗法で修正し、他方のDecまたはRaを 求まった座標と経路の平均極を用いて平均直線上に乗るように補正する。
- フレーム間差分でフレーム毎のフレーム間角速度を求め、これを最大前後10フレームを使用した最小二乗法で各フレーム時刻の角速度を求める。
- 角速度測定点は30フレーム以下のクリップでは中央、30フレーム以上のクリップでは15フレーム目とした。
- 開始フレームと最終フレームは平均極や中間部分の速度計算には使用しないようにした。
- 単一点観測による群分類に使用する発光点角速度は、上記の方法で求めた2フレーム目の各速度とした。
V0.78 2006/11/17
- MCSVの角速度の値としてエラー表示が含まれることがあるバグを修正した。
V0.79 2006/11/18
V0.80 2006/12/31
- 短く動かない現象の場合に最小二乗による直線がもとまらず、Reverse lens correction error が発生していたのを回避した。
- 経路延長線が天の北極近くを通る場合、地表座標計算に切り替えて平均極を求めることとし、大きな誤差を生む確率を減らした。
- 本方法によって極の計算誤差が発生する可能性は大幅に減りましたが、尚、経路が天の北極と天頂を結ぶ直線に極めて近い場合、計算誤差が大きい可能性があります。
V0.81 2007/1/1
- V0.80 の平均極座標計算にバグがあったため、その論理をV0.79以前のものに戻した。
V0.82 2007/1/2
- 平均極計算を3つの座標系の中で最も計算誤差の少ない座標系を選択して実行することで特異点を完全に回避した。
- 輻射点位置からみた経路の視点、終点間の角度が90度を越える輻射点は候補としないようにした。
V0.83 2007/1/31
- UFOCaptureV2 V2.15 のキャプチャ結果を分析できるようにした。
【今後の課題】
UFOAnalyzerは動体の自動分析、自動分類、自動統計、ネット連携などを目指していますが、いまだ改良の余地は多々あります。
これまでに考えられている改良項目を以下にメモしておきます(まだ思いつきレベルのものが殆どです)。
- カメラ方向の自動決定
- クリップ毎のカメラ方向修正
- 新輻射点の自動発見機能
- 光度基準の自動設定とより正確な等級判定
- bmpまたはC.bmpまたはM.bmp画像への分析結果書き込み
- クリップの個別詳細情報(フレーム毎の動体位置など)の出力
- トラッキングへの対応
- 動体が検出領域境界にかかっているか否かの判定とそのログ出力
- 週単位等の任意期間のレポートの作成
- 速度分布レポート
- 大気差、歳差などの導入
- Windows Meで動作するようにする
- クリップの圧縮保存
- 静止画類の圧縮保存
- ドライブの残容量表示とチェック
- 複合クリップの分離機能
- bmpを恒星の位置を合わせて結合した画像の自動作成
- 空の透明度の統計をとる機能
- 画像解析によるグラデーションや雲をキャンセルした等級判定
- CSVのソート
- 自動ネットワーク送信
ご意見、ご感想、望ましい機能など、掲示版の方にお寄せ下さい。