ビデオ マルチプレクサー (Video Multiplexer) (Image Analyst)

Image Analyst ライセンスで利用できます。

サマリー

タイム スタンプで同期されたアーカイブ済みのビデオ ストリーム ファイルとそれに関連するメタデータ ファイルを結合してビデオ ファイルを作成します。

このツールを使用すると、ビデオ ストリーム ファイルとそれに関連する別のメタデータ ファイルから FMV 対応のビデオ ファイルを作成できます。 メタデータは、同期されたタイム スタンプでビデオ ファイル内にエンコードされます。 ビデオ ファイルとメタデータ ファイルで構成される 2 つのファイルを結合する処理を多重化と呼びます。

使用法

  • このツールはアーカイブ済みのビデオ ファイルを扱う設計になっているため、ライブ ビデオ ストリームは操作できません。

  • 多重化するビデオ ファイルの形式は、使用可能なビデオ形式のうちの 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

    MPEG-Dash

    .mpd

    H264 ビデオ ファイル

    .h264

    VLC メディア ファイル (MPEG4)

    .mpeg4

    VLC メディア ファイル (VOB)

    .vob

    HLS (アダプティブ ビットレート (ABR))

    .m3u8

  • ツールからのビデオ ファイルの出力形式は .ts のみです。

  • ビデオ ストリーム ファイルに関連付けられたメタデータを使用すると、マップ上でビデオ センサーの飛行経路、ビデオ画像フレームの中心、ビデオ フレーム フットプリントの 4 つのコーナーが算出されます。

  • FMV は Motion Imagery Standards Board (MISB) 仕様に対応しています。 完全な MISB 仕様では、FMV に必要とされるよりもはるかに多くのパラメーターが規定されています。 指定された MISB パラメーターは、すべてのパラメーターまたはそのサブセットを含め、最終的なビデオにエンコードされます。

  • ビデオ画像フットプリントの相対コーナー ポイントをマップ上でフレーム アウトラインとして算出するには、次のリストに示された 12 の基本メタデータ フィールドが必要となります。これらのメタデータ フィールドの詳細については、パラメーター記述をご参照ください。 メタデータの完全性と正確性が確保されている場合は、このツールでビデオ フレームのコーナーが算出され、マップ上に表示できるビデオ フレーム アウトラインのサイズ、形状、および位置が求められます。

    • 精度タイムスタンプ
    • Sensor Latitude
    • Sensor Longitude
    • Sensor Ellipsoid Height、または Sensor True Altitude
    • Platform Heading Angle
    • Platform Pitch Angle
    • Platform Roll Angle
    • Sensor Relative Roll Angle
    • Sensor Relative Elevation Angle
    • Sensor Relative Azimuth Angle
    • Sensor Horizontal Field of View
    • Sensor 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 StampSensor 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 レイヤーまたはイメージ サービスを指定することをお勧めします。

  • FMV は、モーション イメージのオブジェクト トラッキング方法に基づいて VMTI (Video Moving Target Indicator) データをサポートしています。 VMTI データは、関連するビデオ ファイルとは別のファイルに記録されている場合、[ビデオ マルチプレクサー (Video Multiplexer)] ツールを使用してビデオ ファイルにエンコードできます。 FMV は、MISB の「Video Moving Target Indicator and Track Metadata」規格をサポートしています。

    次のフィールドのデータを含む *.csv メタデータ ファイルを使用し、適切なビデオ フレームに必要な VMTI 情報を提供することで、VMTI データをビデオにエンコードします。

    • LDSVer,TimeStamp,FrameCenterLongitude,FrameCenterLatitude,SensorLongitude,SensorLatitude,vmtilocaldataset
    • 5,1546300800231000,-76.1309338,36.91118708,-76.1309338,36.91118708,1 0.9938099 1611919 1815608 1711844;1 0.39056745 1438997 1556213 1496645

    最後の列である vmtilocaldataset には、検出されたオブジェクトの境界四角形が含まれます。この列では、次に示すように、それぞれのスペース区切り値が 3 つの値によって定義されます。Object_ID Confidence_Level Top_Left_Pixel Bottom_Right_Pixel Center_Pixel

    上記の例で示すように、; (セミコロン) 区切り文字を使用して、指定のタイム スタンプで複数のオブジェクト検出を指定できます。

    FMV_Multiplexer_Field_Mapping_Template.csv ファイルで MISB Tag 74 を使用します。

パラメーター

ラベル説明データ タイプ
入力ビデオ ファイル

入力ビデオ ファイルは FMV 対応のビデオ ファイルに変換されます。

使用可能なビデオ ファイル タイプは、*.avi (H.265 ではなく、H.264 に対応)、*.h264、*.mp2、*.mp4、*.m2ts、*.mpeg、*.mpeg2、*.mpeg4、*.mpg、*.mpg2、*.mpg4、*.ps、*.ts、および *vob です。

File
メタデータ ファイル

特定の時間のビデオ フレームのメタデータを含むカンマ区切り値 (CSV) ファイル。

各列は 1 つのメタデータ フィールドを表し、これらの列のいずれかを時間参照にする必要があります。時間参照は、UNIX タイム スタンプ (1970 年からの経過秒数) に 100 万を乗算して求められた値であり、整数として格納されます。この時間は整数として格納されているため、任意の瞬間 (100 万分の 1 秒まで) を整数で参照できます。したがって、500,000 のうちの 2 つのエントリ間の時差は経過時間中の 2 分の 1 秒になります。

先頭の行には、メタデータ列のフィールド名が示されます。 これらのフィールド名は C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideoFMV_Multiplexer_Field_Mapping_Template.csv ファイルに一覧表示されています。また、このテンプレートを使用して、カスタム フィールド名を対応する FMV フィールド名と一致させることもできます。 後続の行にはそれぞれ、特定の時点のメタデータ値 (タイム スタンプと呼ばれる) が示されます。

メタデータ フィールド名は任意の順序で表示可能であり、FMV_Multiplexer_Field_Mapping_Template.csv テンプレートに示された名前と同じ名前にする必要があります。これにより、そのメタデータ フィールド名が適切な FMV メタデータ フィールド名にマッピングされます。

File
出力ビデオ ファイル

出力ビデオ ファイルの名前には、次に示すファイル拡張子が付きます。

サポートされる出力ビデオ ファイルは .ts のみです。

File
メタデータ マッピング ファイル
(オプション)

5 列と 87 行で構成される CSV ファイルであり、C:\Program Files\ArcGIS\Pro\Resources\FullMotionVideo から取得された FMV_Multiplexer_Field_Mapping_Template.csv テンプレートを基準としています。

この CSV ファイルは、メタデータ フィールド名と FMV フィールド名を相互に参照します。 それぞれの行は、標準メタデータ パラメーターのいずれかを表します (センサーの緯度など)。 最初の 2 列には、すでに指定されているタグと MISB パラメーター名の情報が示されます。 3 番目の列には、[入力メタデータ ファイル] パラメーターに表示されるフィールド名が示されます。 3 番目の列にデータを入力すると、ツールでメタデータ フィールド名を適切な FMV メタデータ タグと照合できるようになります。

File
Timeshift ファイル
(オプション)

定義済みの時間シフト間隔を含むファイル。

ビデオ画像とメタデータの時間の同期が取れていることが理想です。 この場合は、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 つの行が含まれます。

0:18, -5
2:21, -9

この場合には、ビデオの開始時と終了時に異なるずれが生じます。

時間シフト観測ファイルには、任意の数の時間シフト間隔を定義できます。

File
数値標高モデル
(オプション)

ビデオ フレームのコーナー座標の算出に必要な標高のソース。 このソースは、レイヤー、イメージ サービス、平均地表標高または海深にすることができます。 平均標高値には、計測単位 (メートル、フィート、その他の長さの計測単位) を含める必要があります。

ビデオのフットプリントとフレームの中心の精度は、指定された DEM データ ソースの精度によって変わります。 DEM レイヤーまたはイメージ サービスを指定することをお勧めします。 DEM データにアクセスできない場合は、海面を基準とする平均標高と単位を入力できます (15 フィートや 10 メートルなど)。 水中の場合は、-15 フィートや -10 メートルのように入力します。 平均標高や海深を使用しても、DEM や水深線データを指定した場合と同じ精度にはなりません。

フレームのコーナー座標を算出する場合、平均標高値は常に、メタデータに記録されたセンサーの高度または深度よりも小さい値でなければなりません。 たとえば、10 メートル以上のセンサー高度でビデオを撮影した場合、有効な平均標高は 9 メートル以下になります。 深度が -10 メートルまでの水中でビデオを撮影した場合、有効な平均標高 (海面を基準とする) は -11 メートルまたはそれより深くなります。 [センサー高度] 値が平均標高値を下回っている場合、そのレコードに対して 4 つのコーナー座標は算出されません。 投影領域の平均標高がわからない場合は、DEM を使用します。

Raster Layer; Image Service; Linear Unit

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

出力ビデオ ファイルの名前には、次に示すファイル拡張子が付きます。

サポートされる出力ビデオ ファイルは .ts のみです。

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 つの行が含まれます。

0:18, -5
2:21, -9

この場合には、ビデオの開始時と終了時に異なるずれが生じます。

時間シフト観測ファイルには、任意の数の時間シフト間隔を定義できます。

File
elevation_layer
(オプション)

ビデオ フレームのコーナー座標の算出に必要な標高のソース。 このソースは、レイヤー、イメージ サービス、平均地表標高または海深にすることができます。 平均標高値には、計測単位 (メートル、フィート、その他の長さの計測単位) を含める必要があります。

ビデオのフットプリントとフレームの中心の精度は、指定された DEM データ ソースの精度によって変わります。 DEM レイヤーまたはイメージ サービスを指定することをお勧めします。 DEM データにアクセスできない場合は、海面を基準とする平均標高と単位を入力できます (15 フィートや 10 メートルなど)。 水中の場合は、-15 フィートや -10 メートルのように入力します。 平均標高や海深を使用しても、DEM や水深線データを指定した場合と同じ精度にはなりません。

フレームのコーナー座標を算出する場合、平均標高値は常に、メタデータに記録されたセンサーの高度または深度よりも小さい値でなければなりません。 たとえば、10 メートル以上のセンサー高度でビデオを撮影した場合、有効な平均標高は 9 メートル以下になります。 深度が -10 メートルまでの水中でビデオを撮影した場合、有効な平均標高 (海面を基準とする) は -11 メートルまたはそれより深くなります。 [センサー高度] 値が平均標高値を下回っている場合、そのレコードに対して 4 つのコーナー座標は算出されません。 投影領域の平均標高がわからない場合は、DEM を使用します。

Raster Layer; Image Service; Linear Unit

コードのサンプル

VideoMultiplexer (ビデオ マルチプレクサー) の例 1 (Python ウィンドウ)

この例では、アーカイブ済みのビデオとそれに関連するメタデータを結合してビデオ ファイルを作成します。

arcpy.ia.VideoMultiplexer(r"C:\input_video.mpeg", r"C:\video_metadata.csv", r"C:\output_video.ts",
                              r"C:\Video_Multiplexer_MISB_Field_Mapping_Template.csv",
                              r"C:\Video_Multiplexer_TimeShift_Template.csv", "c:\\test\\dem.tif”)
VideoMultiplexer (ビデオ マルチプレクサー) の例 2 (スタンドアロン スクリプト)

この例では、アーカイブ済みのビデオとそれに関連するメタデータを結合してビデオ ファイルを作成します。

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.ts"
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)

環境

このツールは、ジオプロセシング環境を使用しません。