Image Analyst ライセンスで利用できます。
概要
タイム スタンプで同期されたアーカイブ済みのビデオ ストリーム ファイルとそれに関連するメタデータ ファイルを結合してビデオ ファイルを作成します。
このツールを使用すると、ビデオ ストリーム ファイルとそれに関連する別のメタデータ ファイルから FMV 対応のビデオ ファイルを作成できます。メタデータは、同期されたタイム スタンプでビデオ ファイル内にエンコードされます。ビデオ ファイルとメタデータ ファイルで構成される 2 つのファイルを結合する処理を多重化と呼びます。
使用法
このツールはアーカイブ済みのビデオ ファイルを扱う設計になっているため、ライブ ビデオ ストリームは操作できません。
多重化するビデオ ファイルの形式は、使用可能な 12 種類のビデオ形式のうちの 1 つにする必要があります。もう一方のメタデータ ファイルは、適切なフィールド見出しと関連値を含むカンマ区切り値 (CSV) ファイルです。
使用可能なビデオ形式を次の表に示します。
説明 エクステンション MPEG-2 トランスポート ストリーム
.ts MPEG-2 プログラム ストリーム
.ps MPEG ファイル
.mpg MPEG-2 ファイル
.mpg2 MPEG-2 ファイル
.mp2 MPEG ファイル
.mpeg VLC (MPEG2)
.mpeg2 MPEG-4 ムービー
.mp4 MPEG-4 ファイル
.mpg4 H264 ビデオ ファイル
.h264 VLC メディア ファイル (MPEG4)
.mpeg4 VLC メディア ファイル (VOB)
.vob ビデオ ストリーム ファイルに関連付けられたメタデータを使用すると、マップ上でビデオ センサーの飛行経路、ビデオ画像フレームの中心、ビデオ フレーム フットプリントの 4 つのコーナーが算出されます。
FMV は Motion Imagery Standards Board (MISB) 仕様に対応しています。完全な MISB 仕様 では、FMV に必要とされるよりもはるかに多くのパラメーターが規定されています。指定された MISB パラメーターは、すべてのパラメーターまたはそのサブセットを含め、最終的なビデオにエンコードされます。
ビデオ画像フットプリントの相対コーナー ポイントをマップ上でフレーム アウトラインとして算出するには、次のリストに示された 12 の基本メタデータ フィールドが必要となります。これらのメタデータ フィールドの詳細については、パラメーター記述をご参照ください。メタデータの完全性と正確性が確保されている場合は、このツールでビデオ フレームのコーナーが算出され、マップ上に表示できるビデオ フレーム アウトラインのサイズ、形状、および位置が求められます。マップ上のビデオ フレーム フットプリントの算出に必要なメタデータ フィールドを次に示します。
- UNIX タイムスタンプ
- Sensor Latitude
- Sensor Longitude
- Sensor Altitude
- Platform Heading
- Platform Pitch
- Platform Roll
- Sensor Relative Roll
- Sensor Relative Elevation
- Sensor Relative Azimuth
- Horizontal Field of View
- Vertical Field of View
これは、ビデオとマップ間の変換の算出、マップ上でのビデオ フットプリントの表示、その他の機能 (ビデオとマップのデジタイズやマーキングなど) の有効化を実行するのに最低限必要なメタデータです。
[メタデータ フィールドの値は、C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得されたメタデータ テンプレート (FMV_Multiplexer_Field_Mapping_Template.csv) に入力できます。]
- FMV_Multiplexer_Field_Mapping_Template.csv ファイルに含まれているフィールドはすべて MISB メタデータ フィールドです。
- 上記の 12 のパラメーターだけが FMV 対応のビデオ ファイルの作成に必要となります。FMV 対応のビデオ ファイルを作成する場合、MISB 仕様で規定されたパラメーターは指定しなくてもかまいません。MISB パラメーターを別途指定すると、これらのパラメーターは FMV 対応のビデオ ファイルにエンコードされます。
生成される多重化ビデオ ファイルのパフォーマンスは、メタデータ ファイルに含まれるデータの種類と品質、およびビデオ データとメタデータ ファイルの同期の精度によって異なります。
- FMV_Multiplexer_Field_Mapping_Template.csv ファイルに UNIX Time Stamp、Sensor Latitude、および Sensor Longitude フィールドしか含まれていない場合、センサーの位置はマップ上に表示されますが、ビデオ フレームのフットプリントは表示されません。フィーチャのデジタイズやビデオ内での距離の計測など、一部の機能が使用できなくなります。
- ビデオとメタデータを結び付けるタイム スタンプが正確に同期していないと、マップ上でのビデオのフットプリントとセンサーの位置がビデオ プレイヤー内のビューからオフセットされます。この場合には、FMV_Multiplexer_TimeShift_Template.csv テンプレートを使用して、ビデオとメタデータのタイミングを調整します。
- FMV_Multiplexer_TimeShift_Template.csv テンプレートは C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得できます。
FMV_Multiplexer_Field_Mapping_Template.csv ファイル内の 1 つのパラメーター セットには、地表に投影変換されたビデオ画像フレームの 4 つのコーナーのマップ座標が含まれています。4 つのコーナーのマップ座標が指定されている場合は、これらの座標が FMV 対応のビデオの作成に使用されます。4 つのコーナーのマップ座標が指定されていない場合は、[数値標高モデル] パラメーターで DEM データのソースを指定します。これにより、このツールで上記の必須パラメーターからビデオのフットプリントが算出されます。
ビデオのフットプリントとフレームの中心の精度は、指定された DEM データ ソースの精度によって変わります。DEM データにアクセスできない場合は、海面を基準とする平均標高と単位を入力できます (15 フィートや 10 メートルなど)。水中の場合は、-15 フィートや -10 メートルのように入力します。平均標高や海深を使用しても、DEM や水深線データを指定した場合と同じ精度にはなりません。可能な限り、DEM レイヤーまたはイメージ サービスを指定することをお勧めします。
構文
VideoMultiplexer(in_video_file, metadata_file, out_video_file, {metadata_mapping_file}, {timeshift_file}, {elevation_layer})
パラメーター | 説明 | データ タイプ |
in_video_file | 入力ビデオ ファイルは FMV 対応のビデオ ファイルに変換されます。 使用可能なビデオ ファイル タイプは、*.avi (H.265 ではなく、H.264 に対応)、*.h264、*.mp2、*.mp4、*.m2ts、*.mpeg、*.mpeg2、*.mpeg4、*.mpg、*.mpg2、*.mpg4、*.ps、*.ts、および *.vob です。 | File |
metadata_file | 特定の時間のビデオ フレームのメタデータを含むカンマ区切り値 (CSV) ファイル。 各列は 1 つのメタデータ フィールドを表し、これらの列のいずれかを時間参照にする必要があります。時間参照は、UNIX タイム スタンプ (1970 年からの経過秒数) に 100 万を乗算して求められた値であり、整数として格納されます。この時間は整数として格納されているため、任意の瞬間 (100 万分の 1 秒まで) を整数で参照できます。したがって、500,000 のうちの 2 つのエントリ間の時差は経過時間中の 2 分の 1 秒になります。 先頭の行には、メタデータ列のフィールド名が示されます。必要に応じて、FMV_Multiplexer_Field_Mapping_Template.csv ファイルを使用して、これらのフィールド名を対応するフィールド名と一致させることができます。後続の行にはそれぞれ、時間フィールドで指定された時点のメタデータ値が示されます。FMV_Multiplexer_Field_Mapping_Template.csv テンプレートは C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得できます。 | File |
out_video_file | 出力ビデオ ファイルの名前には、次に示すファイル拡張子が付きます。 使用可能なビデオ ファイルは、*.h264、*.mp2、*.mp4、*.m2ts、*.mpeg、*.mpeg2、*.mpeg4、*.mpg、*.mpg2、*.mpg4、*.ps、*.ts、および *.vob です。 | File |
metadata_mapping_file (オプション) | 5 列と 87 行で構成される CSV ファイルであり、C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得された FMV_Multiplexer_Field_Mapping_Template.csv テンプレートを基準としています。 それぞれの行は、標準 MISB メタデータ タグのいずれかを表します (センサーの緯度など)。最初の 2 列には、MISB インデックスと MISB タグ名が示されます。3 番目の列には、[in_metadata_file] パラメーター (存在する場合) に表示されるフィールド名が示されます。3 番目の列にデータを入力すると、ソフトウェアでメタデータ フィールド名を適切な FMV メタデータ タグと照合できるようになります。4 番目と 5 番目の列には、そのタグに関連する単位とメモが示されます。 | File |
timeshift_file (オプション) | 定義済みの時間シフト間隔を含むファイル。 ビデオ画像とメタデータの時間の同期が取れていることが理想です。この場合には、Full Motion Video の画像フットプリントに囲まれた状態でフィーチャをビデオ画像に表示できます。ビデオのタイミングとメタデータのタイミングが一致しない場合があります。この状況では、地表フィーチャが画像フットプリントに囲まれる瞬間とその地表フィーチャがビデオ画像に表示される瞬間との間に明確な時間の遅れが生じます。この時間シフトが一貫して観測可能な場合、マルチプレクサーはビデオのタイミングに合わせてメタデータのタイミングを調整することができます。 ビデオのタイミングとメタデータのタイミングが一致しない場合は、C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得された FMV_Multiplexer_TimeShift_Template.csv テンプレートで時間シフトを指定します。時間シフト観測ファイルは、2 つの列 (elapsed time および time shift) と 1 つ以上のデータ行を含む CSV ファイルです。列名の行はオプションです。 たとえば、全体を通してビデオ画像に 5 秒の遅れがある場合、時間シフト観測ファイルには「0:00, -5」という 1 つの行が含まれます。ビデオ全体で 5 秒のずれが生じます。 ビデオの 0:18 の時点で 5 秒の遅れがあり、2:21 の時点で 9 秒の遅れがある場合、時間シフト観測ファイルには、次の 2 つの行が含まれます。
この場合には、ビデオの開始時と終了時に異なるずれが生じます。 時間シフト観測ファイルには、任意の数の時間シフト間隔を定義できます。 | File |
elevation_layer (オプション) | ビデオ フレームのコーナー座標の算出に必要な標高のソース。このソースは、レイヤー、イメージ サービス、平均地表標高または海深にすることができます。平均標高値には、計測単位 (メートル、フィート、その他の長さの計測単位) を含める必要があります。 ビデオのフットプリントとフレームの中心の精度は、指定された DEM データ ソースの精度によって変わります。DEM レイヤーまたはイメージ サービスを指定することをお勧めします。DEM データにアクセスできない場合は、海面を基準とする平均標高と単位を入力できます (15 フィートや 10 メートルなど)。水中の場合は、-15 フィートや -10 メートルのように入力します。平均標高や海深を使用しても、DEM や水深線データを指定した場合と同じ精度にはなりません。 フレームのコーナー座標を算出する場合、平均標高値は常に、メタデータに記録されたセンサーの高度または深度よりも小さい値でなければなりません。たとえば、10 メートル以上のセンサー高度でビデオを撮影した場合、有効な平均標高は 9 メートル以下になります。深度が -10 メートルまでの水中でビデオを撮影した場合、有効な平均標高 (海面を基準とする) は -11 メートルまたはそれより深くなります。[センサー高度] 値が平均標高値を下回っている場合、そのレコードに対して 4 つのコーナー座標は算出されません。投影領域の平均標高がわからない場合は、DEM を使用します。 | Raster Layer; Image Service; Linear Unit |
コードのサンプル
この例では、アーカイブ済みのビデオとそれに関連するメタデータを結合してビデオ ファイルを作成します。
arcpy.ia.VideoMultiplexer(r"C:\input_video.mpeg", r"C:\video_metadata.csv", r"C:\output_video.mpeg",
r"C:\Video_Multiplexer_MISB_Field_Mapping_Template.csv",
r"C:\Video_Multiplexer_TimeShift_Template.csv", "c:\\test\\dem.tif”)
この例では、アーカイブ済みのビデオとそれに関連するメタデータを結合してビデオ ファイルを作成します。
import arcpy
from arcpy.ia import *
arcpy.CheckOutExtension("ImageAnalyst")
in_video = "c:\\test\\drone_vid.mpeg"
in_metadata = "c:\\test\\videometadata.csv"
out_video = "c:\\test\\mutiplexer_output.mpeg"
MISB_mapping = "c:\\test\\Field_Mapping_Template.csv"
time_shift_file = "c:\\test\\timeshift.csv"
in_elevation_layer = "c:\\test\\dem.tif"
arcpy.ia.VideoMultiplexer(in_video, in_metadata, out_video, MISB_mapping, time_shift_file, in_elevation_layer)
環境
ライセンス情報
- Basic: 次のものが必要 Image Analyst
- Standard: 次のものが必要 Image Analyst
- Advanced: 次のものが必要 Image Analyst