UFOAnalyzerV4 (UA4 ) 改版履歴

------------------------------------------------------

------------------------------------------------------

2023/1/26 V4.18

2023/1/25 V4.17

2023/1/18 V4.16

2023/1/8 UFOAnalyzerV4(UA4) V4.14 公開 ( UA4 V4.14 - UFOAnayzerV2(UA2)からの変更点 )

【分析アルゴリズム変更】
A1.飽和明度への対応
検出対象と見なすピクセル(検出点)の検出で,従来のフレーム毎差分明度を元にした検出に加えて
明度飽和点などの高明度点を検出し、明度が飽和したために明度変化がなくなる火球等でも対象の
全画素を検出できるようにした。

そのサンプル内の最大明度-4より明るく、かつ明度が200以上の点を飽和明度点とし、
当該点のクリップの先頭12フレームの平均明度よりの増分を平均明度増分とし,
1フレーム前からの当該点の明度を増分を差分明度増分とし、
差分明度閾値(dl)をクリップの先頭12フレーム内の40番目の差分明度増分とし、
個別に指定可能な閾値増分をdlo(UA2でのddl)として以下を検出点とした。

飽和明度点が100点以上のサンプルの場合
明度飽和点で平均明度増分が101以上の点

飽和明度点が100点未満のサンプルの場合
平均明度増分が121以上 または
差分明度増分がdl+dlo以上 または
平均明度増分が当該サンプルの5番目の平均明度増分+dlo以上の点

検出点の検出後、隣接する検出点群を1つの対象とし、その明度重心を当該フレームでの対象位置(測定点)とした。
dloはUA2におけるdlを代替するもので、AXMLがある場合、AXML内に格納されている値が使用されるが、
Mainシートでdloチェックボックスがオンの場合には AXML内の値を無視してMainシートでの指定値を使用する

A2.対象の分裂への対応
対象のサンプル内位置と移動速度を考慮して一連の経路に含まれる測定点を決定し、
時間的な連続性のない対象を分離し、独立した経路として認識することとした。

対象動作の3フレーム目以降については直近の移動角速度による予測位置を算出し、最大3フレーム内で
予測位置の差が サンプル当たりedeg*(度) 内の変化点を連続する1つの経路(同一対象の移動)として連結する
こととした。これに伴いUA2のleap(離散サンプル距離)を廃止し、移動角速度の上限として class分類における
fast閾値を移動速度上限値 dps (度/秒)を使用することとした。

A3.雲等によって分割された経路の統合
複数の経路が検出された場合、その経路の極方向の誤差がconsR度以下で、遠く離れたは経路であっても、
欠落部分が最大跳躍サンプル数閾値(新leap)以下の場合は1つの経路に統合することとした。

A4.経路中の誤差による測定点の選別
1つの経路の極方向および始点終点決定に用いる測定点を直線性誤差を基準に選択することとした
一度すべてのサンプル内の測定点を用いた経路の極方向(最小二乗法による経路と観測点を含む平面に垂直な方向)
を算出した後に、この極方向に対して誤差の大きい測定点を除外して最終的な極方向を再計算することとした。

許容誤差はcdlim(度)として指定可能、自動(cdlim=-1指定)の場合には cdegの平均値の2倍を閾値とする。
この結果は分析直後マスク画像上に採用された測定点は赤、不採用となった測定点は黄色のXマークで表示される。
MCSV中に全測定点数はNs, 採用測定点数はNpassとして記録される。

A5.測定点タンミングの最小二乗法による決定
開始点、中間点、終了点について従来の観測経路平面極方向を用いた最小二乗法によりる補正に加えて、周辺点から赤経または赤緯とフレームの理論時刻を用いた周辺点からの最小二乗法により、そのフレーム時間の中央のタイミングの座標を計算して、そのタイミングでの位置および角速度を求めることとした。補正された位置座標、および開始点の角速度はMCSVとAXMLの両方に記録され、他はAXMLに記録され、フレーム毎補正位置と角速度はAnalyzelog による LCSVに出力することとした。

中間点の時刻をMCSV中に格納したため、開始点と中間点を用いて速度測定することにより大気減速の影響の小さい
速度測定が可能になった。

A6.分析開始サンプルのデフォルトを従来のHEAD-5から デフォルト12(F1設定で指定可能) に変更した。
これによりトリガ前の微光部分がある場合、より長く分析できるようになった。


【機能変更】
F1.最大8並列までの同時並列分析を可能とした。
次のforccコードのaviファイルはDirectXを使用しないオリジナルの読込処理により、並列処理可能となった
YUYV, YUY2, UYVY, RGB24, RGB32, DIB
コーデックを使用しているaviファイル(forcc LAGSなど)は 単一スレッドで順次分析される。
最大並列数をutyシートで1から8の範囲で指定可能とした(codecを使用した分析と合わせて最大9並列で処理可能)。
全体分析時間が最小となる並列数はCPUのスレッド数、クリップの解像度、格納媒体からの動画読出速度に依存する。
並列分析ではクリップの格納ドライブが異なるものが、優先されて処理される。
連続分析中のマスク画像の分析結果表示は表示タイミングが重なった場合、表示は省略される。

F2.UA4 64bit版 と 32bit版の両方を作成した。
64bit版は Windows64bit版のみで動作し、より高速で、8K解像度まで対応。
ただし、64bit動作可能な可逆コーデックは見つかっていないので事実上可逆圧縮クリップは処理できない。
32bit版は4K解像度まで対応し、32bit版および64bit版のWindowsで動作する。
Lagarith (sd),Ut codec(4Kまで)などのコーデックを使用したaviファイルの分析が可能。
両者ともに内部文字コードを16bit Unicodeとした(AXML等の文字コードはASCIIで変更なし)。
再配布可能ライブラリのインストール用にMicrosoft提供のVC_redistx86,exeまたはVC_redistx64.exeを同梱した。

F3.MCSVのフォーマットをレコード識別符号: R05B28に変更した。
経路中央点情報として MCSV内の ram,decm に対応する時刻オフセット delaym をMCSVに格納することとした。
delayとdelaymはトリガ時刻(head+1フレームの時刻)を0とした相対時間(秒)。
Voマッチングによる単点観測からの輻射点推定情報を削除した。

F4.不要オブジェクトの自動削除
以下のオブジェクトを自動削除するようにした。
1つのクリップで複数オブジェクトが分析され、流星と分類されたオブジェクトがある場合の流星以外のオブジェクト
rm_nzがONの場合
サンプル数がminsに等しく、検出点数がクリップ全体の検出点数の1/10以下のオブジェクト
全体の検出点数が1001以上の場合に検出点数が100未満のオブジェクト

F5.AXMLへの全分析パラメータの記録
以下をAXMLに追加し "ufoanalyzer_record version"を202とした。
プロファイルとして設定すれば、カメラ毎のデフォルト設定値として利用できる。
f1(開始フレーム番号),
f2(終了フレーム番号),
mins 最短オブジェクトサンプル数
dlo(変化検出明度オフセット),
edeg(1サンプル時間毎の測定点予想位置誤差上限(度)),
dps(1経路内移動角速度上限、fast判定閾値 (度/秒)),
consR(経路連結極方向誤差上限(度)),
leap consRによる経路結合の場合に許される最大欠落サンプル数
cdlim(極計算編入誤差上限(度)),
dlim(恒星リンク距離上限(ピクセル))
dxoffset(動画のフレームと分析フレーム番号の差)
bvf(恒星色係数),
magR(MaskEditor画面での比較恒星等級上限),,

F6.マスクエディタでの編集を操作毎にN.bmpに保存することとし、明示的な保存を不要とした。
必要な場合N.bmpを消去し、オリジナルのM.bmpの使用に戻すことができる。

F7.SSD格納とUA4によるHDDへの転送
キャプチャ用SSDから保存用HDDへの転送を従来はUFOCaptureHD2で行う想定だったが、
SSD上で分析/選択した方がより短時間に処理できるため、SSDからHDDへの転送をUA4側で行う運用を可能とした。
Mainシートのディレクトリリストに save to 列と ymd 列を追加し、転送先ディレクトリと年月日ディレクトリ階層の有無を指定する。
Move C clipsにより、全クリップファイルが転送される。。
デレクトリリストのymd設定がオンの場合、転送先に自動的にy,m,dの3階層のディレクトリが作られ、日別に分類転送される
日別の転送はUFOCaptureのpm-am/day指定ONと同様に12時以前は前日のディレクトリに転送される。
すべての転送終了後、Utyシートの "exec after move C" に登録されたファイル(bat/execなど)を実行する。
ここに例えば以下のようなコマンドを記載した.batファイルを指定すれば転送後に複数のPCを自動シャットダウンできる
start C:\Windows\System32\shutdown.exe -s -f -t 5 -m 192.168.0.81
start C:\Windows\System32\shutdown.exe -s -f -t 5 -m 192.168.0.82


F8.Mainシートのクリップリストにチェックボックスを付け、チェックされているクリップの以下の一括処理ができるようにした。すいくd q/wqwふ
-- AnalyzeC clips: 分析
-- Delete Cclips : 削除
-- Move Cclips : 移動 移動しないクリップはチェックがOFFとなり残る。転送後再度read dirされる。

F9.Mainシートのクリップリストで、チェックについて以下の操作ができる。
-- Read Dir : 全ON
-- all on : 全ON
-- all off : 全OFF
-- =on : 名称に'='を含む時刻トリガクリップをON、他をOFF
-- _on : クリップの分類名が '_'で始まるクリップをON、他をOFF
-- on : 現在選択されているクリップをON
-- off : 現在選択されているクリップをOFF
-- prev または 上カーソルキー : 1つ前のクリップに選択を移動
-- prev + Ctrlキー : 次のチェックONクリップまたは先頭に移動
-- next または 下カーソルキー : 1つ後のクリップに選択を移動
-- next + Ctrlキー : 次のチェックONクリップまたは最後に移動
-- チェックのクリック ; ON/OFFのトグル
-- 右カーソルキー : 現在選択されているクリップをONにして次のクリップに選択を移動
-- 左カーソルキー : 現在選択されているクリップをOFFにして次のクリップに選択を移動
-- Deleteキー : Delete C clipsの実行
-- スペースキー : 選択中クリップの動画表示

F10.クリップのピークホールド表示にはUFOHD2と同様に検出対象に赤枠線を付加した。

F11.Utyシートに以下の機能を追加した
del an axml 現在選択中のクリップのAXML(分析結果)を削除する
del all axmls すべてのクリップのAXMLを削除する

F12.MaskEditorシートに以下の機能を追加した
qml 線状分析領域指定(従来のCtrl+Qm)

F13.次の機能を固定化または廃止した。
rxmlの出力を廃止した
UtyシートのTrim機能を廃止した
profile/analyzeシートのAdjustボタン(マニュアルリンクされたリンクを用いた等級と視野パラメータの一括調整)を廃止した
UA2で指定可能だった等級計算式の傾きを-2.5固定とした。
UA2で指定可能だった等級計算時の対象半径を5ピクセル固定とした
Voマッチングによる単点観測データからの速度変化へのサインカーブフィッティングによる輻射点,地心速度、流星群の推定を廃止した。
MaskEditor画面での表示恒星等級設定の視野角連動自動設定を廃止し、デフォルトを5.0等とし、各クリップ分析時の指定等級をAXMLに記録することとした
画面端の非リンクマージン(従来のLX1,LX2,LY1,LY2)は5ピクセル固定とした
インタレスースのオーダーチェック(bbfチェック)を廃止した。
Analyzelogの出力は大幅に縮小した。

F14.Viewシートにoチェックボックスを付け、これがONの時はクリップが分析済みであればコマ送り上でオブジクト位置を表示するようにした。
静止画とオブジェクト表示のフレームはクリップによってずれることがあり、この差をdxoffsetとしてAXMLに記憶した。dxoffsetはViewシートでコマ送り状態の時に Ctrl+">||"ボタンまたは Ctrl+"||<"ボタンにより加減できる。

F15.TrailMapシートに VgチェックボックスとVg値指定欄を新設し、Vgチェックがオンの場合、各経路線の描画の再に測定開始角速度と指定Vgから推定される輻射点位置を表示することとした。指定Vgに対する2つの解に対し、輻射点離角が小さい方に?マークを付け、大きい方を薄延長線の終端とした。


【その他】
E1.AVIファイル上の1つのコマを1フレーム、それがインタレースされていた場合の同一時刻のラスター群を1フィールド、同一時刻として分析する1フレーム(プログレッシブの場合)または1フィールド(インタレースの場合)を1サンプルとに呼ぶこととした。

E2. 以下の機能は今回実装が見送りとなった。
欧州で使われているECSV形式での出力
分析結果の自動アップロード
DLOの自動調整再分析機能
TLEの自動判定機能
UFOCaptueのキャプチャ直後の自動分析

-----