解析結果は、画像と集計データをまとめたZIPファイルでダウンロードします。このページでは、ZIPファイルに入っている各ファイルの内容と、集計データ trace_result.csv の読み方を説明します。
結果のダウンロード方法ははじめての解析(チュートリアル)をご覧ください。
結果の一覧で軌跡を見る
「解析状況・解析結果」の一覧で、左端のサムネイルを押すと、移動軌跡の画像が開きます。ZIPファイルをダウンロードする前に、追跡の結果を画面で確かめられます。

複数のターゲットを追跡した解析では、全員の軌跡を重ねた画像と、ターゲットごとの画像を切り替えて見られます。
ZIPファイルの中身
ZIPファイルの名前は be-chaseYYYYMMDDHHMM.zip で、作成した日時(日本時間)が入ります。ターゲットが1体の解析では、ファイルはフォルダに分かれず、すべて同じ階層に入っています。複数のターゲットを追跡した場合の構成は、後述の「複数のターゲットを追跡したとき」をご覧ください。
ZIPファイルには、実際に作成されたファイルだけが入ります。分析オプションの設定によって、入るファイルが変わります。チェックエリア・縮尺・分割時間は、解析が終わったあとでも条件を変えて分析し直す(再分析)で変えて、結果を作り直せます(Standardプラン以上)。
どの解析でも入るもの
| ファイル | 内容 |
|---|---|
trace_result.csv | 集計データ(後述) |
trace_img.png | 移動軌跡を黒地に描いた画像 |
trace_img_line.png | 移動軌跡を背景の画像の上に描いた画像 |
trajectory_density_heatmap.png | 軌跡の通過回数のヒートマップ。よく通った場所ほど色が濃くなります |
dwell_time_heatmap.png | 滞在時間のヒートマップ。長くいた場所ほど色が濃くなります |
speed_visualization.png | 移動の速さを色で表した軌跡。速いほど High 側、遅いほど Low 側の色になり、止まっていた場所は黒になります。色は速さの相対的な違いを表すもので、数値は入りません |
rotation_trajectory.png | 検出した回転行動の軌跡。右回りは赤、左回りは青で描かれます |
ターゲットの動きが少なかった場合などは、一部の画像が作られないことがあります。
チェックエリアを設定したときに増えるもの
チェックエリアを設定すると、次の画像が加わります。
| ファイル | 内容 |
|---|---|
checkarea_entry_exit_heatmap.png | 区画に出入りした位置のヒートマップ |
checkarea_entry_heatmap.png | 区画に入った位置だけのヒートマップ |
checkarea_exit_heatmap.png | 区画から出た位置だけのヒートマップ |
出入りのヒートマップは、区画への出入りが1回もなかった場合は作られません。3枚の色の尺度は共通なので、並べて比べられます。また、チェックエリアを設定すると、軌跡の通過回数と滞在時間のヒートマップに、区画の位置が黒い破線で描かれます。
分割時間を設定したときに増えるもの
分割時間で区切った区間ごとに、次の画像が作られます。ファイル名の末尾の数字は、0から始まる区間の番号です。
| ファイル | 内容 |
|---|---|
trace_img_d{番号}.png | 区間ごとの移動軌跡 |
trajectory_density_heatmap_abs_{番号}.png | 区間ごとの通過回数のヒートマップ(全期間と共通の色の尺度) |
trajectory_density_heatmap_rel_{番号}.png | 区間ごとの通過回数のヒートマップ(その区間の中での色の尺度) |
dwell_time_heatmap_abs_{番号}.png | 区間ごとの滞在時間のヒートマップ(全期間と共通の色の尺度) |
dwell_time_heatmap_rel_{番号}.png | 区間ごとの滞在時間のヒートマップ(その区間の中での色の尺度) |
speed_visualization_{番号}.png | 区間ごとの速さの可視化 |
abs の画像は色の尺度が全区間で共通なので、区間どうしの量の違いを比べるのに向いています。rel の画像はその区間の中で色の幅を最大に使うので、1つの区間の中での分布を見るのに向いています。
Proプランでだけ入るもの
| ファイル | 内容 |
|---|---|
trace_result_all | ターゲットの座標データ(後述) |
Freeプランの場合
ファイルの構成は有料プランと同じですが、次の制限があります。
- すべての画像の中央に「Be-Chase Free Trial Version」の透かしが入ります
trace_result.csvのうち、出来事を1件ずつ並べるセクション(区画への出入りの記録、区画ごとの出入り時の停止、回転行動の記録)は、それぞれ最初の3件だけが記録されます
それ以外の集計は、有料プランと同じ内容が出力されます。
複数のターゲットを追跡したとき
複数のターゲットを追跡した解析(Proプラン)では、全員をまとめたファイルと、ターゲットごとのフォルダ target1/〜target3/ に分かれます。
| 場所 | ファイル | 内容 |
|---|---|---|
| ZIPの直下 | trace_result.csv | 全員をまとめた集計データ(後述) |
| ZIPの直下 | trace_img.png | 全員の移動軌跡を、ターゲットの色で黒地に重ねた画像 |
| ZIPの直下 | trace_img_line.png | 全員の移動軌跡を、背景の画像の上に重ねた画像 |
| ZIPの直下 | trace_result_all | 全員の座標データ(後述) |
target{番号}/ | trace_result_target{番号}.csv | そのターゲットだけの集計データ |
target{番号}/ | 上の表と同じ名前の画像 | そのターゲットだけの画像(軌跡、ヒートマップ、速さ、回転の軌跡、チェックエリアや分割時間を設定したときの画像) |
ヒートマップなど、ターゲットごとに作る画像は、ZIPの直下には入りません。
trace_result.csv の読み方
ファイルの形
trace_result.csv は、1行が1コマを表す表ではありません。見出しの付いた複数の集計が、縦に並んだレポートです。集計ごとに列の数も意味も違います。
Excelでそのまま開けます。区画の名前に日本語を使っていても文字化けしません。グラフや統計に使うときは、必要な集計の部分だけを別のシートにコピーしてお使いください。
プログラムで読み込む場合、ファイルは BOM 付きの UTF-8 で、改行はCRLFです。Python では encoding='utf-8-sig' で開いてください。
集計の並び
集計は次の順に並びます。設定によって出ないものがあります。ターゲット1だけを対象にする集計は、見出しに「(target 1)」が付きます。
| 見出し | 内容 | 出る条件 |
|---|---|---|
| Be-Chase Result(日時) | 結果を作成した日時(日本時間) | 常に |
| Total Tracing Data | 全体の総移動距離 | 常に |
| Stop Analysis (target 1) | 停止の回数と時間 | 常に |
| Rotation Analysis (target 1) | 回転行動 | 常に |
| Dwell Time Concentration (Gini Coefficient) (target 1) | 滞在場所の偏り | 常に |
| Stop Analysis per Check Area (target 1) | 区画ごとの停止 | チェックエリアを設定したとき |
| Duration and length data per CheckArea. | 区画ごとの滞在時間と移動距離 | チェックエリアか分割時間を設定したとき |
| Stop Analysis within Entry/Exit Durations (target 1) | 出入りごとの停止 | 区画への出入りがあったとき |
| CheckArea and Target Data. | 区画への出入りの記録 | チェックエリアか分割時間を設定したとき |
ターゲットの動きが少なく集計できなかった場合など、一部の集計が出ないことがあります。
複数のターゲットを追跡したとき
ターゲットごとの target{番号}/trace_result_target{番号}.csv は、そのターゲットだけを集計したもので、形はこのページで説明する1体のときと同じです。見出しの「(target 1)」や列名の target1 の番号が、そのターゲットの番号になります。
まとめの trace_result.csv は、全員を1つのファイルで比べるためのものです。
- 冒頭に、ターゲットの数を示す
Multi-target resultの行と、ファイルの形を説明するNoteの行が入ります - 集計は上の表と同じ順に並び、それぞれの集計の中に、ターゲット1・2・3の行が順に並びます
- 各行の1列目がターゲットの番号です。2列目以降は、ターゲットごとのCSVの同じ行と同じです
- 見出しからは「(target 1)」のような番号が外れます
共通の約束ごと
時刻
すべて、解析の開始時点を0とした秒です。
長さの単位
列名の末尾に単位が付きます。縮尺を設定していない場合は (pixel)、設定した場合は選んだ単位((mm)、(cm)、(m))です。縮尺で換算されるのは移動距離の値だけです。詳しくは縮尺を設定するをご覧ください。
ターゲットの呼び方
列名の target1 や target_1 は、ターゲット設定で指定した対象を指します。
集計の方法
ターゲットの位置は、0.1秒ごとの位置にそろえてから集計しています。ターゲットを見失った時間が1秒以内の場合は、前後の位置から補って集計します。1秒を超えて見失った区間は、移動距離にも滞在時間にも停止にも含めません。
複数のターゲットを追跡した場合は、見失った時間の長さにかかわらず、前後の位置から補いません。別の個体の下に隠れていた時間も、見失った時間として扱います。
数値の書き方
多くの値は小数第2位までに丸めて出力されます。時刻の一部は 12.3 のように桁数がそろわずに出力されることがあります。
Total Tracing Data(総移動距離)
| 列 | 内容 |
|---|---|
| total_time(s) | 解析した時間の長さ(秒) |
| target1(単位) | 解析した時間全体の総移動距離 |
データは1行です。ターゲットを見失っていた区間の移動は含みません。
Stop Analysis (target 1)(停止)
ターゲットが一か所にとどまっていた回数と時間です。
| 行 | 内容 |
|---|---|
| Total Stops | 停止の回数 |
| Total Stop Time (s) | 停止時間の合計(秒) |
| Average Duration (s) | 1回あたりの平均の停止時間(秒) |
| Durations (s) | 1回ごとの停止時間の一覧。停止が1回以上あったときだけ出ます |
停止の定義:ターゲットが、ある地点を中心とした一定の範囲の中に2秒以上とどまった状態を1回の停止とします。範囲の半径は、ターゲット設定で囲んだ枠の長い方の辺の半分です。つまり、ターゲットの体の大きさを基準に判定しています。
分割時間を設定した場合は、続けて「Stops per interval」に区間ごとの停止の回数と時間が出ます。区間をまたいだ停止は、停止が終わった区間に数えます。
Rotation Analysis (target 1)(回転行動)
ターゲットが同じ方向に1周以上回った動きを、回転行動として数えます。
| 行・列 | 内容 |
|---|---|
| Total Rotations | 回転の回数 |
| Clockwise (Right) Summary | 右回りの回転の回数と平均値 |
| Counter-Clockwise (Left) Summary | 左回りの回転の回数と平均値 |
| Detailed Rotation Events | 回転1回ごとの記録。回転が1回以上あったときだけ出ます |
Detailed Rotation Events の各列の意味は次のとおりです。
| 列 | 内容 |
|---|---|
| direction | 回転の向き。CW が右回り、CCW が左回り |
| start_time_s / end_time_s | 回転の開始と終了の時刻(秒) |
| duration_s | 回転にかかった時間(秒) |
| radius_px | 回転の半径(ピクセル) |
| path_length_px | 回転中の軌跡の長さ(ピクセル) |
| circularity | 円らしさ。1.0 に近いほど、きれいな円を描いて回っています |
| angle_deg | 回転と判定した時点での回転の角度(度) |
回転の半径と軌跡の長さは、縮尺を設定してもピクセルのまま出力されます。
Freeプランでは、Detailed Rotation Eventsは最初の3件だけが記録されます。
回転の定義:直近1.5秒の動きから回転の中心を求め、その中心のまわりを同じ向きに360度以上回ったときに1回と数えます。その場で小さく向きを変えただけの動きや、まっすぐ進む動きは、回転として数えないようにしています。
Dwell Time Concentration (Gini Coefficient) (target 1)(滞在場所の偏り)
滞在時間が特定の場所に集中していたかどうかを、0から1の値で表します。0に近いほどまんべんなく動き回っており、1に近いほど特定の場所にとどまっていたことを表します。解析範囲を格子状に区切ったすべてのマス目(一度も訪れなかったマス目を含む)を使って計算します。
| 行 | 内容 |
|---|---|
| Gini coefficient for all period | 解析した時間全体の値 |
| Gini coefficient per interval | 区間ごとの値(分割時間を設定したとき) |
ジニ係数の考え方と使い方はジニ係数による滞在の偏りの定量化で解説しています。
Stop Analysis per Check Area (target 1)(区画ごとの停止)
| 列 | 内容 |
|---|---|
| Area Name | 区画の名前 |
| Stops | その区画の中で起きた停止の回数 |
| Total Stop Time (s) | 停止時間の合計(秒) |
| Average Duration (s) | 平均の停止時間(秒) |
| Durations (s) | 1回ごとの停止時間の一覧 |
区画ごとに1行で、区画の名前の順に並びます。停止は、停止が始まった位置がある区画に数えます。区画が重なった場所で起きた停止は、どちらか一方の区画にだけ数えます。
Duration and length data per CheckArea.(区画ごとの滞在時間と移動距離)
区画ごとの滞在時間と移動距離を、横に並べた表です。
1行目はターゲット、2行目は列の名前です。列の名前は次のようになっています。
| 列 | 内容 |
|---|---|
| (1列目) | 行の種類。duration(s) は時間、length(単位) は移動距離の行です |
| time | 集計した時間の範囲(例:0s-60.0s) |
| total | duration(s) の行では集計した時間の長さ、length の行では総移動距離 |
| area_番号:名前 | 区画ごとの値。duration(s) の行ではその区画にいた時間の合計、length の行ではその区画の中での移動距離 |
area_ のあとの番号は、区画を描いた順に0から振られます。列は区画の名前の順に並びます。同じ名前の区画があっても、この番号で区別できます。
分割時間を設定していない場合は、解析した時間全体について duration(s) と length の2行が出ます。分割時間を設定した場合は、区間ごとにこの2行が繰り返されます。
解析を始めた時点ですでに区画の中にいた場合は、時刻0に入ったものとして集計します。
Stop Analysis within Entry/Exit Durations (target 1)(出入りごとの停止)
区画に入ってから出るまでの1回ごとに、その間の停止をまとめた表です。
| 列 | 内容 |
|---|---|
| Area Name | 区画の名前 |
| Entry No. | その区画への何回目の進入か |
| Entry Time (s) | 区画に入った時刻(秒) |
| Exit Time (s) | 区画から出た時刻(秒) |
| Stops in Duration | 区画にいる間に起きた停止の回数 |
| Total Stop Time (s) | 区画にいる間の停止時間の合計(秒) |
| Average Stop Time (s) | 平均の停止時間(秒) |
| Stop Durations (s) | 1回ごとの停止時間の一覧 |
行は、区画を描いた順、次に入った時刻の順に並びます。区画ごとの Entry No. の最大値が、その区画への進入回数です。
動画の最後まで区画の中にいた場合は、解析の終了時刻が Exit Time になります。
Freeプランでは、この表は最初の3件だけが記録されます。
CheckArea and Target Data.(区画への出入りの記録)
区画にいた1回ごとに1行の記録です。
| 列 | 内容 |
|---|---|
| check_area | 区画の名前 |
| target_num | ターゲットの番号 |
| in_time | 区画に入った時刻(秒) |
| out_time | 区画から出た時刻(秒) |
| line_length(単位) | その回に区画の中で移動した距離 |
行は時刻の順に並びます。最後に total の行があり、総移動距離が入ります。
分割時間を設定した場合は、区間の区切りで記録を分けます。区切りの時点で区画の中にいた場合は、そこで1行を終え、次の区間で新しい行として続けます。区間の区切りには -------- の行が入ります。そのため、分割時間を設定したときの進入回数は、この表の行数ではなく、前述の Entry No. から数えてください。
この表は区画を名前で表すため、同じ名前の区画があると区別できません。
Freeプランでは、この表は最初の3件だけが記録されます。
集計できなかった場合
ターゲットをほとんど検出できなかった場合は、trace_result.csv に「No analyzable tracking data」と記録され、通常の集計は出力されません。画像も作られません。これは「結果が0だった」のではなく、「集計を行えなかった」ことを表します。
背景やターゲットの設定、撮影条件を見直してください。うまくいかないとき(トラブルシューティング)の「追跡の精度」も参考にしてください。設定を見直したあとは、解析を始める前にプレビューで確認すると、同じ結果の繰り返しを防げます。
trace_result_all(Proプランの座標データ)
ターゲットの位置を1コマごとに記録したテキストファイルです。拡張子はありません。テキストエディタや表計算ソフトで開けます。
1行が1コマで、次の形で記録されています。見出しの行はありません。
<時刻> <x1>,<y1> <x2>,<y2> <x3>,<y3>
- 時刻は解析の開始時点を0とした秒です
- 座標は動画の画面上のピクセルで、左上を原点とします。縮尺は反映されていません
- 区切りは空白です。1つのターゲットの x と y はカンマで区切られています
- ターゲットの列は常に3つ分あります。ターゲットを検出できなかったコマや、使っていない列は
0,0になります - 複数のターゲットを追跡した場合は、1列目からターゲット1・2・3の順に並びます。見失っていたコマ(別の個体の下に隠れていたコマを含む)は
-1,-1になり、使っていない列(2体のときの3列目)は0,0のままです
表計算ソフトで開くときは、区切り文字に「空白」と「カンマ」の両方を指定すると、列に分かれます。
